From a14fca86d60a616e72cecfe47f2a2ce020f364f0 Mon Sep 17 00:00:00 2001 From: Vadim Tropashko Date: Thu, 7 Dec 2023 16:22:14 -0800 Subject: [PATCH 01/22] Issues 26-35 --- dist/quick-erd.js | 62 +- dist/quick-erd.umd.cjs | 2 +- dist/quick-sql.js | 2308 ++++++++++++++-------------- dist/quick-sql.umd.cjs | 353 +++-- package.json | 2 +- src/ddl.js | 11 +- src/json2qsql.js | 4 +- src/sample.js | 2 +- src/tree.js | 33 +- test/experimental/constraints.qsql | 5 + test/experimental/constraints.sql | 11 + test/regression_test.js | 3 +- test/single_test.js | 4 +- test/small_tests.js | 63 +- 14 files changed, 1468 insertions(+), 1395 deletions(-) create mode 100644 test/experimental/constraints.qsql create mode 100644 test/experimental/constraints.sql diff --git a/dist/quick-erd.js b/dist/quick-erd.js index f238099..223be83 100644 --- a/dist/quick-erd.js +++ b/dist/quick-erd.js @@ -249,11 +249,11 @@ function ne() { return !0; }; } -function q(n, e, s, l) { +function S(n, e, s, l) { var o = this; o.x = n, o.y = e, o.width = s, o.height = l, o.union = function(i) { var d = Math.min(this.x, i.x), T = Math.min(this.y, i.y), L = Math.max(this.x + this.width, i.x + i.width), R = Math.max(this.y + this.height, i.y + i.height); - return new q(d, T, L - d, R - T); + return new S(d, T, L - d, R - T); }; } function P(n, e) { @@ -269,10 +269,10 @@ function ie(n, e) { function oe(n, e) { return n.referredBy_count < e.referredBy_count ? 1 : n.referredBy_count > e.referredBy_count ? -1 : n.refer_count < e.refer_count ? 1 : n.refer_count > e.refer_count ? -1 : 0; } -function J(n, e) { +function Q(n, e) { return n.refer_count < e.refer_count ? 1 : n.refer_count > e.refer_count ? -1 : n.referredBy_count < e.referredBy_count ? 1 : n.referredBy_count > e.referredBy_count ? -1 : 0; } -function Q(n, e) { +function J(n, e) { return n.init_dim.height > e.init_dim.height ? 1 : n.init_dim.height < e.init_dim.height ? -1 : 0; } function le(n, e) { @@ -292,10 +292,10 @@ function se(n) { O = []; for (var a = [], t = e.buildTH_Map(v, u), B = [], _ = t.length, c = 0; c < _; c++) { var f = t[c]; - f.refer_count === 0 && f.referredBy_count === 0 ? g.push(f) : (p.push(f), f.refer.length > 0 && (r == 1 ? f.refer.sort(Y) : r == 2 ? f.refer.sort(ie) : f.refer.sort(oe)), f.referredBy_count == 0 && !f.usedInStar && O.push(f), f.referredBy.length > 0 && f.referredBy.sort(J)); + f.refer_count === 0 && f.referredBy_count === 0 ? g.push(f) : (p.push(f), f.refer.length > 0 && (r == 1 ? f.refer.sort(Y) : r == 2 ? f.refer.sort(ie) : f.refer.sort(oe)), f.referredBy_count == 0 && !f.usedInStar && O.push(f), f.referredBy.length > 0 && f.referredBy.sort(Q)); } if (p.length > 0) { - O.length == 0 && e.findRoots(p, O), O = O.concat(B), O.sort(J); + O.length == 0 && e.findRoots(p, O), O = O.concat(B), O.sort(Q); for (var y = Z, m = ee, x = 0; x < O.length; x++) { var f = O[x]; if (!f.arranged && !f.usedInStar) { @@ -336,7 +336,7 @@ function se(n) { } } while (u.length === 0); }, e.arrangeStar = function(r, u, h) { - var v = new q(u, h, 1, 1); + var v = new S(u, h, 1, 1); r.nodes.push(r); for (var g = [], p = r.referredBy.length, a = 0; a < p; a++) { var t = r.referredBy[a]; @@ -346,7 +346,7 @@ function se(n) { var t = r.refer[_]; !g.indexOf(t) >= 0 && g.push(t); } - g.sort(Q); + g.sort(J); for (var c = 0, f = g.length, y = 0; y < f; y++) { var t = g[y]; c = c + t.init_dim.width + E; @@ -354,12 +354,12 @@ function se(n) { for (var m = u, x = h, A = u + c / 2, C = 0, k = 0, N = u, a = g.length - 1; a >= 0 && m < A; a--) { C = a; var t = g[a]; - k = Math.max(k, t.init_dim.height), N = m + t.init_dim.width, r.nodes.push(t), t.nodes.push(t), t.location = new P(m, x), t.rect = new q(t.location.x, t.location.y, t.init_dim.width, t.init_dim.height), m = m + E + t.init_dim.width, v = v.union(t.rect), t.arranged = !0; + k = Math.max(k, t.init_dim.height), N = m + t.init_dim.width, r.nodes.push(t), t.nodes.push(t), t.location = new P(m, x), t.rect = new S(t.location.x, t.location.y, t.init_dim.width, t.init_dim.height), m = m + E + t.init_dim.width, v = v.union(t.rect), t.arranged = !0; } - x = x + k + 2 * D, m = u + (N - u) / 2, r.location = new P(m, x), r.rect = new q(r.location.x, r.location.y, r.init_dim.width, r.init_dim.height), v = v.union(r.rect), r.arranged = !0, x = x + r.init_dim.height + 2 * D, m = u; + x = x + k + 2 * D, m = u + (N - u) / 2, r.location = new P(m, x), r.rect = new S(r.location.x, r.location.y, r.init_dim.width, r.init_dim.height), v = v.union(r.rect), r.arranged = !0, x = x + r.init_dim.height + 2 * D, m = u; for (var a = C - 1; a >= 0; a--) { var t = g[a]; - r.nodes.push(t), t.nodes.push(t), t.location = new P(m, x), t.rect = new q(t.location.x, t.location.y, t.init_dim.width, t.init_dim.height), m = m + E + t.init_dim.width, v = v.union(t.rect), t.arranged = !0; + r.nodes.push(t), t.nodes.push(t), t.location = new P(m, x), t.rect = new S(t.location.x, t.location.y, t.init_dim.width, t.init_dim.height), m = m + E + t.init_dim.width, v = v.union(t.rect), t.arranged = !0; } return r.rect = v, v; }, e.setLevel2 = function(r, u) { @@ -397,7 +397,7 @@ function se(n) { }, e.arrange = function(r, u, h, v, g, p) { if (!r.arranged) { var a = v; - r.location = new P(u, h), r.nodes.push(r), a === null ? a = new q(r.location.x, r.location.y, r.init_dim.width, r.init_dim.height) : a = a.union(new q(r.location.x, r.location.y, r.init_dim.width, r.init_dim.height)), r.arranged = !0; + r.location = new P(u, h), r.nodes.push(r), a === null ? a = new S(r.location.x, r.location.y, r.init_dim.width, r.init_dim.height) : a = a.union(new S(r.location.x, r.location.y, r.init_dim.width, r.init_dim.height)), r.arranged = !0; var t, B = e.getNotArranged(r.refer), _ = e.getNotArranged(r.referredBy), c = []; if (!b && e.canGoLeft(g, u, h + r.init_dim.height + D, _)) for (var f = _.length, y = 0; y < f; y++) { @@ -413,7 +413,7 @@ function se(n) { c.length = 0; } if (B.length > 0) - b || !x ? (_ = _.concat(B), t = e.orderDown(r, _, u, h + r.init_dim.height + D, [], r.nodes, g), a = a.union(t)) : _.length > 0 ? (t = e.orderLeft(r, _, u, h + r.init_dim.height + D, c, r.nodes, g), g == null ? g = new q(t.x, t.y, t.width, t.height) : g = g.union(t), a = a.union(t), t = e.orderDown(r, B, Math.max(u, t.x + t.width), h + r.init_dim.height + D, c, r.nodes, g), a = a.union(t)) : (t = e.orderDown(r, B, u, h + r.init_dim.height + D, c, r.nodes, g), a = a.union(t)); + b || !x ? (_ = _.concat(B), t = e.orderDown(r, _, u, h + r.init_dim.height + D, [], r.nodes, g), a = a.union(t)) : _.length > 0 ? (t = e.orderLeft(r, _, u, h + r.init_dim.height + D, c, r.nodes, g), g == null ? g = new S(t.x, t.y, t.width, t.height) : g = g.union(t), a = a.union(t), t = e.orderDown(r, B, Math.max(u, t.x + t.width), h + r.init_dim.height + D, c, r.nodes, g), a = a.union(t)) : (t = e.orderDown(r, B, u, h + r.init_dim.height + D, c, r.nodes, g), a = a.union(t)); else if (_.length > 0) if (b || !e.canGoLeft(g, u, h + r.init_dim.height + D, _)) _ = _.concat(B), t = e.orderDown(r, _, u, h + r.init_dim.height + D, [], r.nodes, g), a = a.union(t); @@ -421,8 +421,8 @@ function se(n) { var N = _[_.length - 1]; t = e.orderLeftCenter(r, _, u + N.init_dim.width + E, h + r.init_dim.height + D, c, r.nodes, g), a = a.union(t); } - if (r.rect = new q(a.x, a.y, a.width, a.height), p != null) - for (var S = r.nodes.length, V = 0; V < S; V++) { + if (r.rect = new S(a.x, a.y, a.width, a.height), p != null) + for (var q = r.nodes.length, V = 0; V < q; V++) { var N = r.nodes[V]; p.indexOf(N) >= 0 || p.push(N); } @@ -448,15 +448,15 @@ function se(n) { var c = u[_]; !c.arranged && !c.booked && !(g.indexOf(c) >= 0) && !c.isConnectedToBetterLevel(r, r.level) && (c.booked = !0, t.push(c)); } - var f = h, y = v, m = new q(h, v, 1, 1), x; - a === null ? x = null : x = new q(a.x, a.y, a.width, a.height); + var f = h, y = v, m = new S(h, v, 1, 1), x; + a === null ? x = null : x = new S(a.x, a.y, a.width, a.height); var A = [], C = t.length; if (C > 1) { var k = e.getReferOnly(t, r); if (k.length > 0) { - k.length > 1 && k.sort(Q); - for (var U = r.location.y, j = D / 3, N = U + r.init_dim.height + j, S = 0; S < k.length; S++) { - var c = k[S], V = U + c.init_dim.height; + k.length > 1 && k.sort(J); + for (var U = r.location.y, j = D / 3, N = U + r.init_dim.height + j, q = 0; q < k.length; q++) { + var c = k[q], V = U + c.init_dim.height; if (V <= N) { A.push(c); var H = t.indexOf(c); @@ -470,9 +470,9 @@ function se(n) { } } C = t.length; - for (var S = 0; S < C; S++) { - var c = t[S]; - if (C > 1 && S === C - 1 && A.length === 0) + for (var q = 0; q < C; q++) { + var c = t[q]; + if (C > 1 && q === C - 1 && A.length === 0) if (A.length === 0 && c.referOnlyAndArranged(r)) { var F = r.location.x + E + r.init_dim.width, M = e.arrange(c, F, r.location.y, null, x, p); m = m.union(M); @@ -481,11 +481,11 @@ function se(n) { m = m.union(M); } var re = f, M = e.arrange(c, re, y, null, x, p); - x == null ? x = new q(M.x, M.y, M.width, M.height) : x = x.union(M), f = Math.max(f, M.x + M.width) + E, m = m.union(M); + x == null ? x = new S(M.x, M.y, M.width, M.height) : x = x.union(M), f = Math.max(f, M.x + M.width) + E, m = m.union(M); } - for (var U = r.location.y, j = D / 3, F = r.location.x + E + r.init_dim.width, S = 0; S < A.length; S++) { - var c = A[S]; - c.nodes.push(c), p != null && p.push(c), c.location = new P(F, U), c.arranged = !0, c.booked = !1, c.rect = new q(c.location.x, c.location.y, c.init_dim.width, c.init_dim.height), m = m.union(c.rect), U = U + c.init_dim.height + j; + for (var U = r.location.y, j = D / 3, F = r.location.x + E + r.init_dim.width, q = 0; q < A.length; q++) { + var c = A[q]; + c.nodes.push(c), p != null && p.push(c), c.location = new P(F, U), c.arranged = !0, c.booked = !1, c.rect = new S(c.location.x, c.location.y, c.init_dim.width, c.init_dim.height), m = m.union(c.rect), U = U + c.init_dim.height + j; } return m; }, e.getReferOnly = function(r, u) { @@ -495,7 +495,7 @@ function se(n) { } return v; }, e.orderLeft = function(r, u, h, v, g, p, a) { - for (var t = h - E, B = v, _ = new q(h, v, 1, 1), c = u.length - 1; c >= 0; c--) { + for (var t = h - E, B = v, _ = new S(h, v, 1, 1), c = u.length - 1; c >= 0; c--) { var f = u[c]; if (!f.arranged && !f.isConnectedToBetterLevel(r, r.level) && (!f.booked || g.indexOf(f) >= 0)) { var y = t - f.init_dim.width, m = e.arrange(f, y, B, null, a, p); @@ -504,7 +504,7 @@ function se(n) { } return _; }, e.orderLeftCenter = function(r, u, h, v, g, p, a) { - for (var t = h - E, B = v, _ = [], c = new q(h, v, 1, 1), f = u.length - 1; f >= 0; f--) { + for (var t = h - E, B = v, _ = [], c = new S(h, v, 1, 1), f = u.length - 1; f >= 0; f--) { var y = u[f]; !y.arranged && !y.isConnectedToBetterLevel(r, r.level) && (!y.booked || g.indexOf(y) >= 0) && _.unshift(y); } @@ -608,7 +608,7 @@ class de { I(this, "exportAsSVG", () => { const e = this.graph.getBBox().inflate(50); this.paper.toSVG((s) => { - var l = "quicksqlDiagram-"; + var l = "QuickSqlDiagram-"; this.saveDiagram(l, s); }, { area: e, @@ -739,7 +739,7 @@ class de { e.rearrangeDiagram(3, !1), this.paperScroller.centerContent(); } } -const ue = "1.2.0", fe = { +const ue = "1.2.1", fe = { Diagram: de, version: ue }; diff --git a/dist/quick-erd.umd.cjs b/dist/quick-erd.umd.cjs index 55474c3..b5030dd 100644 --- a/dist/quick-erd.umd.cjs +++ b/dist/quick-erd.umd.cjs @@ -1 +1 @@ -(function(q,m){typeof exports=="object"&&typeof module<"u"?m(exports):typeof define=="function"&&define.amd?define(["exports"],m):(q=typeof globalThis<"u"?globalThis:q||self,m(q.quickERD={}))})(this,function(q){"use strict";var fe=Object.defineProperty;var ge=(q,m,P)=>m in q?fe(q,m,{enumerable:!0,configurable:!0,writable:!0,value:P}):q[m]=P;var M=(q,m,P)=>(ge(q,typeof m!="symbol"?m+"":m,P),P);var m={};m.colors=[],m.FONT_FAMILY='var(--qs-diagram-font-family, "Arial")',m.colors.TABLE_BACKGROUND="var(--qs-diagram-table-background-color, rgb(254,246,222))",m.colors.TABLE_BORDER="var(--qs-diagram-table-border-color, rgba(0,0,0,.1))",m.colors.TABLE_NAME_TEXT="var(--qs-diagram-table-name-text-color, var(--qs-diagram-table-text-color, rgba(0,0,0,.8)))",m.colors.TABLE_COLUMN_TEXT="var(--qs-diagram-table-column-text-color, var(--qs-diagram-table-text-color, rgba(0,0,0,.8)))",m.colors.TABLE_DATA_TYPE_TEXT="var(--qs-diagram-table-data-type-text-color, var(--qs-diagram-table-text-color, rgba(0,0,0,.4)))",m.TABLE_BORDER_RADIUS=getComputedStyle(document.documentElement).getPropertyValue("--qs-diagram-table-border-radius"),m.TABLE_BORDER_RADIUS=m.TABLE_BORDER_RADIUS?m.TABLE_BORDER_RADIUS:0,m.colors.VIEW_BACKGROUND="var(--qs-diagram-view-background-color, rgb(236,245,231))",m.colors.VIEW_BORDER="var(--qs-diagram-view-border-color, rgba(0,0,0,.1))",m.colors.VIEW_NAME_TEXT="var(--qs-diagram-view-text-color, rgb(0,0,0))",m.colors.VIEW_COLUMN_TEXT="var(--qs-diagram-view-column-text-color, var(--qs-diagram-view-text-color, rgba(0,0,0,.8)))",m.colors.VIEW_DATA_TYPE_TEXT="var(--qs-diagram-view-data-type-text-color, var(--qs-diagram-view-text-color, rgba(0,0,0,.4)))",m.VIEW_BORDER_RADIUS=getComputedStyle(document.documentElement).getPropertyValue("--qs-diagram-view-border-radius"),m.VIEW_BORDER_RADIUS=m.VIEW_BORDER_RADIUS?m.VIEW_BORDER_RADIUS:4,m.colors.LINK="var(--qs-diagram-link-color, rgba(140,140,140,1))",joint.shapes.quicksql={},joint.shapes.quicksql.Table=joint.shapes.standard.HeaderedRecord.define("quicksql.Table",{z:3,columns:[],padding:{top:25,bottom:5,left:0,right:0},size:{width:160},itemMinLabelWidth:105,itemHeight:16,itemOverflow:!0,attrs:{root:{magnet:!1},body:{cursor:"default",rx:m.TABLE_BORDER_RADIUS,ry:m.TABLE_BORDER_RADIUS,fill:m.colors.TABLE_BACKGROUND,stroke:m.colors.TABLE_BORDER,"stroke-width":1,refWidth:"100%",refHeight:"100%"},headerLabel:{cursor:"default",y:-4,fontFamily:m.FONT_FAMILY,fill:m.colors.TABLE_NAME_TEXT,fontWeight:"bold",fontSize:12,textWrap:{ellipsis:!0,height:20}},separator:{cursor:"default",stroke:m.colors.TABLE_BORDER,strokeWidth:1},itemBodies_0:{magnet:!1,pointerEvents:"none"},group_1:{pointerEvents:"none"},itemLabels:{fontFamily:m.FONT_FAMILY,fontWeight:"bold",fontSize:10,fill:m.colors.TABLE_COLUMN_TEXT,pointerEvents:"none"},itemLabels_1:{fill:m.colors.TABLE_DATA_TYPE_TEXT,textAnchor:"end",x:"calc(0.5 * w - 20)"}}},{markup:[{tagName:"rect",selector:"body"},{tagName:"text",selector:"headerLabel"},{tagName:"path",selector:"separator"}],setName(i,r){return this.attr(["headerLabel","text"],i,r)},setColumns(i=[]){const r=[],u=[];i.forEach((l,o)=>{if(!l.name)return;r.push({id:l.name,label:l.name,span:2});const n={id:`${l.datatype}_${o}`,label:l.datatype};u.push(n)}),this.set("items",[r,u]),this.removeInvalidLinks()}}),joint.shapes.quicksql.TableView=joint.shapes.standard.RecordView.extend({initialize:function(){joint.dia.ElementView.prototype.initialize.apply(this,arguments),this.updatePath()},updatePath:function(){var i="M 0 20 L "+this.model.get("size").width+" 20";this.model.attr("separator/d",i,{silent:!0})}}),joint.shapes.quicksql.View=joint.shapes.quicksql.Table.define("quicksql.View",{attrs:{body:{rx:m.VIEW_BORDER_RADIUS,ry:m.VIEW_BORDER_RADIUS,fill:m.colors.VIEW_BACKGROUND,stroke:m.colors.VIEW_BORDER},headerLabel:{fontFamily:m.FONT_FAMILY,fill:m.colors.VIEW_NAME_TEXT},separator:{stroke:m.colors.TABLE_BORDER},itemLabels:{fill:m.colors.VIEW_COLUMN_TEXT},itemLabels_1:{fill:m.colors.VIEW_DATA_TYPE_TEXT}}}),joint.shapes.quicksql.ViewView=joint.shapes.quicksql.TableView,joint.shapes.quicksql.Relation=joint.dia.Link.extend({z:-1,defaults:{type:"quicksql.Relation",attrs:{".connection":{stroke:m.colors.LINK,"stroke-width":1,"stroke-dasharray":"none"},".marker-source":{fill:m.colors.LINK,stroke:m.colors.LINK,d:"M 5 0 L 0 4 L 5 8 z"}},style:"none",sourceTable:"",targetTable:"",lineWidth:1},initialize:function(){joint.dia.Link.prototype.initialize.apply(this,arguments),this.updateStyle(this,arguments)},updateStyle:function(){this.attr(".connection/stroke-dasharray",this.get("style")==="dash"?"5 5":"none")}});const P="";var W={};const X=getComputedStyle(document.querySelector(":root")).getPropertyValue("--qs-diagram-font-family")||"Arial";W.newGuid=function(){function i(r){var u=(Math.random().toString(16)+"000000000").substr(2,8);return r?"-"+u.substr(0,4)+"-"+u.substr(4,4):u}return i()+i(!0)+i(!0)+i()},W.calcWidth=function(i,r,u){var l=r;i&&(l=i.concat(".").concat(r));for(var o=W.getTextWidth(l,`12pt ${X}`),n=0,s=0,x=0;xn?s*2:n+s+20;return Math.max(o,L)},W.getTextWidth=function(i,r){var u=W.getTextWidth.canvas||(W.getTextWidth.canvas=document.createElement("canvas")),l=u.getContext("2d");l.font=r;var o=l.measureText(i);return o.width};function ae(){var i=this;i.referredBy_count=0,i.refer_count=0,i.referredBy=[],i.referredByFK=[],i.refer=[],i.referFK=[],i.referredByMap={},i.referMap={},i.arranged=!1,i.booked=!1,i.scanned=!1,i.star=!1,i.usedInStar=!1,i.nodes=[],i.init_dim={width:0,height:0},i.location,i.rect,i.isScanConnectedToBetterLevel=function(r,u){for(var l=i.referredBy.length,o=0;or.referredBy_count?1:i.referredBy_countr.refer_count?-1:0}function ne(i,r){return i.referredBy_count>r.referredBy_count?1:i.referredBy_countr.refer_count?1:i.refer_countr.referredBy_count?-1:i.refer_countr.refer_count?-1:0}function J(i,r){return i.refer_countr.refer_count?-1:i.referredBy_countr.referredBy_count?-1:0}function Q(i,r){return i.init_dim.height>r.init_dim.height?1:i.init_dim.heightr.rect.height?-1:0}function le(i){var r=this,u=20,l=20,o=20,n=20,s=35,x=25,L=0,A=1,b=!0,E=80,D=80,re=12e3,$=[],N=[],U={},de=2e3,ue=20;r.rearrangeDiagram=function(e,d,h){A=e,b=d;var v=[];v.length>0?(h!=null&&(u=h.getX(),l=h.getY()),r.rearrangeT(A,!1,v)):(u=20,l=20,r.rearrangeT(A,!1))},r.rearrangeT=function(e,d,h){o=u,n=l,D=80,E=100;var v;h!=null&&h.length>0?v=h:v=i.getAllElements(),re=1e3,$.length=0;var g=[],p=[];N=[];for(var a=[],t=r.buildTH_Map(v,d),B=[],w=t.length,c=0;c0&&(e==1?f.refer.sort(Y):e==2?f.refer.sort(ne):f.refer.sort(ie)),f.referredBy_count==0&&!f.usedInStar&&N.push(f),f.referredBy.length>0&&f.referredBy.sort(J))}if(p.length>0){N.length==0&&r.findRoots(p,N),N=N.concat(B),N.sort(J);for(var y=de,_=ue,T=0;T=0&&(y.referredBy.push(_),y.referredByFK.push(T),y.referredByMap[T.id]=_,y.referredBy_count++),!_.referFK.indexOf(T)>=0&&(_.refer.push(y),_.referFK.push(T),_.referMap[T.id]=y,_.refer_count++)}}return v},r.findRoots=function(e,d){e.sort(Y);var h=-1;if(e.length>0)do{h++;for(var v=e.length,g=0;g=0&&g.push(t)}for(var B=e.refer.length,w=0;w=0&&g.push(t)}g.sort(Q);for(var c=0,f=g.length,y=0;y=0&&_=0;a--){var t=g[a];e.nodes.push(t),t.nodes.push(t),t.location=new j(_,T),t.rect=new C(t.location.x,t.location.y,t.init_dim.width,t.init_dim.height),_=_+E+t.init_dim.width,v=v.union(t.rect),t.arranged=!0}return e.rect=v,v},r.setLevel2=function(e,d){if(d<=e.level&&!e.scanned){var h=[],v=[];e.level=d,e.scanned=!0;for(var g=e.refer.length,p=0;pd+1&&!a.scanned&&!a.isScanConnectedToBetterLevel(e,e.level)&&(a.level++,h.push(a))}for(var t=e.referredBy.length,B=0;Bd+1&&!a.scanned&&!a.isScanConnectedToBetterLevel(e,e.level)&&(a.level++,v.push(a))}if(b){for(var w=h.length,c=0;c=0;p--){var a=h[p];r.setLevel2(a,d+1)}for(var p=v.length-1;p>=0;p--){var a=v[p];r.setLevel2(a,d+1)}}}},r.arrange=function(e,d,h,v,g,p){if(!e.arranged){var a=v;e.location=new j(d,h),e.nodes.push(e),a===null?a=new C(e.location.x,e.location.y,e.init_dim.width,e.init_dim.height):a=a.union(new C(e.location.x,e.location.y,e.init_dim.width,e.init_dim.height)),e.arranged=!0;var t,B=r.getNotArranged(e.refer),w=r.getNotArranged(e.referredBy),c=[];if(!b&&r.canGoLeft(g,d,h+e.init_dim.height+D,w))for(var f=w.length,y=0;y0)b||!T?(w=w.concat(B),t=r.orderDown(e,w,d,h+e.init_dim.height+D,[],e.nodes,g),a=a.union(t)):w.length>0?(t=r.orderLeft(e,w,d,h+e.init_dim.height+D,c,e.nodes,g),g==null?g=new C(t.x,t.y,t.width,t.height):g=g.union(t),a=a.union(t),t=r.orderDown(e,B,Math.max(d,t.x+t.width),h+e.init_dim.height+D,c,e.nodes,g),a=a.union(t)):(t=r.orderDown(e,B,d,h+e.init_dim.height+D,c,e.nodes,g),a=a.union(t));else if(w.length>0)if(b||!r.canGoLeft(g,d,h+e.init_dim.height+D,w))w=w.concat(B),t=r.orderDown(e,w,d,h+e.init_dim.height+D,[],e.nodes,g),a=a.union(t);else{var z=w[w.length-1];t=r.orderLeftCenter(e,w,d+z.init_dim.width+E,h+e.init_dim.height+D,c,e.nodes,g),a=a.union(t)}if(e.rect=new C(a.x,a.y,a.width,a.height),p!=null)for(var I=e.nodes.length,F=0;F=0||p.push(z)}return a}return e.rect},r.getNotArranged=function(e){for(var d=[],h=e.length,v=0;ve.y+e.height||d-p>e.x+p},r.orderDown=function(e,d,h,v,g,p,a){for(var t=[],B=d.length,w=0;w=0)&&!c.isConnectedToBetterLevel(e,e.level)&&(c.booked=!0,t.push(c))}var f=h,y=v,_=new C(h,v,1,1),T;a===null?T=null:T=new C(a.x,a.y,a.width,a.height);var R=[],S=t.length;if(S>1){var O=r.getReferOnly(t,e);if(O.length>0){O.length>1&&O.sort(Q);for(var V=e.location.y,G=D/3,z=V+e.init_dim.height+G,I=0;I-1&&t.splice(te,1),V=F+G}else break}var H=S/2;for(H>1&&(H=1);t.length1&&I===S-1&&R.length===0)if(R.length===0&&c.referOnlyAndArranged(e)){var K=e.location.x+E+e.init_dim.width,k=r.arrange(c,K,e.location.y,null,T,p);_=_.union(k)}else{var K=Math.max(e.location.x+E+e.init_dim.width,_.x+_.width+E),k=r.arrange(c,K,e.location.y,null,T,p);_=_.union(k)}var ce=f,k=r.arrange(c,ce,y,null,T,p);T==null?T=new C(k.x,k.y,k.width,k.height):T=T.union(k),f=Math.max(f,k.x+k.width)+E,_=_.union(k)}for(var V=e.location.y,G=D/3,K=e.location.x+E+e.init_dim.width,I=0;I=0;c--){var f=d[c];if(!f.arranged&&!f.isConnectedToBetterLevel(e,e.level)&&(!f.booked||g.indexOf(f)>=0)){var y=t-f.init_dim.width,_=r.arrange(f,y,B,null,a,p);t=Math.min(t,_.x)-E,w=w.union(_)}}return w},r.orderLeftCenter=function(e,d,h,v,g,p,a){for(var t=h-E,B=v,w=[],c=new C(h,v,1,1),f=d.length-1;f>=0;f--){var y=d[f];!y.arranged&&!y.isConnectedToBetterLevel(e,e.level)&&(!y.booked||g.indexOf(y)>=0)&&w.unshift(y)}if(w.length>1){for(var _=0,f=0;f=0;f--){var y=w[f];if(!y.arranged&&!y.isConnectedToBetterLevel(e,e.level)&&(!y.booked||g.indexOf(y)>=0)){var T=t-y.init_dim.width,R=r.arrange(y,T,B,null,a,p);t=Math.min(t,R.x)-E,c=c.union(R)}}return c},r.rearrangeNoneRefTables=function(e){o=u,s=35,x=50,L=0;var d=Math.sqrt(e.length),h=Math.round(d);Math.sqrt(d*d)!=d&&h++,h++;for(var v=e.length,g=0;gh&&(o=u,n=n+d+2*D,d=0),d=Math.max(a.height,d);for(var t=o-a.x,B=n-a.y,w=p.nodes.length,c=0;c{let l=new Map;u.items.forEach(o=>{const n=o.name.toUpperCase();let s=o.schema;s&&(s=s.toUpperCase());const L=(o.columns||[]).map(D=>({name:D.name.toUpperCase(),datatype:D.datatype.replace("("," (").toUpperCase()}));let A=W.calcWidth(s,n,L,[]),b;o.type&&o.type==="view"?b=this.addView(n,s,L,A):b=this.addTable(n,s,L,A);const E=s?`${s}.${n}`:n;l.set(E,b.id),r.push(b)}),u.links.forEach(o=>{const n=l.get(o.source.toUpperCase()),s=l.get(o.target.toUpperCase());n&&s&&r.push(this.addLink(n,s,o.source_id,o.target_id))})});M(this,"addTable",(r,u,l,o)=>{let n=r;u&&(n=`${u}.${r}`);let s=new joint.shapes.quicksql.Table({id:W.newGuid(),size:{width:o}});return s.setName(n),s.setColumns(l),s});M(this,"addView",(r,u,l,o)=>{let n=r;u&&(n=`${u}.${r}`);let s=new joint.shapes.quicksql.View({id:W.newGuid(),size:{width:o}});return s.setName(n),s.setColumns(l),s});M(this,"addLink",(r,u,l,o)=>{let n="solid";return new joint.shapes.quicksql.Relation({source:{id:r,port:l.toUpperCase()},target:{id:u,port:o.toUpperCase()},style:n})});M(this,"printDiagram",()=>{this.paper.print()});M(this,"exportAsSVG",()=>{const r=this.graph.getBBox().inflate(50);this.paper.toSVG(u=>{var l="quicksqlDiagram-";this.saveDiagram(l,u)},{area:r,convertImagesToDataUris:!0,preserveDimensions:this.paper.getComputedSize()})});M(this,"saveDiagram",(r,u)=>{function l(b){return b>=100?l(b%100):(b<10?"0":"")+b}var o=new Date,s={type:"text/plain;charset=UTF-8",name:r+l(o.getFullYear())+"-"+l(o.getMonth()+1)+"-"+l(o.getDate())+"_"+l(o.getHours()+1)+"-"+l(o.getMinutes())+".svg"},x=new Blob([u],{type:s.type}),L=window.URL.createObjectURL(x),A=document.createElement("a");document.body.appendChild(A),A.style="display: none",A.href=L,A.download=s.name,setTimeout(()=>{A.click(),window.URL.revokeObjectURL(L),A.remove()},0)});M(this,"zoomIn",()=>{this.paperScroller.zoom(.2,{max:3}),this.paperScroller.centerContent()});M(this,"zoomOut",()=>{this.paperScroller.zoom(-.2,{min:.1}),this.paperScroller.centerContent()});M(this,"fitScreen",()=>{this.paperScroller.zoomToFit({padding:10,scaleGrid:.2,minScale:.1,maxScale:3}),this.paperScroller.centerContent()});M(this,"actualSize",()=>{this.paperScroller.zoom(1,{absolute:!0}),this.paperScroller.centerContent()});M(this,"onMouseWheel",(r,u,l,o)=>{r.shiftKey&&(r.preventDefault(),o===-1?this.paperScroller.zoom(-.2,{min:.1}):o===1&&this.paperScroller.zoom(.2,{max:3}),this.paperScroller.centerContent())});if(!u||!(typeof u=="string"&&(this.element=document.querySelector(u)))&&!(typeof u=="object"&&(this.element=u)&&typeof this.element.append=="function"))throw new Error("Invalid element or selector provided");joint.anchors.columnAnchor=function(l,o,n){let s;const{model:x}=l,L=l.getNodeUnrotatedBBox(o),A=x.getBBox().center(),b=x.angle();let E=n;if(n instanceof Element){const D=this.paper.findView(n);E=D?D.getNodeBBox(n).center():new joint.g.Point}return E.rotate(A,b),s=E.x<=L.x+L.width?L.leftMiddle():L.rightMiddle(),s.rotate(A,-b)},this.data=r,this.graph=new joint.dia.Graph({},{cellNamespace:joint.shapes}),this.paper=new joint.dia.Paper({width:100,height:100,gridSize:1,model:this.graph,highlighting:!1,sorting:joint.dia.Paper.sorting.APPROX,cellViewNamespace:joint.shapes,defaultRouter:{name:"metro"},defaultAnchor:{name:"columnAnchor"},defaultConnector:{name:"rounded"},linkPinning:!1,interactive:{vertexAdd:!1,linkMove:!1,elementMove:!1}}),this.paperScroller=new joint.ui.PaperScroller({autoResizePaper:!0,padding:50,paper:this.paper}),this.paper.on("blank:pointerdown",(l,o,n)=>{this.paperScroller.setCursor("grabbing"),this.paperScroller.startPanning(l,o,n)}),this.paper.on("blank:pointerup",()=>{this.paperScroller.setCursor("default")}),this.paper.on("cell:mousewheel",(l,o,n,s,x)=>{this.onMouseWheel(o,n,s,x)}),this.paper.on("blank:mousewheel",(l,o,n,s)=>{this.onMouseWheel(l,o,n,s)}),this.keyboard&&this.keyboard.disable(),this.keyboard=new joint.ui.Keyboard,this.keyboard.on({"alt+a":function(l){this.actualSize(),l.preventDefault(),l.stopPropagation()},"alt+c":function(l){this.paperScroller.centerContent(),l.preventDefault(),l.stopPropagation()},"alt+f":function(l){this.fitScreen(),l.preventDefault(),l.stopPropagation()},"alt+p":function(l){this.printDiagram(),l.preventDefault(),l.stopPropagation()},"alt+s":function(l){this.exportAsSVG(),l.preventDefault(),l.stopPropagation()}},this),this.element.append(this.paperScroller.render().el),this.updateDiagram()}async updateDiagram(){var r;if((r=this.data.items)!=null&&r.length){let u=[];this.buildDiagram(u,this.data),this.graph.resetCells(u),this.autoLayout(),setTimeout(()=>{this.paperScroller.adjustPaper(),this.actualSize()},100)}}getAllElements(){let r=[],u=this.graph.getElements(),l=u.length;for(var o=0;om in q?fe(q,m,{enumerable:!0,configurable:!0,writable:!0,value:P}):q[m]=P;var M=(q,m,P)=>(ge(q,typeof m!="symbol"?m+"":m,P),P);var m={};m.colors=[],m.FONT_FAMILY='var(--qs-diagram-font-family, "Arial")',m.colors.TABLE_BACKGROUND="var(--qs-diagram-table-background-color, rgb(254,246,222))",m.colors.TABLE_BORDER="var(--qs-diagram-table-border-color, rgba(0,0,0,.1))",m.colors.TABLE_NAME_TEXT="var(--qs-diagram-table-name-text-color, var(--qs-diagram-table-text-color, rgba(0,0,0,.8)))",m.colors.TABLE_COLUMN_TEXT="var(--qs-diagram-table-column-text-color, var(--qs-diagram-table-text-color, rgba(0,0,0,.8)))",m.colors.TABLE_DATA_TYPE_TEXT="var(--qs-diagram-table-data-type-text-color, var(--qs-diagram-table-text-color, rgba(0,0,0,.4)))",m.TABLE_BORDER_RADIUS=getComputedStyle(document.documentElement).getPropertyValue("--qs-diagram-table-border-radius"),m.TABLE_BORDER_RADIUS=m.TABLE_BORDER_RADIUS?m.TABLE_BORDER_RADIUS:0,m.colors.VIEW_BACKGROUND="var(--qs-diagram-view-background-color, rgb(236,245,231))",m.colors.VIEW_BORDER="var(--qs-diagram-view-border-color, rgba(0,0,0,.1))",m.colors.VIEW_NAME_TEXT="var(--qs-diagram-view-text-color, rgb(0,0,0))",m.colors.VIEW_COLUMN_TEXT="var(--qs-diagram-view-column-text-color, var(--qs-diagram-view-text-color, rgba(0,0,0,.8)))",m.colors.VIEW_DATA_TYPE_TEXT="var(--qs-diagram-view-data-type-text-color, var(--qs-diagram-view-text-color, rgba(0,0,0,.4)))",m.VIEW_BORDER_RADIUS=getComputedStyle(document.documentElement).getPropertyValue("--qs-diagram-view-border-radius"),m.VIEW_BORDER_RADIUS=m.VIEW_BORDER_RADIUS?m.VIEW_BORDER_RADIUS:4,m.colors.LINK="var(--qs-diagram-link-color, rgba(140,140,140,1))",joint.shapes.quicksql={},joint.shapes.quicksql.Table=joint.shapes.standard.HeaderedRecord.define("quicksql.Table",{z:3,columns:[],padding:{top:25,bottom:5,left:0,right:0},size:{width:160},itemMinLabelWidth:105,itemHeight:16,itemOverflow:!0,attrs:{root:{magnet:!1},body:{cursor:"default",rx:m.TABLE_BORDER_RADIUS,ry:m.TABLE_BORDER_RADIUS,fill:m.colors.TABLE_BACKGROUND,stroke:m.colors.TABLE_BORDER,"stroke-width":1,refWidth:"100%",refHeight:"100%"},headerLabel:{cursor:"default",y:-4,fontFamily:m.FONT_FAMILY,fill:m.colors.TABLE_NAME_TEXT,fontWeight:"bold",fontSize:12,textWrap:{ellipsis:!0,height:20}},separator:{cursor:"default",stroke:m.colors.TABLE_BORDER,strokeWidth:1},itemBodies_0:{magnet:!1,pointerEvents:"none"},group_1:{pointerEvents:"none"},itemLabels:{fontFamily:m.FONT_FAMILY,fontWeight:"bold",fontSize:10,fill:m.colors.TABLE_COLUMN_TEXT,pointerEvents:"none"},itemLabels_1:{fill:m.colors.TABLE_DATA_TYPE_TEXT,textAnchor:"end",x:"calc(0.5 * w - 20)"}}},{markup:[{tagName:"rect",selector:"body"},{tagName:"text",selector:"headerLabel"},{tagName:"path",selector:"separator"}],setName(i,r){return this.attr(["headerLabel","text"],i,r)},setColumns(i=[]){const r=[],u=[];i.forEach((l,o)=>{if(!l.name)return;r.push({id:l.name,label:l.name,span:2});const n={id:`${l.datatype}_${o}`,label:l.datatype};u.push(n)}),this.set("items",[r,u]),this.removeInvalidLinks()}}),joint.shapes.quicksql.TableView=joint.shapes.standard.RecordView.extend({initialize:function(){joint.dia.ElementView.prototype.initialize.apply(this,arguments),this.updatePath()},updatePath:function(){var i="M 0 20 L "+this.model.get("size").width+" 20";this.model.attr("separator/d",i,{silent:!0})}}),joint.shapes.quicksql.View=joint.shapes.quicksql.Table.define("quicksql.View",{attrs:{body:{rx:m.VIEW_BORDER_RADIUS,ry:m.VIEW_BORDER_RADIUS,fill:m.colors.VIEW_BACKGROUND,stroke:m.colors.VIEW_BORDER},headerLabel:{fontFamily:m.FONT_FAMILY,fill:m.colors.VIEW_NAME_TEXT},separator:{stroke:m.colors.TABLE_BORDER},itemLabels:{fill:m.colors.VIEW_COLUMN_TEXT},itemLabels_1:{fill:m.colors.VIEW_DATA_TYPE_TEXT}}}),joint.shapes.quicksql.ViewView=joint.shapes.quicksql.TableView,joint.shapes.quicksql.Relation=joint.dia.Link.extend({z:-1,defaults:{type:"quicksql.Relation",attrs:{".connection":{stroke:m.colors.LINK,"stroke-width":1,"stroke-dasharray":"none"},".marker-source":{fill:m.colors.LINK,stroke:m.colors.LINK,d:"M 5 0 L 0 4 L 5 8 z"}},style:"none",sourceTable:"",targetTable:"",lineWidth:1},initialize:function(){joint.dia.Link.prototype.initialize.apply(this,arguments),this.updateStyle(this,arguments)},updateStyle:function(){this.attr(".connection/stroke-dasharray",this.get("style")==="dash"?"5 5":"none")}});const P="";var W={};const X=getComputedStyle(document.querySelector(":root")).getPropertyValue("--qs-diagram-font-family")||"Arial";W.newGuid=function(){function i(r){var u=(Math.random().toString(16)+"000000000").substr(2,8);return r?"-"+u.substr(0,4)+"-"+u.substr(4,4):u}return i()+i(!0)+i(!0)+i()},W.calcWidth=function(i,r,u){var l=r;i&&(l=i.concat(".").concat(r));for(var o=W.getTextWidth(l,`12pt ${X}`),n=0,s=0,x=0;xn?s*2:n+s+20;return Math.max(o,L)},W.getTextWidth=function(i,r){var u=W.getTextWidth.canvas||(W.getTextWidth.canvas=document.createElement("canvas")),l=u.getContext("2d");l.font=r;var o=l.measureText(i);return o.width};function ae(){var i=this;i.referredBy_count=0,i.refer_count=0,i.referredBy=[],i.referredByFK=[],i.refer=[],i.referFK=[],i.referredByMap={},i.referMap={},i.arranged=!1,i.booked=!1,i.scanned=!1,i.star=!1,i.usedInStar=!1,i.nodes=[],i.init_dim={width:0,height:0},i.location,i.rect,i.isScanConnectedToBetterLevel=function(r,u){for(var l=i.referredBy.length,o=0;or.referredBy_count?1:i.referredBy_countr.refer_count?-1:0}function ne(i,r){return i.referredBy_count>r.referredBy_count?1:i.referredBy_countr.refer_count?1:i.refer_countr.referredBy_count?-1:i.refer_countr.refer_count?-1:0}function Q(i,r){return i.refer_countr.refer_count?-1:i.referredBy_countr.referredBy_count?-1:0}function J(i,r){return i.init_dim.height>r.init_dim.height?1:i.init_dim.heightr.rect.height?-1:0}function le(i){var r=this,u=20,l=20,o=20,n=20,s=35,x=25,L=0,A=1,b=!0,E=80,D=80,re=12e3,$=[],N=[],U={},de=2e3,ue=20;r.rearrangeDiagram=function(e,d,h){A=e,b=d;var v=[];v.length>0?(h!=null&&(u=h.getX(),l=h.getY()),r.rearrangeT(A,!1,v)):(u=20,l=20,r.rearrangeT(A,!1))},r.rearrangeT=function(e,d,h){o=u,n=l,D=80,E=100;var v;h!=null&&h.length>0?v=h:v=i.getAllElements(),re=1e3,$.length=0;var g=[],p=[];N=[];for(var a=[],t=r.buildTH_Map(v,d),B=[],w=t.length,c=0;c0&&(e==1?f.refer.sort(Y):e==2?f.refer.sort(ne):f.refer.sort(ie)),f.referredBy_count==0&&!f.usedInStar&&N.push(f),f.referredBy.length>0&&f.referredBy.sort(Q))}if(p.length>0){N.length==0&&r.findRoots(p,N),N=N.concat(B),N.sort(Q);for(var y=de,_=ue,T=0;T=0&&(y.referredBy.push(_),y.referredByFK.push(T),y.referredByMap[T.id]=_,y.referredBy_count++),!_.referFK.indexOf(T)>=0&&(_.refer.push(y),_.referFK.push(T),_.referMap[T.id]=y,_.refer_count++)}}return v},r.findRoots=function(e,d){e.sort(Y);var h=-1;if(e.length>0)do{h++;for(var v=e.length,g=0;g=0&&g.push(t)}for(var B=e.refer.length,w=0;w=0&&g.push(t)}g.sort(J);for(var c=0,f=g.length,y=0;y=0&&_=0;a--){var t=g[a];e.nodes.push(t),t.nodes.push(t),t.location=new j(_,T),t.rect=new C(t.location.x,t.location.y,t.init_dim.width,t.init_dim.height),_=_+E+t.init_dim.width,v=v.union(t.rect),t.arranged=!0}return e.rect=v,v},r.setLevel2=function(e,d){if(d<=e.level&&!e.scanned){var h=[],v=[];e.level=d,e.scanned=!0;for(var g=e.refer.length,p=0;pd+1&&!a.scanned&&!a.isScanConnectedToBetterLevel(e,e.level)&&(a.level++,h.push(a))}for(var t=e.referredBy.length,B=0;Bd+1&&!a.scanned&&!a.isScanConnectedToBetterLevel(e,e.level)&&(a.level++,v.push(a))}if(b){for(var w=h.length,c=0;c=0;p--){var a=h[p];r.setLevel2(a,d+1)}for(var p=v.length-1;p>=0;p--){var a=v[p];r.setLevel2(a,d+1)}}}},r.arrange=function(e,d,h,v,g,p){if(!e.arranged){var a=v;e.location=new j(d,h),e.nodes.push(e),a===null?a=new C(e.location.x,e.location.y,e.init_dim.width,e.init_dim.height):a=a.union(new C(e.location.x,e.location.y,e.init_dim.width,e.init_dim.height)),e.arranged=!0;var t,B=r.getNotArranged(e.refer),w=r.getNotArranged(e.referredBy),c=[];if(!b&&r.canGoLeft(g,d,h+e.init_dim.height+D,w))for(var f=w.length,y=0;y0)b||!T?(w=w.concat(B),t=r.orderDown(e,w,d,h+e.init_dim.height+D,[],e.nodes,g),a=a.union(t)):w.length>0?(t=r.orderLeft(e,w,d,h+e.init_dim.height+D,c,e.nodes,g),g==null?g=new C(t.x,t.y,t.width,t.height):g=g.union(t),a=a.union(t),t=r.orderDown(e,B,Math.max(d,t.x+t.width),h+e.init_dim.height+D,c,e.nodes,g),a=a.union(t)):(t=r.orderDown(e,B,d,h+e.init_dim.height+D,c,e.nodes,g),a=a.union(t));else if(w.length>0)if(b||!r.canGoLeft(g,d,h+e.init_dim.height+D,w))w=w.concat(B),t=r.orderDown(e,w,d,h+e.init_dim.height+D,[],e.nodes,g),a=a.union(t);else{var z=w[w.length-1];t=r.orderLeftCenter(e,w,d+z.init_dim.width+E,h+e.init_dim.height+D,c,e.nodes,g),a=a.union(t)}if(e.rect=new C(a.x,a.y,a.width,a.height),p!=null)for(var I=e.nodes.length,F=0;F=0||p.push(z)}return a}return e.rect},r.getNotArranged=function(e){for(var d=[],h=e.length,v=0;ve.y+e.height||d-p>e.x+p},r.orderDown=function(e,d,h,v,g,p,a){for(var t=[],B=d.length,w=0;w=0)&&!c.isConnectedToBetterLevel(e,e.level)&&(c.booked=!0,t.push(c))}var f=h,y=v,_=new C(h,v,1,1),T;a===null?T=null:T=new C(a.x,a.y,a.width,a.height);var R=[],S=t.length;if(S>1){var O=r.getReferOnly(t,e);if(O.length>0){O.length>1&&O.sort(J);for(var V=e.location.y,G=D/3,z=V+e.init_dim.height+G,I=0;I-1&&t.splice(te,1),V=F+G}else break}var H=S/2;for(H>1&&(H=1);t.length1&&I===S-1&&R.length===0)if(R.length===0&&c.referOnlyAndArranged(e)){var K=e.location.x+E+e.init_dim.width,k=r.arrange(c,K,e.location.y,null,T,p);_=_.union(k)}else{var K=Math.max(e.location.x+E+e.init_dim.width,_.x+_.width+E),k=r.arrange(c,K,e.location.y,null,T,p);_=_.union(k)}var ce=f,k=r.arrange(c,ce,y,null,T,p);T==null?T=new C(k.x,k.y,k.width,k.height):T=T.union(k),f=Math.max(f,k.x+k.width)+E,_=_.union(k)}for(var V=e.location.y,G=D/3,K=e.location.x+E+e.init_dim.width,I=0;I=0;c--){var f=d[c];if(!f.arranged&&!f.isConnectedToBetterLevel(e,e.level)&&(!f.booked||g.indexOf(f)>=0)){var y=t-f.init_dim.width,_=r.arrange(f,y,B,null,a,p);t=Math.min(t,_.x)-E,w=w.union(_)}}return w},r.orderLeftCenter=function(e,d,h,v,g,p,a){for(var t=h-E,B=v,w=[],c=new C(h,v,1,1),f=d.length-1;f>=0;f--){var y=d[f];!y.arranged&&!y.isConnectedToBetterLevel(e,e.level)&&(!y.booked||g.indexOf(y)>=0)&&w.unshift(y)}if(w.length>1){for(var _=0,f=0;f=0;f--){var y=w[f];if(!y.arranged&&!y.isConnectedToBetterLevel(e,e.level)&&(!y.booked||g.indexOf(y)>=0)){var T=t-y.init_dim.width,R=r.arrange(y,T,B,null,a,p);t=Math.min(t,R.x)-E,c=c.union(R)}}return c},r.rearrangeNoneRefTables=function(e){o=u,s=35,x=50,L=0;var d=Math.sqrt(e.length),h=Math.round(d);Math.sqrt(d*d)!=d&&h++,h++;for(var v=e.length,g=0;gh&&(o=u,n=n+d+2*D,d=0),d=Math.max(a.height,d);for(var t=o-a.x,B=n-a.y,w=p.nodes.length,c=0;c{let l=new Map;u.items.forEach(o=>{const n=o.name.toUpperCase();let s=o.schema;s&&(s=s.toUpperCase());const L=(o.columns||[]).map(D=>({name:D.name.toUpperCase(),datatype:D.datatype.replace("("," (").toUpperCase()}));let A=W.calcWidth(s,n,L,[]),b;o.type&&o.type==="view"?b=this.addView(n,s,L,A):b=this.addTable(n,s,L,A);const E=s?`${s}.${n}`:n;l.set(E,b.id),r.push(b)}),u.links.forEach(o=>{const n=l.get(o.source.toUpperCase()),s=l.get(o.target.toUpperCase());n&&s&&r.push(this.addLink(n,s,o.source_id,o.target_id))})});M(this,"addTable",(r,u,l,o)=>{let n=r;u&&(n=`${u}.${r}`);let s=new joint.shapes.quicksql.Table({id:W.newGuid(),size:{width:o}});return s.setName(n),s.setColumns(l),s});M(this,"addView",(r,u,l,o)=>{let n=r;u&&(n=`${u}.${r}`);let s=new joint.shapes.quicksql.View({id:W.newGuid(),size:{width:o}});return s.setName(n),s.setColumns(l),s});M(this,"addLink",(r,u,l,o)=>{let n="solid";return new joint.shapes.quicksql.Relation({source:{id:r,port:l.toUpperCase()},target:{id:u,port:o.toUpperCase()},style:n})});M(this,"printDiagram",()=>{this.paper.print()});M(this,"exportAsSVG",()=>{const r=this.graph.getBBox().inflate(50);this.paper.toSVG(u=>{var l="QuickSqlDiagram-";this.saveDiagram(l,u)},{area:r,convertImagesToDataUris:!0,preserveDimensions:this.paper.getComputedSize()})});M(this,"saveDiagram",(r,u)=>{function l(b){return b>=100?l(b%100):(b<10?"0":"")+b}var o=new Date,s={type:"text/plain;charset=UTF-8",name:r+l(o.getFullYear())+"-"+l(o.getMonth()+1)+"-"+l(o.getDate())+"_"+l(o.getHours()+1)+"-"+l(o.getMinutes())+".svg"},x=new Blob([u],{type:s.type}),L=window.URL.createObjectURL(x),A=document.createElement("a");document.body.appendChild(A),A.style="display: none",A.href=L,A.download=s.name,setTimeout(()=>{A.click(),window.URL.revokeObjectURL(L),A.remove()},0)});M(this,"zoomIn",()=>{this.paperScroller.zoom(.2,{max:3}),this.paperScroller.centerContent()});M(this,"zoomOut",()=>{this.paperScroller.zoom(-.2,{min:.1}),this.paperScroller.centerContent()});M(this,"fitScreen",()=>{this.paperScroller.zoomToFit({padding:10,scaleGrid:.2,minScale:.1,maxScale:3}),this.paperScroller.centerContent()});M(this,"actualSize",()=>{this.paperScroller.zoom(1,{absolute:!0}),this.paperScroller.centerContent()});M(this,"onMouseWheel",(r,u,l,o)=>{r.shiftKey&&(r.preventDefault(),o===-1?this.paperScroller.zoom(-.2,{min:.1}):o===1&&this.paperScroller.zoom(.2,{max:3}),this.paperScroller.centerContent())});if(!u||!(typeof u=="string"&&(this.element=document.querySelector(u)))&&!(typeof u=="object"&&(this.element=u)&&typeof this.element.append=="function"))throw new Error("Invalid element or selector provided");joint.anchors.columnAnchor=function(l,o,n){let s;const{model:x}=l,L=l.getNodeUnrotatedBBox(o),A=x.getBBox().center(),b=x.angle();let E=n;if(n instanceof Element){const D=this.paper.findView(n);E=D?D.getNodeBBox(n).center():new joint.g.Point}return E.rotate(A,b),s=E.x<=L.x+L.width?L.leftMiddle():L.rightMiddle(),s.rotate(A,-b)},this.data=r,this.graph=new joint.dia.Graph({},{cellNamespace:joint.shapes}),this.paper=new joint.dia.Paper({width:100,height:100,gridSize:1,model:this.graph,highlighting:!1,sorting:joint.dia.Paper.sorting.APPROX,cellViewNamespace:joint.shapes,defaultRouter:{name:"metro"},defaultAnchor:{name:"columnAnchor"},defaultConnector:{name:"rounded"},linkPinning:!1,interactive:{vertexAdd:!1,linkMove:!1,elementMove:!1}}),this.paperScroller=new joint.ui.PaperScroller({autoResizePaper:!0,padding:50,paper:this.paper}),this.paper.on("blank:pointerdown",(l,o,n)=>{this.paperScroller.setCursor("grabbing"),this.paperScroller.startPanning(l,o,n)}),this.paper.on("blank:pointerup",()=>{this.paperScroller.setCursor("default")}),this.paper.on("cell:mousewheel",(l,o,n,s,x)=>{this.onMouseWheel(o,n,s,x)}),this.paper.on("blank:mousewheel",(l,o,n,s)=>{this.onMouseWheel(l,o,n,s)}),this.keyboard&&this.keyboard.disable(),this.keyboard=new joint.ui.Keyboard,this.keyboard.on({"alt+a":function(l){this.actualSize(),l.preventDefault(),l.stopPropagation()},"alt+c":function(l){this.paperScroller.centerContent(),l.preventDefault(),l.stopPropagation()},"alt+f":function(l){this.fitScreen(),l.preventDefault(),l.stopPropagation()},"alt+p":function(l){this.printDiagram(),l.preventDefault(),l.stopPropagation()},"alt+s":function(l){this.exportAsSVG(),l.preventDefault(),l.stopPropagation()}},this),this.element.append(this.paperScroller.render().el),this.updateDiagram()}async updateDiagram(){var r;if((r=this.data.items)!=null&&r.length){let u=[];this.buildDiagram(u,this.data),this.graph.resetCells(u),this.autoLayout(),setTimeout(()=>{this.paperScroller.adjustPaper(),this.actualSize()},100)}}getAllElements(){let r=[],u=this.graph.getElements(),l=u.length;for(var o=0;o 0 && "0" <= x[0] && x[0] <= "9") - k = !0; + if (!m.startsWith(L) && !x) { + const k = m; + if (k.length > 0 && "0" <= k[0] && k[0] <= "9") + x = !0; else - for (let p in x) { - const h = x[p]; - if (M.indexOf(h) < 0 && (h < "0" || "9" < h && h < "A" || "Z" < h && h < "a" || "z" < h)) { - k = !0; + for (let p in k) { + const f = k[p]; + if (M.indexOf(f) < 0 && (f < "0" || "9" < f && f < "A" || "Z" < f && f < "a" || "z" < f)) { + x = !0; break; } } } - return (m.startsWith("_") || m.startsWith("$") || m.startsWith("#")) && (k = !0), k || (L = ""), L + m + L; + return (m.startsWith("_") || m.startsWith("$") || m.startsWith("#")) && (x = !0), x || (L = ""), L + m + L; } -function me(m) { +function de(m) { if (m == null) return null; if (m.indexOf('"') == 0) @@ -31,12 +31,12 @@ function me(m) { return b.indexOf('"') == 0 || (b = b.replace(/ /g, "_")), b; } function J(m, b, L) { - let k = !1; - L == null && (L = ""), m.indexOf('"') == 0 && (k = !0, m = m.substring(1, m.length - 1)), b.indexOf('"') == 0 && (k = !0, b = b.substring(1, b.length - 1)), L.indexOf('"') == 0 && (k = !0, L = L.substring(1, L.length - 1)); + let x = !1; + L == null && (L = ""), m.indexOf('"') == 0 && (x = !0, m = m.substring(1, m.length - 1)), b.indexOf('"') == 0 && (x = !0, b = b.substring(1, b.length - 1)), L.indexOf('"') == 0 && (x = !0, L = L.substring(1, L.length - 1)); let M = m + b + L; - return k ? M = '"' + M + '"' : M = M.toLowerCase(), M; + return x ? M = '"' + M + '"' : M = M.toLowerCase(), M; } -var te = function() { +var oe = function() { var m = [ "Sales", "Finance", @@ -76,18 +76,18 @@ var te = function() { "\uC804\uB3C4\uC790", "\uD310\uB9E4\uC6D0" ]; - function k(M, x) { - if (typeof x != "string" || M.substring(0, 2).toLowerCase() == "en") - return x; - x.indexOf("'") == 0 && (x = x.substring(1, x.length - 1)); - for (var p = -1, h = 0; h < m.length; h++) - if (m[h] == x) { - p = h; + function x(M, k) { + if (typeof k != "string" || M.substring(0, 2).toLowerCase() == "en") + return k; + k.indexOf("'") == 0 && (k = k.substring(1, k.length - 1)); + for (var p = -1, f = 0; f < m.length; f++) + if (m[f] == k) { + p = f; break; } - return 0 <= p && M.substring(0, 2).toLowerCase() == "jp" && p < b.length ? "'" + b[p] + "'" : 0 <= p && M.substring(0, 2).toLowerCase() == "kr" && p < L.length ? "'" + L[p] + "'" : x; + return 0 <= p && M.substring(0, 2).toLowerCase() == "jp" && p < b.length ? "'" + b[p] + "'" : 0 <= p && M.substring(0, 2).toLowerCase() == "kr" && p < L.length ? "'" + L[p] + "'" : k; } - return k; + return x; }(); function fe(m) { return m && m.__esModule && Object.prototype.hasOwnProperty.call(m, "default") ? m.default : m; @@ -95,7 +95,7 @@ function fe(m) { var ie = { exports: {} }; (function(m, b) { (function() { - var L = 9007199254740992, k = -L, M = "0123456789", x = "abcdefghijklmnopqrstuvwxyz", p = x.toUpperCase(), h = M + "abcdef"; + var L = 9007199254740992, x = -L, M = "0123456789", k = "abcdefghijklmnopqrstuvwxyz", p = k.toUpperCase(), f = M + "abcdef"; function y(e) { this.name = "UnsupportedError", this.message = e || "This feature is not supported on this platform"; } @@ -110,10 +110,10 @@ var ie = { exports: {} }; for (var a = 0; a < arguments.length; a++) { var n = 0; if (Object.prototype.toString.call(arguments[a]) === "[object String]") - for (var s = 0; s < arguments[a].length; s++) { - for (var c = 0, g = 0; g < arguments[a].length; g++) - c = arguments[a].charCodeAt(g) + (c << 6) + (c << 16) - c; - n += c; + for (var o = 0; o < arguments[a].length; o++) { + for (var u = 0, g = 0; g < arguments[a].length; g++) + u = arguments[a].charCodeAt(g) + (u << 6) + (u << 16) - u; + n += u; } else n = arguments[a]; @@ -124,7 +124,7 @@ var ie = { exports: {} }; }, this; } i.prototype.VERSION = "1.1.11"; - function u(e, a) { + function c(e, a) { if (e = e || {}, a) for (var n in a) typeof e[n] > "u" && (e[n] = a[n]); @@ -139,24 +139,24 @@ var ie = { exports: {} }; if (e) throw new RangeError(a); } - var l = function() { + var s = function() { throw new Error("No Base64 encoder available."); }; (function() { - typeof btoa == "function" ? l = btoa : typeof Buffer == "function" && (l = function(a) { + typeof btoa == "function" ? s = btoa : typeof Buffer == "function" && (s = function(a) { return new Buffer(a).toString("base64"); }); })(), i.prototype.bool = function(e) { - return e = u(e, { likelihood: 50 }), t( + return e = c(e, { likelihood: 50 }), t( e.likelihood < 0 || e.likelihood > 100, "Chance: Likelihood accepts values from 0 to 100." ), this.random() * 100 < e.likelihood; }, i.prototype.falsy = function(e) { - e = u(e, { pool: [!1, null, 0, NaN, "", void 0] }); - var a = e.pool, n = this.integer({ min: 0, max: a.length - 1 }), s = a[n]; - return s; + e = c(e, { pool: [!1, null, 0, NaN, "", void 0] }); + var a = e.pool, n = this.integer({ min: 0, max: a.length - 1 }), o = a[n]; + return o; }, i.prototype.animal = function(e) { - if (e = u(e), typeof e.type < "u") + if (e = c(e), typeof e.type < "u") return t( !this.get("animals")[e.type.toLowerCase()], "Please pick from desert, ocean, grassland, forest, zoo, pets, farm." @@ -164,34 +164,34 @@ var ie = { exports: {} }; var a = ["desert", "forest", "ocean", "zoo", "farm", "pet", "grassland"]; return this.pick(this.get("animals")[this.pick(a)]); }, i.prototype.character = function(e) { - e = u(e); - var a = "!@#$%^&*()[]", n, s; - return e.casing === "lower" ? n = x : e.casing === "upper" ? n = p : n = x + p, e.pool ? s = e.pool : (s = "", e.alpha && (s += n), e.numeric && (s += M), e.symbols && (s += a), s || (s = n + M + a)), s.charAt(this.natural({ max: s.length - 1 })); + e = c(e); + var a = "!@#$%^&*()[]", n, o; + return e.casing === "lower" ? n = k : e.casing === "upper" ? n = p : n = k + p, e.pool ? o = e.pool : (o = "", e.alpha && (o += n), e.numeric && (o += M), e.symbols && (o += a), o || (o = n + M + a)), o.charAt(this.natural({ max: o.length - 1 })); }, i.prototype.floating = function(e) { - e = u(e, { fixed: 4 }), t( + e = c(e, { fixed: 4 }), t( e.fixed && e.precision, "Chance: Cannot specify both fixed and precision." ); - var a, n = Math.pow(10, e.fixed), s = L / n, c = -s; + var a, n = Math.pow(10, e.fixed), o = L / n, u = -o; t( - e.min && e.fixed && e.min < c, - "Chance: Min specified is out of range with fixed. Min should be, at least, " + c + e.min && e.fixed && e.min < u, + "Chance: Min specified is out of range with fixed. Min should be, at least, " + u ), t( - e.max && e.fixed && e.max > s, - "Chance: Max specified is out of range with fixed. Max should be, at most, " + s - ), e = u(e, { min: c, max: s }), a = this.integer({ min: e.min * n, max: e.max * n }); + e.max && e.fixed && e.max > o, + "Chance: Max specified is out of range with fixed. Max should be, at most, " + o + ), e = c(e, { min: u, max: o }), a = this.integer({ min: e.min * n, max: e.max * n }); var g = (a / n).toFixed(e.fixed); return parseFloat(g); }, i.prototype.integer = function(e) { - return e = u(e, { min: k, max: L }), t(e.min > e.max, "Chance: Min cannot be greater than Max."), Math.floor(this.random() * (e.max - e.min + 1) + e.min); + return e = c(e, { min: x, max: L }), t(e.min > e.max, "Chance: Min cannot be greater than Max."), Math.floor(this.random() * (e.max - e.min + 1) + e.min); }, i.prototype.natural = function(e) { - if (e = u(e, { min: 0, max: L }), typeof e.numerals == "number" && (t(e.numerals < 1, "Chance: Numerals cannot be less than one."), e.min = Math.pow(10, e.numerals - 1), e.max = Math.pow(10, e.numerals) - 1), t(e.min < 0, "Chance: Min cannot be less than zero."), e.exclude) { + if (e = c(e, { min: 0, max: L }), typeof e.numerals == "number" && (t(e.numerals < 1, "Chance: Numerals cannot be less than one."), e.min = Math.pow(10, e.numerals - 1), e.max = Math.pow(10, e.numerals) - 1), t(e.min < 0, "Chance: Min cannot be less than zero."), e.exclude) { t(!Array.isArray(e.exclude), "Chance: exclude must be an array."); for (var a in e.exclude) t(!Number.isInteger(e.exclude[a]), "Chance: exclude must be numbers."); - var n = e.min + this.natural({ max: e.max - e.min - e.exclude.length }), s = e.exclude.sort(); - for (var c in s) { - if (n < s[c]) + var n = e.min + this.natural({ max: e.max - e.min - e.exclude.length }), o = e.exclude.sort(); + for (var u in o) { + if (n < o[u]) break; n++; } @@ -199,15 +199,15 @@ var ie = { exports: {} }; } return this.integer(e); }, i.prototype.prime = function(e) { - e = u(e, { min: 0, max: 1e4 }), t(e.min < 0, "Chance: Min cannot be less than zero."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); - var a = T.primes[T.primes.length - 1]; + e = c(e, { min: 0, max: 1e4 }), t(e.min < 0, "Chance: Min cannot be less than zero."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); + var a = I.primes[I.primes.length - 1]; if (e.max > a) for (var n = a + 2; n <= e.max; ++n) - this.is_prime(n) && T.primes.push(n); - var s = T.primes.filter(function(c) { - return c >= e.min && c <= e.max; + this.is_prime(n) && I.primes.push(n); + var o = I.primes.filter(function(u) { + return u >= e.min && u <= e.max; }); - return this.pick(s); + return this.pick(o); }, i.prototype.is_prime = function(e) { if (e % 1 || e < 2) return !1; @@ -220,22 +220,22 @@ var ie = { exports: {} }; return !1; return !0; }, i.prototype.hex = function(e) { - e = u(e, { min: 0, max: L, casing: "lower" }), t(e.min < 0, "Chance: Min cannot be less than zero."); + e = c(e, { min: 0, max: L, casing: "lower" }), t(e.min < 0, "Chance: Min cannot be less than zero."); var a = this.natural({ min: e.min, max: e.max }); return e.casing === "upper" ? a.toString(16).toUpperCase() : a.toString(16); }, i.prototype.letter = function(e) { - e = u(e, { casing: "lower" }); + e = c(e, { casing: "lower" }); var a = "abcdefghijklmnopqrstuvwxyz", n = this.character({ pool: a }); return e.casing === "upper" && (n = n.toUpperCase()), n; }, i.prototype.string = function(e) { - e = u(e, { min: 5, max: 20 }), e.length !== 0 && !e.length && (e.length = this.natural({ min: e.min, max: e.max })), t(e.length < 0, "Chance: Length cannot be less than zero."); + e = c(e, { min: 5, max: 20 }), e.length !== 0 && !e.length && (e.length = this.natural({ min: e.min, max: e.max })), t(e.length < 0, "Chance: Length cannot be less than zero."); var a = e.length, n = this.n(this.character, a, e); return n.join(""); }; - function o(e) { + function l(e) { this.c = e; } - o.prototype = { + l.prototype = { substitute: function() { return this.c; } @@ -250,10 +250,10 @@ var ie = { exports: {} }; return this.c; } }; - function P(e) { + function E(e) { this.c = e; } - P.prototype = { + E.prototype = { replacers: { "#": function(e) { return e.character({ pool: M }); @@ -262,7 +262,7 @@ var ie = { exports: {} }; return e.character({ pool: p }); }, a: function(e) { - return e.character({ pool: x }); + return e.character({ pool: k }); } }, substitute: function(e) { @@ -272,18 +272,18 @@ var ie = { exports: {} }; return a(e); } }; - function B(e) { - for (var a = [], n = "identity", s = 0; s < e.length; s++) { - var c = e[s]; + function P(e) { + for (var a = [], n = "identity", o = 0; o < e.length; o++) { + var u = e[o]; switch (n) { case "escape": - a.push(new d(c)), n = "identity"; + a.push(new d(u)), n = "identity"; break; case "identity": - c === "{" ? n = "replace" : c === "\\" ? n = "escape" : a.push(new o(c)); + u === "{" ? n = "replace" : u === "\\" ? n = "escape" : a.push(new l(u)); break; case "replace": - c === "}" ? n = "identity" : a.push(new P(c)); + u === "}" ? n = "identity" : a.push(new E(u)); break; } } @@ -293,13 +293,13 @@ var ie = { exports: {} }; if (!e) throw new Error("Template string is required"); var a = this; - return B(e).map(function(n) { + return P(e).map(function(n) { return n.substitute(a); }).join(""); }, i.prototype.buffer = function(e) { if (typeof Buffer > "u") throw new y("Sorry, the buffer() function is not supported on your platform"); - e = u(e, { length: this.natural({ min: 5, max: 20 }) }), t(e.length < 0, "Chance: Length cannot be less than zero."); + e = c(e, { length: this.natural({ min: 5, max: 20 }) }), t(e.length < 0, "Chance: Length cannot be less than zero."); var a = e.length, n = this.n(this.character, a, e); return Buffer.from(n); }, i.prototype.capitalize = function(e) { @@ -313,25 +313,25 @@ var ie = { exports: {} }; typeof e != "function", "Chance: The first argument must be a function." ); - var s = function(A, H) { + var o = function(A, H) { return A.indexOf(H) !== -1; }; - n && (s = n.comparator || s); - for (var c = [], g = 0, E, f = a * 50, v = S.call(arguments, 2); c.length < a; ) { + n && (o = n.comparator || o); + for (var u = [], g = 0, T, h = a * 50, v = S.call(arguments, 2); u.length < a; ) { var C = JSON.parse(JSON.stringify(v)); - if (E = e.apply(this, C), s(c, E) || (c.push(E), g = 0), ++g > f) + if (T = e.apply(this, C), o(u, T) || (u.push(T), g = 0), ++g > h) throw new RangeError("Chance: num is likely too large for sample set"); } - return c; + return u; }, i.prototype.n = function(e, a) { t( typeof e != "function", "Chance: The first argument must be a function." ), typeof a > "u" && (a = 1); - var n = a, s = [], c = S.call(arguments, 2); + var n = a, o = [], u = S.call(arguments, 2); for (n = Math.max(0, n), null; n--; null) - s.push(e.apply(this, c)); - return s; + o.push(e.apply(this, u)); + return o; }, i.prototype.pad = function(e, a, n) { return n = n || "0", e = e + "", e.length >= a ? e : new Array(a - e.length + 1).join(n) + e; }, i.prototype.pick = function(e, a) { @@ -351,29 +351,29 @@ var ie = { exports: {} }; throw new RangeError("Chance: Count must be a positive number"); if (!a || a === 1) return [this.pickone(e)]; - var n = e.slice(0), s = n.length; + var n = e.slice(0), o = n.length; return this.n(function() { - var c = this.natural({ max: --s }), g = n[c]; - return n[c] = n[s], g; - }, Math.min(s, a)); + var u = this.natural({ max: --o }), g = n[u]; + return n[u] = n[o], g; + }, Math.min(o, a)); }, i.prototype.shuffle = function(e) { - for (var a = [], n = 0, s = Number(e.length), c = r(s), g = s - 1, E, f = 0; f < s; f++) - E = this.natural({ max: g }), n = c[E], a[f] = e[n], c[E] = c[g], g -= 1; + for (var a = [], n = 0, o = Number(e.length), u = r(o), g = o - 1, T, h = 0; h < o; h++) + T = this.natural({ max: g }), n = u[T], a[h] = e[n], u[T] = u[g], g -= 1; return a; }, i.prototype.weighted = function(e, a, n) { if (e.length !== a.length) throw new RangeError("Chance: Length of array and weights must match"); - for (var s = 0, c, g = 0; g < a.length; ++g) { - if (c = a[g], isNaN(c)) + for (var o = 0, u, g = 0; g < a.length; ++g) { + if (u = a[g], isNaN(u)) throw new RangeError("Chance: All weights must be numbers"); - c > 0 && (s += c); + u > 0 && (o += u); } - if (s === 0) + if (o === 0) throw new RangeError("Chance: No valid entries in array weights"); - var E = this.random() * s, f = 0, v = -1, C; + var T = this.random() * o, h = 0, v = -1, C; for (g = 0; g < a.length; ++g) { - if (c = a[g], f += c, c > 0) { - if (E <= f) { + if (u = a[g], h += u, u > 0) { + if (T <= h) { C = g; break; } @@ -384,21 +384,21 @@ var ie = { exports: {} }; var A = e[C]; return n = typeof n > "u" ? !1 : n, n && (e.splice(C, 1), a.splice(C, 1)), A; }, i.prototype.paragraph = function(e) { - e = u(e); - var a = e.sentences || this.natural({ min: 3, max: 7 }), n = this.n(this.sentence, a), s = e.linebreak === !0 ? ` + e = c(e); + var a = e.sentences || this.natural({ min: 3, max: 7 }), n = this.n(this.sentence, a), o = e.linebreak === !0 ? ` ` : " "; - return n.join(s); + return n.join(o); }, i.prototype.sentence = function(e) { - e = u(e); - var a = e.words || this.natural({ min: 12, max: 18 }), n = e.punctuation, s, c = this.n(this.word, a); - return s = c.join(" "), s = this.capitalize(s), n !== !1 && !/^[.?;!:]$/.test(n) && (n = "."), n && (s += n), s; + e = c(e); + var a = e.words || this.natural({ min: 12, max: 18 }), n = e.punctuation, o, u = this.n(this.word, a); + return o = u.join(" "), o = this.capitalize(o), n !== !1 && !/^[.?;!:]$/.test(n) && (n = "."), n && (o += n), o; }, i.prototype.syllable = function(e) { - e = u(e); - for (var a = e.length || this.natural({ min: 2, max: 3 }), n = "bcdfghjklmnprstvwz", s = "aeiou", c = n + s, g = "", E, f = 0; f < a; f++) - f === 0 ? E = this.character({ pool: c }) : n.indexOf(E) === -1 ? E = this.character({ pool: n }) : E = this.character({ pool: s }), g += E; + e = c(e); + for (var a = e.length || this.natural({ min: 2, max: 3 }), n = "bcdfghjklmnprstvwz", o = "aeiou", u = n + o, g = "", T, h = 0; h < a; h++) + h === 0 ? T = this.character({ pool: u }) : n.indexOf(T) === -1 ? T = this.character({ pool: n }) : T = this.character({ pool: o }), g += T; return e.capitalize && (g = this.capitalize(g)), g; }, i.prototype.word = function(e) { - e = u(e), t( + e = c(e), t( e.syllables && e.length, "Chance: Cannot specify both syllables AND length." ); @@ -409,11 +409,11 @@ var ie = { exports: {} }; while (n.length < e.length); n = n.substring(0, e.length); } else - for (var s = 0; s < a; s++) + for (var o = 0; o < a; o++) n += this.syllable(); return e.capitalize && (n = this.capitalize(n)), n; }, i.prototype.age = function(e) { - e = u(e); + e = c(e); var a; switch (e.type) { case "child": @@ -437,115 +437,115 @@ var ie = { exports: {} }; } return this.natural(a); }, i.prototype.birthday = function(e) { - var a = this.age(e), n = /* @__PURE__ */ new Date(), s = n.getFullYear(); + var a = this.age(e), n = /* @__PURE__ */ new Date(), o = n.getFullYear(); if (e && e.type) { - var c = /* @__PURE__ */ new Date(), g = /* @__PURE__ */ new Date(); - c.setFullYear(s - a - 1), g.setFullYear(s - a), e = u(e, { - min: c, + var u = /* @__PURE__ */ new Date(), g = /* @__PURE__ */ new Date(); + u.setFullYear(o - a - 1), g.setFullYear(o - a), e = c(e, { + min: u, max: g }); } else if (e && (e.minAge !== void 0 || e.maxAge !== void 0)) { t(e.minAge < 0, "Chance: MinAge cannot be less than zero."), t(e.minAge > e.maxAge, "Chance: MinAge cannot be greater than MaxAge."); - var E = e.minAge !== void 0 ? e.minAge : 0, f = e.maxAge !== void 0 ? e.maxAge : 100, v = new Date(s - f - 1, n.getMonth(), n.getDate()), C = new Date(s - E, n.getMonth(), n.getDate()); - v.setDate(v.getDate() + 1), C.setDate(C.getDate() + 1), C.setMilliseconds(C.getMilliseconds() - 1), e = u(e, { + var T = e.minAge !== void 0 ? e.minAge : 0, h = e.maxAge !== void 0 ? e.maxAge : 100, v = new Date(o - h - 1, n.getMonth(), n.getDate()), C = new Date(o - T, n.getMonth(), n.getDate()); + v.setDate(v.getDate() + 1), C.setDate(C.getDate() + 1), C.setMilliseconds(C.getMilliseconds() - 1), e = c(e, { min: v, max: C }); } else - e = u(e, { - year: s - a + e = c(e, { + year: o - a }); return this.date(e); }, i.prototype.cpf = function(e) { - e = u(e, { + e = c(e, { formatted: !0 }); var a = this.n(this.natural, 9, { max: 9 }), n = a[8] * 2 + a[7] * 3 + a[6] * 4 + a[5] * 5 + a[4] * 6 + a[3] * 7 + a[2] * 8 + a[1] * 9 + a[0] * 10; n = 11 - n % 11, n >= 10 && (n = 0); - var s = n * 2 + a[8] * 3 + a[7] * 4 + a[6] * 5 + a[5] * 6 + a[4] * 7 + a[3] * 8 + a[2] * 9 + a[1] * 10 + a[0] * 11; - s = 11 - s % 11, s >= 10 && (s = 0); - var c = "" + a[0] + a[1] + a[2] + "." + a[3] + a[4] + a[5] + "." + a[6] + a[7] + a[8] + "-" + n + s; - return e.formatted ? c : c.replace(/\D/g, ""); + var o = n * 2 + a[8] * 3 + a[7] * 4 + a[6] * 5 + a[5] * 6 + a[4] * 7 + a[3] * 8 + a[2] * 9 + a[1] * 10 + a[0] * 11; + o = 11 - o % 11, o >= 10 && (o = 0); + var u = "" + a[0] + a[1] + a[2] + "." + a[3] + a[4] + a[5] + "." + a[6] + a[7] + a[8] + "-" + n + o; + return e.formatted ? u : u.replace(/\D/g, ""); }, i.prototype.cnpj = function(e) { - e = u(e, { + e = c(e, { formatted: !0 }); var a = this.n(this.natural, 12, { max: 12 }), n = a[11] * 2 + a[10] * 3 + a[9] * 4 + a[8] * 5 + a[7] * 6 + a[6] * 7 + a[5] * 8 + a[4] * 9 + a[3] * 2 + a[2] * 3 + a[1] * 4 + a[0] * 5; n = 11 - n % 11, n < 2 && (n = 0); - var s = n * 2 + a[11] * 3 + a[10] * 4 + a[9] * 5 + a[8] * 6 + a[7] * 7 + a[6] * 8 + a[5] * 9 + a[4] * 2 + a[3] * 3 + a[2] * 4 + a[1] * 5 + a[0] * 6; - s = 11 - s % 11, s < 2 && (s = 0); - var c = "" + a[0] + a[1] + "." + a[2] + a[3] + a[4] + "." + a[5] + a[6] + a[7] + "/" + a[8] + a[9] + a[10] + a[11] + "-" + n + s; - return e.formatted ? c : c.replace(/\D/g, ""); + var o = n * 2 + a[11] * 3 + a[10] * 4 + a[9] * 5 + a[8] * 6 + a[7] * 7 + a[6] * 8 + a[5] * 9 + a[4] * 2 + a[3] * 3 + a[2] * 4 + a[1] * 5 + a[0] * 6; + o = 11 - o % 11, o < 2 && (o = 0); + var u = "" + a[0] + a[1] + "." + a[2] + a[3] + a[4] + "." + a[5] + a[6] + a[7] + "/" + a[8] + a[9] + a[10] + a[11] + "-" + n + o; + return e.formatted ? u : u.replace(/\D/g, ""); }, i.prototype.first = function(e) { - return e = u(e, { gender: this.gender(), nationality: "en" }), this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()]); + return e = c(e, { gender: this.gender(), nationality: "en" }), this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()]); }, i.prototype.profession = function(e) { - return e = u(e), e.rank ? this.pick(["Apprentice ", "Junior ", "Senior ", "Lead "]) + this.pick(this.get("profession")) : this.pick(this.get("profession")); + return e = c(e), e.rank ? this.pick(["Apprentice ", "Junior ", "Senior ", "Lead "]) + this.pick(this.get("profession")) : this.pick(this.get("profession")); }, i.prototype.company = function() { return this.pick(this.get("company")); }, i.prototype.gender = function(e) { - return e = u(e, { extraGenders: [] }), this.pick(["Male", "Female"].concat(e.extraGenders)); + return e = c(e, { extraGenders: [] }), this.pick(["Male", "Female"].concat(e.extraGenders)); }, i.prototype.last = function(e) { - if (e = u(e, { nationality: "*" }), e.nationality === "*") { + if (e = c(e, { nationality: "*" }), e.nationality === "*") { var a = [], n = this.get("lastNames"); - return Object.keys(n).forEach(function(s) { - a = a.concat(n[s]); + return Object.keys(n).forEach(function(o) { + a = a.concat(n[o]); }), this.pick(a); } else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()]); }, i.prototype.israelId = function() { for (var e = this.string({ pool: "0123456789", length: 8 }), a = 0, n = 0; n < e.length; n++) { - var s = e[n] * (n / 2 === parseInt(n / 2) ? 1 : 2); - s = this.pad(s, 2).toString(), s = parseInt(s[0]) + parseInt(s[1]), a = a + s; + var o = e[n] * (n / 2 === parseInt(n / 2) ? 1 : 2); + o = this.pad(o, 2).toString(), o = parseInt(o[0]) + parseInt(o[1]), a = a + o; } return e = e + (10 - parseInt(a.toString().slice(-1))).toString().slice(-1), e; }, i.prototype.mrz = function(e) { - var a = function(c) { - var g = "", "<=", ">=", "="]); e.range && (a = e.range); var n = ""; @@ -744,29 +744,29 @@ var ie = { exports: {} }; }, i.prototype.twitter = function() { return "@" + this.word(); }, i.prototype.url = function(e) { - e = u(e, { protocol: "http", domain: this.domain(e), domain_prefix: "", path: this.word(), extensions: [] }); + e = c(e, { protocol: "http", domain: this.domain(e), domain_prefix: "", path: this.word(), extensions: [] }); var a = e.extensions.length > 0 ? "." + this.pick(e.extensions) : "", n = e.domain_prefix ? e.domain_prefix + "." + e.domain : e.domain; return e.protocol + "://" + n + "/" + e.path + a; }, i.prototype.port = function() { return this.integer({ min: 0, max: 65535 }); }, i.prototype.locale = function(e) { - return e = u(e), e.region ? this.pick(this.get("locale_regions")) : this.pick(this.get("locale_languages")); + return e = c(e), e.region ? this.pick(this.get("locale_regions")) : this.pick(this.get("locale_languages")); }, i.prototype.locales = function(e) { - return e = u(e), e.region ? this.get("locale_regions") : this.get("locale_languages"); + return e = c(e), e.region ? this.get("locale_regions") : this.get("locale_languages"); }, i.prototype.loremPicsum = function(e) { - e = u(e, { width: 500, height: 500, greyscale: !1, blurred: !1 }); + e = c(e, { width: 500, height: 500, greyscale: !1, blurred: !1 }); var a = e.greyscale ? "g/" : "", n = e.blurred ? "/?blur" : "/?random"; return "https://picsum.photos/" + a + e.width + "/" + e.height + n; }, i.prototype.address = function(e) { - return e = u(e), this.natural({ min: 5, max: 2e3 }) + " " + this.street(e); + return e = c(e), this.natural({ min: 5, max: 2e3 }) + " " + this.street(e); }, i.prototype.altitude = function(e) { - return e = u(e, { fixed: 5, min: 0, max: 8848 }), this.floating({ + return e = c(e, { fixed: 5, min: 0, max: 8848 }), this.floating({ min: e.min, max: e.max, fixed: e.fixed }); }, i.prototype.areacode = function(e) { - e = u(e, { parens: !0 }); + e = c(e, { parens: !0 }); var a = e.exampleNumber ? "555" : this.natural({ min: 2, max: 9 }).toString() + this.natural({ min: 0, max: 8 }).toString() + this.natural({ min: 0, max: 9 }).toString(); return e.parens ? "(" + a + ")" : a; }, i.prototype.city = function() { @@ -776,68 +776,68 @@ var ie = { exports: {} }; }, i.prototype.countries = function() { return this.get("countries"); }, i.prototype.country = function(e) { - e = u(e); + e = c(e); var a = this.pick(this.countries()); return e.raw ? a : e.full ? a.name : a.abbreviation; }, i.prototype.depth = function(e) { - return e = u(e, { fixed: 5, min: -10994, max: 0 }), this.floating({ + return e = c(e, { fixed: 5, min: -10994, max: 0 }), this.floating({ min: e.min, max: e.max, fixed: e.fixed }); }, i.prototype.geohash = function(e) { - return e = u(e, { length: 7 }), this.string({ length: e.length, pool: "0123456789bcdefghjkmnpqrstuvwxyz" }); + return e = c(e, { length: 7 }), this.string({ length: e.length, pool: "0123456789bcdefghjkmnpqrstuvwxyz" }); }, i.prototype.geojson = function(e) { return this.latitude(e) + ", " + this.longitude(e) + ", " + this.altitude(e); }, i.prototype.latitude = function(e) { - var [a, n, s] = ["ddm", "dms", "dd"]; - e = u( + var [a, n, o] = ["ddm", "dms", "dd"]; + e = c( e, - e && e.format && [a, n].includes(e.format.toLowerCase()) ? { min: 0, max: 89, fixed: 4 } : { fixed: 5, min: -90, max: 90, format: s } + e && e.format && [a, n].includes(e.format.toLowerCase()) ? { min: 0, max: 89, fixed: 4 } : { fixed: 5, min: -90, max: 90, format: o } ); - var c = e.format.toLowerCase(); - switch ((c === a || c === n) && (t(e.min < 0 || e.min > 89, "Chance: Min specified is out of range. Should be between 0 - 89"), t(e.max < 0 || e.max > 89, "Chance: Max specified is out of range. Should be between 0 - 89"), t(e.fixed > 4, "Chance: Fixed specified should be below or equal to 4")), c) { + var u = e.format.toLowerCase(); + switch ((u === a || u === n) && (t(e.min < 0 || e.min > 89, "Chance: Min specified is out of range. Should be between 0 - 89"), t(e.max < 0 || e.max > 89, "Chance: Max specified is out of range. Should be between 0 - 89"), t(e.fixed > 4, "Chance: Fixed specified should be below or equal to 4")), u) { case a: return this.integer({ min: e.min, max: e.max }) + "\xB0" + this.floating({ min: 0, max: 59, fixed: e.fixed }); case n: return this.integer({ min: e.min, max: e.max }) + "\xB0" + this.integer({ min: 0, max: 59 }) + "\u2019" + this.floating({ min: 0, max: 59, fixed: e.fixed }) + "\u201D"; - case s: + case o: default: return this.floating({ min: e.min, max: e.max, fixed: e.fixed }); } }, i.prototype.longitude = function(e) { - var [a, n, s] = ["ddm", "dms", "dd"]; - e = u( + var [a, n, o] = ["ddm", "dms", "dd"]; + e = c( e, - e && e.format && [a, n].includes(e.format.toLowerCase()) ? { min: 0, max: 179, fixed: 4 } : { fixed: 5, min: -180, max: 180, format: s } + e && e.format && [a, n].includes(e.format.toLowerCase()) ? { min: 0, max: 179, fixed: 4 } : { fixed: 5, min: -180, max: 180, format: o } ); - var c = e.format.toLowerCase(); - switch ((c === a || c === n) && (t(e.min < 0 || e.min > 179, "Chance: Min specified is out of range. Should be between 0 - 179"), t(e.max < 0 || e.max > 179, "Chance: Max specified is out of range. Should be between 0 - 179"), t(e.fixed > 4, "Chance: Fixed specified should be below or equal to 4")), c) { + var u = e.format.toLowerCase(); + switch ((u === a || u === n) && (t(e.min < 0 || e.min > 179, "Chance: Min specified is out of range. Should be between 0 - 179"), t(e.max < 0 || e.max > 179, "Chance: Max specified is out of range. Should be between 0 - 179"), t(e.fixed > 4, "Chance: Fixed specified should be below or equal to 4")), u) { case a: return this.integer({ min: e.min, max: e.max }) + "\xB0" + this.floating({ min: 0, max: 59.9999, fixed: e.fixed }); case n: return this.integer({ min: e.min, max: e.max }) + "\xB0" + this.integer({ min: 0, max: 59 }) + "\u2019" + this.floating({ min: 0, max: 59.9999, fixed: e.fixed }) + "\u201D"; - case s: + case o: default: return this.floating({ min: e.min, max: e.max, fixed: e.fixed }); } }, i.prototype.phone = function(e) { - var a = this, n, s = function(H) { + var a = this, n, o = function(H) { var _ = []; return H.sections.forEach(function(W) { _.push(a.string({ pool: "0123456789", length: W })); }), H.area + _.join(" "); }; - e = u(e, { + e = c(e, { formatted: !0, country: "us", mobile: !1, exampleNumber: !1 }), e.formatted || (e.parens = !1); - var c; + var u; switch (e.country) { case "fr": - e.mobile ? (n = this.pick(["06", "07"]) + a.string({ pool: "0123456789", length: 8 }), c = e.formatted ? n.match(/../g).join(" ") : n) : (n = this.pick([ + e.mobile ? (n = this.pick(["06", "07"]) + a.string({ pool: "0123456789", length: 8 }), u = e.formatted ? n.match(/../g).join(" ") : n) : (n = this.pick([ // Valid zone and département codes. "01" + this.pick(["30", "34", "39", "40", "41", "42", "43", "44", "45", "46", "47", "48", "49", "53", "55", "56", "58", "60", "64", "69", "70", "72", "73", "74", "75", "76", "77", "78", "79", "80", "81", "82", "83"]) + a.string({ pool: "0123456789", length: 6 }), "02" + this.pick(["14", "18", "22", "23", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37", "38", "40", "41", "43", "44", "45", "46", "47", "48", "49", "50", "51", "52", "53", "54", "56", "57", "61", "62", "69", "72", "76", "77", "78", "85", "90", "96", "97", "98", "99"]) + a.string({ pool: "0123456789", length: 6 }), @@ -845,13 +845,13 @@ var ie = { exports: {} }; "04" + this.pick(["11", "13", "15", "20", "22", "26", "27", "30", "32", "34", "37", "42", "43", "44", "50", "56", "57", "63", "66", "67", "68", "69", "70", "71", "72", "73", "74", "75", "76", "77", "78", "79", "80", "81", "82", "83", "84", "85", "86", "88", "89", "90", "91", "92", "93", "94", "95", "97", "98"]) + a.string({ pool: "0123456789", length: 6 }), "05" + this.pick(["08", "16", "17", "19", "24", "31", "32", "33", "34", "35", "40", "45", "46", "47", "49", "53", "55", "56", "57", "58", "59", "61", "62", "63", "64", "65", "67", "79", "81", "82", "86", "87", "90", "94"]) + a.string({ pool: "0123456789", length: 6 }), "09" + a.string({ pool: "0123456789", length: 8 }) - ]), c = e.formatted ? n.match(/../g).join(" ") : n); + ]), u = e.formatted ? n.match(/../g).join(" ") : n); break; case "uk": e.mobile ? (n = this.pick([ { area: "07" + this.pick(["4", "5", "7", "8", "9"]), sections: [2, 6] }, { area: "07624 ", sections: [6] } - ]), c = e.formatted ? s(n) : s(n).replace(" ", "")) : (n = this.pick([ + ]), u = e.formatted ? o(n) : o(n).replace(" ", "")) : (n = this.pick([ //valid area codes of major cities/counties followed by random numbers in required format. { area: "01" + this.character({ pool: "234569" }) + "1 ", sections: [3, 4] }, { area: "020 " + this.character({ pool: "378" }), sections: [3, 4] }, @@ -866,7 +866,7 @@ var ie = { exports: {} }; { area: "017" + this.pick(["26", "44", "50", "68"]) + " ", sections: [6] }, { area: "018" + this.pick(["27", "37", "84", "97"]) + " ", sections: [6] }, { area: "019" + this.pick(["00", "05", "35", "46", "49", "63", "95"]) + " ", sections: [6] } - ]), c = e.formatted ? s(n) : s(n).replace(" ", "", "g")); + ]), u = e.formatted ? o(n) : o(n).replace(" ", "", "g")); break; case "za": e.mobile ? (n = this.pick([ @@ -876,49 +876,49 @@ var ie = { exports: {} }; "071" + this.pick(["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"]) + a.string({ pool: "0123456789", length: 6 }), "07" + this.pick(["2", "3", "4", "6", "7", "8", "9"]) + a.string({ pool: "0123456789", length: 7 }), "08" + this.pick(["0", "1", "2", "3", "4", "5"]) + a.string({ pool: "0123456789", length: 7 }) - ]), c = e.formatted || n) : (n = this.pick([ + ]), u = e.formatted || n) : (n = this.pick([ "01" + this.pick(["0", "1", "2", "3", "4", "5", "6", "7", "8"]) + a.string({ pool: "0123456789", length: 7 }), "02" + this.pick(["1", "2", "3", "4", "7", "8"]) + a.string({ pool: "0123456789", length: 7 }), "03" + this.pick(["1", "2", "3", "5", "6", "9"]) + a.string({ pool: "0123456789", length: 7 }), "04" + this.pick(["1", "2", "3", "4", "5", "6", "7", "8", "9"]) + a.string({ pool: "0123456789", length: 7 }), "05" + this.pick(["1", "3", "4", "6", "7", "8"]) + a.string({ pool: "0123456789", length: 7 }) - ]), c = e.formatted || n); + ]), u = e.formatted || n); break; case "us": - var g = this.areacode(e).toString(), E = this.natural({ min: 2, max: 9 }).toString() + this.natural({ min: 0, max: 9 }).toString() + this.natural({ min: 0, max: 9 }).toString(), f = this.natural({ min: 1e3, max: 9999 }).toString(); - c = e.formatted ? g + " " + E + "-" + f : g + E + f; + var g = this.areacode(e).toString(), T = this.natural({ min: 2, max: 9 }).toString() + this.natural({ min: 0, max: 9 }).toString() + this.natural({ min: 0, max: 9 }).toString(), h = this.natural({ min: 1e3, max: 9999 }).toString(); + u = e.formatted ? g + " " + T + "-" + h : g + T + h; break; case "br": var v = this.pick(["11", "12", "13", "14", "15", "16", "17", "18", "19", "21", "22", "24", "27", "28", "31", "32", "33", "34", "35", "37", "38", "41", "42", "43", "44", "45", "46", "47", "48", "49", "51", "53", "54", "55", "61", "62", "63", "64", "65", "66", "67", "68", "69", "71", "73", "74", "75", "77", "79", "81", "82", "83", "84", "85", "86", "87", "88", "89", "91", "92", "93", "94", "95", "96", "97", "98", "99"]), C; e.mobile ? C = "9" + a.string({ pool: "0123456789", length: 4 }) : C = this.natural({ min: 2e3, max: 5999 }).toString(); var A = a.string({ pool: "0123456789", length: 4 }); - c = e.formatted ? "(" + v + ") " + C + "-" + A : v + C + A; + u = e.formatted ? "(" + v + ") " + C + "-" + A : v + C + A; break; } - return c; + return u; }, i.prototype.postal = function() { var e = this.character({ pool: "XVTSRPNKLMHJGECBA" }), a = e + this.natural({ max: 9 }) + this.character({ alpha: !0, casing: "upper" }), n = this.natural({ max: 9 }) + this.character({ alpha: !0, casing: "upper" }) + this.natural({ max: 9 }); return a + " " + n; }, i.prototype.postcode = function() { - var e = this.pick(this.get("postcodeAreas")).code, a = this.natural({ max: 9 }), n = this.bool() ? this.character({ alpha: !0, casing: "upper" }) : "", s = e + a + n, c = this.natural({ max: 9 }), g = this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }), E = c + g; - return s + " " + E; + var e = this.pick(this.get("postcodeAreas")).code, a = this.natural({ max: 9 }), n = this.bool() ? this.character({ alpha: !0, casing: "upper" }) : "", o = e + a + n, u = this.natural({ max: 9 }), g = this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }), T = u + g; + return o + " " + T; }, i.prototype.counties = function(e) { - return e = u(e, { country: "uk" }), this.get("counties")[e.country.toLowerCase()]; + return e = c(e, { country: "uk" }), this.get("counties")[e.country.toLowerCase()]; }, i.prototype.county = function(e) { return this.pick(this.counties(e)).name; }, i.prototype.provinces = function(e) { - return e = u(e, { country: "ca" }), this.get("provinces")[e.country.toLowerCase()]; + return e = c(e, { country: "ca" }), this.get("provinces")[e.country.toLowerCase()]; }, i.prototype.province = function(e) { return e && e.full ? this.pick(this.provinces(e)).name : this.pick(this.provinces(e)).abbreviation; }, i.prototype.state = function(e) { return e && e.full ? this.pick(this.states(e)).name : this.pick(this.states(e)).abbreviation; }, i.prototype.states = function(e) { - e = u(e, { country: "us", us_states_and_dc: !0 }); + e = c(e, { country: "us", us_states_and_dc: !0 }); var a; switch (e.country.toLowerCase()) { case "us": - var n = this.get("us_states_and_dc"), s = this.get("territories"), c = this.get("armed_forces"); - a = [], e.us_states_and_dc && (a = a.concat(n)), e.territories && (a = a.concat(s)), e.armed_forces && (a = a.concat(c)); + var n = this.get("us_states_and_dc"), o = this.get("territories"), u = this.get("armed_forces"); + a = [], e.us_states_and_dc && (a = a.concat(n)), e.territories && (a = a.concat(o)), e.armed_forces && (a = a.concat(u)); break; case "it": case "mx": @@ -930,7 +930,7 @@ var ie = { exports: {} }; } return a; }, i.prototype.street = function(e) { - e = u(e, { country: "us", syllables: 2 }); + e = c(e, { country: "us", syllables: 2 }); var a; switch (e.country.toLowerCase()) { case "us": @@ -942,9 +942,9 @@ var ie = { exports: {} }; } return a; }, i.prototype.street_suffix = function(e) { - return e = u(e, { country: "us" }), this.pick(this.street_suffixes(e)); + return e = c(e, { country: "us" }), this.pick(this.street_suffixes(e)); }, i.prototype.street_suffixes = function(e) { - return e = u(e, { country: "us" }), this.get("street_suffixes")[e.country.toLowerCase()]; + return e = c(e, { country: "us" }), this.get("street_suffixes")[e.country.toLowerCase()]; }, i.prototype.zip = function(e) { var a = this.n(this.natural, 5, { max: 9 }); return e && e.plusfour === !0 && (a.push("-"), a = a.concat(this.n(this.natural, 4, { max: 9 }))), a.join(""); @@ -953,20 +953,20 @@ var ie = { exports: {} }; }, i.prototype.date = function(e) { var a, n; if (e && (e.min || e.max)) { - e = u(e, { + e = c(e, { american: !0, string: !1 }); - var s = typeof e.min < "u" ? e.min.getTime() : 1, c = typeof e.max < "u" ? e.max.getTime() : 864e13; - n = new Date(this.integer({ min: s, max: c })); + var o = typeof e.min < "u" ? e.min.getTime() : 1, u = typeof e.max < "u" ? e.max.getTime() : 864e13; + n = new Date(this.integer({ min: o, max: u })); } else { - var g = this.month({ raw: !0 }), E = g.days; - e && e.month && (E = this.get("months")[(e.month % 12 + 12) % 12].days), e = u(e, { + var g = this.month({ raw: !0 }), T = g.days; + e && e.month && (T = this.get("months")[(e.month % 12 + 12) % 12].days), e = c(e, { year: parseInt(this.year(), 10), // Necessary to subtract 1 because Date() 0-indexes month but not day or year // for some reason. month: g.numeric - 1, - day: this.natural({ min: 1, max: E }), + day: this.natural({ min: 1, max: T }), hour: this.hour({ twentyfour: !0 }), minute: this.minute(), second: this.second(), @@ -979,16 +979,16 @@ var ie = { exports: {} }; }, i.prototype.hammertime = function(e) { return this.date(e).getTime(); }, i.prototype.hour = function(e) { - return e = u(e, { + return e = c(e, { min: e && e.twentyfour ? 0 : 1, max: e && e.twentyfour ? 23 : 12 }), t(e.min < 0, "Chance: Min cannot be less than 0."), t(e.twentyfour && e.max > 23, "Chance: Max cannot be greater than 23 for twentyfour option."), t(!e.twentyfour && e.max > 12, "Chance: Max cannot be greater than 12."), t(e.min > e.max, "Chance: Min cannot be greater than Max."), this.natural({ min: e.min, max: e.max }); }, i.prototype.millisecond = function() { return this.natural({ max: 999 }); }, i.prototype.minute = i.prototype.second = function(e) { - return e = u(e, { min: 0, max: 59 }), t(e.min < 0, "Chance: Min cannot be less than 0."), t(e.max > 59, "Chance: Max cannot be greater than 59."), t(e.min > e.max, "Chance: Min cannot be greater than Max."), this.natural({ min: e.min, max: e.max }); + return e = c(e, { min: 0, max: 59 }), t(e.min < 0, "Chance: Min cannot be less than 0."), t(e.max > 59, "Chance: Max cannot be greater than 59."), t(e.min > e.max, "Chance: Min cannot be greater than Max."), this.natural({ min: e.min, max: e.max }); }, i.prototype.month = function(e) { - e = u(e, { min: 1, max: 12 }), t(e.min < 1, "Chance: Min cannot be less than 1."), t(e.max > 12, "Chance: Max cannot be greater than 12."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); + e = c(e, { min: 1, max: 12 }), t(e.min < 1, "Chance: Min cannot be less than 1."), t(e.max > 12, "Chance: Max cannot be greater than 12."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); var a = this.pick(this.months().slice(e.min - 1, e.max)); return e.raw ? a : a.name; }, i.prototype.months = function() { @@ -998,24 +998,24 @@ var ie = { exports: {} }; }, i.prototype.timestamp = function() { return this.natural({ min: 1, max: parseInt((/* @__PURE__ */ new Date()).getTime() / 1e3, 10) }); }, i.prototype.weekday = function(e) { - e = u(e, { weekday_only: !1 }); + e = c(e, { weekday_only: !1 }); var a = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"]; return e.weekday_only || (a.push("Saturday"), a.push("Sunday")), this.pickone(a); }, i.prototype.year = function(e) { - return e = u(e, { min: (/* @__PURE__ */ new Date()).getFullYear() }), e.max = typeof e.max < "u" ? e.max : e.min + 100, this.natural(e).toString(); + return e = c(e, { min: (/* @__PURE__ */ new Date()).getFullYear() }), e.max = typeof e.max < "u" ? e.max : e.min + 100, this.natural(e).toString(); }, i.prototype.cc = function(e) { - e = u(e); - var a, n, s; - return a = e.type ? this.cc_type({ name: e.type, raw: !0 }) : this.cc_type({ raw: !0 }), n = a.prefix.split(""), s = a.length - a.prefix.length - 1, n = n.concat(this.n(this.integer, s, { min: 0, max: 9 })), n.push(this.luhn_calculate(n.join(""))), n.join(""); + e = c(e); + var a, n, o; + return a = e.type ? this.cc_type({ name: e.type, raw: !0 }) : this.cc_type({ raw: !0 }), n = a.prefix.split(""), o = a.length - a.prefix.length - 1, n = n.concat(this.n(this.integer, o, { min: 0, max: 9 })), n.push(this.luhn_calculate(n.join(""))), n.join(""); }, i.prototype.cc_types = function() { return this.get("cc_types"); }, i.prototype.cc_type = function(e) { - e = u(e); + e = c(e); var a = this.cc_types(), n = null; if (e.name) { - for (var s = 0; s < a.length; s++) - if (a[s].name === e.name || a[s].short_name === e.name) { - n = a[s]; + for (var o = 0; o < a.length; o++) + if (a[o].name === e.name || a[o].short_name === e.name) { + n = a[o]; break; } if (n === null) @@ -1033,30 +1033,30 @@ var ie = { exports: {} }; return this.pick(this.timezones()); }, i.prototype.currency_pair = function(e) { var a = this.unique(this.currency, 2, { - comparator: function(n, s) { - return n.reduce(function(c, g) { - return c || g.code === s.code; + comparator: function(n, o) { + return n.reduce(function(u, g) { + return u || g.code === o.code; }, !1); } }); return e ? a[0].code + "/" + a[1].code : a; }, i.prototype.dollar = function(e) { - e = u(e, { max: 1e4, min: 0 }); + e = c(e, { max: 1e4, min: 0 }); var a = this.floating({ min: e.min, max: e.max, fixed: 2 }).toString(), n = a.split(".")[1]; return n === void 0 ? a += ".00" : n.length < 2 && (a = a + "0"), a < 0 ? "-$" + a.replace("-", "") : "$" + a; }, i.prototype.euro = function(e) { return Number(this.dollar(e).replace("$", "")).toLocaleString() + "\u20AC"; }, i.prototype.exp = function(e) { - e = u(e); + e = c(e); var a = {}; return a.year = this.exp_year(), a.year === (/* @__PURE__ */ new Date()).getFullYear().toString() ? a.month = this.exp_month({ future: !0 }) : a.month = this.exp_month(), e.raw ? a : a.month + "/" + a.year; }, i.prototype.exp_month = function(e) { - e = u(e); - var a, n, s = (/* @__PURE__ */ new Date()).getMonth() + 1; - if (e.future && s !== 12) + e = c(e); + var a, n, o = (/* @__PURE__ */ new Date()).getMonth() + 1; + if (e.future && o !== 12) do a = this.month({ raw: !0 }).numeric, n = parseInt(a, 10); - while (n <= s); + while (n <= o); else a = this.month({ raw: !0 }).numeric; return a; @@ -1064,7 +1064,7 @@ var ie = { exports: {} }; var e = (/* @__PURE__ */ new Date()).getMonth() + 1, a = (/* @__PURE__ */ new Date()).getFullYear(); return this.year({ min: e === 12 ? a + 1 : a, max: a + 10 }); }, i.prototype.vat = function(e) { - switch (e = u(e, { country: "it" }), e.country.toLowerCase()) { + switch (e = c(e, { country: "it" }), e.country.toLowerCase()) { case "it": return this.it_vat(); } @@ -1076,7 +1076,7 @@ var ie = { exports: {} }; return e = this.pad(e, 7) + this.pad(this.pick(this.provinces({ country: "it" })).code, 3), e + this.luhn_calculate(e); }, i.prototype.cf = function(e) { e = e || {}; - var a = e.gender ? e.gender : this.gender(), n = e.first ? e.first : this.first({ gender: a, nationality: "it" }), s = e.last ? e.last : this.last({ nationality: "it" }), c = e.birthday ? e.birthday : this.birthday(), g = e.city ? e.city : this.pickone(["A", "B", "C", "D", "E", "F", "G", "H", "I", "L", "M", "Z"]) + this.pad(this.natural({ max: 999 }), 3), E = [], f = function(A, H) { + var a = e.gender ? e.gender : this.gender(), n = e.first ? e.first : this.first({ gender: a, nationality: "it" }), o = e.last ? e.last : this.last({ nationality: "it" }), u = e.birthday ? e.birthday : this.birthday(), g = e.city ? e.city : this.pickone(["A", "B", "C", "D", "E", "F", "G", "H", "I", "L", "M", "Z"]) + this.pad(this.natural({ max: 999 }), 3), T = [], h = function(A, H) { var _, W = []; return A.length < 3 ? W = A.split("").concat("XXX".split("")).splice(0, 3) : (_ = A.toUpperCase().split("").map(function(K) { return "BCDFGHJKLMNPRSTVWZ".indexOf(K) !== -1 ? K : void 0; @@ -1091,24 +1091,24 @@ var ie = { exports: {} }; U % 2 !== 0 ? V += W.indexOf(_[H.indexOf(A[U])]) : V += K.indexOf(_[H.indexOf(A[U])]); return W[V % 26]; }; - return E = E.concat(f(s, !0), f(n), v(c, a, this), g.toUpperCase().split("")).join(""), E += C(E.toUpperCase()), E.toUpperCase(); + return T = T.concat(h(o, !0), h(n), v(u, a, this), g.toUpperCase().split("")).join(""), T += C(T.toUpperCase()), T.toUpperCase(); }, i.prototype.pl_pesel = function() { for (var e = this.natural({ min: 1, max: 9999999999 }), a = this.pad(e, 10).split(""), n = 0; n < a.length; n++) a[n] = parseInt(a[n]); - var s = (1 * a[0] + 3 * a[1] + 7 * a[2] + 9 * a[3] + 1 * a[4] + 3 * a[5] + 7 * a[6] + 9 * a[7] + 1 * a[8] + 3 * a[9]) % 10; - return s !== 0 && (s = 10 - s), a.join("") + s; + var o = (1 * a[0] + 3 * a[1] + 7 * a[2] + 9 * a[3] + 1 * a[4] + 3 * a[5] + 7 * a[6] + 9 * a[7] + 1 * a[8] + 3 * a[9]) % 10; + return o !== 0 && (o = 10 - o), a.join("") + o; }, i.prototype.pl_nip = function() { for (var e = this.natural({ min: 1, max: 999999999 }), a = this.pad(e, 9).split(""), n = 0; n < a.length; n++) a[n] = parseInt(a[n]); - var s = (6 * a[0] + 5 * a[1] + 7 * a[2] + 2 * a[3] + 3 * a[4] + 4 * a[5] + 5 * a[6] + 6 * a[7] + 7 * a[8]) % 11; - return s === 10 ? this.pl_nip() : a.join("") + s; + var o = (6 * a[0] + 5 * a[1] + 7 * a[2] + 2 * a[3] + 3 * a[4] + 4 * a[5] + 5 * a[6] + 6 * a[7] + 7 * a[8]) % 11; + return o === 10 ? this.pl_nip() : a.join("") + o; }, i.prototype.pl_regon = function() { for (var e = this.natural({ min: 1, max: 99999999 }), a = this.pad(e, 8).split(""), n = 0; n < a.length; n++) a[n] = parseInt(a[n]); - var s = (8 * a[0] + 9 * a[1] + 2 * a[2] + 3 * a[3] + 4 * a[4] + 5 * a[5] + 6 * a[6] + 7 * a[7]) % 11; - return s === 10 && (s = 0), a.join("") + s; + var o = (8 * a[0] + 9 * a[1] + 2 * a[2] + 3 * a[3] + 4 * a[4] + 5 * a[5] + 6 * a[6] + 7 * a[7]) % 11; + return o === 10 && (o = 0), a.join("") + o; }, i.prototype.note = function(e) { - e = u(e, { notes: "flatKey" }); + e = c(e, { notes: "flatKey" }); var a = { naturals: ["C", "D", "E", "F", "G", "A", "B"], flats: ["D\u266D", "E\u266D", "G\u266D", "A\u266D", "B\u266D"], @@ -1117,9 +1117,9 @@ var ie = { exports: {} }; return a.all = a.naturals.concat(a.flats.concat(a.sharps)), a.flatKey = a.naturals.concat(a.flats), a.sharpKey = a.naturals.concat(a.sharps), this.pickone(a[e.notes]); }, i.prototype.midi_note = function(e) { var a = 0, n = 127; - return e = u(e, { min: a, max: n }), this.integer({ min: e.min, max: e.max }); + return e = c(e, { min: a, max: n }), this.integer({ min: e.min, max: e.max }); }, i.prototype.chord_quality = function(e) { - e = u(e, { jazz: !0 }); + e = c(e, { jazz: !0 }); var a = ["maj", "min", "aug", "dim"]; return e.jazz && (a = [ "maj7", @@ -1130,46 +1130,46 @@ var ie = { exports: {} }; "\xF8" ]), this.pickone(a); }, i.prototype.chord = function(e) { - return e = u(e), this.note(e) + this.chord_quality(e); + return e = c(e), this.note(e) + this.chord_quality(e); }, i.prototype.tempo = function(e) { var a = 40, n = 320; - return e = u(e, { min: a, max: n }), this.integer({ min: e.min, max: e.max }); + return e = c(e, { min: a, max: n }), this.integer({ min: e.min, max: e.max }); }, i.prototype.coin = function() { return this.bool() ? "heads" : "tails"; }; - function I(e) { + function B(e) { return function() { return this.natural(e); }; } - i.prototype.d4 = I({ min: 1, max: 4 }), i.prototype.d6 = I({ min: 1, max: 6 }), i.prototype.d8 = I({ min: 1, max: 8 }), i.prototype.d10 = I({ min: 1, max: 10 }), i.prototype.d12 = I({ min: 1, max: 12 }), i.prototype.d20 = I({ min: 1, max: 20 }), i.prototype.d30 = I({ min: 1, max: 30 }), i.prototype.d100 = I({ min: 1, max: 100 }), i.prototype.rpg = function(e, a) { - if (a = u(a), e) { - var n = e.toLowerCase().split("d"), s = []; + i.prototype.d4 = B({ min: 1, max: 4 }), i.prototype.d6 = B({ min: 1, max: 6 }), i.prototype.d8 = B({ min: 1, max: 8 }), i.prototype.d10 = B({ min: 1, max: 10 }), i.prototype.d12 = B({ min: 1, max: 12 }), i.prototype.d20 = B({ min: 1, max: 20 }), i.prototype.d30 = B({ min: 1, max: 30 }), i.prototype.d100 = B({ min: 1, max: 100 }), i.prototype.rpg = function(e, a) { + if (a = c(a), e) { + var n = e.toLowerCase().split("d"), o = []; if (n.length !== 2 || !parseInt(n[0], 10) || !parseInt(n[1], 10)) throw new Error("Chance: Invalid format provided. Please provide #d# where the first # is the number of dice to roll, the second # is the max of each die"); - for (var c = n[0]; c > 0; c--) - s[c - 1] = this.natural({ min: 1, max: n[1] }); - return typeof a.sum < "u" && a.sum ? s.reduce(function(g, E) { - return g + E; - }) : s; + for (var u = n[0]; u > 0; u--) + o[u - 1] = this.natural({ min: 1, max: n[1] }); + return typeof a.sum < "u" && a.sum ? o.reduce(function(g, T) { + return g + T; + }) : o; } else throw new RangeError("Chance: A type of die roll must be included"); }, i.prototype.guid = function(e) { - e = u(e, { version: 5 }); - var a = "abcdef1234567890", n = "ab89", s = this.string({ pool: a, length: 8 }) + "-" + this.string({ pool: a, length: 4 }) + "-" + // The Version + e = c(e, { version: 5 }); + var a = "abcdef1234567890", n = "ab89", o = this.string({ pool: a, length: 8 }) + "-" + this.string({ pool: a, length: 4 }) + "-" + // The Version e.version + this.string({ pool: a, length: 3 }) + "-" + // The Variant this.string({ pool: n, length: 1 }) + this.string({ pool: a, length: 3 }) + "-" + this.string({ pool: a, length: 12 }); - return s; + return o; }, i.prototype.hash = function(e) { - e = u(e, { length: 40, casing: "lower" }); - var a = e.casing === "upper" ? h.toUpperCase() : h; + e = c(e, { length: 40, casing: "lower" }); + var a = e.casing === "upper" ? f.toUpperCase() : f; return this.string({ pool: a, length: e.length }); }, i.prototype.luhn_check = function(e) { var a = e.toString(), n = +a.substring(a.length - 1); return n === this.luhn_calculate(+a.substring(0, a.length - 1)); }, i.prototype.luhn_calculate = function(e) { - for (var a = e.toString().split("").reverse(), n = 0, s, c = 0, g = a.length; g > c; ++c) - s = +a[c], c % 2 === 0 && (s *= 2, s > 9 && (s -= 9)), n += s; + for (var a = e.toString().split("").reverse(), n = 0, o, u = 0, g = a.length; g > u; ++u) + o = +a[u], u % 2 === 0 && (o *= 2, o > 9 && (o -= 9)), n += o; return n * 9 % 10; }, i.prototype.md5 = function(e) { var a = { str: "", key: null, raw: !1 }; @@ -1183,40 +1183,40 @@ var ie = { exports: {} }; if (e.constructor === "Array") return null; } - if (a = u(e, a), !a.str) + if (a = c(e, a), !a.str) throw new Error("A parameter is required to return an md5 hash."); return this.bimd5.md5(a.str, a.key, a.raw); }, i.prototype.file = function(e) { - var a = e || {}, n = "fileExtension", s = Object.keys(this.get("fileExtension")), c, g; - if (c = this.word({ length: a.length }), a.extension) - return g = a.extension, c + "." + g; + var a = e || {}, n = "fileExtension", o = Object.keys(this.get("fileExtension")), u, g; + if (u = this.word({ length: a.length }), a.extension) + return g = a.extension, u + "." + g; if (a.extensions) { if (Array.isArray(a.extensions)) - return g = this.pickone(a.extensions), c + "." + g; + return g = this.pickone(a.extensions), u + "." + g; if (a.extensions.constructor === Object) { - var E = a.extensions, f = Object.keys(E); - return g = this.pickone(E[this.pickone(f)]), c + "." + g; + var T = a.extensions, h = Object.keys(T); + return g = this.pickone(T[this.pickone(h)]), u + "." + g; } throw new Error("Chance: Extensions must be an Array or Object"); } if (a.fileType) { var v = a.fileType; - if (s.indexOf(v) !== -1) - return g = this.pickone(this.get(n)[v]), c + "." + g; + if (o.indexOf(v) !== -1) + return g = this.pickone(this.get(n)[v]), u + "." + g; throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'"); } - return g = this.pickone(this.get(n)[this.pickone(s)]), c + "." + g; + return g = this.pickone(this.get(n)[this.pickone(o)]), u + "." + g; }, i.prototype.fileWithContent = function(e) { var a = e || {}, n = "fileName" in a ? a.fileName : this.file().split(".")[0]; if (n += "." + ("fileExtension" in a ? a.fileExtension : this.file().split(".")[1]), typeof a.fileSize != "number") throw new Error("File size must be an integer"); - var s = { + var o = { fileData: this.buffer({ length: a.fileSize }), fileName: n }; - return s; + return o; }; - var T = { + var I = { firstNames: { male: { en: ["James", "John", "Robert", "Michael", "William", "David", "Richard", "Joseph", "Charles", "Thomas", "Christopher", "Daniel", "Matthew", "George", "Donald", "Anthony", "Paul", "Mark", "Edward", "Steven", "Kenneth", "Andrew", "Brian", "Joshua", "Kevin", "Ronald", "Timothy", "Jason", "Jeffrey", "Frank", "Gary", "Ryan", "Nicholas", "Eric", "Stephen", "Jacob", "Larry", "Jonathan", "Scott", "Raymond", "Justin", "Brandon", "Gregory", "Samuel", "Benjamin", "Patrick", "Jack", "Henry", "Walter", "Dennis", "Jerry", "Alexander", "Peter", "Tyler", "Douglas", "Harold", "Aaron", "Jose", "Adam", "Arthur", "Zachary", "Carl", "Nathan", "Albert", "Kyle", "Lawrence", "Joe", "Willie", "Gerald", "Roger", "Keith", "Jeremy", "Terry", "Harry", "Ralph", "Sean", "Jesse", "Roy", "Louis", "Billy", "Austin", "Bruce", "Eugene", "Christian", "Bryan", "Wayne", "Russell", "Howard", "Fred", "Ethan", "Jordan", "Philip", "Alan", "Juan", "Randy", "Vincent", "Bobby", "Dylan", "Johnny", "Phillip", "Victor", "Clarence", "Ernest", "Martin", "Craig", "Stanley", "Shawn", "Travis", "Bradley", "Leonard", "Earl", "Gabriel", "Jimmy", "Francis", "Todd", "Noah", "Danny", "Dale", "Cody", "Carlos", "Allen", "Frederick", "Logan", "Curtis", "Alex", "Joel", "Luis", "Norman", "Marvin", "Glenn", "Tony", "Nathaniel", "Rodney", "Melvin", "Alfred", "Steve", "Cameron", "Chad", "Edwin", "Caleb", "Evan", "Antonio", "Lee", "Herbert", "Jeffery", "Isaac", "Derek", "Ricky", "Marcus", "Theodore", "Elijah", "Luke", "Jesus", "Eddie", "Troy", "Mike", "Dustin", "Ray", "Adrian", "Bernard", "Leroy", "Angel", "Randall", "Wesley", "Ian", "Jared", "Mason", "Hunter", "Calvin", "Oscar", "Clifford", "Jay", "Shane", "Ronnie", "Barry", "Lucas", "Corey", "Manuel", "Leo", "Tommy", "Warren", "Jackson", "Isaiah", "Connor", "Don", "Dean", "Jon", "Julian", "Miguel", "Bill", "Lloyd", "Charlie", "Mitchell", "Leon", "Jerome", "Darrell", "Jeremiah", "Alvin", "Brett", "Seth", "Floyd", "Jim", "Blake", "Micheal", "Gordon", "Trevor", "Lewis", "Erik", "Edgar", "Vernon", "Devin", "Gavin", "Jayden", "Chris", "Clyde", "Tom", "Derrick", "Mario", "Brent", "Marc", "Herman", "Chase", "Dominic", "Ricardo", "Franklin", "Maurice", "Max", "Aiden", "Owen", "Lester", "Gilbert", "Elmer", "Gene", "Francisco", "Glen", "Cory", "Garrett", "Clayton", "Sam", "Jorge", "Chester", "Alejandro", "Jeff", "Harvey", "Milton", "Cole", "Ivan", "Andre", "Duane", "Landon"], @@ -7027,32 +7027,32 @@ var ie = { exports: {} }; "sadness", "fear" ] - }, N = Object.prototype.hasOwnProperty, F = Object.keys || function(e) { + }, D = Object.prototype.hasOwnProperty, F = Object.keys || function(e) { var a = []; for (var n in e) - N.call(e, n) && a.push(n); + D.call(e, n) && a.push(n); return a; }; - function D(e, a) { - for (var n = F(e), s, c = 0, g = n.length; c < g; c++) - s = n[c], a[s] = e[s] || a[s]; + function w(e, a) { + for (var n = F(e), o, u = 0, g = n.length; u < g; u++) + o = n[u], a[o] = e[o] || a[o]; } - function R(e, a) { - for (var n = 0, s = e.length; n < s; n++) + function G(e, a) { + for (var n = 0, o = e.length; n < o; n++) a[n] = e[n]; } - function w(e, a) { - var n = Array.isArray(e), s = a || (n ? new Array(e.length) : {}); - return n ? R(e, s) : D(e, s), s; + function N(e, a) { + var n = Array.isArray(e), o = a || (n ? new Array(e.length) : {}); + return n ? G(e, o) : w(e, o), o; } i.prototype.get = function(e) { - return w(T[e]); + return N(I[e]); }, i.prototype.mac_address = function(e) { - e = u(e), e.separator || (e.separator = e.networkVersion ? "." : ":"); + e = c(e), e.separator || (e.separator = e.networkVersion ? "." : ":"); var a = "ABCDEF1234567890", n = ""; return e.networkVersion ? n = this.n(this.string, 3, { pool: a, length: 4 }).join(e.separator) : n = this.n(this.string, 6, { pool: a, length: 2 }).join(e.separator), n; }, i.prototype.normal = function(e) { - if (e = u(e, { mean: 0, dev: 1, pool: [] }), t( + if (e = c(e, { mean: 0, dev: 1, pool: [] }), t( e.pool.constructor !== Array, "Chance: The pool option must be a valid array." ), t( @@ -7063,11 +7063,11 @@ var ie = { exports: {} }; "Chance: Standard deviation (dev) must be a number" ), e.pool.length > 0) return this.normal_pool(e); - var a, n, s, c, g = e.mean, E = e.dev; + var a, n, o, u, g = e.mean, T = e.dev; do - n = this.random() * 2 - 1, s = this.random() * 2 - 1, a = n * n + s * s; + n = this.random() * 2 - 1, o = this.random() * 2 - 1, a = n * n + o * o; while (a >= 1); - return c = n * Math.sqrt(-2 * Math.log(a) / a), E * c + g; + return u = n * Math.sqrt(-2 * Math.log(a) / a), T * u + g; }, i.prototype.normal_pool = function(e) { var a = 0; do { @@ -7078,7 +7078,7 @@ var ie = { exports: {} }; } while (a < 100); throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust."); }, i.prototype.radio = function(e) { - e = u(e, { side: "?" }); + e = c(e, { side: "?" }); var a = ""; switch (e.side.toLowerCase()) { case "east": @@ -7095,7 +7095,7 @@ var ie = { exports: {} }; } return a + this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }); }, i.prototype.set = function(e, a) { - typeof e == "string" ? T[e] = a : T = w(e, T); + typeof e == "string" ? I[e] = a : I = N(e, I); }, i.prototype.tv = function(e) { return this.radio(e); }, i.prototype.cnpj = function() { @@ -7108,7 +7108,7 @@ var ie = { exports: {} }; }, i.prototype.mersenne_twister = function(e) { return new O(e); }, i.prototype.blueimp_md5 = function() { - return new G(); + return new R(); }; var O = function(e) { e === void 0 && (e = Math.floor(Math.random() * Math.pow(10, 13))), this.N = 624, this.M = 397, this.MATRIX_A = 2567483615, this.UPPER_MASK = 2147483648, this.LOWER_MASK = 2147483647, this.mt = new Array(this.N), this.mti = this.N + 1, this.init_genrand(e); @@ -7117,10 +7117,10 @@ var ie = { exports: {} }; for (this.mt[0] = e >>> 0, this.mti = 1; this.mti < this.N; this.mti++) e = this.mt[this.mti - 1] ^ this.mt[this.mti - 1] >>> 30, this.mt[this.mti] = (((e & 4294901760) >>> 16) * 1812433253 << 16) + (e & 65535) * 1812433253 + this.mti, this.mt[this.mti] >>>= 0; }, O.prototype.init_by_array = function(e, a) { - var n = 1, s = 0, c, g; - for (this.init_genrand(19650218), c = this.N > a ? this.N : a; c; c--) - g = this.mt[n - 1] ^ this.mt[n - 1] >>> 30, this.mt[n] = (this.mt[n] ^ (((g & 4294901760) >>> 16) * 1664525 << 16) + (g & 65535) * 1664525) + e[s] + s, this.mt[n] >>>= 0, n++, s++, n >= this.N && (this.mt[0] = this.mt[this.N - 1], n = 1), s >= a && (s = 0); - for (c = this.N - 1; c; c--) + var n = 1, o = 0, u, g; + for (this.init_genrand(19650218), u = this.N > a ? this.N : a; u; u--) + g = this.mt[n - 1] ^ this.mt[n - 1] >>> 30, this.mt[n] = (this.mt[n] ^ (((g & 4294901760) >>> 16) * 1664525 << 16) + (g & 65535) * 1664525) + e[o] + o, this.mt[n] >>>= 0, n++, o++, n >= this.N && (this.mt[0] = this.mt[this.N - 1], n = 1), o >= a && (o = 0); + for (u = this.N - 1; u; u--) g = this.mt[n - 1] ^ this.mt[n - 1] >>> 30, this.mt[n] = (this.mt[n] ^ (((g & 4294901760) >>> 16) * 1566083941 << 16) + (g & 65535) * 1566083941) - n, this.mt[n] >>>= 0, n++, n >= this.N && (this.mt[0] = this.mt[this.N - 1], n = 1); this.mt[0] = 2147483648; }, O.prototype.genrand_int32 = function() { @@ -7146,280 +7146,280 @@ var ie = { exports: {} }; var e = this.genrand_int32() >>> 5, a = this.genrand_int32() >>> 6; return (e * 67108864 + a) * (1 / 9007199254740992); }; - var G = function() { + var R = function() { }; - G.prototype.VERSION = "1.0.1", G.prototype.safe_add = function(a, n) { - var s = (a & 65535) + (n & 65535), c = (a >> 16) + (n >> 16) + (s >> 16); - return c << 16 | s & 65535; - }, G.prototype.bit_roll = function(e, a) { + R.prototype.VERSION = "1.0.1", R.prototype.safe_add = function(a, n) { + var o = (a & 65535) + (n & 65535), u = (a >> 16) + (n >> 16) + (o >> 16); + return u << 16 | o & 65535; + }, R.prototype.bit_roll = function(e, a) { return e << a | e >>> 32 - a; - }, G.prototype.md5_cmn = function(e, a, n, s, c, g) { - return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a, e), this.safe_add(s, g)), c), n); - }, G.prototype.md5_ff = function(e, a, n, s, c, g, E) { - return this.md5_cmn(a & n | ~a & s, e, a, c, g, E); - }, G.prototype.md5_gg = function(e, a, n, s, c, g, E) { - return this.md5_cmn(a & s | n & ~s, e, a, c, g, E); - }, G.prototype.md5_hh = function(e, a, n, s, c, g, E) { - return this.md5_cmn(a ^ n ^ s, e, a, c, g, E); - }, G.prototype.md5_ii = function(e, a, n, s, c, g, E) { - return this.md5_cmn(n ^ (a | ~s), e, a, c, g, E); - }, G.prototype.binl_md5 = function(e, a) { + }, R.prototype.md5_cmn = function(e, a, n, o, u, g) { + return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a, e), this.safe_add(o, g)), u), n); + }, R.prototype.md5_ff = function(e, a, n, o, u, g, T) { + return this.md5_cmn(a & n | ~a & o, e, a, u, g, T); + }, R.prototype.md5_gg = function(e, a, n, o, u, g, T) { + return this.md5_cmn(a & o | n & ~o, e, a, u, g, T); + }, R.prototype.md5_hh = function(e, a, n, o, u, g, T) { + return this.md5_cmn(a ^ n ^ o, e, a, u, g, T); + }, R.prototype.md5_ii = function(e, a, n, o, u, g, T) { + return this.md5_cmn(n ^ (a | ~o), e, a, u, g, T); + }, R.prototype.binl_md5 = function(e, a) { e[a >> 5] |= 128 << a % 32, e[(a + 64 >>> 9 << 4) + 14] = a; - var n, s, c, g, E, f = 1732584193, v = -271733879, C = -1732584194, A = 271733878; + var n, o, u, g, T, h = 1732584193, v = -271733879, C = -1732584194, A = 271733878; for (n = 0; n < e.length; n += 16) - s = f, c = v, g = C, E = A, f = this.md5_ff(f, v, C, A, e[n], 7, -680876936), A = this.md5_ff(A, f, v, C, e[n + 1], 12, -389564586), C = this.md5_ff(C, A, f, v, e[n + 2], 17, 606105819), v = this.md5_ff(v, C, A, f, e[n + 3], 22, -1044525330), f = this.md5_ff(f, v, C, A, e[n + 4], 7, -176418897), A = this.md5_ff(A, f, v, C, e[n + 5], 12, 1200080426), C = this.md5_ff(C, A, f, v, e[n + 6], 17, -1473231341), v = this.md5_ff(v, C, A, f, e[n + 7], 22, -45705983), f = this.md5_ff(f, v, C, A, e[n + 8], 7, 1770035416), A = this.md5_ff(A, f, v, C, e[n + 9], 12, -1958414417), C = this.md5_ff(C, A, f, v, e[n + 10], 17, -42063), v = this.md5_ff(v, C, A, f, e[n + 11], 22, -1990404162), f = this.md5_ff(f, v, C, A, e[n + 12], 7, 1804603682), A = this.md5_ff(A, f, v, C, e[n + 13], 12, -40341101), C = this.md5_ff(C, A, f, v, e[n + 14], 17, -1502002290), v = this.md5_ff(v, C, A, f, e[n + 15], 22, 1236535329), f = this.md5_gg(f, v, C, A, e[n + 1], 5, -165796510), A = this.md5_gg(A, f, v, C, e[n + 6], 9, -1069501632), C = this.md5_gg(C, A, f, v, e[n + 11], 14, 643717713), v = this.md5_gg(v, C, A, f, e[n], 20, -373897302), f = this.md5_gg(f, v, C, A, e[n + 5], 5, -701558691), A = this.md5_gg(A, f, v, C, e[n + 10], 9, 38016083), C = this.md5_gg(C, A, f, v, e[n + 15], 14, -660478335), v = this.md5_gg(v, C, A, f, e[n + 4], 20, -405537848), f = this.md5_gg(f, v, C, A, e[n + 9], 5, 568446438), A = this.md5_gg(A, f, v, C, e[n + 14], 9, -1019803690), C = this.md5_gg(C, A, f, v, e[n + 3], 14, -187363961), v = this.md5_gg(v, C, A, f, e[n + 8], 20, 1163531501), f = this.md5_gg(f, v, C, A, e[n + 13], 5, -1444681467), A = this.md5_gg(A, f, v, C, e[n + 2], 9, -51403784), C = this.md5_gg(C, A, f, v, e[n + 7], 14, 1735328473), v = this.md5_gg(v, C, A, f, e[n + 12], 20, -1926607734), f = this.md5_hh(f, v, C, A, e[n + 5], 4, -378558), A = this.md5_hh(A, f, v, C, e[n + 8], 11, -2022574463), C = this.md5_hh(C, A, f, v, e[n + 11], 16, 1839030562), v = this.md5_hh(v, C, A, f, e[n + 14], 23, -35309556), f = this.md5_hh(f, v, C, A, e[n + 1], 4, -1530992060), A = this.md5_hh(A, f, v, C, e[n + 4], 11, 1272893353), C = this.md5_hh(C, A, f, v, e[n + 7], 16, -155497632), v = this.md5_hh(v, C, A, f, e[n + 10], 23, -1094730640), f = this.md5_hh(f, v, C, A, e[n + 13], 4, 681279174), A = this.md5_hh(A, f, v, C, e[n], 11, -358537222), C = this.md5_hh(C, A, f, v, e[n + 3], 16, -722521979), v = this.md5_hh(v, C, A, f, e[n + 6], 23, 76029189), f = this.md5_hh(f, v, C, A, e[n + 9], 4, -640364487), A = this.md5_hh(A, f, v, C, e[n + 12], 11, -421815835), C = this.md5_hh(C, A, f, v, e[n + 15], 16, 530742520), v = this.md5_hh(v, C, A, f, e[n + 2], 23, -995338651), f = this.md5_ii(f, v, C, A, e[n], 6, -198630844), A = this.md5_ii(A, f, v, C, e[n + 7], 10, 1126891415), C = this.md5_ii(C, A, f, v, e[n + 14], 15, -1416354905), v = this.md5_ii(v, C, A, f, e[n + 5], 21, -57434055), f = this.md5_ii(f, v, C, A, e[n + 12], 6, 1700485571), A = this.md5_ii(A, f, v, C, e[n + 3], 10, -1894986606), C = this.md5_ii(C, A, f, v, e[n + 10], 15, -1051523), v = this.md5_ii(v, C, A, f, e[n + 1], 21, -2054922799), f = this.md5_ii(f, v, C, A, e[n + 8], 6, 1873313359), A = this.md5_ii(A, f, v, C, e[n + 15], 10, -30611744), C = this.md5_ii(C, A, f, v, e[n + 6], 15, -1560198380), v = this.md5_ii(v, C, A, f, e[n + 13], 21, 1309151649), f = this.md5_ii(f, v, C, A, e[n + 4], 6, -145523070), A = this.md5_ii(A, f, v, C, e[n + 11], 10, -1120210379), C = this.md5_ii(C, A, f, v, e[n + 2], 15, 718787259), v = this.md5_ii(v, C, A, f, e[n + 9], 21, -343485551), f = this.safe_add(f, s), v = this.safe_add(v, c), C = this.safe_add(C, g), A = this.safe_add(A, E); - return [f, v, C, A]; - }, G.prototype.binl2rstr = function(e) { + o = h, u = v, g = C, T = A, h = this.md5_ff(h, v, C, A, e[n], 7, -680876936), A = this.md5_ff(A, h, v, C, e[n + 1], 12, -389564586), C = this.md5_ff(C, A, h, v, e[n + 2], 17, 606105819), v = this.md5_ff(v, C, A, h, e[n + 3], 22, -1044525330), h = this.md5_ff(h, v, C, A, e[n + 4], 7, -176418897), A = this.md5_ff(A, h, v, C, e[n + 5], 12, 1200080426), C = this.md5_ff(C, A, h, v, e[n + 6], 17, -1473231341), v = this.md5_ff(v, C, A, h, e[n + 7], 22, -45705983), h = this.md5_ff(h, v, C, A, e[n + 8], 7, 1770035416), A = this.md5_ff(A, h, v, C, e[n + 9], 12, -1958414417), C = this.md5_ff(C, A, h, v, e[n + 10], 17, -42063), v = this.md5_ff(v, C, A, h, e[n + 11], 22, -1990404162), h = this.md5_ff(h, v, C, A, e[n + 12], 7, 1804603682), A = this.md5_ff(A, h, v, C, e[n + 13], 12, -40341101), C = this.md5_ff(C, A, h, v, e[n + 14], 17, -1502002290), v = this.md5_ff(v, C, A, h, e[n + 15], 22, 1236535329), h = this.md5_gg(h, v, C, A, e[n + 1], 5, -165796510), A = this.md5_gg(A, h, v, C, e[n + 6], 9, -1069501632), C = this.md5_gg(C, A, h, v, e[n + 11], 14, 643717713), v = this.md5_gg(v, C, A, h, e[n], 20, -373897302), h = this.md5_gg(h, v, C, A, e[n + 5], 5, -701558691), A = this.md5_gg(A, h, v, C, e[n + 10], 9, 38016083), C = this.md5_gg(C, A, h, v, e[n + 15], 14, -660478335), v = this.md5_gg(v, C, A, h, e[n + 4], 20, -405537848), h = this.md5_gg(h, v, C, A, e[n + 9], 5, 568446438), A = this.md5_gg(A, h, v, C, e[n + 14], 9, -1019803690), C = this.md5_gg(C, A, h, v, e[n + 3], 14, -187363961), v = this.md5_gg(v, C, A, h, e[n + 8], 20, 1163531501), h = this.md5_gg(h, v, C, A, e[n + 13], 5, -1444681467), A = this.md5_gg(A, h, v, C, e[n + 2], 9, -51403784), C = this.md5_gg(C, A, h, v, e[n + 7], 14, 1735328473), v = this.md5_gg(v, C, A, h, e[n + 12], 20, -1926607734), h = this.md5_hh(h, v, C, A, e[n + 5], 4, -378558), A = this.md5_hh(A, h, v, C, e[n + 8], 11, -2022574463), C = this.md5_hh(C, A, h, v, e[n + 11], 16, 1839030562), v = this.md5_hh(v, C, A, h, e[n + 14], 23, -35309556), h = this.md5_hh(h, v, C, A, e[n + 1], 4, -1530992060), A = this.md5_hh(A, h, v, C, e[n + 4], 11, 1272893353), C = this.md5_hh(C, A, h, v, e[n + 7], 16, -155497632), v = this.md5_hh(v, C, A, h, e[n + 10], 23, -1094730640), h = this.md5_hh(h, v, C, A, e[n + 13], 4, 681279174), A = this.md5_hh(A, h, v, C, e[n], 11, -358537222), C = this.md5_hh(C, A, h, v, e[n + 3], 16, -722521979), v = this.md5_hh(v, C, A, h, e[n + 6], 23, 76029189), h = this.md5_hh(h, v, C, A, e[n + 9], 4, -640364487), A = this.md5_hh(A, h, v, C, e[n + 12], 11, -421815835), C = this.md5_hh(C, A, h, v, e[n + 15], 16, 530742520), v = this.md5_hh(v, C, A, h, e[n + 2], 23, -995338651), h = this.md5_ii(h, v, C, A, e[n], 6, -198630844), A = this.md5_ii(A, h, v, C, e[n + 7], 10, 1126891415), C = this.md5_ii(C, A, h, v, e[n + 14], 15, -1416354905), v = this.md5_ii(v, C, A, h, e[n + 5], 21, -57434055), h = this.md5_ii(h, v, C, A, e[n + 12], 6, 1700485571), A = this.md5_ii(A, h, v, C, e[n + 3], 10, -1894986606), C = this.md5_ii(C, A, h, v, e[n + 10], 15, -1051523), v = this.md5_ii(v, C, A, h, e[n + 1], 21, -2054922799), h = this.md5_ii(h, v, C, A, e[n + 8], 6, 1873313359), A = this.md5_ii(A, h, v, C, e[n + 15], 10, -30611744), C = this.md5_ii(C, A, h, v, e[n + 6], 15, -1560198380), v = this.md5_ii(v, C, A, h, e[n + 13], 21, 1309151649), h = this.md5_ii(h, v, C, A, e[n + 4], 6, -145523070), A = this.md5_ii(A, h, v, C, e[n + 11], 10, -1120210379), C = this.md5_ii(C, A, h, v, e[n + 2], 15, 718787259), v = this.md5_ii(v, C, A, h, e[n + 9], 21, -343485551), h = this.safe_add(h, o), v = this.safe_add(v, u), C = this.safe_add(C, g), A = this.safe_add(A, T); + return [h, v, C, A]; + }, R.prototype.binl2rstr = function(e) { var a, n = ""; for (a = 0; a < e.length * 32; a += 8) n += String.fromCharCode(e[a >> 5] >>> a % 32 & 255); return n; - }, G.prototype.rstr2binl = function(e) { + }, R.prototype.rstr2binl = function(e) { var a, n = []; for (n[(e.length >> 2) - 1] = void 0, a = 0; a < n.length; a += 1) n[a] = 0; for (a = 0; a < e.length * 8; a += 8) n[a >> 5] |= (e.charCodeAt(a / 8) & 255) << a % 32; return n; - }, G.prototype.rstr_md5 = function(e) { + }, R.prototype.rstr_md5 = function(e) { return this.binl2rstr(this.binl_md5(this.rstr2binl(e), e.length * 8)); - }, G.prototype.rstr_hmac_md5 = function(e, a) { - var n, s = this.rstr2binl(e), c = [], g = [], E; - for (c[15] = g[15] = void 0, s.length > 16 && (s = this.binl_md5(s, e.length * 8)), n = 0; n < 16; n += 1) - c[n] = s[n] ^ 909522486, g[n] = s[n] ^ 1549556828; - return E = this.binl_md5(c.concat(this.rstr2binl(a)), 512 + a.length * 8), this.binl2rstr(this.binl_md5(g.concat(E), 512 + 128)); - }, G.prototype.rstr2hex = function(e) { - var a = "0123456789abcdef", n = "", s, c; - for (c = 0; c < e.length; c += 1) - s = e.charCodeAt(c), n += a.charAt(s >>> 4 & 15) + a.charAt(s & 15); + }, R.prototype.rstr_hmac_md5 = function(e, a) { + var n, o = this.rstr2binl(e), u = [], g = [], T; + for (u[15] = g[15] = void 0, o.length > 16 && (o = this.binl_md5(o, e.length * 8)), n = 0; n < 16; n += 1) + u[n] = o[n] ^ 909522486, g[n] = o[n] ^ 1549556828; + return T = this.binl_md5(u.concat(this.rstr2binl(a)), 512 + a.length * 8), this.binl2rstr(this.binl_md5(g.concat(T), 512 + 128)); + }, R.prototype.rstr2hex = function(e) { + var a = "0123456789abcdef", n = "", o, u; + for (u = 0; u < e.length; u += 1) + o = e.charCodeAt(u), n += a.charAt(o >>> 4 & 15) + a.charAt(o & 15); return n; - }, G.prototype.str2rstr_utf8 = function(e) { + }, R.prototype.str2rstr_utf8 = function(e) { return unescape(encodeURIComponent(e)); - }, G.prototype.raw_md5 = function(e) { + }, R.prototype.raw_md5 = function(e) { return this.rstr_md5(this.str2rstr_utf8(e)); - }, G.prototype.hex_md5 = function(e) { + }, R.prototype.hex_md5 = function(e) { return this.rstr2hex(this.raw_md5(e)); - }, G.prototype.raw_hmac_md5 = function(e, a) { + }, R.prototype.raw_hmac_md5 = function(e, a) { return this.rstr_hmac_md5(this.str2rstr_utf8(e), this.str2rstr_utf8(a)); - }, G.prototype.hex_hmac_md5 = function(e, a) { + }, R.prototype.hex_hmac_md5 = function(e, a) { return this.rstr2hex(this.raw_hmac_md5(e, a)); - }, G.prototype.md5 = function(e, a, n) { + }, R.prototype.md5 = function(e, a, n) { return a ? n ? this.raw_hmac_md5(a, e) : this.hex_hmac_md5(a, e) : n ? this.raw_md5(e) : this.hex_md5(e); }, m.exports && (b = m.exports = i), b.Chance = i, typeof importScripts < "u" && (chance = new i(), self.Chance = i), typeof window == "object" && typeof window.document == "object" && (window.Chance = i, window.chance = new i()); })(); })(ie, ie.exports); var be = ie.exports; const pe = /* @__PURE__ */ fe(be); -var Y = new pe(), oe = function() { - function m(b, L, k, M) { - let x = k.toUpperCase(), p = b.toUpperCase(), h = L.toUpperCase(); +var Y = new pe(), le = function() { + function m(b, L, x, M) { + let k = x.toUpperCase(), p = b.toUpperCase(), f = L.toUpperCase(); if (M != null && 0 < M.length) { let r = 0, t = M.length; var y = "'"; - (x.startsWith("INTEGER") || x.startsWith("NUMBER") || x.startsWith("DATE")) && (y = ""); - let l = M[Math.floor(Math.random() * (t - r)) + r]; - return l.toLowerCase && l.toLowerCase() == "null" && (y = ""), y + l + y; + (k.startsWith("INTEGER") || k.startsWith("NUMBER") || k.startsWith("DATE")) && (y = ""); + let s = M[Math.floor(Math.random() * (t - r)) + r]; + return s.toLowerCase && s.toLowerCase() == "null" && (y = ""), y + s + y; } - if (h == "NAME" && 0 <= p.indexOf("DEPARTMENT")) { + if (f == "NAME" && 0 <= p.indexOf("DEPARTMENT")) { var S = ["Sales", "Finance", "Delivery", "Manufacturing"]; let r = 0, t = S.length; return "'" + S[Math.floor(Math.random() * (t - r)) + r] + "'"; } - if (Y[h.toLowerCase()] != null && h.indexOf("NAME") < 0) - return "'" + Y[h.toLowerCase()]() + "'"; - if (h == "FIRST_NAME") + if (Y[f.toLowerCase()] != null && f.indexOf("NAME") < 0) + return "'" + Y[f.toLowerCase()]() + "'"; + if (f == "FIRST_NAME") return "'" + Y.first() + "'"; - if (h == "LAST_NAME") + if (f == "LAST_NAME") return "'" + Y.last() + "'"; - if (0 <= h.indexOf("NAME")) + if (0 <= f.indexOf("NAME")) return "'" + Y.name() + "'"; - if (0 < h.indexOf("ADDRESS")) + if (0 < f.indexOf("ADDRESS")) return "'" + Y.address() + "'"; - if (h == "LOCATION") + if (f == "LOCATION") return "'" + Y.city() + "'"; - if (h == "DESCRIPTION") + if (f == "DESCRIPTION") return "'" + Y.paragraph({ sentences: 2 }) + "'"; - if (h == "JOB") { + if (f == "JOB") { var i = ["Engineer", "Consultant", "Architect", "Manager", "Analyst", "Specialist", "Evangelist", "Salesman"]; let r = 0, t = i.length; return "'" + i[Math.floor(Math.random() * (t - r)) + r] + "'"; } - if (x.startsWith("INTEGER") || x.startsWith("NUMBER")) { + if (k.startsWith("INTEGER") || k.startsWith("NUMBER")) { let r = 0, t = 100; return Math.floor(Math.random() * (t - r)) + r; } - if (x.startsWith("DATE")) { + if (k.startsWith("DATE") || k.startsWith("TIMESTAMP")) { let r = 0, t = 100; - var u = Math.floor(Math.random() * (t - r)) + r; - return "sysdate-" + u; + var c = Math.floor(Math.random() * (t - r)) + r; + return "sysdate-" + c; } return "'N/A'"; } return m; }(), $ = function() { function m(b, L) { - for (var k = [], M = "", x = 0; x < b.length; x++) { - for (var p = b.charAt(x), h = k.length, y = 0; y < L.length; y++) { + for (var x = [], M = "", k = 0; k < b.length; k++) { + for (var p = b.charAt(k), f = x.length, y = 0; y < L.length; y++) { var S = L.charAt(y); if (p == S) { - 0 < M.length && k.push(M), k.push(p), M = ""; + 0 < M.length && x.push(M), x.push(p), M = ""; continue; } } - h == k.length && (M = M + p); + f == x.length && (M = M + p); } - return 0 < M.length && k.push(M), k; + return 0 < M.length && x.push(M), x; } return m; }(), Q = function() { - function m(M, x, p, h, y, S) { - this.type = h, this.value = M, this.begin = x, this.end = p, this.line = y, this.col = S, this.toString = function() { - return "{type:" + h + ",value:" + M + "}"; + function m(M, k, p, f, y, S) { + this.type = f, this.value = M, this.begin = k, this.end = p, this.line = y, this.col = S, this.toString = function() { + return "{type:" + f + ",value:" + M + "}"; }, this.isStandardLiteral = function() { if (this.value.length < 2 || !(this.value.charAt(0) == "'" || this.value.charAt(0) == "n" || this.value.charAt(0) == "N")) return !1; - var u = this.value; - if (u.charAt(0) == "n" || u.charAt(0) == "N") { - if (u.length < 3) + var c = this.value; + if (c.charAt(0) == "n" || c.charAt(0) == "N") { + if (c.length < 3) return !1; - u = u.substring(1); + c = c.substring(1); } - return u.length < 2 ? !1 : u.charAt(0) == "'" && u.charAt(u.length - 1) == "'"; + return c.length < 2 ? !1 : c.charAt(0) == "'" && c.charAt(c.length - 1) == "'"; }, this.isAltLiteral = function() { if (this.value.length < 5 || !(this.value.charAt(0) == "q" || this.value.charAt(0) == "Q" || this.value.charAt(0) == "n" || this.value.charAt(0) == "N")) return !1; - var u = this.value; + var c = this.value; if (this.value.charAt(0) == "q" || this.value.charAt(0) == "Q") - u = u.substring(1); + c = c.substring(1); else if ( /*content.startsWith("Nq")*/ (this.value.charAt(0) == "n" || this.value.charAt(0) == "N") && (this.value.charAt(1) == "q" || this.value.charAt(1) == "Q") ) { - if (u.length < 6) + if (c.length < 6) return !1; - u = u.substring(2); + c = c.substring(2); } else return !1; - if (u.charAt(0) == "'" && u.charAt(u.length - 1) == "'") - u = u.substring(1, u.length - 1); + if (c.charAt(0) == "'" && c.charAt(c.length - 1) == "'") + c = c.substring(1, c.length - 1); else return !1; - return i(u.charAt(0)) == u.charAt(u.length - 1); + return i(c.charAt(0)) == c.charAt(c.length - 1); }; - function i(u) { - return u == "<" ? ">" : u == "[" ? "]" : u == "{" ? "}" : u == "(" ? ")" : u; + function i(c) { + return c == "<" ? ">" : c == "[" ? "]" : c == "{" ? "}" : c == "(" ? ")" : c; } } - function b(M, x, p) { - for (var h = [], y = `(){}[]^-|!*+.><='",;:%@?/\\#~` + p, S = ` + function b(M, k, p) { + for (var f = [], y = `(){}[]^-|!*+.><='",;:%@?/\\#~` + p, S = ` \r `, i = $( M, //".*-+/|><=()\'\", \n\r\t" y + S - ), u = 0, r = 0, t = 0, l = 0; l < i.length; l++) { - var o = i[l], d = null; - if (h.length > 0 && (d = h[h.length - 1]), o == ` -` ? (r++, t = 0) : l > 0 && i[l - 1] !== ` -` ? t = t + i[l - 1].length : t = 0, u += o.length, d != null && d.type == "comment" && (d.value.lastIndexOf("*/") != d.value.length - 2 || d.value == "/*/")) { - o == "*" || o == "/" ? d.value = d.value + o : d.value = "/* ... ", d.end = u, d != null && d.type == "comment" && d.value.lastIndexOf("*/") == d.value.length - 2 && d.value != "/*/" && (d.value = M.substring(d.begin, d.end)); + ), c = 0, r = 0, t = 0, s = 0; s < i.length; s++) { + var l = i[s], d = null; + if (f.length > 0 && (d = f[f.length - 1]), l == ` +` ? (r++, t = 0) : s > 0 && i[s - 1] !== ` +` ? t = t + i[s - 1].length : t = 0, c += l.length, d != null && d.type == "comment" && (d.value.lastIndexOf("*/") != d.value.length - 2 || d.value == "/*/")) { + l == "*" || l == "/" ? d.value = d.value + l : d.value = "/* ... ", d.end = c, d != null && d.type == "comment" && d.value.lastIndexOf("*/") == d.value.length - 2 && d.value != "/*/" && (d.value = M.substring(d.begin, d.end)); continue; } - if (d != null && (d.type == "line-comment" || d.type == "dbtools-command") && o != ` + if (d != null && (d.type == "line-comment" || d.type == "dbtools-command") && l != ` `) { - d.value = d.value + o; + d.value = d.value + l; continue; } - if (d != null && (d.type == "line-comment" || d.type == "dbtools-command") && o == ` + if (d != null && (d.type == "line-comment" || d.type == "dbtools-command") && l == ` ` && (d.end = d.begin + d.value.length), d != null && d.type == "quoted-string" && !(d.isStandardLiteral() || d.isAltLiteral())) { - d.value = d.value + o, d.end = d.begin + d.value.length; + d.value = d.value + l, d.end = d.begin + d.value.length; continue; } - if (!(d != null && d.type == "dquoted-string" && o != '"' && !(d.value.endsWith('"') && d.value.length > 1))) { - if (d != null && d.type == "dquoted-string" && o == '"') { - d.end = u, d.value = M.substring(d.begin, d.end); + if (!(d != null && d.type == "dquoted-string" && l != '"' && !(d.value.endsWith('"') && d.value.length > 1))) { + if (d != null && d.type == "dquoted-string" && l == '"') { + d.end = c, d.value = M.substring(d.begin, d.end); continue; } - if (!(d != null && d.type == "bquoted-string" && o != "`" && !(d.value.endsWith("`") && d.value.length > 1))) { - if (d != null && d.type == "bquoted-string" && o == "`") { - d.end = u, d.value = M.substring(d.begin, d.end); + if (!(d != null && d.type == "bquoted-string" && l != "`" && !(d.value.endsWith("`") && d.value.length > 1))) { + if (d != null && d.type == "bquoted-string" && l == "`") { + d.end = c, d.value = M.substring(d.begin, d.end); continue; } - if (o == "*" && d != null && d.value == "/") { - d.value = d.value + o, d.end = d.begin + d.value.length, d.type = "comment"; + if (l == "*" && d != null && d.value == "/") { + d.value = d.value + l, d.end = d.begin + d.value.length, d.type = "comment"; continue; } - if (o == "-" && d != null && d.value == "-") { - d.value = d.value + o, d.type = "line-comment"; + if (l == "-" && d != null && d.value == "-") { + d.value = d.value + l, d.type = "line-comment"; continue; } - if ((o.toUpperCase() == "REM" || o.toUpperCase() == "REMA" || o.toUpperCase() == "REMAR" || o.toUpperCase() == "REMARK" || o.toUpperCase() == "PRO" || o.toUpperCase() == "PROM" || o.toUpperCase() == "PROMP" || o.toUpperCase() == "PROMPT") && (d == null || d.value == ` + if ((l.toUpperCase() == "REM" || l.toUpperCase() == "REMA" || l.toUpperCase() == "REMAR" || l.toUpperCase() == "REMARK" || l.toUpperCase() == "PRO" || l.toUpperCase() == "PROM" || l.toUpperCase() == "PROMP" || l.toUpperCase() == "PROMPT") && (d == null || d.value == ` ` || d.value == "\r")) { - h.push(new m(o, u - o.length, -9, "line-comment", r, t)); + f.push(new m(l, c - l.length, -9, "line-comment", r, t)); continue; } - if (o.toUpperCase() == "SODA" && (d == null || d.value == ` + if (l.toUpperCase() == "SODA" && (d == null || d.value == ` ` || d.value == "\r")) { - h.push(new m(o, u - o.length, -9, "dbtools-command", r, t)); + f.push(new m(l, c - l.length, -9, "dbtools-command", r, t)); continue; } - if (d != null && d.type == "identifier" && d.end == -11 && d.value.indexOf("@") == 0 && !(o == ` -` || o == "\r")) { - d.value = d.value + o; + if (d != null && d.type == "identifier" && d.end == -11 && d.value.indexOf("@") == 0 && !(l == ` +` || l == "\r")) { + d.value = d.value + l; continue; } - if (d != null && d.type == "identifier" && d.end == -11 && d.value.indexOf("@") == 0 && (o == ` -` || o == "\r")) { - d.end = u - 1, h.push(new m(o, u - 1, u, "ws", r, t)); + if (d != null && d.type == "identifier" && d.end == -11 && d.value.indexOf("@") == 0 && (l == ` +` || l == "\r")) { + d.end = c - 1, f.push(new m(l, c - 1, c, "ws", r, t)); continue; } - if (x && o == "'") { - d != null && (d.value.toUpperCase() == "Q" || d.value.toUpperCase() == "N" || d.value.toUpperCase() == "U" || d.value.toUpperCase() == "NQ") ? (d.value += o, d.type = "quoted-string") : h.push(new m(o, u - 1, -10, "quoted-string", r, t)); + if (k && l == "'") { + d != null && (d.value.toUpperCase() == "Q" || d.value.toUpperCase() == "N" || d.value.toUpperCase() == "U" || d.value.toUpperCase() == "NQ") ? (d.value += l, d.type = "quoted-string") : f.push(new m(l, c - 1, -10, "quoted-string", r, t)); continue; } - if (x && o == '"') { - h.push(new m(o, u - 1, -11, "dquoted-string", r, t)); + if (k && l == '"') { + f.push(new m(l, c - 1, -11, "dquoted-string", r, t)); continue; } - if (o == "`" && 0 <= y.indexOf("`")) { - h.push(new m(o, u - 1, -11, "bquoted-string", r, t)); + if (l == "`" && 0 <= y.indexOf("`")) { + f.push(new m(l, c - 1, -11, "bquoted-string", r, t)); continue; } - if (o.length == 1 && 0 <= y.indexOf(o)) { - h.push(new m(o, u - 1, u, "operation", r, t)); + if (l.length == 1 && 0 <= y.indexOf(l)) { + f.push(new m(l, c - 1, c, "operation", r, t)); continue; } - if (o.length == 1 && 0 <= S.indexOf(o)) { - h.push(new m(o, u - 1, u, "ws", r, t)); + if (l.length == 1 && 0 <= S.indexOf(l)) { + f.push(new m(l, c - 1, c, "ws", r, t)); continue; } - if ("0" <= o.charAt(0) && o.charAt(0) <= "9") { - L(o, h, u - o.length, r) || (o.charAt(o.length - 1) == "K" || o.charAt(o.length - 1) == "k" || o.charAt(o.length - 1) == "M" || o.charAt(o.length - 1) == "m" || o.charAt(o.length - 1) == "G" || o.charAt(o.length - 1) == "g" || o.charAt(o.length - 1) == "T" || o.charAt(o.length - 1) == "t" || o.charAt(o.length - 1) == "P" || o.charAt(o.length - 1) == "p" || o.charAt(o.length - 1) == "E" || o.charAt(o.length - 1) == "e" ? (h.push(new m(o.substring(0, o.length - 1), u - o.length, u - 1, "constant.numeric", r, t)), h.push(new m(o.substring(o.length - 1), u - 1, u, "constant.numeric", r, t))) : h.push(new m(o, u - o.length, u, "constant.numeric", r, t))); + if ("0" <= l.charAt(0) && l.charAt(0) <= "9") { + L(l, f, c - l.length, r) || (l.charAt(l.length - 1) == "K" || l.charAt(l.length - 1) == "k" || l.charAt(l.length - 1) == "M" || l.charAt(l.length - 1) == "m" || l.charAt(l.length - 1) == "G" || l.charAt(l.length - 1) == "g" || l.charAt(l.length - 1) == "T" || l.charAt(l.length - 1) == "t" || l.charAt(l.length - 1) == "P" || l.charAt(l.length - 1) == "p" || l.charAt(l.length - 1) == "E" || l.charAt(l.length - 1) == "e" ? (f.push(new m(l.substring(0, l.length - 1), c - l.length, c - 1, "constant.numeric", r, t)), f.push(new m(l.substring(l.length - 1), c - 1, c, "constant.numeric", r, t))) : f.push(new m(l, c - l.length, c, "constant.numeric", r, t))); continue; } - var P = "identifier"; - l + 1 < i.length && i[l + 1], h.push(new m(o, u - o.length, u, P, r, t)); + var E = "identifier"; + s + 1 < i.length && i[s + 1], f.push(new m(l, c - l.length, c, E, r, t)); } } } - if (h.length > 0) { - var d = h[h.length - 1]; + if (f.length > 0) { + var d = f[f.length - 1]; d.end = M.length; } - return h; + return f; } - function L(M, x, p, h) { + function L(M, k, p, f) { if (0 > M.indexOf("e") && 0 > M.indexOf("f") && 0 > M.indexOf("d")) return !1; 0 <= M.indexOf("e"), 0 <= M.indexOf("e"), !(0 <= M.indexOf("e")) && 0 <= M.indexOf("f"); for (var y = $(M, "efd"), S = 0; S < y.length; S++) { var i = y[S]; - p += i.length, "0" <= i.charAt(0) && i.charAt(0) <= "9" ? x.push(new m(i, p - i.length, p, "constant.numeric", h)) : x.push(new m(i, p - i.length, p, "identifier", h)); + p += i.length, "0" <= i.charAt(0) && i.charAt(0) <= "9" ? k.push(new m(i, p - i.length, p, "constant.numeric", f)) : k.push(new m(i, p - i.length, p, "identifier", f)); } return !0; } - function k(M, x, p, h) { - for (var y = [], S = b(M, p, h), i = null, u = 0; u < S.length; u++) { - var r = S[u]; + function x(M, k, p, f) { + for (var y = [], S = b(M, p, f), i = null, c = 0; c < S.length; c++) { + var r = S[c]; if (r.type == "quoted-string") { if (i != null && i.type == "quoted-string") { i.value = i.value + r.value, i.end = r.end; @@ -7444,11 +7444,11 @@ var Y = new pe(), oe = function() { || token.value.equals("$ELSE") || token.value.equals("$THEN") ||*/ - r.value.indexOf("$$") == 0 && (r.value = "$$VAR"), (x || r.type != "ws" && r.type != "comment" && r.type != "line-comment") && y.push(r), i = r; + r.value.indexOf("$$") == 0 && (r.value = "$$VAR"), (k || r.type != "ws" && r.type != "comment" && r.type != "line-comment") && y.push(r), i = r; } return y; } - return k; + return x; }(); function ge(m) { const b = { @@ -7565,9 +7565,9 @@ function ge(m) { let L = m.toUpperCase(); return b[L] != null ? "the_" + m : m; } -let le = function() { +let se = function() { let m, b = " ", L = ["string", "varchar2", "varchar", "vc", "char"]; - var k = ["yn", "boolean", "bool"]; + var x = ["yn", "boolean", "bool"]; function M(y, S, i) { this.line = y, this.parent = i, this.children = [], i != null && i.children.push(this), this.fks = null, this.descendants = function() { var r = []; @@ -7577,77 +7577,77 @@ let le = function() { return r; }, this.maxChildNameLen = function() { var r = 2, t = this.trimmedContent().toUpperCase(); - if ((m.optionEQvalue("rowkey", !0) || 0 < t.indexOf("/ROWKEY")) && (r = 7), (m.optionEQvalue("Row Version Number", "yes") || 0 < t.indexOf("/ROWVERSION")) && (r = 11), m.optionEQvalue("Audit Columns", "yes") || 0 < t.indexOf("/AUDITCOLS")) { - let B = m.getOptionValue("createdcol").length; - r < B && (r = B), B = m.getOptionValue("createdbycol").length, r < B && (r = B), B = m.getOptionValue("updatedcol").length, r < B && (r = B), B = m.getOptionValue("updatedbycol").length, r < B && (r = B); + if ((m.optionEQvalue("rowkey", !0) || 0 < t.indexOf("/ROWKEY")) && (r = 7), (m.optionEQvalue("Row Version Number", "yes") || 0 < t.indexOf("/ROWVERSION")) && (r = 11), m.optionEQvalue("Audit Columns", "yes") || 0 < t.indexOf("/AUDITCOLS") || 0 < t.indexOf("/AUDIT COL")) { + let P = m.getOptionValue("createdcol").length; + r < P && (r = P), P = m.getOptionValue("createdbycol").length, r < P && (r = P), P = m.getOptionValue("updatedcol").length, r < P && (r = P), P = m.getOptionValue("updatedbycol").length, r < P && (r = P); } if (this.fks != null) - for (var l in this.fks) { - var o = l.length; - let B = m.find(l); - B != null && B.isMany2One() && (o += 3), r < o && (r = o); + for (var s in this.fks) { + var l = s.length; + let P = m.find(s); + P != null && P.isMany2One() && (l += 3), r < l && (r = l); } for (var d = 0; d < this.children.length; d++) { - let B = this.children[d]; - if (0 < B.children.length) + let P = this.children[d]; + if (0 < P.children.length) continue; - let I = B.parseName().length; - 0 < B.indexOf("file") && (I += 9), r < I && (r = I); + let B = P.parseName().length; + 0 < P.indexOf("file") && (B += 9), r < B && (r = B); } - var P = m.additionalColumns(); - for (let B in P) { - let I = B.length; - r < I && (r = I); + var E = m.additionalColumns(); + for (let P in E) { + let B = P.length; + r < B && (r = B); } return r; }; - function u(r) { + function c(r) { let t = r; return t = t.replace(/ timestamp with local time zone/gi, " tswltz"), t = t.replace(/ timestamp with time zone/gi, " tswtz"), t = t.replace(/ timestamp/gi, " ts"), t; } - this.content = u(S), this.comment, this.indexOf = function(r, t) { - for (let l = 0; l < this.src.length; l++) { - if (t && this.src[l].value.indexOf(r) == 0) - return l; - if (r == this.src[l].value) - return l; + this.content = c(S), this.comment, this.indexOf = function(r, t) { + for (let s = 0; s < this.src.length; s++) { + if (t && this.src[s].value.indexOf(r) == 0) + return s; + if (r == this.src[s].value) + return s; } return -1; }, this.trimmedContent = function() { - var r = this.content.trim(), t = r.indexOf("["), l = r.indexOf("]"); - return this.comment == null && 0 < t && (this.comment = r.substr(t + 1, l - t - 1)), 0 < t && (r = r.substr(0, t) + r.substr(l + 2)), t = r.indexOf("--"), this.comment == null && 0 < t && (this.comment = r.substr(t + 2)), 0 < t && (r = r.substr(0, t)), r.trim(); + var r = this.content.trim(), t = r.indexOf("["), s = r.indexOf("]"); + return this.comment == null && 0 < t && (this.comment = r.substr(t + 1, s - t - 1)), 0 < t && (r = r.substr(0, t) + r.substr(s + 2)), t = r.indexOf("--"), this.comment == null && 0 < t && (this.comment = r.substr(t + 2)), 0 < t && (r = r.substr(0, t)), r.trim(); }, this.src = Q(this.content.toLowerCase(), !1, !0, ""), this.parseName = function() { let r = this.trimmedContent(); r = r.replace(/\t/, b); - const t = r.indexOf('"'), l = r.indexOf('"', t + 1); - if (0 <= t && t < l) - return r.substring(t, l + 1); + const t = r.indexOf('"'), s = r.indexOf('"', t + 1); + if (0 <= t && t < s) + return r.substring(t, s + 1); (r.indexOf(">") == 0 || r.indexOf("<") == 0) && (r = r.substring(1).trim()); - const o = r.toLowerCase(); - if (o.indexOf("view ") == 0) { + const l = r.toLowerCase(); + if (l.indexOf("view ") == 0) { var d = r.split(" "); return d[1]; } r = p(r, " d"); - var P = r.indexOf("/"); - 0 < P && (r = r.substring(0, P)), r = r.trim(), r = p(r, " integer"), r = p(r, " number"), r = p(r, " int"), r = p(r, " num"), r = p(r, " clob"), r = p(r, " blob"), r = p(r, " json"), r = p(r, " file"), r = p(r, " date"), r = p(r, " tstz"), r = p(r, " tswtz"), r = p(r, " tswltz"), r = p(r, " ts"), r = r.replace(/ vc\d+k/g, ""), r = r.replace(/ vc\(\d+\)/g, ""), r = r.replace(/ vc\d+/g, ""); - for (let I in L) { - let T = o.indexOf(" " + L[I]); - if (0 < T) { - r = r.substring(0, T) + r.substring(T + L[I].length + 1); + var E = r.indexOf("/"); + 0 < E && (r = r.substring(0, E)), r = r.trim(), r = p(r, " integer"), r = p(r, " number"), r = p(r, " int"), r = p(r, " num"), r = p(r, " clob"), r = p(r, " blob"), r = p(r, " json"), r = p(r, " file"), r = p(r, " date"), r = p(r, " tstz"), r = p(r, " tswtz"), r = p(r, " tswltz"), r = p(r, " ts"), r = r.replace(/ vc\d+k/g, ""), r = r.replace(/ vc\(\d+\)/g, ""), r = r.replace(/ vc\d+/g, ""); + for (let B in L) { + let I = l.indexOf(" " + L[B]); + if (0 < I) { + r = r.substring(0, I) + r.substring(I + L[B].length + 1); break; } } - for (let I in k) { - let T = o.indexOf(" " + k[I]); - if (0 < T) { - r = r.substring(0, T) + r.substring(T + k[I].length + 1); + for (let B in x) { + let I = l.indexOf(" " + x[B]); + if (0 < I) { + r = r.substring(0, I) + r.substring(I + x[B].length + 1); break; } } r = r.replace(/ num(ber)?\(\d+\)/g, ""), r = r.replace(/ num(ber)?\(\d+,\d+\)/g, ""), r = r.replace(/ num(ber)?\d+/g, ""), r = r.trim(), this.children.length == 0 && this.parent != null && this.parent.colprefix != null && (r = this.parent.colprefix + "_" + r); - var B = r.substr(0, 1); - return B >= "0" && B <= "9" && (r = "x" + r), ge(me(r)); + var P = r.substr(0, 1); + return P >= "0" && P <= "9" && (r = "x" + r), ge(de(r)); }, this.parseType = function(r) { if (this.children != null && 0 < this.children.length) return "table"; @@ -7658,68 +7658,68 @@ let le = function() { return "dv"; if (this.parent == null) return "table"; - var l = m.semantics(), o = 4e3; - (t[0].value.startsWith("name") || t[0].value.startsWith("email")) && (o = 255); - var d, P, B; - const I = this.indexOf("vc", !0); - if (0 < I) { - d = t[I].begin, P = t[I].end; - let w = t[I].value.substring(2); - w == "" && this.indexOf("(") == I + 1 && (w = t[I + 2].value), w != "" && (o = parseInt(w)), t[I].value.endsWith("k") && (o < 32 ? o = o * 1024 : o = o * 1024 - 1); + var s = m.semantics(), l = 4e3; + (t[0].value.startsWith("name") || t[0].value.startsWith("email")) && (l = 255); + var d, E, P; + const B = this.indexOf("vc", !0); + if (0 < B) { + d = t[B].begin, E = t[B].end; + let N = t[B].value.substring(2); + N == "" && this.indexOf("(") == B + 1 && (N = t[B + 2].value), N != "" && (l = parseInt(N)), t[B].value.endsWith("k") && (l < 32 ? l = l * 1024 : l = l * 1024 - 1); } - var T = "varchar2(" + o + l + ")"; - r == "plsql" && (T = "varchar2"), 0 < this.indexOf("int", !0) && (T = "integer"), t[0].value.endsWith("_id") && I < 0 && this.indexOf("date") < 0 && (T = "number"), t[0].value.endsWith("id") && I < 0 && this.indexOf("/") + 1 == this.indexOf("pk") && (T = "number"); - let N = J(i.parseName(), "_", this.parseName()); - (t[0].value.endsWith("_yn") || t[0].value.startsWith("is_")) && (T = "varchar2(1 char) constraint " + J(m.objPrefix(), N) + ` -`, T += b + b + " ".repeat(i.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"); - for (let w in k) - if (0 < this.indexOf(k[w])) { - T = "varchar2(1 char) constraint " + J(m.objPrefix(), N) + ` -`, T += b + b + " ".repeat(i.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"; + var I = "varchar2(" + l + s + ")"; + r == "plsql" && (I = "varchar2"), 0 < this.indexOf("int", !0) && (I = "integer"), t[0].value.endsWith("_id") && B < 0 && this.indexOf("date") < 0 && (I = "number"), t[0].value.endsWith("id") && B < 0 && this.indexOf("/") + 1 == this.indexOf("pk") && (I = "number"); + let D = J(i.parseName(), "_", this.parseName()); + (t[0].value.endsWith("_yn") || t[0].value.startsWith("is_")) && (I = "varchar2(1 char) constraint " + J(m.objPrefix(), D) + ` +`, I += b + b + " ".repeat(i.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"); + for (let N in x) + if (0 < this.indexOf(x[N])) { + I = "varchar2(1 char) constraint " + J(m.objPrefix(), D) + ` +`, I += b + b + " ".repeat(i.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"; break; } - this.indexOf("phone_number") == 0 && (T = "number"); + this.indexOf("phone_number") == 0 && (I = "number"); let F = this.indexOf("num", !0); - 0 < F && (T = "number"); - let D = this.indexOf(")"); - if (0 < F && 0 < D && (T += this.content.toLowerCase().substring(t[F + 1].begin, t[D].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value == "CREATED_ON".toLowerCase() || t[0].value == "UPDATED_ON".toLowerCase()) && (T = m.getOptionValue("Date Data Type").toLowerCase()), I < 0 && (0 < this.indexOf("clob") && (T = "clob"), (0 < this.indexOf("blob") || 0 < this.indexOf("file")) && (T = "blob"), 0 < this.indexOf("json") && (T = "clob check (" + this.parseName() + " is json)")), 0 < this.indexOf("tswltz") ? T = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : 0 < this.indexOf("tswtz") || 0 < this.indexOf("tstz") ? T = "TIMESTAMP WITH TIME ZONE".toLowerCase() : 0 < this.indexOf("ts") && (T = "TIMESTAMP".toLowerCase()), r) { + 0 < F && (I = "number"); + let w = this.indexOf(")"); + if (0 < F && 0 < w && (I += this.content.toLowerCase().substring(t[F + 1].begin, t[w].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value.startsWith("created") || t[0].value.startsWith("updated")) && (I = m.getOptionValue("Date Data Type").toLowerCase()), B < 0 && (0 < this.indexOf("clob") && (I = "clob"), (0 < this.indexOf("blob") || 0 < this.indexOf("file")) && (I = "blob"), 0 < this.indexOf("json") && (I = "clob check (" + this.parseName() + " is json)")), 0 < this.indexOf("tswltz") ? I = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : 0 < this.indexOf("tswtz") || 0 < this.indexOf("tstz") ? I = "TIMESTAMP WITH TIME ZONE".toLowerCase() : 0 < this.indexOf("ts") && (I = "TIMESTAMP".toLowerCase()), r) { if (0 < this.indexOf("fk") || 0 < this.indexOf("reference")) { - const w = this.refId(); - let O = "number", G = m.find(w); - return G != null && G.getExplicitPkNode() != null && (O = G.getExplicitPkNode().parseType((e) => !0)), O; + const N = this.refId(); + let O = "number", R = m.find(N); + return R != null && R.getExplicitPkNode() != null && (O = R.getExplicitPkNode().parseType((e) => !0)), O; } - return T; + return I; } - 0 < this.indexOf("unique") && (T += ` -`, T += b + b + " ".repeat(i.maxChildNameLen()) + "constraint " + N + "_unq unique"); - var R = "'"; - if ((T.startsWith("integer") || T.startsWith("number") || T.startsWith("date")) && (R = ""), 0 < this.indexOf("default")) { - const w = t[this.indexOf("default") + 1].value; - T += " default on null " + R + w + R; + 0 < this.indexOf("unique") && (I += ` +`, I += b + b + " ".repeat(i.maxChildNameLen()) + "constraint " + D + "_unq unique"); + var G = "'"; + if ((I.startsWith("integer") || I.startsWith("number") || I.startsWith("date")) && (G = ""), 0 < this.indexOf("default")) { + const N = t[this.indexOf("default") + 1].value; + I += " default on null " + G + N + G; } - if ((0 < this.indexOf("nn") || this.indexOf("not") + 1 == this.indexOf("null")) && this.indexOf("pk") < 0 && (T += " not null"), (0 < this.indexOf("hidden") || 0 < this.indexOf("invincible")) && (T += " invisible"), 0 < this.indexOf("check")) { - const w = this.trimmedContent().toUpperCase(); - d = w.indexOf("/CHECK"), P = w.lastIndexOf("/"), P == d && (P = w.length), B = this.trimmedContent().substr(d + 6, P - d - 6).trim(), 0 < B.indexOf(", ") ? B = B.replace(/, /g, R + "," + R) : 0 < B.indexOf(",") ? B = B.replace(/,/g, R + "," + R) : B = B.replace(/ /g, R + "," + R), T += " constraint " + J(m.objPrefix(), N, "_ck") + ` -`, T += b + b + " ".repeat(i.maxChildNameLen()) + "check (" + this.parseName() + " in (" + R + B + R + "))", T = T.replace(/''/gm, "'"); + if ((0 < this.indexOf("nn") || this.indexOf("not") + 1 == this.indexOf("null")) && this.indexOf("pk") < 0 && (I += " not null"), (0 < this.indexOf("hidden") || 0 < this.indexOf("invincible")) && (I += " invisible"), 0 < this.indexOf("check")) { + const N = this.trimmedContent().toUpperCase(); + d = N.indexOf("/CHECK"), E = N.lastIndexOf("/"), E == d && (E = N.length), P = this.trimmedContent().substr(d + 6, E - d - 6).trim(), 0 < P.indexOf(", ") ? P = P.replace(/, /g, G + "," + G) : 0 < P.indexOf(",") ? P = P.replace(/,/g, G + "," + G) : P = P.replace(/ /g, G + "," + G), I += " constraint " + J(m.objPrefix(), D, "_ck") + ` +`, I += b + b + " ".repeat(i.maxChildNameLen()) + "check (" + this.parseName() + " in (" + G + P + G + "))", I = I.replace(/''/gm, "'"); } if (0 < this.indexOf("between")) { - const w = this.indexOf("between"), O = t[w + 1].value + " and " + t[w + 3].value; - T += " constraint " + J(N, "_bet") + ` -`, T += " check (" + this.parseName() + " between " + O + ")"; + const N = this.indexOf("between"), O = t[N + 1].value + " and " + t[N + 3].value; + I += " constraint " + J(D, "_bet") + ` +`, I += " check (" + this.parseName() + " between " + O + ")"; } if (0 < this.indexOf("pk")) { - let w = " not null"; - T.startsWith("number") && m.optionEQvalue("pk", "identityDataType") && (w = " GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), T.startsWith("number") && m.optionEQvalue("pk", "seq") && (w = " default on null " + (m.objPrefix() + this.parent.parseName()) + "_seq.NEXTVAL ".toLowerCase()), T.startsWith("number") && m.optionEQvalue("pk", "guid") && (w = " default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), T += w + ` -`, T += b + b + " ".repeat(i.maxChildNameLen()) + "constraint " + J(m.objPrefix(), N, "_pk") + " primary key"; + let N = " not null"; + I.startsWith("number") && m.optionEQvalue("pk", "identityDataType") && (N = " GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), I.startsWith("number") && m.optionEQvalue("pk", "seq") && (N = " default on null " + (m.objPrefix() + this.parent.parseName()) + "_seq.NEXTVAL ".toLowerCase()), I.startsWith("number") && m.optionEQvalue("pk", "guid") && (N = " default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), I += N + ` +`, I += b + b + " ".repeat(i.maxChildNameLen()) + "constraint " + J(m.objPrefix(), D, "_pk") + " primary key"; } - return T; + return I; }, this.isMany2One = function() { var r = this.trimmedContent(), t = r.indexOf(">"); return t == 0; }, this.getExplicitPkNode = function() { for (var r = 0; r < this.children.length; r++) { - var t = this.children[r], l = t.trimmedContent().toLowerCase(); - if (0 < l.indexOf("/pk")) + var t = this.children[r], s = t.trimmedContent().toLowerCase(); + if (0 < s.indexOf("/pk")) return t; } return null; @@ -7728,33 +7728,33 @@ let le = function() { r = r.replace(/\/cascade/g, ""); var t = r.indexOf(" id "); if (t < 0 && t == r.length - 3 && (t = r.indexOf(" id")), t < 0 && (t = r.indexOf(" id"), t != r.length - 3 && (t = -1)), t < 0 && (t = r.indexOf("_id "), t != r.length - 4 && (t = -1)), t < 0 && (t = r.indexOf("_id"), t != r.length - 3 && (t = -1)), t < 0 && (t = r.indexOf("Id "), t != r.length - 3 && (t = -1)), 0 < t) { - let l = r.substr(0, t) + "s"; - if (m.find(l) != null || (l = r.substr(0, t), m.find(l) != null)) - return l; + let s = r.substr(0, t) + "s"; + if (m.find(s) != null || (s = r.substr(0, t), m.find(s) != null)) + return s; } return t = r.indexOf("/fk"), 0 < t ? (r = r.substr(t + 3).trim(), t = r.indexOf("/"), 0 < t && (r = r.substring(0, t).trim()), r.replace(" ", "_")) : (t = r.indexOf("/reference"), 0 < t ? (r = r.substr(t + 10).trim(), r.indexOf("s") == 0 && (r = r.substring(1).trim()), t = r.indexOf("/"), 0 < t && (r = r.substring(0, t).trim()), r.replace(" ", "_")) : null); }, this.parseValues = function() { - var r = this.trimmedContent().toUpperCase(), t, l, o; + var r = this.trimmedContent().toUpperCase(), t, s, l; if (0 <= r.indexOf("/CHECK") || 0 <= r.indexOf("/VALUES")) { var d = "/CHECK"; - return t = r.indexOf(d), t < 0 && (d = "/VALUES", t = r.indexOf(d)), l = r.lastIndexOf("/"), l == t && (l = r.length), o = r.substr(t + d.length, l - t - d.length).trim(), 0 < o.indexOf(",") ? (o = o.replace(/ /g, ""), o.split(",")) : o.split(" "); + return t = r.indexOf(d), t < 0 && (d = "/VALUES", t = r.indexOf(d)), s = r.lastIndexOf("/"), s == t && (s = r.length), l = r.substr(t + d.length, s - t - d.length).trim(), 0 < l.indexOf(",") ? (l = l.replace(/ /g, ""), l.split(",")) : l.split(" "); } if (0 <= r.indexOf("/BETWEEN")) { - t = r.indexOf("/BETWEEN"), l = r.lastIndexOf("/"), l == t && (l = r.length), o = r.substr(t + 8, l - t - 8).trim(), o = o.replace(" AND ", " "); - for (var P = [], B = parseInt(o.split(" ")[0]); B <= parseInt(o.split(" ")[1]); B++) - P.push(B); - return P; + t = r.indexOf("/BETWEEN"), s = r.lastIndexOf("/"), s == t && (s = r.length), l = r.substr(t + 8, s - t - 8).trim(), l = l.replace(" AND ", " "); + for (var E = [], P = parseInt(l.split(" ")[0]); P <= parseInt(l.split(" ")[1]); P++) + E.push(P); + return E; } return null; }, this.apparentDepth = function() { let r = this.content.split(/ |\t/), t = 0; - for (var l = 0; l < r.length; l++) { - var o = r[l]; - if (o == " ") { + for (var s = 0; s < r.length; s++) { + var l = r[s]; + if (l == " ") { t += this.tab; continue; } - if (o == "") { + if (l == "") { t++; continue; } @@ -7780,160 +7780,160 @@ let le = function() { if (this.parseType() == "view" || this.parseType() == "dv") return ""; if (this.children.length == 0 && 0 < this.apparentDepth()) { - let a = b; - return this.parent != null && (a += " ".repeat(this.parent.maxChildNameLen() - this.parseName().length)), this.parseName() + a + this.parseType(); + let n = b; + return this.parent != null && (n += " ".repeat(this.parent.maxChildNameLen() - this.parseName().length)), this.parseName() + n + this.parseType(); } if (this.fks == null && (this.fks = []), !this.isMany2One()) { this.parent != null && this.parseType() == "table" && (this.fks[z(this.parent.parseName()) + "_id"] = this.parent.parseName()); - for (let a = 0; a < this.children.length; a++) - this.children[a].refId() != null && (this.fks[this.children[a].parseName()] = this.children[a].refId()); + for (let n = 0; n < this.children.length; n++) + this.children[n].refId() != null && (this.fks[this.children[n].parseName()] = this.children[n].refId()); } const r = this.trimmedContent().toUpperCase(); var t = r.indexOf("/COLPREFIX "); if (0 < t) { - let n = r.substr(t + 11).split(" "); - this.colprefix = n[0]; + let o = r.substr(t + 11).split(" "); + this.colprefix = o[0]; } - var l = [], o = ""; - let d = m.objPrefix() + this.parseName(); - m.optionEQvalue("pk", "SEQ") && m.optionEQvalue("genpk", !0) && (o = o + "create sequence " + d + `_seq; + var s = [], l = ""; + const d = m.objPrefix() + this.parseName(); + m.optionEQvalue("pk", "SEQ") && m.optionEQvalue("genpk", !0) && (l = l + "create sequence " + d + `_seq; -`), o = o + "create table " + d + ` ( +`), l = l + "create table " + d + ` ( `; - var P = b + " ".repeat(this.maxChildNameLen() - 2); - let B = this.getGenIdColName(); - if (B != null) { - let a = "not null"; - m.optionEQvalue("pk", "identityDataType") && (a = "GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), m.optionEQvalue("pk", "seq") && (a = "default on null " + d + "_seq.NEXTVAL ".toLowerCase()), m.optionEQvalue("pk", "guid") && (a = "default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), o += b + B + P + "number " + a + ` + var E = b + " ".repeat(this.maxChildNameLen() - 2); + let P = this.getGenIdColName(); + if (P != null) { + let n = "not null"; + m.optionEQvalue("pk", "identityDataType") && (n = "GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), m.optionEQvalue("pk", "seq") && (n = "default on null " + d + "_seq.NEXTVAL ".toLowerCase()), m.optionEQvalue("pk", "guid") && (n = "default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), l += b + P + E + "number " + n + ` `; - const n = J(d, "_", B); - o += b + b + " ".repeat(this.maxChildNameLen()) + "constraint " + J(n, "_pk") + ` primary key, + const o = J(m.objPrefix("no schema") + this.parseName(), "_", P); + l += b + b + " ".repeat(this.maxChildNameLen()) + "constraint " + J(o, "_pk") + ` primary key, `; } else { - let a = this.getExplicitPkNode(); - if (a != null) { - let n = b + " ".repeat(this.maxChildNameLen() - a.parseName().length); - o += b + a.parseName() + n + a.parseType() + `, + let n = this.getExplicitPkNode(); + if (n != null) { + let o = b + " ".repeat(this.maxChildNameLen() - n.parseName().length); + l += b + n.parseName() + o + n.parseType() + `, `; } } - for (let a in this.fks) { - let n = this.fks[a], s = "number", c = m.find(n), g = ""; - c != null && c.getExplicitPkNode() != null ? s = c.getExplicitPkNode().parseType((v) => !0) : c == null && (c = m.find(a), c.isMany2One() & !a.endsWith("_id") && (n = a, a = z(a), g = "_id")), P = b + " ".repeat(this.maxChildNameLen() - a.length), o += b + a + g + P + s + ` -`, o += b + b + " ".repeat(this.maxChildNameLen()) + "constraint " + d + "_" + a + `_fk + for (let n in this.fks) { + let o = this.fks[n], u = "number", g = m.find(o), T = ""; + g != null && g.getExplicitPkNode() != null ? u = g.getExplicitPkNode().parseType((C) => !0) : g == null && (g = m.find(n), g.isMany2One() & !n.endsWith("_id") && (o = n, n = z(n), T = "_id")), E = b + " ".repeat(this.maxChildNameLen() - n.length), l += b + n + T + E + u + ` +`, l += b + b + " ".repeat(this.maxChildNameLen()) + "constraint " + d + "_" + n + `_fk `; - let E = ""; - 0 <= r.indexOf("/CASCADE") && (E = " on delete cascade"); - let f = ""; - for (let v in this.children) { - let C = this.children[v]; - if (a == C.parseName()) { - let A = C.trimmedContent().toUpperCase(); - (0 <= A.indexOf("/NN") || 0 <= A.indexOf("/NOTNULL")) && (f = " NOT NULL".toLowerCase()), 0 <= A.indexOf("/CASCADE") && (E = " on delete cascade"); + let h = ""; + 0 <= r.indexOf("/CASCADE") && (h = " on delete cascade"); + let v = ""; + for (let C in this.children) { + let A = this.children[C]; + if (n == A.parseName()) { + let H = A.trimmedContent().toUpperCase(); + (0 <= H.indexOf("/NN") || 0 <= H.indexOf("/NOTNULL")) && (v = " NOT NULL".toLowerCase()), 0 <= H.indexOf("/CASCADE") && (h = " on delete cascade"); break; } } - o += b + b + " ".repeat(this.maxChildNameLen()) + "references " + m.objPrefix() + n + E + f + `, + l += b + b + " ".repeat(this.maxChildNameLen()) + "references " + m.objPrefix() + o + h + v + `, `; } if (m.optionEQvalue("rowkey", !0) || 0 < r.indexOf("/ROWKEY")) { - let a = b + " ".repeat(this.maxChildNameLen() - 7); - o += b + "row_key" + a + `varchar2(30 char) -`, o += b + b + " ".repeat(this.maxChildNameLen()) + "constraint " + d + `_row_key_unq unique not null, + let n = b + " ".repeat(this.maxChildNameLen() - 7); + l += b + "row_key" + n + `varchar2(30 char) +`, l += b + b + " ".repeat(this.maxChildNameLen()) + "constraint " + d + `_row_key_unq unique not null, `; } - for (let a = 0; a < this.children.length; a++) { - let n = this.children[a]; - if (!(B != null && n.parseName() == "id")) { - if (0 < n.children.length) { - l.push(n); + for (let n = 0; n < this.children.length; n++) { + let o = this.children[n]; + if (!(P != null && o.parseName() == "id")) { + if (0 < o.children.length) { + s.push(o); continue; } - if (n.refId() == null) { - if (n == this.getExplicitPkNode()) + if (o.refId() == null) { + if (o == this.getExplicitPkNode()) continue; - if (o += b + n.toDDL([]) + `, -`, 0 < n.indexOf("file")) { - const s = n.parseName().toUpperCase(); - let c = s + "_FILENAME", g = b + " ".repeat(this.maxChildNameLen() - c.length); - o += b + c.toLowerCase() + g + "varchar2(255" + m.semantics() + `), -`, c = s + "_MIMETYPE", g = b + " ".repeat(this.maxChildNameLen() - c.length), o += b + c.toLowerCase() + g + "varchar2(255" + m.semantics() + `), -`, c = s + "_CHARSET", g = b + " ".repeat(this.maxChildNameLen() - c.length), o += b + c.toLowerCase() + g + "varchar2(255" + m.semantics() + `), -`, c = s + "_LASTUPD", g = b + " ".repeat(this.maxChildNameLen() - c.length), o += b + c.toLowerCase() + g + m.getOptionValue("Date Data Type").toLowerCase() + `, + if (l += b + o.toDDL([]) + `, +`, 0 < o.indexOf("file")) { + const u = o.parseName().toUpperCase(); + let g = u + "_FILENAME", T = b + " ".repeat(this.maxChildNameLen() - g.length); + l += b + g.toLowerCase() + T + "varchar2(255" + m.semantics() + `), +`, g = u + "_MIMETYPE", T = b + " ".repeat(this.maxChildNameLen() - g.length), l += b + g.toLowerCase() + T + "varchar2(255" + m.semantics() + `), +`, g = u + "_CHARSET", T = b + " ".repeat(this.maxChildNameLen() - g.length), l += b + g.toLowerCase() + T + "varchar2(255" + m.semantics() + `), +`, g = u + "_LASTUPD", T = b + " ".repeat(this.maxChildNameLen() - g.length), l += b + g.toLowerCase() + T + m.getOptionValue("Date Data Type").toLowerCase() + `, `; } } } } if (m.optionEQvalue("rowVersion", "yes") || 0 < r.indexOf("/ROWVERSION")) { - let a = b + " ".repeat(this.maxChildNameLen() - 11); - o += b + "row_version" + a + `integer not null, + let n = b + " ".repeat(this.maxChildNameLen() - 11); + l += b + "row_version" + n + `integer not null, `; } - if (m.optionEQvalue("Audit Columns", "yes") || 0 < r.indexOf("/AUDITCOLS")) { - let a = m.getOptionValue("createdcol"), n = b + " ".repeat(this.maxChildNameLen() - a.length); - o += b + a + n + m.getOptionValue("Date Data Type").toLowerCase() + ` not null, + if (m.optionEQvalue("Audit Columns", "yes") || 0 < r.indexOf("/AUDITCOLS") || 0 < r.indexOf("/AUDIT COL")) { + let n = m.getOptionValue("createdcol"), o = b + " ".repeat(this.maxChildNameLen() - n.length); + l += b + n + o + m.getOptionValue("Date Data Type").toLowerCase() + ` not null, `; - let s = m.getOptionValue("createdbycol"); - n = b + " ".repeat(this.maxChildNameLen() - s.length), o += b + s + n + "varchar2(255" + m.semantics() + `) not null, + let u = m.getOptionValue("createdbycol"); + o = b + " ".repeat(this.maxChildNameLen() - u.length), l += b + u + o + "varchar2(255" + m.semantics() + `) not null, `; - let c = m.getOptionValue("updatedcol"); - n = b + " ".repeat(this.maxChildNameLen() - c.length), o += b + c + n + m.getOptionValue("Date Data Type").toLowerCase() + ` not null, + let g = m.getOptionValue("updatedcol"); + o = b + " ".repeat(this.maxChildNameLen() - g.length), l += b + g + o + m.getOptionValue("Date Data Type").toLowerCase() + ` not null, `; - let g = m.getOptionValue("updatedbycol"); - n = b + " ".repeat(this.maxChildNameLen() - g.length), o += b + g + n + "varchar2(255" + m.semantics() + `) not null, + let T = m.getOptionValue("updatedbycol"); + o = b + " ".repeat(this.maxChildNameLen() - T.length), l += b + T + o + "varchar2(255" + m.semantics() + `) not null, `; } - var I = m.additionalColumns(); - for (let a in I) { - var T = I[a]; - P = b + " ".repeat(this.maxChildNameLen() - a.length), o += b + a.toUpperCase() + P + T + ` not null, + var B = m.additionalColumns(); + for (let n in B) { + var I = B[n]; + E = b + " ".repeat(this.maxChildNameLen() - n.length), l += b + n.toUpperCase() + E + I + ` not null, `; } - o.lastIndexOf(`, -`) == o.length - 2 && (o = o.substr(0, o.length - 2) + ` -`), o += ")" + (m.optionEQvalue("compress", "yes") || 0 < r.indexOf("/COMPRESS") ? " compress" : "") + `; + l.lastIndexOf(`, +`) == l.length - 2 && (l = l.substr(0, l.length - 2) + ` +`), l += ")" + (m.optionEQvalue("compress", "yes") || 0 < r.indexOf("/COMPRESS") ? " compress" : "") + `; `; - let N = r.indexOf("/AUDIT"), F = r.indexOf("/AUDITCOLS"); - 0 < N && N != F && (o += "audit all on " + d + `; + const D = r.indexOf("/AUDIT"), F = r.indexOf("/AUDITCOLS"), w = r.indexOf("/AUDIT COL"); + 0 < D && F < 0 && w < 0 && (l += "audit all on " + d + `; `); - let D = 1; - for (let a in this.fks) + let G = 1; + for (let n in this.fks) if (!this.isMany2One()) { - var R = this.fks[a], w = R, O = a; - O == null && (O = z(w) + "_id"), D == 1 && (o += `-- table index -`), o += "create index " + d + "_i" + D++ + " on " + d + " (" + O + `); + var N = this.fks[n], O = N, R = n; + R == null && (R = z(O) + "_id"), G == 1 && (l += `-- table index +`), l += "create index " + d + "_i" + G++ + " on " + d + " (" + R + `); `; } - let G = r.indexOf("/UNIQUE "); - if (0 < G) { - let a = r.substr(G + 8), n = a.indexOf("/"); - 0 < n && (a = a.substring(0, n).trim()), o += "alter table " + d + " add constraint " + d + "_uk unique (" + a + `); + let e = r.indexOf("/UNIQUE "); + if (0 < e) { + let n = r.substr(e + 8), o = n.indexOf("/"); + 0 < o && (n = n.substring(0, o).trim()), l += "alter table " + d + " add constraint " + d + "_uk unique (" + n + `); `; } - for (let a = 0; a < this.children.length; a++) { - var e = this.children[a]; - let n = e.trimmedContent().toUpperCase(); - (0 <= n.indexOf("/IDX") || 0 <= n.indexOf("/INDEX")) && (D == 1 && (o += `-- table index -`), o += "create index " + d + "_i" + D++ + " on " + d + " (" + e.parseName() + `); + for (let n = 0; n < this.children.length; n++) { + var a = this.children[n]; + let o = a.trimmedContent().toUpperCase(); + (0 <= o.indexOf("/IDX") || 0 <= o.indexOf("/INDEX")) && (G == 1 && (l += `-- table index +`), l += "create index " + d + "_i" + G++ + " on " + d + " (" + a.parseName() + `); `); } - this.comment != null && (o += "comment on table " + d + " is '" + this.comment + `'; + this.comment != null && (l += "comment on table " + d + " is '" + this.comment + `'; `); - for (let a = 0; a < this.children.length; a++) { - let n = this.children[a]; - n.comment != null && n.children.length == 0 && (o += "comment on column " + d + "." + n.parseName() + " is '" + n.comment + `'; + for (let n = 0; n < this.children.length; n++) { + let o = this.children[n]; + o.comment != null && o.children.length == 0 && (l += "comment on column " + d + "." + o.parseName() + " is '" + o.comment + `'; `); } - o += ` + l += ` `; - for (let a = 0; a < l.length; a++) - o += l[a].toDDL(); - return o; + for (let n = 0; n < s.length; n++) + l += s[n].toDDL(); + return l; }, this.generateDrop = function() { let r = m.objPrefix() + this.parseName(), t = ""; return this.parseType() == "view" && (t = "drop view " + r + `; @@ -7946,111 +7946,111 @@ let le = function() { if (m.optionEQvalue("Duality View", "yes") || this.parseType() == "dv") return this.generateDualityView(); let r = m.objPrefix() + this.parseName(); - var l = this.trimmedContent().split(" "), o = "create or replace view " + r + ` as + var s = this.trimmedContent().split(" "), l = "create or replace view " + r + ` as `; - o += `select + l += `select `; - for (var d = 0, P = 2; P < l.length; P++) { - let c = m.find(l[P]); - if (c == null) + for (var d = 0, E = 2; E < s.length; E++) { + let u = m.find(s[E]); + if (u == null) return ""; - var B = (l[P] + ".id").length; - d < B && (d = B); - for (var I = 0; I < c.children.length; I++) { - var T = c.children[I]; - B = (l[P] + "." + T.parseName()).length, d < B && (d = B); + var P = (s[E] + ".id").length; + d < P && (d = P); + for (var B = 0; B < u.children.length; B++) { + var I = u.children[B]; + P = (s[E] + "." + I.parseName()).length, d < P && (d = P); } } - var N = {}; - for (let c = 2; c < l.length; c++) { - let g = m.find(l[c]); + var D = {}; + for (let u = 2; u < s.length; u++) { + let g = m.find(s[u]); if (g != null) - for (let E = 0; E < g.children.length; E++) { - var F = g.children[E].parseName(), D = N[F]; - D == null && (D = 0), N[F] = D + 1; + for (let T = 0; T < g.children.length; T++) { + var F = g.children[T].parseName(), w = D[F]; + w == null && (w = 0), D[F] = w + 1; } } - for (let c = 2; c < l.length; c++) { - let g = m.find(l[c]); + for (let u = 2; u < s.length; u++) { + let g = m.find(s[u]); if (g == null) continue; - let E = " ".repeat(d - (l[c] + ".id").length); - o += b + l[c] + ".id" + b + E + z(l[c]) + `_id, + let T = " ".repeat(d - (s[u] + ".id").length); + l += b + s[u] + ".id" + b + T + z(s[u]) + `_id, `; for (let v = 0; v < g.children.length; v++) { let C = g.children[v]; if (C.children.length == 0) { - E = " ".repeat(d - (l[c] + "." + C.parseName()).length); - var R = ""; - 1 < N[C.parseName()] && (R = z(l[c]) + "_"), o += b + l[c] + "." + C.parseName() + b + E + R + C.parseName() + `, + T = " ".repeat(d - (s[u] + "." + C.parseName()).length); + var G = ""; + 1 < D[C.parseName()] && (G = z(s[u]) + "_"), l += b + s[u] + "." + C.parseName() + b + T + G + C.parseName() + `, `; } } - let f = g.trimmedContent().toUpperCase(); - if (m.optionEQvalue("rowVersion", "yes") || 0 < f.indexOf("/ROWVERSION")) { + let h = g.trimmedContent().toUpperCase(); + if (m.optionEQvalue("rowVersion", "yes") || 0 < h.indexOf("/ROWVERSION")) { let v = b + " ".repeat(g.maxChildNameLen() - 11); - o += b + l[c] + ".row_version" + z(v + l[c]) + `_row_version, + l += b + s[u] + ".row_version" + z(v + s[u]) + `_row_version, `; } - if (m.optionEQvalue("rowkey", "yes") || 0 < f.indexOf("/ROWKEY")) { + if (m.optionEQvalue("rowkey", "yes") || 0 < h.indexOf("/ROWKEY")) { let v = b + " ".repeat(g.maxChildNameLen() - 7); - o += b + l[c] + ".ROW_KEY" + z(v + l[c]) + `_ROW_KEY, + l += b + s[u] + ".ROW_KEY" + z(v + s[u]) + `_ROW_KEY, `; } - if (m.optionEQvalue("Audit Columns", "yes") || 0 < f.indexOf("/AUDITCOLS")) { + if (m.optionEQvalue("Audit Columns", "yes") || 0 < h.indexOf("/AUDITCOLS") || 0 < h.indexOf("/AUDIT COL")) { let v = m.getOptionValue("createdcol"), C = b + " ".repeat(g.maxChildNameLen() - v.length); - o += b + l[c] + "." + v + z(C + l[c]) + "_" + v + `, + l += b + s[u] + "." + v + z(C + s[u]) + "_" + v + `, `; let A = m.getOptionValue("createdbycol"); - C = b + " ".repeat(g.maxChildNameLen() - A.length), o += b + l[c] + "." + A + z(C + l[c]) + "_" + A + `, + C = b + " ".repeat(g.maxChildNameLen() - A.length), l += b + s[u] + "." + A + z(C + s[u]) + "_" + A + `, `; let H = m.getOptionValue("updatedcol"); - C = b + " ".repeat(g.maxChildNameLen() - H.length), o += b + l[c] + "." + H + z(C + l[c]) + "_" + H + `, + C = b + " ".repeat(g.maxChildNameLen() - H.length), l += b + s[u] + "." + H + z(C + s[u]) + "_" + H + `, `; let _ = m.getOptionValue("updatedbycol"); - C = b + " ".repeat(g.maxChildNameLen() - _.length), o += b + l[c] + "." + _ + z(C + l[c]) + "_" + _ + `, + C = b + " ".repeat(g.maxChildNameLen() - _.length), l += b + s[u] + "." + _ + z(C + s[u]) + "_" + _ + `, `; } } - o.lastIndexOf(`, -`) == o.length - 2 && (o = o.substr(0, o.length - 2) + ` -`), o += `from + l.lastIndexOf(`, +`) == l.length - 2 && (l = l.substr(0, l.length - 2) + ` +`), l += `from `; - for (let c = 2; c < l.length; c++) { - let g = " ".repeat(d - l[c].length); - var w = l[c]; - m.objPrefix() != null && m.objPrefix() != "" && m.objPrefix() + l[c] + g + l[c], o += b + w + `, + for (let u = 2; u < s.length; u++) { + let g = " ".repeat(d - s[u].length); + var N = s[u]; + m.objPrefix() != null && m.objPrefix() != "" && (N = m.objPrefix() + s[u] + g + s[u]), l += b + N + `, `; } - o.lastIndexOf(`, -`) == o.length - 2 && (o = o.substr(0, o.length - 2) + ` -`), o += `where + l.lastIndexOf(`, +`) == l.length - 2 && (l = l.substr(0, l.length - 2) + ` +`), l += `where `; - for (let c = 2; c < l.length; c++) - for (let g = 2; g < l.length; g++) - if (g != c) { - var O = l[c], G = l[g], e = m.find(O); + for (let u = 2; u < s.length; u++) + for (let g = 2; g < s.length; g++) + if (g != u) { + var O = s[u], R = s[g], e = m.find(O); if (e != null) { - var a = m.find(G); + var a = m.find(R); if (a != null) for (var n in e.fks) { - var s = e.fks[n]; - s == G && (o += b + O + "." + z(s) + "_id(+) = " + G + `.id and + var o = e.fks[n]; + o == R && (l += b + O + "." + z(o) + "_id(+) = " + R + `.id and `); } } } - return o = p(o, `where -`), o.lastIndexOf(" and") == o.length - 4 && (o = o.substring(0, o.length - 4) + ` -`), o += `/ -`, o.toLowerCase(); + return l = p(l, `where +`), l.lastIndexOf(" and") == l.length - 4 && (l = l.substring(0, l.length - 4) + ` +`), l += `/ +`, l.toLowerCase(); }, this.restEnable = function() { if (this.parseType() != "table" || this.trimmedContent().toUpperCase().indexOf("/REST") < 0) return ""; - let l = this.parseName(); - const o = l.indexOf('"') == 0; - let d = m.objPrefix() + l; - return o ? d = m.objPrefix() + l.substring(1, l.length - 1) : d = (m.objPrefix() + l).toUpperCase(), `begin + let s = this.parseName(); + const l = s.indexOf('"') == 0; + let d = m.objPrefix() + s; + return l ? d = m.objPrefix() + s.substring(1, s.length - 1) : d = (m.objPrefix() + s).toUpperCase(), `begin ` + b + "ords.enable_object(p_enabled=>TRUE, p_object=>'" + d + `'); end; / @@ -8061,14 +8061,14 @@ end; let r = ""; m.optionEQvalue("editionable", "yes") && (r = " editionable"); let t = m.objPrefix() + this.parseName(); - var l = "create or replace" + r + " trigger " + t.toLowerCase() + `_BIU + var s = "create or replace" + r + " trigger " + t.toLowerCase() + `_BIU `.toLowerCase(); - l += ` before insert or update -`, l += " on " + t.toLowerCase() + ` -`, l += ` for each row + s += ` before insert or update +`, s += " on " + t.toLowerCase() + ` +`, s += ` for each row `; - let o = this.trimmedContent().toUpperCase(); - (m.optionEQvalue("Rowkey", "yes") || 0 < o.indexOf("/ROWKEY")) && (l += `declare + let l = this.trimmedContent().toUpperCase(); + (m.optionEQvalue("Rowkey", "yes") || 0 < l.indexOf("/ROWKEY")) && (s += `declare function compress_int (n in integer ) return varchar2 as ret varchar2(30); @@ -8091,115 +8091,112 @@ end; if length(ret) < 5 then ret := lpad(ret, 4, 'A'); end if ; return upper(ret); end compress_int; -`), l += `begin +`), s += `begin `; - var d = !1, P = "user"; - m.optionEQvalue("apex", "yes") && (P = "coalesce(sys_context('APEX$SESSION','APP_USER'),user)"), (m.optionEQvalue("rowkey", "yes") || 0 < o.indexOf("/ROWKEY")) && (l += ` if inserting then -`, l += ` :new.row_key := compress_int(row_key_seq.nextval); -`, l += ` end if; + var d = !1, E = "user"; + m.optionEQvalue("apex", "yes") && (E = "coalesce(sys_context('APEX$SESSION','APP_USER'),user)"), (m.optionEQvalue("rowkey", "yes") || 0 < l.indexOf("/ROWKEY")) && (s += ` if inserting then +`, s += ` :new.row_key := compress_int(row_key_seq.nextval); +`, s += ` end if; `, d = !0); - for (var B = 0; B < this.children.length; B++) { - var I = this.children[B]; - let D = null; - 0 < I.content.indexOf("/lower") ? D = "LOWER".toLowerCase() : 0 < I.content.indexOf("/upper") && (D = "UPPER".toLowerCase()), D != null && (l += " :new." + I.parseName().toLowerCase() + " := " + D + "(:new." + I.parseName().toLowerCase() + `); + for (var P = 0; P < this.children.length; P++) { + var B = this.children[P]; + let w = null; + 0 < B.content.indexOf("/lower") ? w = "LOWER".toLowerCase() : 0 < B.content.indexOf("/upper") && (w = "UPPER".toLowerCase()), w != null && (s += " :new." + B.parseName().toLowerCase() + " := " + w + "(:new." + B.parseName().toLowerCase() + `); `, d = !0); } - (m.optionEQvalue("Row Version Number", "yes") || 0 < o.indexOf("/ROWVERSION")) && (l += ` if inserting then -`, l += ` :new.row_version := 1; -`, l += ` elsif updating then -`, l += ` :new.row_version := NVL(:old.row_version, 0) + 1; -`, l += ` end if; -`, d = !0), (m.optionEQvalue("Audit Columns", "yes") || 0 < o.indexOf("/AUDITCOLS")) && (l += ` if inserting then -`, l += " :new." + m.getOptionValue("createdcol") + ` := SYSDATE; -`.toLowerCase(), l += " :new." + m.getOptionValue("createdbycol") + " := " + P + `; -`.toLowerCase(), l += ` end if; -`, l += " :new." + m.getOptionValue("updatedcol") + ` := SYSDATE; -`.toLowerCase(), l += " :new." + m.getOptionValue("updatedbycol") + " := " + P + `; -`.toLowerCase(), d = !0), m.optionEQvalue("genpk", "yes") && m.optionEQvalue("pk", "guid") && (l += ` if :new.id is null then -`, l += ` :new.id := to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'); -`, l += ` end if; -`, d = !0); - var T = m.additionalColumns(); - for (var N in T) { - var F = T[N]; - l += " if :new." + N + ` is null then -`, F.startsWith("INT") ? l += " " + N + ` := 0; -` : l += " " + N + ` := 'N/A'; -`, l += ` end if; + (m.optionEQvalue("Row Version Number", "yes") || 0 < l.indexOf("/ROWVERSION")) && (s += ` if inserting then +`, s += ` :new.row_version := 1; +`, s += ` elsif updating then +`, s += ` :new.row_version := NVL(:old.row_version, 0) + 1; +`, s += ` end if; +`, d = !0), (m.optionEQvalue("Audit Columns", "yes") || 0 < l.indexOf("/AUDITCOLS") || 0 < l.indexOf("/AUDIT COL")) && (s += ` if inserting then +`, s += " :new." + m.getOptionValue("createdcol") + ` := SYSDATE; +`.toLowerCase(), s += " :new." + m.getOptionValue("createdbycol") + " := " + E + `; +`.toLowerCase(), s += ` end if; +`, s += " :new." + m.getOptionValue("updatedcol") + ` := SYSDATE; +`.toLowerCase(), s += " :new." + m.getOptionValue("updatedbycol") + " := " + E + `; +`.toLowerCase(), d = !0); + var I = m.additionalColumns(); + for (var D in I) { + var F = I[D]; + s += " if :new." + D + ` is null then +`, F.startsWith("INT") ? s += " " + D + ` := 0; +` : s += " " + D + ` := 'N/A'; +`, s += ` end if; `, d = !0; } - return d ? (l += "end " + t.toLowerCase() + `_BIU; + return d ? (s += "end " + t.toLowerCase() + `_BIU; / -`.toLowerCase(), l) : ""; +`.toLowerCase(), s) : ""; }, this.procDecl = function(r) { let t = ""; r != "get" && (t = " default null"); - let l = "out"; - r != "get" && (l = " in"); - let o = b + "procedure " + r + `_row ( + let s = "out"; + r != "get" && (s = " in"); + let l = b + "procedure " + r + `_row ( `; - o += b + b + "p_id in number" + t; + l += b + b + "p_id in number" + t; for (var d in this.fks) { - let B = this.fks[d], I = "number", T = m.find(B); - T != null && T.getExplicitPkNode() != null && (I = T.getExplicitPkNode().parseType((N) => !0)), o += `, -`, o += b + b + "P_" + d + " " + l + " " + I + t; + let P = this.fks[d], B = "number", I = m.find(P); + I != null && I.getExplicitPkNode() != null && (B = I.getExplicitPkNode().parseType((D) => !0)), l += `, +`, l += b + b + "P_" + d + " " + s + " " + B + t; } - for (let B = 0; B < this.children.length; B++) { - var P = this.children[B]; - P.children.length == 0 && (o += `, -`, o += b + b + "P_" + P.parseName() + " " + l + " " + P.parseType("plsql") + t); + for (let P = 0; P < this.children.length; P++) { + var E = this.children[P]; + E.children.length == 0 && (l += `, +`, l += b + b + "P_" + E.parseName() + " " + s + " " + E.parseType("plsql") + t); } - return o += ` - )`, o; + return l += ` + )`, l; }, this.procBody = function(r) { - let t = m.objPrefix() + this.parseName(), l = b + `is + let t = m.objPrefix() + this.parseName(), s = b + `is `; - l += b + `begin + s += b + `begin `; - let o = b + b + "for c1 in (select * from " + t + ` where id = p_id) loop + let l = b + b + "for c1 in (select * from " + t + ` where id = p_id) loop `; - r == "insert" && (o = b + b + "insert into " + t + ` ( -`, o += b + b + "id"), r == "update" && (o = b + b + "update " + t + ` set -`, o += b + b + "id = p_id"), l += o; - for (let I in this.fks) { - let T = this.fks[I], N = m.find(T); - N != null && N.getExplicitPkNode() != null && N.getExplicitPkNode().parseType((D) => !0), (r == "insert" || r == "update") && (l += `, + r == "insert" && (l = b + b + "insert into " + t + ` ( +`, l += b + b + "id"), r == "update" && (l = b + b + "update " + t + ` set +`, l += b + b + "id = p_id"), s += l; + for (let B in this.fks) { + let I = this.fks[B], D = m.find(I); + D != null && D.getExplicitPkNode() != null && D.getExplicitPkNode().parseType((w) => !0), (r == "insert" || r == "update") && (s += `, `); - let F = " P_" + I + " := c1." + I + `; + let F = " P_" + B + " := c1." + B + `; `; - r == "insert" && (F = " " + I), r == "update" && (F = " " + I + " = P_" + I + ` -`), l += F; + r == "insert" && (F = " " + B), r == "update" && (F = " " + B + " = P_" + B + ` +`), s += F; } for (var d = 0; d < this.children.length; d++) { - var P = this.children[d]; - if (P.children.length != 0) + var E = this.children[d]; + if (E.children.length != 0) continue; - (r == "insert" || r == "update") && (l += `, + (r == "insert" || r == "update") && (s += `, `); - let I = " P_" + P.parseName().toLowerCase() + " := c1." + P.parseName().toLowerCase() + `; + let B = " P_" + E.parseName().toLowerCase() + " := c1." + E.parseName().toLowerCase() + `; `; - r == "insert" && (I = " " + P.parseName().toLowerCase()), r == "update" && (I = " " + P.parseName().toLowerCase() + " = P_" + P.parseName().toLowerCase() + ` -`), l += I; + r == "insert" && (B = " " + E.parseName().toLowerCase()), r == "update" && (B = " " + E.parseName().toLowerCase() + " = P_" + E.parseName().toLowerCase() + ` +`), s += B; } if (r == "insert") { - l += ` ) values ( -`, l += " p_id"; - for (let I in this.fks) - l += `, -`, l += " p_" + I; - for (let I = 0; I < this.children.length; I++) { - let T = this.children[I]; - T.children.length == 0 && (l += `, -`, l += " p_" + T.parseName()); + s += ` ) values ( +`, s += " p_id"; + for (let B in this.fks) + s += `, +`, s += " p_" + B; + for (let B = 0; B < this.children.length; B++) { + let I = this.children[B]; + I.children.length == 0 && (s += `, +`, s += " p_" + I.parseName()); } } - let B = ` + let P = ` end loop; `; - return r == "insert" && (B = " );"), r == "update" && (B = " where id = p_id;"), l += B, l += " end " + r + `_row; - `, l += ` - `, l; + return r == "insert" && (P = " );"), r == "update" && (P = " where id = p_id;"), s += P, s += " end " + r + `_row; + `, s += ` + `, s; }, this.generateTAPI = function() { if (this.children.length == 0) return ""; @@ -8237,437 +8234,437 @@ is `, t += `/ `, t.toLowerCase(); }, this.rows = 0, this.generateData = function(r, t) { - let l = ""; + let s = ""; if (m.optionEQvalue("inserts", !1)) - return l; - let o = m.objPrefix() + this.parseName(), d = this.trimmedContent().toLowerCase(), P = d.indexOf("/insert "), B = 0; - if (0 < P) { - d = d.substr(P + 8); - let T = d.split(" "); - if (this.rows = parseInt(T[0]), 0 < this.rows) { - for (m.getOptionValue("datalimit") < this.rows && (this.rows = m.getOptionValue("datalimit")), B = 0; B < this.rows; B++) { - let N = r; - r != null && Array.isArray(r) && (N = r[B]), l += "insert into " + o + ` ( + return s; + let l = m.objPrefix() + this.parseName(), d = this.trimmedContent().toLowerCase(), E = d.indexOf("/insert "), P = 0; + if (0 < E) { + d = d.substr(E + 8); + let I = d.split(" "); + if (this.rows = parseInt(I[0]), 0 < this.rows) { + for (m.getOptionValue("datalimit") < this.rows && (this.rows = m.getOptionValue("datalimit")), P = 0; P < this.rows; P++) { + let D = r; + r != null && Array.isArray(r) && (D = r[P]), s += "insert into " + l + ` ( `; let F = this.getGenIdColName(); if (F != null) - l += b + F + `, + s += b + F + `, `; else { - let D = this.getExplicitPkNode(); - D != null && (l += b + D.parseName() + `, + let w = this.getExplicitPkNode(); + w != null && (s += b + w.parseName() + `, `); } - for (let D in this.fks) { - let R = this.fks[D], w = m.find(R), O = ""; - w == null && (w = m.find(D), w.isMany2One() & !D.endsWith("_id") && (R = D, D = z(D), O = "_id")), l += b + D + O + `, + for (let w in this.fks) { + let G = this.fks[w], N = m.find(G), O = ""; + N == null && (N = m.find(w), N.isMany2One() & !w.endsWith("_id") && (G = w, w = z(w), O = "_id")), s += b + w + O + `, `; } - for (let D = 0; D < this.children.length; D++) { - let R = this.children[D]; - if (!(F != null && R.parseName() == "id") && R.refId() == null) { - if (R == this.getExplicitPkNode()) + for (let w = 0; w < this.children.length; w++) { + let G = this.children[w]; + if (!(F != null && G.parseName() == "id") && G.refId() == null) { + if (G == this.getExplicitPkNode()) continue; - R.children.length == 0 && (l += b + R.parseName() + `, + G.children.length == 0 && (s += b + G.parseName() + `, `); } } - if (l.lastIndexOf(`, -`) == l.length - 2 && (l = l.substr(0, l.length - 2) + ` -`), l += `) values ( + if (s.lastIndexOf(`, +`) == s.length - 2 && (s = s.substr(0, s.length - 2) + ` +`), s += `) values ( `, F != null) - l += b + (B + 1) + `, + s += b + (P + 1) + `, `; else { - let D = this.getExplicitPkNode(); - if (D != null) { - const R = D.parseName(); - let w = h(m.data, null, R, this.parseName()), O = -1; - N != null && (O = N[R]), w != null && w[B] != null && (O = w[B]), l += b + (O ?? B + 1) + `, + let w = this.getExplicitPkNode(); + if (w != null) { + const G = w.parseName(); + let N = f(m.data, null, G, this.parseName()), O = -1; + D != null && (O = D[G]), N != null && N[P] != null && (O = N[P]), s += b + (O ?? P + 1) + `, `; } } - for (let D in this.fks) { - let R = this.fks[D], w = m.find(R), O = []; - for (let G = 1; G <= w.rows; G++) - O.push(G); - if (t != null && w != null) { - const G = w.getPkName(); - let e = t[G]; + for (let w in this.fks) { + let G = this.fks[w], N = m.find(G), O = []; + for (let R = 1; R <= N.rows; R++) + O.push(R); + if (t != null && N != null) { + const R = N.getPkName(); + let e = t[R]; e != null && (O = [], O[0] = e); } - if (N != null) { - let G = N[R]; - if (G != null) { - let e = G[w.getPkName()]; + if (D != null) { + let R = D[G]; + if (R != null) { + let e = R[N.getPkName()]; e != null && (O = [], O[0] = e); } } - l += b + te(m.getOptionValue("Data Language"), oe(o, z(R) + "_id", "INTEGER", O)) + `, + s += b + oe(m.getOptionValue("Data Language"), le(l, z(G) + "_id", "INTEGER", O)) + `, `; } - for (let D = 0; D < this.children.length; D++) { - let R = this.children[D]; - if (!(F != null && R.parseName() == "id") && R.refId() == null) { - if (R == this.getExplicitPkNode()) + for (let w = 0; w < this.children.length; w++) { + let G = this.children[w]; + if (!(F != null && G.parseName() == "id") && G.refId() == null) { + if (G == this.getExplicitPkNode()) continue; - if (R.children.length == 0) { - let w = R.parseValues(), O = R.parseName(); - if (N != null) { - let a = N[O]; - a != null && (w = [], w[0] = a); + if (G.children.length == 0) { + let N = G.parseValues(), O = G.parseName(); + if (D != null) { + let a = D[O]; + a != null && (N = [], N[0] = a); } - let G = h(m.data, null, O, this.parseName()); - G != null && G[B] != null && (w = [], w[0] = G[B]); - let e = oe(o, O, R.parseType(), w); - l += b + te(m.getOptionValue("Data Language"), e) + `, + let R = f(m.data, null, O, this.parseName()); + R != null && R[P] != null && (N = [], N[0] = R[P]); + let e = le(l, O, G.parseType(), N); + s += b + oe(m.getOptionValue("Data Language"), e) + `, `; } } } - l.lastIndexOf(`, -`) == l.length - 2 && (l = l.substr(0, l.length - 2) + ` -`), l += `); + s.lastIndexOf(`, +`) == s.length - 2 && (s = s.substr(0, s.length - 2) + ` +`), s += `); `; } - l += ` + s += ` `; } } - l != "" && (l += `commit; + s != "" && (s += `commit; `); - let I = this.getGenIdColName(); - I != null && 1 < B && (l += "alter table " + o + ` -modify ` + I + " generated always as identity restart start with " + (B + 1) + `; + let B = this.getGenIdColName(); + B != null && 1 < P && !m.optionEQvalue("pk", "guid") && (s += "alter table " + l + ` +modify ` + B + " generated always as identity restart start with " + (P + 1) + `; `); - for (let T = 0; T < this.children.length; T++) { - const N = this.children[T]; - if (0 < N.children.length) { + for (let I = 0; I < this.children.length; I++) { + const D = this.children[I]; + if (0 < D.children.length) { const F = r; - let D = null; - r != null && (D = r[N.parseName()]), l += N.generateData(D, F); + let w = null; + r != null && (w = r[D.parseName()]), s += D.generateData(w, F); } } - return l; + return s; }, this.isArray = function() { return !this.isMany2One() && this.parent != null; }, this.hasNonArrayChildId = function(r) { if (!r.endsWith("_id")) return !1; var t = r.slice(0, -3); - return this.children.some((l) => l.children.length > 0 && l.parseName() == t && !l.isArray()); + return this.children.some((s) => s.children.length > 0 && s.parseName() == t && !s.isArray()); }, this.generateSelectJsonTopDown = function(r) { var t = this.parseName(); - let l = ""; - this.getExplicitPkNode == null && (l += r + "'" + this.getGenIdColName() + "' : " + t + "." + this.getGenIdColName() + `, + let s = ""; + this.getExplicitPkNode == null && (s += r + "'" + this.getGenIdColName() + "' : " + t + "." + this.getGenIdColName() + `, `); - for (var o = 0; o < this.children.length; o++) { - var d = this.children[o], P = d.parseName(); + for (var l = 0; l < this.children.length; l++) { + var d = this.children[l], E = d.parseName(); if (d.children.length == 0) { - if (this.hasNonArrayChildId(P)) + if (this.hasNonArrayChildId(E)) continue; - l += r + "'" + P + "' : " + t + "." + P; + s += r + "'" + E + "' : " + t + "." + E; } else { - l += r + "'" + P + `' : [ -`, d.isMany2One(), r += " ", l += r + `select JSON { -`, l += d.generateSelectJsonTopDown(r + " "), l += r + " WITH NOCHECK } from " + P + ` with INSERT UPDATE + s += r + "'" + E + `' : [ +`, d.isMany2One(), r += " ", s += r + `select JSON { +`, s += d.generateSelectJsonTopDown(r + " "), s += r + " WITH NOCHECK } from " + E + ` with INSERT UPDATE `; - let T = null; - for (var B in d.fks) { - var I = d.fks[B]; - if (I == t) { - T = B; + let I = null; + for (var P in d.fks) { + var B = d.fks[P]; + if (B == t) { + I = P; break; } } - const N = t + "." + this.getPkName(), F = P + "." + T; - l += r + "where " + F + " = " + N + ` -`, r = r.slice(0, -2), l += r + "]"; + const D = t + "." + this.getPkName(), F = E + "." + I; + s += r + "where " + F + " = " + D + ` +`, r = r.slice(0, -2), s += r + "]"; } - l += o < this.children.length - 1 ? `, + s += l < this.children.length - 1 ? `, ` : ` `; } - return l[l.length - 2] == "," ? l.slice(0, -2) + ` -` : l; + return s[s.length - 2] == "," ? s.slice(0, -2) + ` +` : s; }, this.generateDualityView = function() { var r = this.trimmedContent(), t = r.split(" "); if (3 < t.length) throw "max 1 table is allowed in DV"; - var l = "", o = m.find(t[2]); - return o != null && (l += "create or replace json relational duality view " + t[1] + ` as -`, l += `select JSON { -`, l += // tbl.isLeaf()? tbl.generateSelectJsonBottomUp(' ') : what if middle? - o.generateSelectJsonTopDown(" "), l += "} from " + o.parseName() + ` with INSERT UPDATE DELETE; + var s = "", l = m.find(t[2]); + return l != null && (s += "create or replace json relational duality view " + t[1] + ` as +`, s += `select JSON { +`, s += // tbl.isLeaf()? tbl.generateSelectJsonBottomUp(' ') : what if middle? + l.generateSelectJsonTopDown(" "), s += "} from " + l.parseName() + ` with INSERT UPDATE DELETE; -`), l; +`), s; }; } - function x(y) { + function k(y) { m = y; const S = y.input; - let i = [], u = []; + let i = [], c = []; const r = Q(S + ` `, !0, !0, ""); m.data = null; - let t = null, l = "", o = 0; + let t = null, s = "", l = 0; e: for (let d in r) { - const P = r[d]; - if (P.value == ` + const E = r[d]; + if (E.value == ` ` && t == null) { - if (l = l.replace(/\r/g, ""), l.replace(/\r/g, "").replace(/ /g, "") == "") { - l = "", o++; + if (s = s.replace(/\r/g, ""), s.replace(/\r/g, "").replace(/ /g, "") == "") { + s = "", l++; continue; } - let I = new M(o, l, null), T = !1; - for (let N = 0; N < i.length; N++) { - let F = i[N]; - if (I.apparentDepth() <= F.apparentDepth()) - if (0 < N) { - let D = i[N - 1]; - I = new M(o, l, D), i[N] = I, i = i.slice(0, N + 1), T = !0; + let B = new M(l, s, null), I = !1; + for (let D = 0; D < i.length; D++) { + let F = i[D]; + if (B.apparentDepth() <= F.apparentDepth()) + if (0 < D) { + let w = i[D - 1]; + B = new M(l, s, w), i[D] = B, i = i.slice(0, D + 1), I = !0; break; } else - i[0] = I, i = i.slice(0, 1), u.push(I), T = !0; + i[0] = B, i = i.slice(0, 1), c.push(B), I = !0; } - if (!T) { + if (!I) { if (0 < i.length) { - let N = i[i.length - 1]; - I = new M(o, l, N); + let D = i[i.length - 1]; + B = new M(l, s, D); } - i.push(I), I.apparentDepth() == 0 && u.push(I); + i.push(B), B.apparentDepth() == 0 && c.push(B); } - if (I.isMany2One()) { - const N = I.parent; - N.fks == null && (N.fks = []); - let F = I.refId(); - F == null && (F = I.parseName()), N.fks[I.parseName() + "_id"] = F; + if (B.isMany2One()) { + const D = B.parent; + D.fks == null && (D.fks = []); + let F = B.refId(); + F == null && (F = B.parseName()), D.fks[B.parseName() + "_id"] = F; } - o++, l = ""; + l++, s = ""; continue; } - if (t == null && P.value == "#") { + if (t == null && E.value == "#") { t = ""; continue; } if (t != null) { - if (t += P.value, P.value != ` -` && P.value != "}") + if (t += E.value, E.value != ` +` && E.value != "}") continue; - const B = Q(t, !1, !0, ""); - if (B.length % 4 == 3 && B[1].value == ":") { - y.setOptions(t), t = null, l = ""; + const P = Q(t, !1, !0, ""); + if (P.length % 4 == 3 && P[1].value == ":") { + y.setOptions(t), t = null, s = ""; continue; } - let I = null, T = null; - for (let N in B) { - const F = B[N]; - if (I == null && F.value == "document") { - I = ""; + let B = null, I = null; + for (let D in P) { + const F = P[D]; + if (B == null && F.value == "document") { + B = ""; continue; } - if (I != null) { - if (I += F.value, I == "=") + if (B != null) { + if (B += F.value, B == "=") continue; - let D = I.substring(1); + let w = B.substring(1); try { - m.data = JSON.parse(D), t = null, l = ""; + m.data = JSON.parse(w), t = null, s = ""; continue e; } catch { } } - if (T == null && F.value == "settings") { - T = ""; + if (I == null && F.value == "settings") { + I = ""; continue; } - if (T != null) { - T += F.value, T.substring(1); + if (I != null) { + I += F.value, I.substring(1); try { - y.setOptions(T), t = null, l = ""; + y.setOptions(I), t = null, s = ""; continue e; } catch { } } } } - if (P.type != "comment") { - if (P.type == "line-comment") { - 0 < l.trim().length && (l += P.value); + if (E.type != "comment") { + if (E.type == "line-comment") { + 0 < s.trim().length && (s += E.value); continue; } - l += P.value; + s += E.value; } } - return u; + return c; } function p(y, S) { let i = S.toLowerCase(); return 0 < y.indexOf(i) && y.indexOf(i) == y.length - i.length ? y.substring(0, y.length - i.length) : y.trim(); } - function h(y, S, i, u) { + function f(y, S, i, c) { let r = []; if (y == null || typeof y != "object") return null; let t = y[i]; - t != null && S == u && r.push(t); - for (var l in y) { - let o = y[l]; - t = h(o, l, i, u), t != null && (r = r.concat(t)); + t != null && S == c && r.push(t); + for (var s in y) { + let l = y[s]; + t = f(l, s, i, c), t != null && (r = r.concat(t)); } return r; } - return x; + return k; }(); var Ce = function() { function m() { - this.aggrCounts = {}, this.calculateCounts = function(L, k) { + this.aggrCounts = {}, this.calculateCounts = function(L, x) { let M = this.aggrSizes[L]; M == null && (M = 0); - let x = 1; - k.length != null && (x = k.length), this.aggrSizes[L] = M + x; - for (let p in k) - typeof k[p] == "object" && this.calculateCounts(p, k[p]); - }, this.introspect = function(L, k, M, x) { + let k = 1; + x.length != null && (k = x.length), this.aggrSizes[L] = M + k; + for (let p in x) + typeof x[p] == "object" && this.calculateCounts(p, x[p]); + }, this.introspect = function(L, x, M, k) { if (M == 0) { if (this.aggrSizes = {}, L == null) - for (let y in k) { - let S = ["_address", "_id", "_name", "Id"], i = !1, u = ""; + for (let y in x) { + let S = ["_address", "_id", "_name", "Id"], i = !1, c = ""; for (let r = 0; r < S.length; r++) { const t = S[r]; if (y.endsWith(t)) { - u += y.substring(0, y.length - t.length), i = !0; + c += y.substring(0, y.length - t.length), i = !0; break; } } - i || (u += "unnamed_entity"), L = u; + i || (c += "unnamed_entity"), L = c; break; } - this.calculateCounts(L, k); + this.calculateCounts(L, x); } let p = ""; - x != null && x && (p = ">"); - let h = ` + k != null && k && (p = ">"); + let f = ` ` + b(M) + p + L; - if (typeof k == "number" && (h += " num", L.endsWith("_id") || L.endsWith("Id"))) - return h += " /pk", h; - if (typeof k == "object") { - if (Array.isArray(k)) - for (let S in k) { + if (typeof x == "number" && (f += " num", L.endsWith("_id") || L.endsWith("Id"))) + return f += " /pk", f; + if (typeof x == "object") { + if (Array.isArray(x)) + for (let S in x) { 1 <= S && console.log("1 <= property !"); - const i = k[S]; + const i = x[S]; return this.introspect(L, i, M, !1); } else if (L != "") { let S = this.aggrSizes[L]; - h += " /insert " + S; + f += " /insert " + S; } let y = ""; - for (let S in k) { - const i = k[S]; + for (let S in x) { + const i = x[S]; if (S != null) { - const t = z(L), l = S.toLowerCase(); - if (L != null && t + "_id" == l && 0 < M && (y = S), t + "_id" == l) + const t = z(L), s = S.toLowerCase(); + if (L != null && t + "_id" == s && 0 < M && (y = S), t + "_id" == s) continue; } - let u = typeof i == "object"; - const r = this.introspect(S, i, M + 1, u); - h += r; + let c = typeof i == "object"; + const r = this.introspect(S, i, M + 1, c); + f += r; } - y != "" && (h += ` + y != "" && (f += ` ` + b(M) + y); } - return M == 0 && (h += ` + return M == 0 && (f += ` -dv ` + L + "_dv " + L, h += ` +dv ` + L + "_dv " + L, f += ` -#settings = { genpk: false, drop: true }`, h += ` +#settings = { genpk: false, drop: true }`, f += ` --- Generated by json2qsql.js ${de.value} ` + (/* @__PURE__ */ new Date()).toLocaleString() + ` +-- Generated by json2qsql.js ${te()} ` + (/* @__PURE__ */ new Date()).toLocaleString() + ` -`, h += `#document = -`, h += JSON.stringify(k, null, 3), h += ` -`), h; +`, f += `#document = +`, f += JSON.stringify(x, null, 3), f += ` +`), f; }; } function b(L) { - for (var k = "", M = 0; M < L; M++) - k = k + " "; - return k; + for (var x = "", M = 0; M < L; M++) + x = x + " "; + return x; } return new m(); }(); const ve = function() { - function m(p, h, y, S) { - this.from = h, this.to = y, y == null && (this.to = new b(h.line, h.depth + 1)), this.message = p, this.severity = S, S == null && (this.severity = "error"); + function m(p, f, y, S) { + this.from = f, this.to = y, y == null && (this.to = new b(f.line, f.depth + 1)), this.message = p, this.severity = S, S == null && (this.severity = "error"); } - function b(p, h) { - this.line = p, this.depth = h; + function b(p, f) { + this.line = p, this.depth = f; } function L(p) { - const h = p, y = p.input; + const f = p, y = p.input; let S = []; const i = y.split(` `); - S = S.concat(x(i)); - const u = h.descendants(); - for (let r = 0; r < u.length; r++) { - const t = u[r]; - if (h.optionEQvalue("genpk", !0) && u[r].parseName() == "id") { + S = S.concat(k(i)); + const c = f.descendants(); + for (let r = 0; r < c.length; r++) { + const t = c[r]; + if (f.optionEQvalue("genpk", !0) && c[r].parseName() == "id") { const d = t.content.toLowerCase().indexOf("id"); - S.push(new m(X.duplicateId, new b(t.line, d))); + S.push(new m(q.duplicateId, new b(t.line, d))); continue; } - const l = t.src[2]; - if (2 < t.src.length && l.value == "-") { - const d = l.begin; - S.push(new m(X.invalidDatatype, new b(t.line, d))); + const s = t.src[2]; + if (2 < t.src.length && s.value == "-") { + const d = s.begin; + S.push(new m(q.invalidDatatype, new b(t.line, d))); continue; } - const o = t.src[1]; - if (1 < t.src.length && 0 < o.value.indexOf("0")) { - const d = o.begin; - S.push(new m(X.invalidDatatype, new b(t.line, d))); + const l = t.src[1]; + if (1 < t.src.length && 0 < l.value.indexOf("0")) { + const d = l.begin; + S.push(new m(q.invalidDatatype, new b(t.line, d))); continue; } - S = S.concat(k(h, t)), S = S.concat(M(h, t)); + S = S.concat(x(f, t)), S = S.concat(M(f, t)); } return S; } - function k(p, h) { - var y = [], S = h.content.toLowerCase(); - if (h.parseType() == "view") { + function x(p, f) { + var y = [], S = f.content.toLowerCase(); + if (f.parseType() == "view") { var i = $(S, " "); let t = 0; - for (var u = 0; u < i.length; u++) - if (t += i[u].length, i[u] != " " && i[u] != "view" && u != 1) { - var r = p.find(i[u]); + for (var c = 0; c < i.length; c++) + if (t += i[c].length, i[c] != " " && i[c] != "view" && c != 1) { + var r = p.find(i[c]); r == null && y.push(new m( - X.undefinedObject + i[u], - new b(h.line, t - i[u].length) + q.undefinedObject + i[c], + new b(f.line, t - i[c].length) )); } } return y; } - function M(p, h) { - var y = [], S = h.content.toLowerCase(); + function M(p, f) { + var y = [], S = f.content.toLowerCase(); if (0 < S.indexOf("/fk") || 0 < S.indexOf("/reference")) { - let r = $(S, " "), t = 0, l = !1; + let r = $(S, " "), t = 0, s = !1; for (var i = 0; i < r.length; i++) if (t += r[i].length, r[i] != " ") { if (r[i] == "/fk" || r[i].indexOf("/reference") == 0) { - l = !0; + s = !0; continue; } - if (l) { - var u = p.find(r[i]); - if (u == null) { + if (s) { + var c = p.find(r[i]); + if (c == null) { y.push(new m( - X.undefinedObject + r[i], - new b(h.line, t - r[i].length) + q.undefinedObject + r[i], + new b(f.line, t - r[i].length) )); break; } @@ -8676,42 +8673,42 @@ const ve = function() { } return y; } - function x(p) { - for (var h = [], y = Ae(p), S = 1; S < p.length; S++) { - var i = p[S - 1], u = p[S], r = re(i), t = re(u); - t != 0 && r < t && t < r + y && h.push( + function k(p) { + for (var f = [], y = Ae(p), S = 1; S < p.length; S++) { + var i = p[S - 1], c = p[S], r = re(i), t = re(c); + t != 0 && r < t && t < r + y && f.push( new m( - X.misalignedAttribute + y, + q.misalignedAttribute + y, new b(S, t) ) ); } - return h; + return f; } return L; }(); function Ae(m) { let b = []; for (var L = 0; L < m.length; L++) { - var k = m[L]; - b[L] = re(k); + var x = m[L]; + b[L] = re(x); } let M = []; for (let p = 0; p < b.length; p++) { - let h = ye(b, p); - if (h != null) { - let y = M[b[p] - b[h]]; - y == null && (y = 0), M[b[p] - b[h]] = y + 1; + let f = ye(b, p); + if (f != null) { + let y = M[b[p] - b[f]]; + y == null && (y = 0), M[b[p] - b[f]] = y + 1; } } - let x = null; + let k = null; for (let p in M) - (x == null || M[x] <= M[p]) && (x = p); - return x; + (k == null || M[k] <= M[p]) && (k = p); + return k; } function re(m) { - for (var b = m.split(/ |\t/), L = 0, k = 0; k < b.length; k++) { - var M = b[k]; + for (var b = m.split(/ |\t/), L = 0, x = 0; x < b.length; x++) { + var M = b[x]; if (M == " " && (L += 4), M == "") { L++; continue; @@ -8727,12 +8724,12 @@ function ye(m, b) { return L; return null; } -const X = { +const q = { duplicateId: "Explicit ID column conflicts with genpk", invalidDatatype: "Invalid Datatype", undefinedObject: "Undefined Object: ", misalignedAttribute: "Misaligned Table or Column; apparent indent = " -}, Se = { findErrors: ve, messages: X }, ne = "identityDataType", se = "guid", ce = "Timestamp with time zone", ue = "Timestamp with local time zone", j = function() { +}, Se = { findErrors: ve, messages: q }, ne = "identityDataType", ce = "guid", ue = "Timestamp with time zone", me = "Timestamp with local time zone", j = function() { const m = { apex: { label: "APEX", value: "no", check: ["yes", "no"] }, auditcols: { label: "Audit Columns", value: "no", check: ["yes", "no"] }, @@ -8744,7 +8741,7 @@ const X = { semantics: { label: "Character Strings", value: "CHAR", check: ["BYTE", "CHAR", "Default"] }, language: { label: "Data Language", value: "EN", check: ["EN", "JP", "KO"] }, datalimit: { label: "Data Limit Rows", value: 1e4 }, - date: { label: "Date Data Type", value: "DATE", check: ["DATE", "TIMESTAMP", ce, ue] }, + date: { label: "Date Data Type", value: "DATE", check: ["DATE", "TIMESTAMP", ue, me] }, db: { label: "DB", value: "no", check: ["not used"] }, dv: { label: "Duality View", value: "no", check: ["yes", "no"] }, // switched default to 'no' until thorough development&testig @@ -8756,7 +8753,7 @@ const X = { overridesettings: { label: "Ignore toDDL() second parameter", value: "no", check: ["yes", "no"] }, prefix: { label: "Object Prefix", value: "" }, //ondelete: {label: 'On Delete', value:'Cascade',check:['restrict','cascade','set null']}, - pk: { label: "Primary Key Maintenance", value: ne, check: [ne, se, "SEQ", "NONE"] }, + pk: { label: "Primary Key Maintenance", value: ne, check: [ne, ce, "SEQ", "NONE"] }, prefixpkwithtname: { label: "Prefix primary keys with table name", value: "no", check: ["yes", "no"] }, rowkey: { label: "Alphanumeric Row Identifier", value: "no", check: ["yes", "no"] }, rowversion: { label: "Row Version Number", value: "no", check: ["yes", "no"] }, @@ -8766,157 +8763,157 @@ const X = { //"Auxiliary Columns": {label: "Auxiliary Columns", value:''}, // e.g. security_group_id integer //namecase: {label: 'Object and Field name convention', value:'canonic',check:['canonic','json']}, }; - function b(k) { - if (k == null) + function b(x) { + if (x == null) return null; - let M = k; - return typeof M == "string" && (M = M.toLowerCase()), M == "yes" ? !0 : M == "no" ? !1 : M == "y" ? !0 : M == "n" ? !1 : M == "true" ? !0 : M == "false" ? !1 : M == ne.toLowerCase() ? "identity" : M == se.toLowerCase() ? "guid" : M == ce.toLowerCase() ? "tswtz" : M == ue.toLowerCase() ? "tswltz" : M; + let M = x; + return typeof M == "string" && (M = M.toLowerCase()), M == "yes" ? !0 : M == "no" ? !1 : M == "y" ? !0 : M == "n" ? !1 : M == "true" ? !0 : M == "false" ? !1 : M == ne.toLowerCase() ? "identity" : M == ce.toLowerCase() ? "guid" : M == ue.toLowerCase() ? "tswtz" : M == me.toLowerCase() ? "tswltz" : M; } - function L(k, M) { - this.ddl = null, this.erd = null, this.errors = null, this.options = JSON.parse(JSON.stringify(m)), this.input = k, this.getOptionValue = function(p) { - const h = p.toLowerCase(); - let y = this.options[h]; - if (!(h in this.options)) + function L(x, M) { + this.ddl = null, this.erd = null, this.errors = null, this.options = JSON.parse(JSON.stringify(m)), this.input = x, this.getOptionValue = function(p) { + const f = p.toLowerCase(); + let y = this.options[f]; + if (!(f in this.options)) for (let S in this.options) { const i = this.options[S].label; if (i == null) continue; - i.toLowerCase() == h && (y = this.options[S]); + i.toLowerCase() == f && (y = this.options[S]); } return y == null ? null : y.value; - }, this.optionEQvalue = function(p, h) { + }, this.optionEQvalue = function(p, f) { var y = this.getOptionValue(p); - return b(y) == b(h); + return b(y) == b(f); }, this.nonDefaultOptions = function() { let p = {}; - for (let h in this.options) - m[h] && !this.optionEQvalue(h, m[h].value) && (p[h] = this.options[h].value); + for (let f in this.options) + m[f] && !this.optionEQvalue(f, m[f].value) && (p[f] = this.options[f].value); return p; }, this.unknownOptions = function() { let p = []; - for (let h in this.options) - m[h] == null && p.push(h); + for (let f in this.options) + m[f] == null && p.push(f); return p; - }, this.setOptionValue = function(p, h) { + }, this.setOptionValue = function(p, f) { let y = p.toLowerCase(); if (!(y in this.options)) { for (let i in this.options) if (this.options[i].label == p) { - this.options[i].value = h; + this.options[i].value = f; return; } } - h == null && (h = ""); + f == null && (f = ""); let S = this.options[y]; - S == null && (S = {}, this.options[y] = S), S.value = h; + S == null && (S = {}, this.options[y] = S), S.value = f; }, this.semantics = function() { var p = ""; return this.optionEQvalue("semantics", "CHAR") ? p = " char" : this.optionEQvalue("semantics", "BYTE") && (p = " byte"), p; }, this.find = function(p) { - for (var h = 0; h < this.forest.length; h++) - for (var y = this.forest[h].descendants(), S = 0; S < y.length; S++) { + for (var f = 0; f < this.forest.length; f++) + for (var y = this.forest[f].descendants(), S = 0; S < y.length; S++) { var i = y[S]; - if (i.parseName() == me(p)) + if (i.parseName() == de(p)) return i; } return null; }, this.setOptions = function(p) { p = p.trim(), p.startsWith("#") && (p = p.substring(1).trim()); - const h = p.indexOf("="); - let y = p.substring(h + 1).trim(); + const f = p.indexOf("="); + let y = p.substring(f + 1).trim(); y.indexOf("{") < 0 && (y = "{" + p + "}"); let S = "", i = Q(y, !0, !0, ""); for (let r in i) { let t = i[r]; t.type == "identifier" && t.value != "true" && t.value != "false" && t.value != "null" ? S += '"' + t.value + '"' : S += t.value; } - let u = JSON.parse(S); - for (let r in u) - this.setOptionValue(r.toLowerCase(), u[r]); + let c = JSON.parse(S); + for (let r in c) + this.setOptionValue(r.toLowerCase(), c[r]); }, this.descendants = function() { - for (var p = [], h = 0; h < this.forest.length; h++) - p = p.concat(this.forest[h].descendants()); + for (var p = [], f = 0; f < this.forest.length; f++) + p = p.concat(this.forest[f].descendants()); return p; }, this.additionalColumns = function() { - var p = [], h = this.getOptionValue("Auxiliary Columns"); - if (h == null) + var p = [], f = this.getOptionValue("Auxiliary Columns"); + if (f == null) return p; - for (var y = h.split(","), S = 0; S < y.length; S++) { - var i = y[S].trim(), u = "VARCHAR2(4000)", r = i.indexOf(" "); - 0 < r && (u = i.substring(r + 1).toUpperCase(), i = i.substring(0, r)), p[i] = u; + for (var y = f.split(","), S = 0; S < y.length; S++) { + var i = y[S].trim(), c = "VARCHAR2(4000)", r = i.indexOf(" "); + 0 < r && (c = i.substring(r + 1).toUpperCase(), i = i.substring(0, r)), p[i] = c; } return p; }, this.objPrefix = function(p) { - var h = this.getOptionValue("schema"); - h == null && (h = ""), h != "" && p == null ? h = h + "." : h = ""; + var f = this.getOptionValue("schema"); + f == null && (f = ""), f != "" && p == null ? f = f + "." : f = ""; var y = ""; - return this.getOptionValue("prefix") != null && (y = this.getOptionValue("prefix")), h = h + y, y != "" && (h = h + "_"), h.toLowerCase(); + return this.getOptionValue("prefix") != null && (y = this.getOptionValue("prefix")), f = f + y, y != "" && (f = f + "_"), f.toLowerCase(); }; - let x = ""; - 0 < k.toLowerCase().indexOf("overridesettings") && le(this), M != null && this.optionEQvalue("overrideSettings", !1) && (x = "# settings = " + M + ` + let k = ""; + 0 < x.toLowerCase().indexOf("overridesettings") && se(this), M != null && this.optionEQvalue("overrideSettings", !1) && (k = "# settings = " + M + ` -`), this.input = x + k, this.forest = le(this), this.getERD = function() { +`), this.input = k + x, this.forest = se(this), this.getERD = function() { if (this.erd != null) return this.erd; - let p = this.descendants(), h = { items: [] }; + let p = this.descendants(), f = { items: [] }; for (let i = 0; i < p.length; i++) { if (p[i].parseType() != "table") continue; - let u = { name: this.objPrefix("no schema") + p[i].parseName("") }, r = this.getOptionValue("schema"); - r == "" && (r = null), u.schema = r, u.columns = [], h.items.push(u); + let c = { name: this.objPrefix("no schema") + p[i].parseName("") }, r = this.getOptionValue("schema"); + r == "" && (r = null), c.schema = r, c.columns = [], f.items.push(c); let t = p[i].getGenIdColName(); - t != null && u.columns.push({ name: t, datatype: "number" }); - for (let o = 0; o < p[i].children.length; o++) { - let d = p[i].children[o]; - if (d.parseType() != "table" && (u.columns.push({ name: d.parseName(""), datatype: d.parseType((P) => !0) }), 0 < d.indexOf("file"))) { - const P = d.parseName(); - u.columns.push({ name: P + "_filename", datatype: "varchar2(255" + this.semantics() + ")" }), u.columns.push({ name: P + "_mimetype", datatype: "varchar2(255" + this.semantics() + ")" }), u.columns.push({ name: P + "_charset", datatype: "varchar2(255" + this.semantics() + ")" }), u.columns.push({ name: P + "_lastupd", datatype: "date" }); + t != null && c.columns.push({ name: t, datatype: "number" }); + for (let l = 0; l < p[i].children.length; l++) { + let d = p[i].children[l]; + if (d.parseType() != "table" && (c.columns.push({ name: d.parseName(""), datatype: d.parseType((E) => !0) }), 0 < d.indexOf("file"))) { + const E = d.parseName(); + c.columns.push({ name: E + "_filename", datatype: "varchar2(255" + this.semantics() + ")" }), c.columns.push({ name: E + "_mimetype", datatype: "varchar2(255" + this.semantics() + ")" }), c.columns.push({ name: E + "_charset", datatype: "varchar2(255" + this.semantics() + ")" }), c.columns.push({ name: E + "_lastupd", datatype: "date" }); } } - const l = p[i].trimmedContent().toUpperCase(); - if ((this.optionEQvalue("rowkey", !0) || 0 < l.indexOf("/ROWKEY")) && u.columns.push({ name: "row_key", datatype: "varchar2(30 char)" }), (this.optionEQvalue("rowVersion", "yes") || 0 < l.indexOf("/ROWVERSION")) && u.columns.push({ name: "row_version", datatype: "integer" }), this.optionEQvalue("Audit Columns", "yes") || 0 < l.indexOf("/AUDITCOLS")) { - let o = this.getOptionValue("createdcol"); - u.columns.push({ name: o, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); + const s = p[i].trimmedContent().toUpperCase(); + if ((this.optionEQvalue("rowkey", !0) || 0 < s.indexOf("/ROWKEY")) && c.columns.push({ name: "row_key", datatype: "varchar2(30 char)" }), (this.optionEQvalue("rowVersion", "yes") || 0 < s.indexOf("/ROWVERSION")) && c.columns.push({ name: "row_version", datatype: "integer" }), this.optionEQvalue("Audit Columns", "yes") || 0 < s.indexOf("/AUDITCOLS")) { + let l = this.getOptionValue("createdcol"); + c.columns.push({ name: l, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); let d = this.getOptionValue("createdbycol"); - u.columns.push({ name: d, datatype: "varchar2(255" + this.semantics() + ")" }); - let P = this.getOptionValue("updatedcol"); - u.columns.push({ name: P, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); - let B = this.getOptionValue("updatedbycol"); - u.columns.push({ name: B, datatype: "varchar2(255" + this.semantics() + ")" }); + c.columns.push({ name: d, datatype: "varchar2(255" + this.semantics() + ")" }); + let E = this.getOptionValue("updatedcol"); + c.columns.push({ name: E, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); + let P = this.getOptionValue("updatedbycol"); + c.columns.push({ name: P, datatype: "varchar2(255" + this.semantics() + ")" }); } var y = this.additionalColumns(); - for (let o in y) { - var S = y[o]; - pad = tab + " ".repeat(this.maxChildNameLen() - o.length), ret += tab + o.toUpperCase() + pad + S + ` not null, + for (let l in y) { + var S = y[l]; + pad = tab + " ".repeat(this.maxChildNameLen() - l.length), ret += tab + l.toUpperCase() + pad + S + ` not null, `; } } - h.links = []; + f.links = []; for (let i = 0; i < p.length; i++) if (p[i].parseType() == "table") { p[i].toDDL(); - for (let u in p[i].fks) { - let r = p[i].fks[u], t = this.find(r); + for (let c in p[i].fks) { + let r = p[i].fks[c], t = this.find(r); if (t == null) continue; - let l = "id"; - t.getExplicitPkNode() != null && (l = t.getExplicitPkNode().parseName()), h.links.push({ + let s = "id"; + t.getExplicitPkNode() != null && (s = t.getExplicitPkNode().parseName()), f.links.push({ source: this.objPrefix() + r, - source_id: l, + source_id: s, target: this.objPrefix() + p[i].parseName(""), - target_id: u + target_id: c }); } } - return this.erd = h, h; + return this.erd = f, f; }, this.getDDL = function() { if (this.ddl != null) return this.ddl; - var p = "", h = this.descendants(); + var p = "", f = this.descendants(); if (this.optionEQvalue("Include Drops", "yes")) - for (let i = 0; i < h.length; i++) { - let u = h[i].generateDrop(); - u != "" && (p += u); + for (let i = 0; i < f.length; i++) { + let c = f[i].generateDrop(); + c != "" && (p += c); } if (this.optionEQvalue("rowkey", !0)) p += `create sequence row_key_seq; @@ -8937,47 +8934,47 @@ const X = { p += this.forest[i].toDDL() + ` `; let y = 0; - for (let i = 0; i < h.length; i++) { - let u = h[i].generateTrigger(); - u != "" && (y++ == 0 && (p += `-- triggers -`), p += u + ` + for (let i = 0; i < f.length; i++) { + let c = f[i].generateTrigger(); + c != "" && (y++ == 0 && (p += `-- triggers +`), p += c + ` `); } y = 0; - for (let i = 0; i < h.length; i++) { - let u = h[i].restEnable(); - u != "" && (p += u + ` + for (let i = 0; i < f.length; i++) { + let c = f[i].restEnable(); + c != "" && (p += c + ` `); } y = 0; - for (let i = 0; i < h.length; i++) { - if (this.optionEQvalue("api", !1) && h[i].trimmedContent().toLowerCase().indexOf("/api") < 0) + for (let i = 0; i < f.length; i++) { + if (this.optionEQvalue("api", !1) && f[i].trimmedContent().toLowerCase().indexOf("/api") < 0) continue; - let u = h[i].generateTAPI(); - u != "" && (y++ == 0 && (p += `-- APIs -`), p += u + ` + let c = f[i].generateTAPI(); + c != "" && (y++ == 0 && (p += `-- APIs +`), p += c + ` `); } y = 0; for (let i = 0; i < this.forest.length; i++) { - let u = this.forest[i].generateView(); - u != "" && (y++ == 0 && (p += `-- create views -`), p += u + ` + let c = this.forest[i].generateView(); + c != "" && (y++ == 0 && (p += `-- create views +`), p += c + ` `); } y = 0; for (let i = 0; i < this.forest.length; i++) { - let u = this.forest[i].generateData(this.data); - u != "" && (y++ == 0 && (p += `-- load data + let c = this.forest[i].generateData(this.data); + c != "" && (y++ == 0 && (p += `-- load data -`), p += u + ` +`), p += c + ` `); } - y = 0, p += `-- Generated by Quick SQL ${this.version} ` + (/* @__PURE__ */ new Date()).toLocaleString() + ` + y = 0, p += `-- Generated by Quick SQL ${this.version()} ` + (/* @__PURE__ */ new Date()).toLocaleString() + ` `, p += `/* `; - let S = k; + let S = x; S = S.replace(/#.+/g, ` `), S = S.replace(/\/\*/g, "--<--"), S = S.replace(/\*\//g, "-->--"), S = S.replace(/\/* Non-default options:/g, ""), p += S, p += ` `; @@ -8991,7 +8988,7 @@ const X = { */`, this.ddl = p, p; }, this.getErrors = function() { return this.errors != null ? this.errors : (this.errors = Se.findErrors(this, this.fullInput), this.errors); - }; + }, this.version = te; } return L; }(); @@ -9008,11 +9005,10 @@ function Ie(m, b) { function Be(m, b) { return new j(m, b).getErrors(); } -const de = { - writable: !1, - value: "1.2.0" -}; -j.version = de; +function te() { + return "1.2.1"; +} +j.version = te; j.toDDL = Ie; j.toERD = Te; j.toErrors = Be; @@ -9020,9 +9016,9 @@ j.fromJSON = Me; export { j as default, Me as fromJSON, + te as qsql_version, j as quicksql, Ie as toDDL, Te as toERD, - Be as toErrors, - de as version + Be as toErrors }; diff --git a/dist/quick-sql.umd.cjs b/dist/quick-sql.umd.cjs index 41a4063..dcf30ee 100644 --- a/dist/quick-sql.umd.cjs +++ b/dist/quick-sql.umd.cjs @@ -1,90 +1,90 @@ -(function(V,W){typeof exports=="object"&&typeof module<"u"?W(exports):typeof define=="function"&&define.amd?define(["exports"],W):(V=typeof globalThis<"u"?globalThis:V||self,W(V.quickSQL={}))})(this,function(V){"use strict";function W(m){return m==null?m:m.toUpperCase().endsWith("IES")?m.substring(0,m.length-3)+"y":m.toUpperCase().endsWith("ES")||m.toUpperCase().endsWith("S")?m.substring(0,m.length-1):m}function Ce(m,b){let L='"';if(m==null)return null;let k=!1;const M="$#_ ";if(!m.startsWith(L)&&!k){const x=m;if(x.length>0&&"0"<=x[0]&&x[0]<="9")k=!0;else for(let p in x){const h=x[p];if(M.indexOf(h)<0&&(h<"0"||"9""u"&&(e[n]=a[n]);return e}function r(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var l=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?l=btoa:typeof Buffer=="function"&&(l=function(a){return new Buffer(a).toString("base64")})})(),i.prototype.bool=function(e){return e=u(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100s,"Chance: Max specified is out of range with fixed. Max should be, at most, "+s),e=u(e,{min:c,max:s}),a=this.integer({min:e.min*n,max:e.max*n});var g=(a/n).toFixed(e.fixed);return parseFloat(g)},i.prototype.integer=function(e){return e=u(e,{min:k,max:L}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},i.prototype.natural=function(e){if(e=u(e,{min:0,max:L}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),s=e.exclude.sort();for(var c in s){if(ne.max,"Chance: Min cannot be greater than Max.");var a=T.primes[T.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&T.primes.push(n);var s=T.primes.filter(function(c){return c>=e.min&&c<=e.max});return this.pick(s)},i.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},i.prototype.hex=function(e){e=u(e,{min:0,max:L,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},i.prototype.letter=function(e){e=u(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},i.prototype.string=function(e){e=u(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function o(e){this.c=e}o.prototype={substitute:function(){return this.c}};function d(e){this.c=e}d.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function P(e){this.c=e}P.prototype={replacers:{"#":function(e){return e.character({pool:M})},A:function(e){return e.character({pool:p})},a:function(e){return e.character({pool:x})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function B(e){for(var a=[],n="identity",s=0;s"u")throw new y("Sorry, the buffer() function is not supported on your platform");e=u(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},i.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},i.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},i.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var s=function(A,H){return A.indexOf(H)!==-1};n&&(s=n.comparator||s);for(var c=[],g=0,E,f=a*50,v=S.call(arguments,2);c.lengthf)throw new RangeError("Chance: num is likely too large for sample set")}return c},i.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,s=[],c=S.call(arguments,2);for(n=Math.max(0,n),null;n--;null)s.push(e.apply(this,c));return s},i.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},i.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},i.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},i.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),s=n.length;return this.n(function(){var c=this.natural({max:--s}),g=n[c];return n[c]=n[s],g},Math.min(s,a))},i.prototype.shuffle=function(e){for(var a=[],n=0,s=Number(e.length),c=r(s),g=s-1,E,f=0;f0&&(s+=c)}if(s===0)throw new RangeError("Chance: No valid entries in array weights");var E=this.random()*s,f=0,v=-1,C;for(g=0;g0){if(E<=f){C=g;break}v=g}g===a.length-1&&(C=v)}var A=e[C];return n=typeof n>"u"?!1:n,n&&(e.splice(C,1),a.splice(C,1)),A},i.prototype.paragraph=function(e){e=u(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),s=e.linebreak===!0?` -`:" ";return n.join(s)},i.prototype.sentence=function(e){e=u(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,s,c=this.n(this.word,a);return s=c.join(" "),s=this.capitalize(s),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(s+=n),s},i.prototype.syllable=function(e){e=u(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",s="aeiou",c=n+s,g="",E,f=0;fe.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var E=e.minAge!==void 0?e.minAge:0,f=e.maxAge!==void 0?e.maxAge:100,v=new Date(s-f-1,n.getMonth(),n.getDate()),C=new Date(s-E,n.getMonth(),n.getDate());v.setDate(v.getDate()+1),C.setDate(C.getDate()+1),C.setMilliseconds(C.getMilliseconds()-1),e=u(e,{min:v,max:C})}else e=u(e,{year:s-a});return this.date(e)},i.prototype.cpf=function(e){e=u(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var s=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;s=11-s%11,s>=10&&(s=0);var c=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+s;return e.formatted?c:c.replace(/\D/g,"")},i.prototype.cnpj=function(e){e=u(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var s=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;s=11-s%11,s<2&&(s=0);var c=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+s;return e.formatted?c:c.replace(/\D/g,"")},i.prototype.first=function(e){return e=u(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},i.prototype.profession=function(e){return e=u(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},i.prototype.company=function(){return this.pick(this.get("company"))},i.prototype.gender=function(e){return e=u(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},i.prototype.last=function(e){if(e=u(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(s){a=a.concat(n[s])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},i.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},i.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},i.prototype.tld=function(){return this.pick(this.tlds())},i.prototype.twitter=function(){return"@"+this.word()},i.prototype.url=function(e){e=u(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},i.prototype.port=function(){return this.integer({min:0,max:65535})},i.prototype.locale=function(e){return e=u(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},i.prototype.locales=function(e){return e=u(e),e.region?this.get("locale_regions"):this.get("locale_languages")},i.prototype.loremPicsum=function(e){e=u(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},i.prototype.address=function(e){return e=u(e),this.natural({min:5,max:2e3})+" "+this.street(e)},i.prototype.altitude=function(e){return e=u(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},i.prototype.areacode=function(e){e=u(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},i.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},i.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},i.prototype.countries=function(){return this.get("countries")},i.prototype.country=function(e){e=u(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},i.prototype.depth=function(e){return e=u(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},i.prototype.geohash=function(e){return e=u(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},i.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},i.prototype.latitude=function(e){var[a,n,s]=["ddm","dms","dd"];e=u(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:s});var c=e.format.toLowerCase();switch((c===a||c===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),c){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case s:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},i.prototype.longitude=function(e){var[a,n,s]=["ddm","dms","dd"];e=u(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:s});var c=e.format.toLowerCase();switch((c===a||c===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),c){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case s:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},i.prototype.phone=function(e){var a=this,n,s=function(H){var _=[];return H.sections.forEach(function(z){_.push(a.string({pool:"0123456789",length:z}))}),H.area+_.join(" ")};e=u(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var c;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),c=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),c=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),c=e.formatted?s(n):s(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),c=e.formatted?s(n):s(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),c=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),c=e.formatted||n);break;case"us":var g=this.areacode(e).toString(),E=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),f=this.natural({min:1e3,max:9999}).toString();c=e.formatted?g+" "+E+"-"+f:g+E+f;break;case"br":var v=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),C;e.mobile?C="9"+a.string({pool:"0123456789",length:4}):C=this.natural({min:2e3,max:5999}).toString();var A=a.string({pool:"0123456789",length:4});c=e.formatted?"("+v+") "+C+"-"+A:v+C+A;break}return c},i.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},i.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",s=e+a+n,c=this.natural({max:9}),g=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),E=c+g;return s+" "+E},i.prototype.counties=function(e){return e=u(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},i.prototype.county=function(e){return this.pick(this.counties(e)).name},i.prototype.provinces=function(e){return e=u(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},i.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},i.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},i.prototype.states=function(e){e=u(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),s=this.get("territories"),c=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(s)),e.armed_forces&&(a=a.concat(c));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},i.prototype.street=function(e){e=u(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},i.prototype.street_suffix=function(e){return e=u(e,{country:"us"}),this.pick(this.street_suffixes(e))},i.prototype.street_suffixes=function(e){return e=u(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},i.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},i.prototype.ampm=function(){return this.bool()?"am":"pm"},i.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=u(e,{american:!0,string:!1});var s=typeof e.min<"u"?e.min.getTime():1,c=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:s,max:c}))}else{var g=this.month({raw:!0}),E=g.days;e&&e.month&&(E=this.get("months")[(e.month%12+12)%12].days),e=u(e,{year:parseInt(this.year(),10),month:g.numeric-1,day:this.natural({min:1,max:E}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},i.prototype.hammertime=function(e){return this.date(e).getTime()},i.prototype.hour=function(e){return e=u(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},i.prototype.millisecond=function(){return this.natural({max:999})},i.prototype.minute=i.prototype.second=function(e){return e=u(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},i.prototype.month=function(e){e=u(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},i.prototype.months=function(){return this.get("months")},i.prototype.second=function(){return this.natural({max:59})},i.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},i.prototype.weekday=function(e){e=u(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},i.prototype.year=function(e){return e=u(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},i.prototype.cc=function(e){e=u(e);var a,n,s;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),s=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,s,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},i.prototype.cc_types=function(){return this.get("cc_types")},i.prototype.cc_type=function(e){e=u(e);var a=this.cc_types(),n=null;if(e.name){for(var s=0;s3&&(H?_=_.substr(0,3):_=_[0]+_.substr(2,2)),_.length<3&&(z=_,_=A.toUpperCase().split("").map(function(Y){return"AEIOU".indexOf(Y)!==-1?Y:void 0}).join("").substr(0,3-z.length)),z=z+_),z},v=function(A,H,_){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return A.getFullYear().toString().substr(2)+z[A.getMonth()]+_.pad(A.getDate()+(H.toLowerCase()==="female"?40:0),2)},C=function(A){for(var H="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",_="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",Y="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(_[H.indexOf(A[U])]):K+=Y.indexOf(_[H.indexOf(A[U])]);return z[K%26]};return E=E.concat(f(s,!0),f(n),v(c,a,this),g.toUpperCase().split("")).join(""),E+=C(E.toUpperCase()),E.toUpperCase()},i.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;c--)s[c-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?s.reduce(function(g,E){return g+E}):s}else throw new RangeError("Chance: A type of die roll must be included")},i.prototype.guid=function(e){e=u(e,{version:5});var a="abcdef1234567890",n="ab89",s=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return s},i.prototype.hash=function(e){e=u(e,{length:40,casing:"lower"});var a=e.casing==="upper"?h.toUpperCase():h;return this.string({pool:a,length:e.length})},i.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},i.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,s,c=0,g=a.length;g>c;++c)s=+a[c],c%2===0&&(s*=2,s>9&&(s-=9)),n+=s;return n*9%10},i.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=u(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},i.prototype.file=function(e){var a=e||{},n="fileExtension",s=Object.keys(this.get("fileExtension")),c,g;if(c=this.word({length:a.length}),a.extension)return g=a.extension,c+"."+g;if(a.extensions){if(Array.isArray(a.extensions))return g=this.pickone(a.extensions),c+"."+g;if(a.extensions.constructor===Object){var E=a.extensions,f=Object.keys(E);return g=this.pickone(E[this.pickone(f)]),c+"."+g}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var v=a.fileType;if(s.indexOf(v)!==-1)return g=this.pickone(this.get(n)[v]),c+"."+g;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return g=this.pickone(this.get(n)[this.pickone(s)]),c+"."+g},i.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var s={fileData:this.buffer({length:a.fileSize}),fileName:n};return s};var T={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},D=Object.prototype.hasOwnProperty,F=Object.keys||function(e){var a=[];for(var n in e)D.call(e,n)&&a.push(n);return a};function N(e,a){for(var n=F(e),s,c=0,g=n.length;c0)return this.normal_pool(e);var a,n,s,c,g=e.mean,E=e.dev;do n=this.random()*2-1,s=this.random()*2-1,a=n*n+s*s;while(a>=1);return c=n*Math.sqrt(-2*Math.log(a)/a),E*c+g},i.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},i.prototype.radio=function(e){e=u(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},i.prototype.set=function(e,a){typeof e=="string"?T[e]=a:T=w(e,T)},i.prototype.tv=function(e){return this.radio(e)},i.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},i.prototype.emotion=function(){return this.pick(this.get("emotions"))},i.prototype.mersenne_twister=function(e){return new O(e)},i.prototype.blueimp_md5=function(){return new G};var O=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};O.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},O.prototype.init_by_array=function(e,a){var n=1,s=0,c,g;for(this.init_genrand(19650218),c=this.N>a?this.N:a;c;c--)g=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((g&4294901760)>>>16)*1664525<<16)+(g&65535)*1664525)+e[s]+s,this.mt[n]>>>=0,n++,s++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),s>=a&&(s=0);for(c=this.N-1;c;c--)g=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((g&4294901760)>>>16)*1566083941<<16)+(g&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},O.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},O.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},O.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},O.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},O.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},O.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var G=function(){};G.prototype.VERSION="1.0.1",G.prototype.safe_add=function(a,n){var s=(a&65535)+(n&65535),c=(a>>16)+(n>>16)+(s>>16);return c<<16|s&65535},G.prototype.bit_roll=function(e,a){return e<>>32-a},G.prototype.md5_cmn=function(e,a,n,s,c,g){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(s,g)),c),n)},G.prototype.md5_ff=function(e,a,n,s,c,g,E){return this.md5_cmn(a&n|~a&s,e,a,c,g,E)},G.prototype.md5_gg=function(e,a,n,s,c,g,E){return this.md5_cmn(a&s|n&~s,e,a,c,g,E)},G.prototype.md5_hh=function(e,a,n,s,c,g,E){return this.md5_cmn(a^n^s,e,a,c,g,E)},G.prototype.md5_ii=function(e,a,n,s,c,g,E){return this.md5_cmn(n^(a|~s),e,a,c,g,E)},G.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,s,c,g,E,f=1732584193,v=-271733879,C=-1732584194,A=271733878;for(n=0;n>5]>>>a%32&255);return n},G.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(s=this.binl_md5(s,e.length*8)),n=0;n<16;n+=1)c[n]=s[n]^909522486,g[n]=s[n]^1549556828;return E=this.binl_md5(c.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(g.concat(E),512+128))},G.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",s,c;for(c=0;c>>4&15)+a.charAt(s&15);return n},G.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},G.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},G.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},G.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},G.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},G.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},m.exports&&(b=m.exports=i),b.Chance=i,typeof importScripts<"u"&&(chance=new i,self.Chance=i),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=i,window.chance=new i)})()})(ae,ae.exports);var Ae=ae.exports;const ye=ve(Ae);var q=new ye,ce=function(){function m(b,L,k,M){let x=k.toUpperCase(),p=b.toUpperCase(),h=L.toUpperCase();if(M!=null&&0":u=="["?"]":u=="{"?"}":u=="("?")":u}}function b(M,x,p){for(var h=[],y=`(){}[]^-|!*+.><='",;:%@?/\\#~`+p,S=` -\r `,i=Q(M,y+S),u=0,r=0,t=0,l=0;l0&&(d=h[h.length-1]),o==` -`?(r++,t=0):l>0&&i[l-1]!==` -`?t=t+i[l-1].length:t=0,u+=o.length,d!=null&&d.type=="comment"&&(d.value.lastIndexOf("*/")!=d.value.length-2||d.value=="/*/")){o=="*"||o=="/"?d.value=d.value+o:d.value="/* ... ",d.end=u,d!=null&&d.type=="comment"&&d.value.lastIndexOf("*/")==d.value.length-2&&d.value!="/*/"&&(d.value=M.substring(d.begin,d.end));continue}if(d!=null&&(d.type=="line-comment"||d.type=="dbtools-command")&&o!=` -`){d.value=d.value+o;continue}if(d!=null&&(d.type=="line-comment"||d.type=="dbtools-command")&&o==` -`&&(d.end=d.begin+d.value.length),d!=null&&d.type=="quoted-string"&&!(d.isStandardLiteral()||d.isAltLiteral())){d.value=d.value+o,d.end=d.begin+d.value.length;continue}if(!(d!=null&&d.type=="dquoted-string"&&o!='"'&&!(d.value.endsWith('"')&&d.value.length>1))){if(d!=null&&d.type=="dquoted-string"&&o=='"'){d.end=u,d.value=M.substring(d.begin,d.end);continue}if(!(d!=null&&d.type=="bquoted-string"&&o!="`"&&!(d.value.endsWith("`")&&d.value.length>1))){if(d!=null&&d.type=="bquoted-string"&&o=="`"){d.end=u,d.value=M.substring(d.begin,d.end);continue}if(o=="*"&&d!=null&&d.value=="/"){d.value=d.value+o,d.end=d.begin+d.value.length,d.type="comment";continue}if(o=="-"&&d!=null&&d.value=="-"){d.value=d.value+o,d.type="line-comment";continue}if((o.toUpperCase()=="REM"||o.toUpperCase()=="REMA"||o.toUpperCase()=="REMAR"||o.toUpperCase()=="REMARK"||o.toUpperCase()=="PRO"||o.toUpperCase()=="PROM"||o.toUpperCase()=="PROMP"||o.toUpperCase()=="PROMPT")&&(d==null||d.value==` -`||d.value=="\r")){h.push(new m(o,u-o.length,-9,"line-comment",r,t));continue}if(o.toUpperCase()=="SODA"&&(d==null||d.value==` -`||d.value=="\r")){h.push(new m(o,u-o.length,-9,"dbtools-command",r,t));continue}if(d!=null&&d.type=="identifier"&&d.end==-11&&d.value.indexOf("@")==0&&!(o==` -`||o=="\r")){d.value=d.value+o;continue}if(d!=null&&d.type=="identifier"&&d.end==-11&&d.value.indexOf("@")==0&&(o==` -`||o=="\r")){d.end=u-1,h.push(new m(o,u-1,u,"ws",r,t));continue}if(x&&o=="'"){d!=null&&(d.value.toUpperCase()=="Q"||d.value.toUpperCase()=="N"||d.value.toUpperCase()=="U"||d.value.toUpperCase()=="NQ")?(d.value+=o,d.type="quoted-string"):h.push(new m(o,u-1,-10,"quoted-string",r,t));continue}if(x&&o=='"'){h.push(new m(o,u-1,-11,"dquoted-string",r,t));continue}if(o=="`"&&0<=y.indexOf("`")){h.push(new m(o,u-1,-11,"bquoted-string",r,t));continue}if(o.length==1&&0<=y.indexOf(o)){h.push(new m(o,u-1,u,"operation",r,t));continue}if(o.length==1&&0<=S.indexOf(o)){h.push(new m(o,u-1,u,"ws",r,t));continue}if("0"<=o.charAt(0)&&o.charAt(0)<="9"){L(o,h,u-o.length,r)||(o.charAt(o.length-1)=="K"||o.charAt(o.length-1)=="k"||o.charAt(o.length-1)=="M"||o.charAt(o.length-1)=="m"||o.charAt(o.length-1)=="G"||o.charAt(o.length-1)=="g"||o.charAt(o.length-1)=="T"||o.charAt(o.length-1)=="t"||o.charAt(o.length-1)=="P"||o.charAt(o.length-1)=="p"||o.charAt(o.length-1)=="E"||o.charAt(o.length-1)=="e"?(h.push(new m(o.substring(0,o.length-1),u-o.length,u-1,"constant.numeric",r,t)),h.push(new m(o.substring(o.length-1),u-1,u,"constant.numeric",r,t))):h.push(new m(o,u-o.length,u,"constant.numeric",r,t)));continue}var P="identifier";l+10){var d=h[h.length-1];d.end=M.length}return h}function L(M,x,p,h){if(0>M.indexOf("e")&&0>M.indexOf("f")&&0>M.indexOf("d"))return!1;0<=M.indexOf("e"),0<=M.indexOf("e"),!(0<=M.indexOf("e"))&&0<=M.indexOf("f");for(var y=Q(M,"efd"),S=0;S")==0||r.indexOf("<")==0)&&(r=r.substring(1).trim());const o=r.toLowerCase();if(o.indexOf("view ")==0){var d=r.split(" ");return d[1]}r=p(r," d");var P=r.indexOf("/");0="0"&&B<="9"&&(r="x"+r),Se(le(r))},this.parseType=function(r){if(this.children!=null&&0!0)),O}return T}0");return t==0},this.getExplicitPkNode=function(){for(var r=0;rr.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(m.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),m.optionEQvalue("prefixPKwithTname","yes")&&(t=W(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let r=this.getGenIdColName();return r??this.getExplicitPkNode().parseName()},this.toDDL=function(){if(this.parseType()=="view"||this.parseType()=="dv")return"";if(this.children.length==0&&00&&"0"<=x[0]&&x[0]<="9")k=!0;else for(let p in x){const f=x[p];if(M.indexOf(f)<0&&(f<"0"||"9""u"&&(e[n]=a[n]);return e}function r(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var s=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?s=btoa:typeof Buffer=="function"&&(s=function(a){return new Buffer(a).toString("base64")})})(),i.prototype.bool=function(e){return e=c(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100o,"Chance: Max specified is out of range with fixed. Max should be, at most, "+o),e=c(e,{min:u,max:o}),a=this.integer({min:e.min*n,max:e.max*n});var g=(a/n).toFixed(e.fixed);return parseFloat(g)},i.prototype.integer=function(e){return e=c(e,{min:k,max:L}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},i.prototype.natural=function(e){if(e=c(e,{min:0,max:L}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),o=e.exclude.sort();for(var u in o){if(ne.max,"Chance: Min cannot be greater than Max.");var a=I.primes[I.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&I.primes.push(n);var o=I.primes.filter(function(u){return u>=e.min&&u<=e.max});return this.pick(o)},i.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},i.prototype.hex=function(e){e=c(e,{min:0,max:L,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},i.prototype.letter=function(e){e=c(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},i.prototype.string=function(e){e=c(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function d(e){this.c=e}d.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function E(e){this.c=e}E.prototype={replacers:{"#":function(e){return e.character({pool:M})},A:function(e){return e.character({pool:p})},a:function(e){return e.character({pool:x})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function P(e){for(var a=[],n="identity",o=0;o"u")throw new y("Sorry, the buffer() function is not supported on your platform");e=c(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},i.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},i.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},i.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var o=function(A,H){return A.indexOf(H)!==-1};n&&(o=n.comparator||o);for(var u=[],g=0,T,h=a*50,v=S.call(arguments,2);u.lengthh)throw new RangeError("Chance: num is likely too large for sample set")}return u},i.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,o=[],u=S.call(arguments,2);for(n=Math.max(0,n),null;n--;null)o.push(e.apply(this,u));return o},i.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},i.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},i.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},i.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),o=n.length;return this.n(function(){var u=this.natural({max:--o}),g=n[u];return n[u]=n[o],g},Math.min(o,a))},i.prototype.shuffle=function(e){for(var a=[],n=0,o=Number(e.length),u=r(o),g=o-1,T,h=0;h0&&(o+=u)}if(o===0)throw new RangeError("Chance: No valid entries in array weights");var T=this.random()*o,h=0,v=-1,C;for(g=0;g0){if(T<=h){C=g;break}v=g}g===a.length-1&&(C=v)}var A=e[C];return n=typeof n>"u"?!1:n,n&&(e.splice(C,1),a.splice(C,1)),A},i.prototype.paragraph=function(e){e=c(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),o=e.linebreak===!0?` +`:" ";return n.join(o)},i.prototype.sentence=function(e){e=c(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,o,u=this.n(this.word,a);return o=u.join(" "),o=this.capitalize(o),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(o+=n),o},i.prototype.syllable=function(e){e=c(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",o="aeiou",u=n+o,g="",T,h=0;he.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var T=e.minAge!==void 0?e.minAge:0,h=e.maxAge!==void 0?e.maxAge:100,v=new Date(o-h-1,n.getMonth(),n.getDate()),C=new Date(o-T,n.getMonth(),n.getDate());v.setDate(v.getDate()+1),C.setDate(C.getDate()+1),C.setMilliseconds(C.getMilliseconds()-1),e=c(e,{min:v,max:C})}else e=c(e,{year:o-a});return this.date(e)},i.prototype.cpf=function(e){e=c(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var o=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;o=11-o%11,o>=10&&(o=0);var u=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+o;return e.formatted?u:u.replace(/\D/g,"")},i.prototype.cnpj=function(e){e=c(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var o=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;o=11-o%11,o<2&&(o=0);var u=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+o;return e.formatted?u:u.replace(/\D/g,"")},i.prototype.first=function(e){return e=c(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},i.prototype.profession=function(e){return e=c(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},i.prototype.company=function(){return this.pick(this.get("company"))},i.prototype.gender=function(e){return e=c(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},i.prototype.last=function(e){if(e=c(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(o){a=a.concat(n[o])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},i.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},i.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},i.prototype.tld=function(){return this.pick(this.tlds())},i.prototype.twitter=function(){return"@"+this.word()},i.prototype.url=function(e){e=c(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},i.prototype.port=function(){return this.integer({min:0,max:65535})},i.prototype.locale=function(e){return e=c(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},i.prototype.locales=function(e){return e=c(e),e.region?this.get("locale_regions"):this.get("locale_languages")},i.prototype.loremPicsum=function(e){e=c(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},i.prototype.address=function(e){return e=c(e),this.natural({min:5,max:2e3})+" "+this.street(e)},i.prototype.altitude=function(e){return e=c(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},i.prototype.areacode=function(e){e=c(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},i.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},i.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},i.prototype.countries=function(){return this.get("countries")},i.prototype.country=function(e){e=c(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},i.prototype.depth=function(e){return e=c(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},i.prototype.geohash=function(e){return e=c(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},i.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},i.prototype.latitude=function(e){var[a,n,o]=["ddm","dms","dd"];e=c(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:o});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case o:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},i.prototype.longitude=function(e){var[a,n,o]=["ddm","dms","dd"];e=c(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:o});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case o:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},i.prototype.phone=function(e){var a=this,n,o=function(H){var _=[];return H.sections.forEach(function(z){_.push(a.string({pool:"0123456789",length:z}))}),H.area+_.join(" ")};e=c(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var u;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),u=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),u=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),u=e.formatted?o(n):o(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),u=e.formatted?o(n):o(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n);break;case"us":var g=this.areacode(e).toString(),T=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),h=this.natural({min:1e3,max:9999}).toString();u=e.formatted?g+" "+T+"-"+h:g+T+h;break;case"br":var v=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),C;e.mobile?C="9"+a.string({pool:"0123456789",length:4}):C=this.natural({min:2e3,max:5999}).toString();var A=a.string({pool:"0123456789",length:4});u=e.formatted?"("+v+") "+C+"-"+A:v+C+A;break}return u},i.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},i.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",o=e+a+n,u=this.natural({max:9}),g=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),T=u+g;return o+" "+T},i.prototype.counties=function(e){return e=c(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},i.prototype.county=function(e){return this.pick(this.counties(e)).name},i.prototype.provinces=function(e){return e=c(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},i.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},i.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},i.prototype.states=function(e){e=c(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),o=this.get("territories"),u=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(o)),e.armed_forces&&(a=a.concat(u));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},i.prototype.street=function(e){e=c(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},i.prototype.street_suffix=function(e){return e=c(e,{country:"us"}),this.pick(this.street_suffixes(e))},i.prototype.street_suffixes=function(e){return e=c(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},i.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},i.prototype.ampm=function(){return this.bool()?"am":"pm"},i.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=c(e,{american:!0,string:!1});var o=typeof e.min<"u"?e.min.getTime():1,u=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:o,max:u}))}else{var g=this.month({raw:!0}),T=g.days;e&&e.month&&(T=this.get("months")[(e.month%12+12)%12].days),e=c(e,{year:parseInt(this.year(),10),month:g.numeric-1,day:this.natural({min:1,max:T}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},i.prototype.hammertime=function(e){return this.date(e).getTime()},i.prototype.hour=function(e){return e=c(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},i.prototype.millisecond=function(){return this.natural({max:999})},i.prototype.minute=i.prototype.second=function(e){return e=c(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},i.prototype.month=function(e){e=c(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},i.prototype.months=function(){return this.get("months")},i.prototype.second=function(){return this.natural({max:59})},i.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},i.prototype.weekday=function(e){e=c(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},i.prototype.year=function(e){return e=c(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},i.prototype.cc=function(e){e=c(e);var a,n,o;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),o=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,o,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},i.prototype.cc_types=function(){return this.get("cc_types")},i.prototype.cc_type=function(e){e=c(e);var a=this.cc_types(),n=null;if(e.name){for(var o=0;o3&&(H?_=_.substr(0,3):_=_[0]+_.substr(2,2)),_.length<3&&(z=_,_=A.toUpperCase().split("").map(function(Y){return"AEIOU".indexOf(Y)!==-1?Y:void 0}).join("").substr(0,3-z.length)),z=z+_),z},v=function(A,H,_){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return A.getFullYear().toString().substr(2)+z[A.getMonth()]+_.pad(A.getDate()+(H.toLowerCase()==="female"?40:0),2)},C=function(A){for(var H="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",_="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",Y="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(_[H.indexOf(A[U])]):K+=Y.indexOf(_[H.indexOf(A[U])]);return z[K%26]};return T=T.concat(h(o,!0),h(n),v(u,a,this),g.toUpperCase().split("")).join(""),T+=C(T.toUpperCase()),T.toUpperCase()},i.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;u--)o[u-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?o.reduce(function(g,T){return g+T}):o}else throw new RangeError("Chance: A type of die roll must be included")},i.prototype.guid=function(e){e=c(e,{version:5});var a="abcdef1234567890",n="ab89",o=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return o},i.prototype.hash=function(e){e=c(e,{length:40,casing:"lower"});var a=e.casing==="upper"?f.toUpperCase():f;return this.string({pool:a,length:e.length})},i.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},i.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,o,u=0,g=a.length;g>u;++u)o=+a[u],u%2===0&&(o*=2,o>9&&(o-=9)),n+=o;return n*9%10},i.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=c(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},i.prototype.file=function(e){var a=e||{},n="fileExtension",o=Object.keys(this.get("fileExtension")),u,g;if(u=this.word({length:a.length}),a.extension)return g=a.extension,u+"."+g;if(a.extensions){if(Array.isArray(a.extensions))return g=this.pickone(a.extensions),u+"."+g;if(a.extensions.constructor===Object){var T=a.extensions,h=Object.keys(T);return g=this.pickone(T[this.pickone(h)]),u+"."+g}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var v=a.fileType;if(o.indexOf(v)!==-1)return g=this.pickone(this.get(n)[v]),u+"."+g;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return g=this.pickone(this.get(n)[this.pickone(o)]),u+"."+g},i.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var o={fileData:this.buffer({length:a.fileSize}),fileName:n};return o};var I={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},D=Object.prototype.hasOwnProperty,F=Object.keys||function(e){var a=[];for(var n in e)D.call(e,n)&&a.push(n);return a};function w(e,a){for(var n=F(e),o,u=0,g=n.length;u0)return this.normal_pool(e);var a,n,o,u,g=e.mean,T=e.dev;do n=this.random()*2-1,o=this.random()*2-1,a=n*n+o*o;while(a>=1);return u=n*Math.sqrt(-2*Math.log(a)/a),T*u+g},i.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},i.prototype.radio=function(e){e=c(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},i.prototype.set=function(e,a){typeof e=="string"?I[e]=a:I=N(e,I)},i.prototype.tv=function(e){return this.radio(e)},i.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},i.prototype.emotion=function(){return this.pick(this.get("emotions"))},i.prototype.mersenne_twister=function(e){return new O(e)},i.prototype.blueimp_md5=function(){return new R};var O=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};O.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},O.prototype.init_by_array=function(e,a){var n=1,o=0,u,g;for(this.init_genrand(19650218),u=this.N>a?this.N:a;u;u--)g=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((g&4294901760)>>>16)*1664525<<16)+(g&65535)*1664525)+e[o]+o,this.mt[n]>>>=0,n++,o++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),o>=a&&(o=0);for(u=this.N-1;u;u--)g=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((g&4294901760)>>>16)*1566083941<<16)+(g&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},O.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},O.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},O.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},O.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},O.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},O.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var R=function(){};R.prototype.VERSION="1.0.1",R.prototype.safe_add=function(a,n){var o=(a&65535)+(n&65535),u=(a>>16)+(n>>16)+(o>>16);return u<<16|o&65535},R.prototype.bit_roll=function(e,a){return e<>>32-a},R.prototype.md5_cmn=function(e,a,n,o,u,g){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(o,g)),u),n)},R.prototype.md5_ff=function(e,a,n,o,u,g,T){return this.md5_cmn(a&n|~a&o,e,a,u,g,T)},R.prototype.md5_gg=function(e,a,n,o,u,g,T){return this.md5_cmn(a&o|n&~o,e,a,u,g,T)},R.prototype.md5_hh=function(e,a,n,o,u,g,T){return this.md5_cmn(a^n^o,e,a,u,g,T)},R.prototype.md5_ii=function(e,a,n,o,u,g,T){return this.md5_cmn(n^(a|~o),e,a,u,g,T)},R.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,o,u,g,T,h=1732584193,v=-271733879,C=-1732584194,A=271733878;for(n=0;n>5]>>>a%32&255);return n},R.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(o=this.binl_md5(o,e.length*8)),n=0;n<16;n+=1)u[n]=o[n]^909522486,g[n]=o[n]^1549556828;return T=this.binl_md5(u.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(g.concat(T),512+128))},R.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",o,u;for(u=0;u>>4&15)+a.charAt(o&15);return n},R.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},R.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},R.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},R.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},R.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},R.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},m.exports&&(b=m.exports=i),b.Chance=i,typeof importScripts<"u"&&(chance=new i,self.Chance=i),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=i,window.chance=new i)})()})(ne,ne.exports);var Ae=ne.exports;const ye=ve(Ae);var q=new ye,ce=function(){function m(b,L,k,M){let x=k.toUpperCase(),p=b.toUpperCase(),f=L.toUpperCase();if(M!=null&&0":c=="["?"]":c=="{"?"}":c=="("?")":c}}function b(M,x,p){for(var f=[],y=`(){}[]^-|!*+.><='",;:%@?/\\#~`+p,S=` +\r `,i=Q(M,y+S),c=0,r=0,t=0,s=0;s0&&(d=f[f.length-1]),l==` +`?(r++,t=0):s>0&&i[s-1]!==` +`?t=t+i[s-1].length:t=0,c+=l.length,d!=null&&d.type=="comment"&&(d.value.lastIndexOf("*/")!=d.value.length-2||d.value=="/*/")){l=="*"||l=="/"?d.value=d.value+l:d.value="/* ... ",d.end=c,d!=null&&d.type=="comment"&&d.value.lastIndexOf("*/")==d.value.length-2&&d.value!="/*/"&&(d.value=M.substring(d.begin,d.end));continue}if(d!=null&&(d.type=="line-comment"||d.type=="dbtools-command")&&l!=` +`){d.value=d.value+l;continue}if(d!=null&&(d.type=="line-comment"||d.type=="dbtools-command")&&l==` +`&&(d.end=d.begin+d.value.length),d!=null&&d.type=="quoted-string"&&!(d.isStandardLiteral()||d.isAltLiteral())){d.value=d.value+l,d.end=d.begin+d.value.length;continue}if(!(d!=null&&d.type=="dquoted-string"&&l!='"'&&!(d.value.endsWith('"')&&d.value.length>1))){if(d!=null&&d.type=="dquoted-string"&&l=='"'){d.end=c,d.value=M.substring(d.begin,d.end);continue}if(!(d!=null&&d.type=="bquoted-string"&&l!="`"&&!(d.value.endsWith("`")&&d.value.length>1))){if(d!=null&&d.type=="bquoted-string"&&l=="`"){d.end=c,d.value=M.substring(d.begin,d.end);continue}if(l=="*"&&d!=null&&d.value=="/"){d.value=d.value+l,d.end=d.begin+d.value.length,d.type="comment";continue}if(l=="-"&&d!=null&&d.value=="-"){d.value=d.value+l,d.type="line-comment";continue}if((l.toUpperCase()=="REM"||l.toUpperCase()=="REMA"||l.toUpperCase()=="REMAR"||l.toUpperCase()=="REMARK"||l.toUpperCase()=="PRO"||l.toUpperCase()=="PROM"||l.toUpperCase()=="PROMP"||l.toUpperCase()=="PROMPT")&&(d==null||d.value==` +`||d.value=="\r")){f.push(new m(l,c-l.length,-9,"line-comment",r,t));continue}if(l.toUpperCase()=="SODA"&&(d==null||d.value==` +`||d.value=="\r")){f.push(new m(l,c-l.length,-9,"dbtools-command",r,t));continue}if(d!=null&&d.type=="identifier"&&d.end==-11&&d.value.indexOf("@")==0&&!(l==` +`||l=="\r")){d.value=d.value+l;continue}if(d!=null&&d.type=="identifier"&&d.end==-11&&d.value.indexOf("@")==0&&(l==` +`||l=="\r")){d.end=c-1,f.push(new m(l,c-1,c,"ws",r,t));continue}if(x&&l=="'"){d!=null&&(d.value.toUpperCase()=="Q"||d.value.toUpperCase()=="N"||d.value.toUpperCase()=="U"||d.value.toUpperCase()=="NQ")?(d.value+=l,d.type="quoted-string"):f.push(new m(l,c-1,-10,"quoted-string",r,t));continue}if(x&&l=='"'){f.push(new m(l,c-1,-11,"dquoted-string",r,t));continue}if(l=="`"&&0<=y.indexOf("`")){f.push(new m(l,c-1,-11,"bquoted-string",r,t));continue}if(l.length==1&&0<=y.indexOf(l)){f.push(new m(l,c-1,c,"operation",r,t));continue}if(l.length==1&&0<=S.indexOf(l)){f.push(new m(l,c-1,c,"ws",r,t));continue}if("0"<=l.charAt(0)&&l.charAt(0)<="9"){L(l,f,c-l.length,r)||(l.charAt(l.length-1)=="K"||l.charAt(l.length-1)=="k"||l.charAt(l.length-1)=="M"||l.charAt(l.length-1)=="m"||l.charAt(l.length-1)=="G"||l.charAt(l.length-1)=="g"||l.charAt(l.length-1)=="T"||l.charAt(l.length-1)=="t"||l.charAt(l.length-1)=="P"||l.charAt(l.length-1)=="p"||l.charAt(l.length-1)=="E"||l.charAt(l.length-1)=="e"?(f.push(new m(l.substring(0,l.length-1),c-l.length,c-1,"constant.numeric",r,t)),f.push(new m(l.substring(l.length-1),c-1,c,"constant.numeric",r,t))):f.push(new m(l,c-l.length,c,"constant.numeric",r,t)));continue}var E="identifier";s+10){var d=f[f.length-1];d.end=M.length}return f}function L(M,x,p,f){if(0>M.indexOf("e")&&0>M.indexOf("f")&&0>M.indexOf("d"))return!1;0<=M.indexOf("e"),0<=M.indexOf("e"),!(0<=M.indexOf("e"))&&0<=M.indexOf("f");for(var y=Q(M,"efd"),S=0;S")==0||r.indexOf("<")==0)&&(r=r.substring(1).trim());const l=r.toLowerCase();if(l.indexOf("view ")==0){var d=r.split(" ");return d[1]}r=p(r," d");var E=r.indexOf("/");0="0"&&P<="9"&&(r="x"+r),Se(le(r))},this.parseType=function(r){if(this.children!=null&&0!0)),O}return I}0");return t==0},this.getExplicitPkNode=function(){for(var r=0;rr.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(m.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),m.optionEQvalue("prefixPKwithTname","yes")&&(t=W(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let r=this.getGenIdColName();return r??this.getExplicitPkNode().parseName()},this.toDDL=function(){if(this.parseType()=="view"||this.parseType()=="dv")return"";if(this.children.length==0&&0!0):c==null&&(c=m.find(a),c.isMany2One()&!a.endsWith("_id")&&(n=a,a=W(a),g="_id")),P=b+" ".repeat(this.maxChildNameLen()-a.length),o+=b+a+g+P+s+` -`,o+=b+b+" ".repeat(this.maxChildNameLen())+"constraint "+d+"_"+a+`_fk -`;let E="";0<=r.indexOf("/CASCADE")&&(E=" on delete cascade");let f="";for(let v in this.children){let C=this.children[v];if(a==C.parseName()){let A=C.trimmedContent().toUpperCase();(0<=A.indexOf("/NN")||0<=A.indexOf("/NOTNULL"))&&(f=" NOT NULL".toLowerCase()),0<=A.indexOf("/CASCADE")&&(E=" on delete cascade");break}}o+=b+b+" ".repeat(this.maxChildNameLen())+"references "+m.objPrefix()+n+E+f+`, -`}if(m.optionEQvalue("rowkey",!0)||0!0):g==null&&(g=m.find(n),g.isMany2One()&!n.endsWith("_id")&&(o=n,n=W(n),T="_id")),E=b+" ".repeat(this.maxChildNameLen()-n.length),l+=b+n+T+E+u+` +`,l+=b+b+" ".repeat(this.maxChildNameLen())+"constraint "+d+"_"+n+`_fk +`;let h="";0<=r.indexOf("/CASCADE")&&(h=" on delete cascade");let v="";for(let C in this.children){let A=this.children[C];if(n==A.parseName()){let H=A.trimmedContent().toUpperCase();(0<=H.indexOf("/NN")||0<=H.indexOf("/NOTNULL"))&&(v=" NOT NULL".toLowerCase()),0<=H.indexOf("/CASCADE")&&(h=" on delete cascade");break}}l+=b+b+" ".repeat(this.maxChildNameLen())+"references "+m.objPrefix()+o+h+v+`, +`}if(m.optionEQvalue("rowkey",!0)||0TRUE, p_object=>'"+d+`'); end; / -`},this.generateTrigger=function(){if(this.parseType()!="table")return"";let r="";m.optionEQvalue("editionable","yes")&&(r=" editionable");let t=m.objPrefix()+this.parseName();var l="create or replace"+r+" trigger "+t.toLowerCase()+`_BIU -`.toLowerCase();l+=` before insert or update -`,l+=" on "+t.toLowerCase()+` -`,l+=` for each row -`;let o=this.trimmedContent().toUpperCase();(m.optionEQvalue("Rowkey","yes")||0!0)),o+=`, -`,o+=b+b+"P_"+d+" "+l+" "+I+t}for(let B=0;B!0),(r=="insert"||r=="update")&&(l+=`, -`);let F=" P_"+I+" := c1."+I+`; -`;r=="insert"&&(F=" "+I),r=="update"&&(F=" "+I+" = P_"+I+` -`),l+=F}for(var d=0;d!0)),l+=`, +`,l+=b+b+"P_"+d+" "+s+" "+B+t}for(let P=0;P!0),(r=="insert"||r=="update")&&(s+=`, +`);let F=" P_"+B+" := c1."+B+`; +`;r=="insert"&&(F=" "+B),r=="update"&&(F=" "+B+" = P_"+B+` +`),s+=F}for(var d=0;dl.children.length>0&&l.parseName()==t&&!l.isArray())},this.generateSelectJsonTopDown=function(r){var t=this.parseName();let l="";this.getExplicitPkNode==null&&(l+=r+"'"+this.getGenIdColName()+"' : "+t+"."+this.getGenIdColName()+`, -`);for(var o=0;os.children.length>0&&s.parseName()==t&&!s.isArray())},this.generateSelectJsonTopDown=function(r){var t=this.parseName();let s="";this.getExplicitPkNode==null&&(s+=r+"'"+this.getGenIdColName()+"' : "+t+"."+this.getGenIdColName()+`, +`);for(var l=0;l");let h=` -`+b(M)+p+L;if(typeof k=="number"&&(h+=" num",L.endsWith("_id")||L.endsWith("Id")))return h+=" /pk",h;if(typeof k=="object"){if(Array.isArray(k))for(let S in k){1<=S&&console.log("1 <= property !");const i=k[S];return this.introspect(L,i,M,!1)}else if(L!=""){let S=this.aggrSizes[L];h+=" /insert "+S}let y="";for(let S in k){const i=k[S];if(S!=null){const t=W(L),l=S.toLowerCase();if(L!=null&&t+"_id"==l&&0");let f=` +`+b(M)+p+L;if(typeof k=="number"&&(f+=" num",L.endsWith("_id")||L.endsWith("Id")))return f+=" /pk",f;if(typeof k=="object"){if(Array.isArray(k))for(let S in k){1<=S&&console.log("1 <= property !");const i=k[S];return this.introspect(L,i,M,!1)}else if(L!=""){let S=this.aggrSizes[L];f+=" /insert "+S}let y="";for(let S in k){const i=k[S];if(S!=null){const t=W(L),s=S.toLowerCase();if(L!=null&&t+"_id"==s&&0!0)}),0!0)}),0 Date: Fri, 8 Dec 2023 14:02:36 -0800 Subject: [PATCH 02/22] amended constraints --- dist/quick-sql.js | 2041 +++++++++++----------- dist/quick-sql.umd.cjs | 266 +-- src/tree.js | 63 +- test/compatibility_tests.js | 1 + test/{experimental => }/constraints.qsql | 0 test/{experimental => }/constraints.sql | 4 +- test/diagram_tests.js | 1 + test/small_tests.js | 5 +- 8 files changed, 1212 insertions(+), 1169 deletions(-) rename test/{experimental => }/constraints.qsql (100%) rename test/{experimental => }/constraints.sql (73%) diff --git a/dist/quick-sql.js b/dist/quick-sql.js index 846f035..49515b6 100644 --- a/dist/quick-sql.js +++ b/dist/quick-sql.js @@ -1,40 +1,40 @@ function z(m) { return m == null ? m : m.toUpperCase().endsWith("IES") ? m.substring(0, m.length - 3) + "y" : m.toUpperCase().endsWith("ES") || m.toUpperCase().endsWith("S") ? m.substring(0, m.length - 1) : m; } -function he(m, b) { - let L = '"'; +function he(m, f) { + let E = '"'; if (m == null) return null; - let x = !1; - const M = "$#_ "; - if (!m.startsWith(L) && !x) { + let L = !1; + const I = "$#_ "; + if (!m.startsWith(E) && !L) { const k = m; if (k.length > 0 && "0" <= k[0] && k[0] <= "9") - x = !0; + L = !0; else for (let p in k) { - const f = k[p]; - if (M.indexOf(f) < 0 && (f < "0" || "9" < f && f < "A" || "Z" < f && f < "a" || "z" < f)) { - x = !0; + const b = k[p]; + if (I.indexOf(b) < 0 && (b < "0" || "9" < b && b < "A" || "Z" < b && b < "a" || "z" < b)) { + L = !0; break; } } } - return (m.startsWith("_") || m.startsWith("$") || m.startsWith("#")) && (x = !0), x || (L = ""), L + m + L; + return (m.startsWith("_") || m.startsWith("$") || m.startsWith("#")) && (L = !0), L || (E = ""), E + m + E; } function de(m) { if (m == null) return null; if (m.indexOf('"') == 0) return m; - let b = he(m); - return b.indexOf('"') == 0 || (b = b.replace(/ /g, "_")), b; + let f = he(m); + return f.indexOf('"') == 0 || (f = f.replace(/ /g, "_")), f; } -function J(m, b, L) { - let x = !1; - L == null && (L = ""), m.indexOf('"') == 0 && (x = !0, m = m.substring(1, m.length - 1)), b.indexOf('"') == 0 && (x = !0, b = b.substring(1, b.length - 1)), L.indexOf('"') == 0 && (x = !0, L = L.substring(1, L.length - 1)); - let M = m + b + L; - return x ? M = '"' + M + '"' : M = M.toLowerCase(), M; +function K(m, f, E) { + let L = !1; + E == null && (E = ""), m.indexOf('"') == 0 && (L = !0, m = m.substring(1, m.length - 1)), f.indexOf('"') == 0 && (L = !0, f = f.substring(1, f.length - 1)), E.indexOf('"') == 0 && (L = !0, E = E.substring(1, E.length - 1)); + let I = m + f + E; + return L ? I = '"' + I + '"' : I = I.toLowerCase(), I; } var oe = function() { var m = [ @@ -50,7 +50,7 @@ var oe = function() { "Specialist", "Evangelist", "Salesman" - ], b = [ + ], f = [ "\u300C\u8CA9\u58F2\u300D", "\u300C\u8CA1\u52D9\u300D", "\u300C\u914D\u9001\u300D", @@ -62,7 +62,7 @@ var oe = function() { "\u300C\u30A2\u30CA\u30EA\u30B9\u30C8\u300D", "\u300C\u30B9\u30DA\u30B7\u30E3\u30EA\u30B9\u30C8\u300D", "\u300C\u30A8\u30D0\u30F3\u30B8\u30A7\u30EA\u30B9\u30C8\u300D" - ], L = [ + ], E = [ "\uC601\uC5C5", "\uAE08\uC735", "\uBC30\uC1A1", @@ -76,34 +76,34 @@ var oe = function() { "\uC804\uB3C4\uC790", "\uD310\uB9E4\uC6D0" ]; - function x(M, k) { - if (typeof k != "string" || M.substring(0, 2).toLowerCase() == "en") + function L(I, k) { + if (typeof k != "string" || I.substring(0, 2).toLowerCase() == "en") return k; k.indexOf("'") == 0 && (k = k.substring(1, k.length - 1)); - for (var p = -1, f = 0; f < m.length; f++) - if (m[f] == k) { - p = f; + for (var p = -1, b = 0; b < m.length; b++) + if (m[b] == k) { + p = b; break; } - return 0 <= p && M.substring(0, 2).toLowerCase() == "jp" && p < b.length ? "'" + b[p] + "'" : 0 <= p && M.substring(0, 2).toLowerCase() == "kr" && p < L.length ? "'" + L[p] + "'" : k; + return 0 <= p && I.substring(0, 2).toLowerCase() == "jp" && p < f.length ? "'" + f[p] + "'" : 0 <= p && I.substring(0, 2).toLowerCase() == "kr" && p < E.length ? "'" + E[p] + "'" : k; } - return x; + return L; }(); function fe(m) { return m && m.__esModule && Object.prototype.hasOwnProperty.call(m, "default") ? m.default : m; } var ie = { exports: {} }; -(function(m, b) { +(function(m, f) { (function() { - var L = 9007199254740992, x = -L, M = "0123456789", k = "abcdefghijklmnopqrstuvwxyz", p = k.toUpperCase(), f = M + "abcdef"; + var E = 9007199254740992, L = -E, I = "0123456789", k = "abcdefghijklmnopqrstuvwxyz", p = k.toUpperCase(), b = I + "abcdef"; function y(e) { this.name = "UnsupportedError", this.message = e || "This feature is not supported on this platform"; } y.prototype = new Error(), y.prototype.constructor = y; - var S = Array.prototype.slice; - function i(e) { - if (!(this instanceof i)) - return e || (e = null), e === null ? new i() : new i(e); + var M = Array.prototype.slice; + function r(e) { + if (!(this instanceof r)) + return e || (e = null), e === null ? new r() : new r(e); if (typeof e == "function") return this.random = e, this; arguments.length && (this.seed = 0); @@ -123,14 +123,14 @@ var ie = { exports: {} }; return this.mt.random(this.seed); }, this; } - i.prototype.VERSION = "1.1.11"; + r.prototype.VERSION = "1.1.11"; function c(e, a) { if (e = e || {}, a) for (var n in a) typeof e[n] > "u" && (e[n] = a[n]); return e; } - function r(e) { + function i(e) { return Array.apply(null, Array(e)).map(function(a, n) { return n; }); @@ -146,16 +146,16 @@ var ie = { exports: {} }; typeof btoa == "function" ? s = btoa : typeof Buffer == "function" && (s = function(a) { return new Buffer(a).toString("base64"); }); - })(), i.prototype.bool = function(e) { + })(), r.prototype.bool = function(e) { return e = c(e, { likelihood: 50 }), t( e.likelihood < 0 || e.likelihood > 100, "Chance: Likelihood accepts values from 0 to 100." ), this.random() * 100 < e.likelihood; - }, i.prototype.falsy = function(e) { + }, r.prototype.falsy = function(e) { e = c(e, { pool: [!1, null, 0, NaN, "", void 0] }); var a = e.pool, n = this.integer({ min: 0, max: a.length - 1 }), o = a[n]; return o; - }, i.prototype.animal = function(e) { + }, r.prototype.animal = function(e) { if (e = c(e), typeof e.type < "u") return t( !this.get("animals")[e.type.toLowerCase()], @@ -163,16 +163,16 @@ var ie = { exports: {} }; ), this.pick(this.get("animals")[e.type.toLowerCase()]); var a = ["desert", "forest", "ocean", "zoo", "farm", "pet", "grassland"]; return this.pick(this.get("animals")[this.pick(a)]); - }, i.prototype.character = function(e) { + }, r.prototype.character = function(e) { e = c(e); var a = "!@#$%^&*()[]", n, o; - return e.casing === "lower" ? n = k : e.casing === "upper" ? n = p : n = k + p, e.pool ? o = e.pool : (o = "", e.alpha && (o += n), e.numeric && (o += M), e.symbols && (o += a), o || (o = n + M + a)), o.charAt(this.natural({ max: o.length - 1 })); - }, i.prototype.floating = function(e) { + return e.casing === "lower" ? n = k : e.casing === "upper" ? n = p : n = k + p, e.pool ? o = e.pool : (o = "", e.alpha && (o += n), e.numeric && (o += I), e.symbols && (o += a), o || (o = n + I + a)), o.charAt(this.natural({ max: o.length - 1 })); + }, r.prototype.floating = function(e) { e = c(e, { fixed: 4 }), t( e.fixed && e.precision, "Chance: Cannot specify both fixed and precision." ); - var a, n = Math.pow(10, e.fixed), o = L / n, u = -o; + var a, n = Math.pow(10, e.fixed), o = E / n, u = -o; t( e.min && e.fixed && e.min < u, "Chance: Min specified is out of range with fixed. Min should be, at least, " + u @@ -182,10 +182,10 @@ var ie = { exports: {} }; ), e = c(e, { min: u, max: o }), a = this.integer({ min: e.min * n, max: e.max * n }); var g = (a / n).toFixed(e.fixed); return parseFloat(g); - }, i.prototype.integer = function(e) { - return e = c(e, { min: x, max: L }), t(e.min > e.max, "Chance: Min cannot be greater than Max."), Math.floor(this.random() * (e.max - e.min + 1) + e.min); - }, i.prototype.natural = function(e) { - if (e = c(e, { min: 0, max: L }), typeof e.numerals == "number" && (t(e.numerals < 1, "Chance: Numerals cannot be less than one."), e.min = Math.pow(10, e.numerals - 1), e.max = Math.pow(10, e.numerals) - 1), t(e.min < 0, "Chance: Min cannot be less than zero."), e.exclude) { + }, r.prototype.integer = function(e) { + return e = c(e, { min: L, max: E }), t(e.min > e.max, "Chance: Min cannot be greater than Max."), Math.floor(this.random() * (e.max - e.min + 1) + e.min); + }, r.prototype.natural = function(e) { + if (e = c(e, { min: 0, max: E }), typeof e.numerals == "number" && (t(e.numerals < 1, "Chance: Numerals cannot be less than one."), e.min = Math.pow(10, e.numerals - 1), e.max = Math.pow(10, e.numerals) - 1), t(e.min < 0, "Chance: Min cannot be less than zero."), e.exclude) { t(!Array.isArray(e.exclude), "Chance: exclude must be an array."); for (var a in e.exclude) t(!Number.isInteger(e.exclude[a]), "Chance: exclude must be numbers."); @@ -198,17 +198,17 @@ var ie = { exports: {} }; return n; } return this.integer(e); - }, i.prototype.prime = function(e) { + }, r.prototype.prime = function(e) { e = c(e, { min: 0, max: 1e4 }), t(e.min < 0, "Chance: Min cannot be less than zero."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); - var a = I.primes[I.primes.length - 1]; + var a = x.primes[x.primes.length - 1]; if (e.max > a) for (var n = a + 2; n <= e.max; ++n) - this.is_prime(n) && I.primes.push(n); - var o = I.primes.filter(function(u) { + this.is_prime(n) && x.primes.push(n); + var o = x.primes.filter(function(u) { return u >= e.min && u <= e.max; }); return this.pick(o); - }, i.prototype.is_prime = function(e) { + }, r.prototype.is_prime = function(e) { if (e % 1 || e < 2) return !1; if (e % 2 === 0) @@ -219,15 +219,15 @@ var ie = { exports: {} }; if (e % n === 0 || e % (n + 2) === 0) return !1; return !0; - }, i.prototype.hex = function(e) { - e = c(e, { min: 0, max: L, casing: "lower" }), t(e.min < 0, "Chance: Min cannot be less than zero."); + }, r.prototype.hex = function(e) { + e = c(e, { min: 0, max: E, casing: "lower" }), t(e.min < 0, "Chance: Min cannot be less than zero."); var a = this.natural({ min: e.min, max: e.max }); return e.casing === "upper" ? a.toString(16).toUpperCase() : a.toString(16); - }, i.prototype.letter = function(e) { + }, r.prototype.letter = function(e) { e = c(e, { casing: "lower" }); var a = "abcdefghijklmnopqrstuvwxyz", n = this.character({ pool: a }); return e.casing === "upper" && (n = n.toUpperCase()), n; - }, i.prototype.string = function(e) { + }, r.prototype.string = function(e) { e = c(e, { min: 5, max: 20 }), e.length !== 0 && !e.length && (e.length = this.natural({ min: e.min, max: e.max })), t(e.length < 0, "Chance: Length cannot be less than zero."); var a = e.length, n = this.n(this.character, a, e); return n.join(""); @@ -250,13 +250,13 @@ var ie = { exports: {} }; return this.c; } }; - function E(e) { + function S(e) { this.c = e; } - E.prototype = { + S.prototype = { replacers: { "#": function(e) { - return e.character({ pool: M }); + return e.character({ pool: I }); }, A: function(e) { return e.character({ pool: p }); @@ -283,32 +283,32 @@ var ie = { exports: {} }; u === "{" ? n = "replace" : u === "\\" ? n = "escape" : a.push(new l(u)); break; case "replace": - u === "}" ? n = "identity" : a.push(new E(u)); + u === "}" ? n = "identity" : a.push(new S(u)); break; } } return a; } - i.prototype.template = function(e) { + r.prototype.template = function(e) { if (!e) throw new Error("Template string is required"); var a = this; return P(e).map(function(n) { return n.substitute(a); }).join(""); - }, i.prototype.buffer = function(e) { + }, r.prototype.buffer = function(e) { if (typeof Buffer > "u") throw new y("Sorry, the buffer() function is not supported on your platform"); e = c(e, { length: this.natural({ min: 5, max: 20 }) }), t(e.length < 0, "Chance: Length cannot be less than zero."); var a = e.length, n = this.n(this.character, a, e); return Buffer.from(n); - }, i.prototype.capitalize = function(e) { + }, r.prototype.capitalize = function(e) { return e.charAt(0).toUpperCase() + e.substr(1); - }, i.prototype.mixin = function(e) { + }, r.prototype.mixin = function(e) { for (var a in e) this[a] = e[a]; return this; - }, i.prototype.unique = function(e, a, n) { + }, r.prototype.unique = function(e, a, n) { t( typeof e != "function", "Chance: The first argument must be a function." @@ -317,32 +317,32 @@ var ie = { exports: {} }; return A.indexOf(H) !== -1; }; n && (o = n.comparator || o); - for (var u = [], g = 0, T, h = a * 50, v = S.call(arguments, 2); u.length < a; ) { + for (var u = [], g = 0, B, h = a * 50, v = M.call(arguments, 2); u.length < a; ) { var C = JSON.parse(JSON.stringify(v)); - if (T = e.apply(this, C), o(u, T) || (u.push(T), g = 0), ++g > h) + if (B = e.apply(this, C), o(u, B) || (u.push(B), g = 0), ++g > h) throw new RangeError("Chance: num is likely too large for sample set"); } return u; - }, i.prototype.n = function(e, a) { + }, r.prototype.n = function(e, a) { t( typeof e != "function", "Chance: The first argument must be a function." ), typeof a > "u" && (a = 1); - var n = a, o = [], u = S.call(arguments, 2); + var n = a, o = [], u = M.call(arguments, 2); for (n = Math.max(0, n), null; n--; null) o.push(e.apply(this, u)); return o; - }, i.prototype.pad = function(e, a, n) { + }, r.prototype.pad = function(e, a, n) { return n = n || "0", e = e + "", e.length >= a ? e : new Array(a - e.length + 1).join(n) + e; - }, i.prototype.pick = function(e, a) { + }, r.prototype.pick = function(e, a) { if (e.length === 0) throw new RangeError("Chance: Cannot pick() from an empty array"); return !a || a === 1 ? e[this.natural({ max: e.length - 1 })] : this.shuffle(e).slice(0, a); - }, i.prototype.pickone = function(e) { + }, r.prototype.pickone = function(e) { if (e.length === 0) throw new RangeError("Chance: Cannot pickone() from an empty array"); return e[this.natural({ max: e.length - 1 })]; - }, i.prototype.pickset = function(e, a) { + }, r.prototype.pickset = function(e, a) { if (a === 0) return []; if (e.length === 0) @@ -356,11 +356,11 @@ var ie = { exports: {} }; var u = this.natural({ max: --o }), g = n[u]; return n[u] = n[o], g; }, Math.min(o, a)); - }, i.prototype.shuffle = function(e) { - for (var a = [], n = 0, o = Number(e.length), u = r(o), g = o - 1, T, h = 0; h < o; h++) - T = this.natural({ max: g }), n = u[T], a[h] = e[n], u[T] = u[g], g -= 1; + }, r.prototype.shuffle = function(e) { + for (var a = [], n = 0, o = Number(e.length), u = i(o), g = o - 1, B, h = 0; h < o; h++) + B = this.natural({ max: g }), n = u[B], a[h] = e[n], u[B] = u[g], g -= 1; return a; - }, i.prototype.weighted = function(e, a, n) { + }, r.prototype.weighted = function(e, a, n) { if (e.length !== a.length) throw new RangeError("Chance: Length of array and weights must match"); for (var o = 0, u, g = 0; g < a.length; ++g) { @@ -370,10 +370,10 @@ var ie = { exports: {} }; } if (o === 0) throw new RangeError("Chance: No valid entries in array weights"); - var T = this.random() * o, h = 0, v = -1, C; + var B = this.random() * o, h = 0, v = -1, C; for (g = 0; g < a.length; ++g) { if (u = a[g], h += u, u > 0) { - if (T <= h) { + if (B <= h) { C = g; break; } @@ -383,21 +383,21 @@ var ie = { exports: {} }; } var A = e[C]; return n = typeof n > "u" ? !1 : n, n && (e.splice(C, 1), a.splice(C, 1)), A; - }, i.prototype.paragraph = function(e) { + }, r.prototype.paragraph = function(e) { e = c(e); var a = e.sentences || this.natural({ min: 3, max: 7 }), n = this.n(this.sentence, a), o = e.linebreak === !0 ? ` ` : " "; return n.join(o); - }, i.prototype.sentence = function(e) { + }, r.prototype.sentence = function(e) { e = c(e); var a = e.words || this.natural({ min: 12, max: 18 }), n = e.punctuation, o, u = this.n(this.word, a); return o = u.join(" "), o = this.capitalize(o), n !== !1 && !/^[.?;!:]$/.test(n) && (n = "."), n && (o += n), o; - }, i.prototype.syllable = function(e) { + }, r.prototype.syllable = function(e) { e = c(e); - for (var a = e.length || this.natural({ min: 2, max: 3 }), n = "bcdfghjklmnprstvwz", o = "aeiou", u = n + o, g = "", T, h = 0; h < a; h++) - h === 0 ? T = this.character({ pool: u }) : n.indexOf(T) === -1 ? T = this.character({ pool: n }) : T = this.character({ pool: o }), g += T; + for (var a = e.length || this.natural({ min: 2, max: 3 }), n = "bcdfghjklmnprstvwz", o = "aeiou", u = n + o, g = "", B, h = 0; h < a; h++) + h === 0 ? B = this.character({ pool: u }) : n.indexOf(B) === -1 ? B = this.character({ pool: n }) : B = this.character({ pool: o }), g += B; return e.capitalize && (g = this.capitalize(g)), g; - }, i.prototype.word = function(e) { + }, r.prototype.word = function(e) { e = c(e), t( e.syllables && e.length, "Chance: Cannot specify both syllables AND length." @@ -412,7 +412,7 @@ var ie = { exports: {} }; for (var o = 0; o < a; o++) n += this.syllable(); return e.capitalize && (n = this.capitalize(n)), n; - }, i.prototype.age = function(e) { + }, r.prototype.age = function(e) { e = c(e); var a; switch (e.type) { @@ -436,7 +436,7 @@ var ie = { exports: {} }; break; } return this.natural(a); - }, i.prototype.birthday = function(e) { + }, r.prototype.birthday = function(e) { var a = this.age(e), n = /* @__PURE__ */ new Date(), o = n.getFullYear(); if (e && e.type) { var u = /* @__PURE__ */ new Date(), g = /* @__PURE__ */ new Date(); @@ -446,7 +446,7 @@ var ie = { exports: {} }; }); } else if (e && (e.minAge !== void 0 || e.maxAge !== void 0)) { t(e.minAge < 0, "Chance: MinAge cannot be less than zero."), t(e.minAge > e.maxAge, "Chance: MinAge cannot be greater than MaxAge."); - var T = e.minAge !== void 0 ? e.minAge : 0, h = e.maxAge !== void 0 ? e.maxAge : 100, v = new Date(o - h - 1, n.getMonth(), n.getDate()), C = new Date(o - T, n.getMonth(), n.getDate()); + var B = e.minAge !== void 0 ? e.minAge : 0, h = e.maxAge !== void 0 ? e.maxAge : 100, v = new Date(o - h - 1, n.getMonth(), n.getDate()), C = new Date(o - B, n.getMonth(), n.getDate()); v.setDate(v.getDate() + 1), C.setDate(C.getDate() + 1), C.setMilliseconds(C.getMilliseconds() - 1), e = c(e, { min: v, max: C @@ -456,7 +456,7 @@ var ie = { exports: {} }; year: o - a }); return this.date(e); - }, i.prototype.cpf = function(e) { + }, r.prototype.cpf = function(e) { e = c(e, { formatted: !0 }); @@ -466,7 +466,7 @@ var ie = { exports: {} }; o = 11 - o % 11, o >= 10 && (o = 0); var u = "" + a[0] + a[1] + a[2] + "." + a[3] + a[4] + a[5] + "." + a[6] + a[7] + a[8] + "-" + n + o; return e.formatted ? u : u.replace(/\D/g, ""); - }, i.prototype.cnpj = function(e) { + }, r.prototype.cnpj = function(e) { e = c(e, { formatted: !0 }); @@ -476,15 +476,15 @@ var ie = { exports: {} }; o = 11 - o % 11, o < 2 && (o = 0); var u = "" + a[0] + a[1] + "." + a[2] + a[3] + a[4] + "." + a[5] + a[6] + a[7] + "/" + a[8] + a[9] + a[10] + a[11] + "-" + n + o; return e.formatted ? u : u.replace(/\D/g, ""); - }, i.prototype.first = function(e) { + }, r.prototype.first = function(e) { return e = c(e, { gender: this.gender(), nationality: "en" }), this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()]); - }, i.prototype.profession = function(e) { + }, r.prototype.profession = function(e) { return e = c(e), e.rank ? this.pick(["Apprentice ", "Junior ", "Senior ", "Lead "]) + this.pick(this.get("profession")) : this.pick(this.get("profession")); - }, i.prototype.company = function() { + }, r.prototype.company = function() { return this.pick(this.get("company")); - }, i.prototype.gender = function(e) { + }, r.prototype.gender = function(e) { return e = c(e, { extraGenders: [] }), this.pick(["Male", "Female"].concat(e.extraGenders)); - }, i.prototype.last = function(e) { + }, r.prototype.last = function(e) { if (e = c(e, { nationality: "*" }), e.nationality === "*") { var a = [], n = this.get("lastNames"); return Object.keys(n).forEach(function(o) { @@ -492,23 +492,23 @@ var ie = { exports: {} }; }), this.pick(a); } else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()]); - }, i.prototype.israelId = function() { + }, r.prototype.israelId = function() { for (var e = this.string({ pool: "0123456789", length: 8 }), a = 0, n = 0; n < e.length; n++) { var o = e[n] * (n / 2 === parseInt(n / 2) ? 1 : 2); o = this.pad(o, 2).toString(), o = parseInt(o[0]) + parseInt(o[1]), a = a + o; } return e = e + (10 - parseInt(a.toString().slice(-1))).toString().slice(-1), e; - }, i.prototype.mrz = function(e) { + }, r.prototype.mrz = function(e) { var a = function(u) { - var g = "", "<=", ">=", "="]); e.range && (a = e.range); var n = ""; return e.include_prerelease && (n = this.weighted(["", "-dev", "-beta", "-alpha"], [50, 10, 5, 1])), a + this.rpg("3d10").join(".") + n; - }, i.prototype.tlds = function() { + }, r.prototype.tlds = function() { return ["com", "org", "edu", "gov", "co.uk", "net", "io", "ac", "ad", "ae", "af", "ag", "ai", "al", "am", "ao", "aq", "ar", "as", "at", "au", "aw", "ax", "az", "ba", "bb", "bd", "be", "bf", "bg", "bh", "bi", "bj", "bm", "bn", "bo", "br", "bs", "bt", "bv", "bw", "by", "bz", "ca", "cc", "cd", "cf", "cg", "ch", "ci", "ck", "cl", "cm", "cn", "co", "cr", "cu", "cv", "cw", "cx", "cy", "cz", "de", "dj", "dk", "dm", "do", "dz", "ec", "ee", "eg", "eh", "er", "es", "et", "eu", "fi", "fj", "fk", "fm", "fo", "fr", "ga", "gb", "gd", "ge", "gf", "gg", "gh", "gi", "gl", "gm", "gn", "gp", "gq", "gr", "gs", "gt", "gu", "gw", "gy", "hk", "hm", "hn", "hr", "ht", "hu", "id", "ie", "il", "im", "in", "io", "iq", "ir", "is", "it", "je", "jm", "jo", "jp", "ke", "kg", "kh", "ki", "km", "kn", "kp", "kr", "kw", "ky", "kz", "la", "lb", "lc", "li", "lk", "lr", "ls", "lt", "lu", "lv", "ly", "ma", "mc", "md", "me", "mg", "mh", "mk", "ml", "mm", "mn", "mo", "mp", "mq", "mr", "ms", "mt", "mu", "mv", "mw", "mx", "my", "mz", "na", "nc", "ne", "nf", "ng", "ni", "nl", "no", "np", "nr", "nu", "nz", "om", "pa", "pe", "pf", "pg", "ph", "pk", "pl", "pm", "pn", "pr", "ps", "pt", "pw", "py", "qa", "re", "ro", "rs", "ru", "rw", "sa", "sb", "sc", "sd", "se", "sg", "sh", "si", "sj", "sk", "sl", "sm", "sn", "so", "sr", "ss", "st", "su", "sv", "sx", "sy", "sz", "tc", "td", "tf", "tg", "th", "tj", "tk", "tl", "tm", "tn", "to", "tp", "tr", "tt", "tv", "tw", "tz", "ua", "ug", "uk", "us", "uy", "uz", "va", "vc", "ve", "vg", "vi", "vn", "vu", "wf", "ws", "ye", "yt", "za", "zm", "zw"]; - }, i.prototype.tld = function() { + }, r.prototype.tld = function() { return this.pick(this.tlds()); - }, i.prototype.twitter = function() { + }, r.prototype.twitter = function() { return "@" + this.word(); - }, i.prototype.url = function(e) { + }, r.prototype.url = function(e) { e = c(e, { protocol: "http", domain: this.domain(e), domain_prefix: "", path: this.word(), extensions: [] }); var a = e.extensions.length > 0 ? "." + this.pick(e.extensions) : "", n = e.domain_prefix ? e.domain_prefix + "." + e.domain : e.domain; return e.protocol + "://" + n + "/" + e.path + a; - }, i.prototype.port = function() { + }, r.prototype.port = function() { return this.integer({ min: 0, max: 65535 }); - }, i.prototype.locale = function(e) { + }, r.prototype.locale = function(e) { return e = c(e), e.region ? this.pick(this.get("locale_regions")) : this.pick(this.get("locale_languages")); - }, i.prototype.locales = function(e) { + }, r.prototype.locales = function(e) { return e = c(e), e.region ? this.get("locale_regions") : this.get("locale_languages"); - }, i.prototype.loremPicsum = function(e) { + }, r.prototype.loremPicsum = function(e) { e = c(e, { width: 500, height: 500, greyscale: !1, blurred: !1 }); var a = e.greyscale ? "g/" : "", n = e.blurred ? "/?blur" : "/?random"; return "https://picsum.photos/" + a + e.width + "/" + e.height + n; - }, i.prototype.address = function(e) { + }, r.prototype.address = function(e) { return e = c(e), this.natural({ min: 5, max: 2e3 }) + " " + this.street(e); - }, i.prototype.altitude = function(e) { + }, r.prototype.altitude = function(e) { return e = c(e, { fixed: 5, min: 0, max: 8848 }), this.floating({ min: e.min, max: e.max, fixed: e.fixed }); - }, i.prototype.areacode = function(e) { + }, r.prototype.areacode = function(e) { e = c(e, { parens: !0 }); var a = e.exampleNumber ? "555" : this.natural({ min: 2, max: 9 }).toString() + this.natural({ min: 0, max: 8 }).toString() + this.natural({ min: 0, max: 9 }).toString(); return e.parens ? "(" + a + ")" : a; - }, i.prototype.city = function() { + }, r.prototype.city = function() { return this.capitalize(this.word({ syllables: 3 })); - }, i.prototype.coordinates = function(e) { + }, r.prototype.coordinates = function(e) { return this.latitude(e) + ", " + this.longitude(e); - }, i.prototype.countries = function() { + }, r.prototype.countries = function() { return this.get("countries"); - }, i.prototype.country = function(e) { + }, r.prototype.country = function(e) { e = c(e); var a = this.pick(this.countries()); return e.raw ? a : e.full ? a.name : a.abbreviation; - }, i.prototype.depth = function(e) { + }, r.prototype.depth = function(e) { return e = c(e, { fixed: 5, min: -10994, max: 0 }), this.floating({ min: e.min, max: e.max, fixed: e.fixed }); - }, i.prototype.geohash = function(e) { + }, r.prototype.geohash = function(e) { return e = c(e, { length: 7 }), this.string({ length: e.length, pool: "0123456789bcdefghjkmnpqrstuvwxyz" }); - }, i.prototype.geojson = function(e) { + }, r.prototype.geojson = function(e) { return this.latitude(e) + ", " + this.longitude(e) + ", " + this.altitude(e); - }, i.prototype.latitude = function(e) { + }, r.prototype.latitude = function(e) { var [a, n, o] = ["ddm", "dms", "dd"]; e = c( e, @@ -805,7 +805,7 @@ var ie = { exports: {} }; default: return this.floating({ min: e.min, max: e.max, fixed: e.fixed }); } - }, i.prototype.longitude = function(e) { + }, r.prototype.longitude = function(e) { var [a, n, o] = ["ddm", "dms", "dd"]; e = c( e, @@ -821,12 +821,12 @@ var ie = { exports: {} }; default: return this.floating({ min: e.min, max: e.max, fixed: e.fixed }); } - }, i.prototype.phone = function(e) { + }, r.prototype.phone = function(e) { var a = this, n, o = function(H) { - var _ = []; + var F = []; return H.sections.forEach(function(W) { - _.push(a.string({ pool: "0123456789", length: W })); - }), H.area + _.join(" "); + F.push(a.string({ pool: "0123456789", length: W })); + }), H.area + F.join(" "); }; e = c(e, { formatted: !0, @@ -885,8 +885,8 @@ var ie = { exports: {} }; ]), u = e.formatted || n); break; case "us": - var g = this.areacode(e).toString(), T = this.natural({ min: 2, max: 9 }).toString() + this.natural({ min: 0, max: 9 }).toString() + this.natural({ min: 0, max: 9 }).toString(), h = this.natural({ min: 1e3, max: 9999 }).toString(); - u = e.formatted ? g + " " + T + "-" + h : g + T + h; + var g = this.areacode(e).toString(), B = this.natural({ min: 2, max: 9 }).toString() + this.natural({ min: 0, max: 9 }).toString() + this.natural({ min: 0, max: 9 }).toString(), h = this.natural({ min: 1e3, max: 9999 }).toString(); + u = e.formatted ? g + " " + B + "-" + h : g + B + h; break; case "br": var v = this.pick(["11", "12", "13", "14", "15", "16", "17", "18", "19", "21", "22", "24", "27", "28", "31", "32", "33", "34", "35", "37", "38", "41", "42", "43", "44", "45", "46", "47", "48", "49", "51", "53", "54", "55", "61", "62", "63", "64", "65", "66", "67", "68", "69", "71", "73", "74", "75", "77", "79", "81", "82", "83", "84", "85", "86", "87", "88", "89", "91", "92", "93", "94", "95", "96", "97", "98", "99"]), C; @@ -896,23 +896,23 @@ var ie = { exports: {} }; break; } return u; - }, i.prototype.postal = function() { + }, r.prototype.postal = function() { var e = this.character({ pool: "XVTSRPNKLMHJGECBA" }), a = e + this.natural({ max: 9 }) + this.character({ alpha: !0, casing: "upper" }), n = this.natural({ max: 9 }) + this.character({ alpha: !0, casing: "upper" }) + this.natural({ max: 9 }); return a + " " + n; - }, i.prototype.postcode = function() { - var e = this.pick(this.get("postcodeAreas")).code, a = this.natural({ max: 9 }), n = this.bool() ? this.character({ alpha: !0, casing: "upper" }) : "", o = e + a + n, u = this.natural({ max: 9 }), g = this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }), T = u + g; - return o + " " + T; - }, i.prototype.counties = function(e) { + }, r.prototype.postcode = function() { + var e = this.pick(this.get("postcodeAreas")).code, a = this.natural({ max: 9 }), n = this.bool() ? this.character({ alpha: !0, casing: "upper" }) : "", o = e + a + n, u = this.natural({ max: 9 }), g = this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }), B = u + g; + return o + " " + B; + }, r.prototype.counties = function(e) { return e = c(e, { country: "uk" }), this.get("counties")[e.country.toLowerCase()]; - }, i.prototype.county = function(e) { + }, r.prototype.county = function(e) { return this.pick(this.counties(e)).name; - }, i.prototype.provinces = function(e) { + }, r.prototype.provinces = function(e) { return e = c(e, { country: "ca" }), this.get("provinces")[e.country.toLowerCase()]; - }, i.prototype.province = function(e) { + }, r.prototype.province = function(e) { return e && e.full ? this.pick(this.provinces(e)).name : this.pick(this.provinces(e)).abbreviation; - }, i.prototype.state = function(e) { + }, r.prototype.state = function(e) { return e && e.full ? this.pick(this.states(e)).name : this.pick(this.states(e)).abbreviation; - }, i.prototype.states = function(e) { + }, r.prototype.states = function(e) { e = c(e, { country: "us", us_states_and_dc: !0 }); var a; switch (e.country.toLowerCase()) { @@ -929,7 +929,7 @@ var ie = { exports: {} }; break; } return a; - }, i.prototype.street = function(e) { + }, r.prototype.street = function(e) { e = c(e, { country: "us", syllables: 2 }); var a; switch (e.country.toLowerCase()) { @@ -941,16 +941,16 @@ var ie = { exports: {} }; break; } return a; - }, i.prototype.street_suffix = function(e) { + }, r.prototype.street_suffix = function(e) { return e = c(e, { country: "us" }), this.pick(this.street_suffixes(e)); - }, i.prototype.street_suffixes = function(e) { + }, r.prototype.street_suffixes = function(e) { return e = c(e, { country: "us" }), this.get("street_suffixes")[e.country.toLowerCase()]; - }, i.prototype.zip = function(e) { + }, r.prototype.zip = function(e) { var a = this.n(this.natural, 5, { max: 9 }); return e && e.plusfour === !0 && (a.push("-"), a = a.concat(this.n(this.natural, 4, { max: 9 }))), a.join(""); - }, i.prototype.ampm = function() { + }, r.prototype.ampm = function() { return this.bool() ? "am" : "pm"; - }, i.prototype.date = function(e) { + }, r.prototype.date = function(e) { var a, n; if (e && (e.min || e.max)) { e = c(e, { @@ -960,13 +960,13 @@ var ie = { exports: {} }; var o = typeof e.min < "u" ? e.min.getTime() : 1, u = typeof e.max < "u" ? e.max.getTime() : 864e13; n = new Date(this.integer({ min: o, max: u })); } else { - var g = this.month({ raw: !0 }), T = g.days; - e && e.month && (T = this.get("months")[(e.month % 12 + 12) % 12].days), e = c(e, { + var g = this.month({ raw: !0 }), B = g.days; + e && e.month && (B = this.get("months")[(e.month % 12 + 12) % 12].days), e = c(e, { year: parseInt(this.year(), 10), // Necessary to subtract 1 because Date() 0-indexes month but not day or year // for some reason. month: g.numeric - 1, - day: this.natural({ min: 1, max: T }), + day: this.natural({ min: 1, max: B }), hour: this.hour({ twentyfour: !0 }), minute: this.minute(), second: this.second(), @@ -976,40 +976,40 @@ var ie = { exports: {} }; }), n = new Date(e.year, e.month, e.day, e.hour, e.minute, e.second, e.millisecond); } return e.american ? a = n.getMonth() + 1 + "/" + n.getDate() + "/" + n.getFullYear() : a = n.getDate() + "/" + (n.getMonth() + 1) + "/" + n.getFullYear(), e.string ? a : n; - }, i.prototype.hammertime = function(e) { + }, r.prototype.hammertime = function(e) { return this.date(e).getTime(); - }, i.prototype.hour = function(e) { + }, r.prototype.hour = function(e) { return e = c(e, { min: e && e.twentyfour ? 0 : 1, max: e && e.twentyfour ? 23 : 12 }), t(e.min < 0, "Chance: Min cannot be less than 0."), t(e.twentyfour && e.max > 23, "Chance: Max cannot be greater than 23 for twentyfour option."), t(!e.twentyfour && e.max > 12, "Chance: Max cannot be greater than 12."), t(e.min > e.max, "Chance: Min cannot be greater than Max."), this.natural({ min: e.min, max: e.max }); - }, i.prototype.millisecond = function() { + }, r.prototype.millisecond = function() { return this.natural({ max: 999 }); - }, i.prototype.minute = i.prototype.second = function(e) { + }, r.prototype.minute = r.prototype.second = function(e) { return e = c(e, { min: 0, max: 59 }), t(e.min < 0, "Chance: Min cannot be less than 0."), t(e.max > 59, "Chance: Max cannot be greater than 59."), t(e.min > e.max, "Chance: Min cannot be greater than Max."), this.natural({ min: e.min, max: e.max }); - }, i.prototype.month = function(e) { + }, r.prototype.month = function(e) { e = c(e, { min: 1, max: 12 }), t(e.min < 1, "Chance: Min cannot be less than 1."), t(e.max > 12, "Chance: Max cannot be greater than 12."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); var a = this.pick(this.months().slice(e.min - 1, e.max)); return e.raw ? a : a.name; - }, i.prototype.months = function() { + }, r.prototype.months = function() { return this.get("months"); - }, i.prototype.second = function() { + }, r.prototype.second = function() { return this.natural({ max: 59 }); - }, i.prototype.timestamp = function() { + }, r.prototype.timestamp = function() { return this.natural({ min: 1, max: parseInt((/* @__PURE__ */ new Date()).getTime() / 1e3, 10) }); - }, i.prototype.weekday = function(e) { + }, r.prototype.weekday = function(e) { e = c(e, { weekday_only: !1 }); var a = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"]; return e.weekday_only || (a.push("Saturday"), a.push("Sunday")), this.pickone(a); - }, i.prototype.year = function(e) { + }, r.prototype.year = function(e) { return e = c(e, { min: (/* @__PURE__ */ new Date()).getFullYear() }), e.max = typeof e.max < "u" ? e.max : e.min + 100, this.natural(e).toString(); - }, i.prototype.cc = function(e) { + }, r.prototype.cc = function(e) { e = c(e); var a, n, o; return a = e.type ? this.cc_type({ name: e.type, raw: !0 }) : this.cc_type({ raw: !0 }), n = a.prefix.split(""), o = a.length - a.prefix.length - 1, n = n.concat(this.n(this.integer, o, { min: 0, max: 9 })), n.push(this.luhn_calculate(n.join(""))), n.join(""); - }, i.prototype.cc_types = function() { + }, r.prototype.cc_types = function() { return this.get("cc_types"); - }, i.prototype.cc_type = function(e) { + }, r.prototype.cc_type = function(e) { e = c(e); var a = this.cc_types(), n = null; if (e.name) { @@ -1023,15 +1023,15 @@ var ie = { exports: {} }; } else n = this.pick(a); return e.raw ? n : n.name; - }, i.prototype.currency_types = function() { + }, r.prototype.currency_types = function() { return this.get("currency_types"); - }, i.prototype.currency = function() { + }, r.prototype.currency = function() { return this.pick(this.currency_types()); - }, i.prototype.timezones = function() { + }, r.prototype.timezones = function() { return this.get("timezones"); - }, i.prototype.timezone = function() { + }, r.prototype.timezone = function() { return this.pick(this.timezones()); - }, i.prototype.currency_pair = function(e) { + }, r.prototype.currency_pair = function(e) { var a = this.unique(this.currency, 2, { comparator: function(n, o) { return n.reduce(function(u, g) { @@ -1040,17 +1040,17 @@ var ie = { exports: {} }; } }); return e ? a[0].code + "/" + a[1].code : a; - }, i.prototype.dollar = function(e) { + }, r.prototype.dollar = function(e) { e = c(e, { max: 1e4, min: 0 }); var a = this.floating({ min: e.min, max: e.max, fixed: 2 }).toString(), n = a.split(".")[1]; return n === void 0 ? a += ".00" : n.length < 2 && (a = a + "0"), a < 0 ? "-$" + a.replace("-", "") : "$" + a; - }, i.prototype.euro = function(e) { + }, r.prototype.euro = function(e) { return Number(this.dollar(e).replace("$", "")).toLocaleString() + "\u20AC"; - }, i.prototype.exp = function(e) { + }, r.prototype.exp = function(e) { e = c(e); var a = {}; return a.year = this.exp_year(), a.year === (/* @__PURE__ */ new Date()).getFullYear().toString() ? a.month = this.exp_month({ future: !0 }) : a.month = this.exp_month(), e.raw ? a : a.month + "/" + a.year; - }, i.prototype.exp_month = function(e) { + }, r.prototype.exp_month = function(e) { e = c(e); var a, n, o = (/* @__PURE__ */ new Date()).getMonth() + 1; if (e.future && o !== 12) @@ -1060,54 +1060,54 @@ var ie = { exports: {} }; else a = this.month({ raw: !0 }).numeric; return a; - }, i.prototype.exp_year = function() { + }, r.prototype.exp_year = function() { var e = (/* @__PURE__ */ new Date()).getMonth() + 1, a = (/* @__PURE__ */ new Date()).getFullYear(); return this.year({ min: e === 12 ? a + 1 : a, max: a + 10 }); - }, i.prototype.vat = function(e) { + }, r.prototype.vat = function(e) { switch (e = c(e, { country: "it" }), e.country.toLowerCase()) { case "it": return this.it_vat(); } - }, i.prototype.iban = function() { + }, r.prototype.iban = function() { var e = "ABCDEFGHIJKLMNOPQRSTUVWXYZ", a = e + "0123456789", n = this.string({ length: 2, pool: e }) + this.pad(this.integer({ min: 0, max: 99 }), 2) + this.string({ length: 4, pool: a }) + this.pad(this.natural(), this.natural({ min: 6, max: 26 })); return n; - }, i.prototype.it_vat = function() { + }, r.prototype.it_vat = function() { var e = this.natural({ min: 1, max: 18e5 }); return e = this.pad(e, 7) + this.pad(this.pick(this.provinces({ country: "it" })).code, 3), e + this.luhn_calculate(e); - }, i.prototype.cf = function(e) { + }, r.prototype.cf = function(e) { e = e || {}; - var a = e.gender ? e.gender : this.gender(), n = e.first ? e.first : this.first({ gender: a, nationality: "it" }), o = e.last ? e.last : this.last({ nationality: "it" }), u = e.birthday ? e.birthday : this.birthday(), g = e.city ? e.city : this.pickone(["A", "B", "C", "D", "E", "F", "G", "H", "I", "L", "M", "Z"]) + this.pad(this.natural({ max: 999 }), 3), T = [], h = function(A, H) { - var _, W = []; - return A.length < 3 ? W = A.split("").concat("XXX".split("")).splice(0, 3) : (_ = A.toUpperCase().split("").map(function(K) { - return "BCDFGHJKLMNPRSTVWZ".indexOf(K) !== -1 ? K : void 0; - }).join(""), _.length > 3 && (H ? _ = _.substr(0, 3) : _ = _[0] + _.substr(2, 2)), _.length < 3 && (W = _, _ = A.toUpperCase().split("").map(function(K) { - return "AEIOU".indexOf(K) !== -1 ? K : void 0; - }).join("").substr(0, 3 - W.length)), W = W + _), W; - }, v = function(A, H, _) { + var a = e.gender ? e.gender : this.gender(), n = e.first ? e.first : this.first({ gender: a, nationality: "it" }), o = e.last ? e.last : this.last({ nationality: "it" }), u = e.birthday ? e.birthday : this.birthday(), g = e.city ? e.city : this.pickone(["A", "B", "C", "D", "E", "F", "G", "H", "I", "L", "M", "Z"]) + this.pad(this.natural({ max: 999 }), 3), B = [], h = function(A, H) { + var F, W = []; + return A.length < 3 ? W = A.split("").concat("XXX".split("")).splice(0, 3) : (F = A.toUpperCase().split("").map(function(J) { + return "BCDFGHJKLMNPRSTVWZ".indexOf(J) !== -1 ? J : void 0; + }).join(""), F.length > 3 && (H ? F = F.substr(0, 3) : F = F[0] + F.substr(2, 2)), F.length < 3 && (W = F, F = A.toUpperCase().split("").map(function(J) { + return "AEIOU".indexOf(J) !== -1 ? J : void 0; + }).join("").substr(0, 3 - W.length)), W = W + F), W; + }, v = function(A, H, F) { var W = ["A", "B", "C", "D", "E", "H", "L", "M", "P", "R", "S", "T"]; - return A.getFullYear().toString().substr(2) + W[A.getMonth()] + _.pad(A.getDate() + (H.toLowerCase() === "female" ? 40 : 0), 2); + return A.getFullYear().toString().substr(2) + W[A.getMonth()] + F.pad(A.getDate() + (H.toLowerCase() === "female" ? 40 : 0), 2); }, C = function(A) { - for (var H = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ", _ = "ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ", W = "ABCDEFGHIJKLMNOPQRSTUVWXYZ", K = "BAKPLCQDREVOSFTGUHMINJWZYX", V = 0, U = 0; U < 15; U++) - U % 2 !== 0 ? V += W.indexOf(_[H.indexOf(A[U])]) : V += K.indexOf(_[H.indexOf(A[U])]); + for (var H = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ", F = "ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ", W = "ABCDEFGHIJKLMNOPQRSTUVWXYZ", J = "BAKPLCQDREVOSFTGUHMINJWZYX", V = 0, U = 0; U < 15; U++) + U % 2 !== 0 ? V += W.indexOf(F[H.indexOf(A[U])]) : V += J.indexOf(F[H.indexOf(A[U])]); return W[V % 26]; }; - return T = T.concat(h(o, !0), h(n), v(u, a, this), g.toUpperCase().split("")).join(""), T += C(T.toUpperCase()), T.toUpperCase(); - }, i.prototype.pl_pesel = function() { + return B = B.concat(h(o, !0), h(n), v(u, a, this), g.toUpperCase().split("")).join(""), B += C(B.toUpperCase()), B.toUpperCase(); + }, r.prototype.pl_pesel = function() { for (var e = this.natural({ min: 1, max: 9999999999 }), a = this.pad(e, 10).split(""), n = 0; n < a.length; n++) a[n] = parseInt(a[n]); var o = (1 * a[0] + 3 * a[1] + 7 * a[2] + 9 * a[3] + 1 * a[4] + 3 * a[5] + 7 * a[6] + 9 * a[7] + 1 * a[8] + 3 * a[9]) % 10; return o !== 0 && (o = 10 - o), a.join("") + o; - }, i.prototype.pl_nip = function() { + }, r.prototype.pl_nip = function() { for (var e = this.natural({ min: 1, max: 999999999 }), a = this.pad(e, 9).split(""), n = 0; n < a.length; n++) a[n] = parseInt(a[n]); var o = (6 * a[0] + 5 * a[1] + 7 * a[2] + 2 * a[3] + 3 * a[4] + 4 * a[5] + 5 * a[6] + 6 * a[7] + 7 * a[8]) % 11; return o === 10 ? this.pl_nip() : a.join("") + o; - }, i.prototype.pl_regon = function() { + }, r.prototype.pl_regon = function() { for (var e = this.natural({ min: 1, max: 99999999 }), a = this.pad(e, 8).split(""), n = 0; n < a.length; n++) a[n] = parseInt(a[n]); var o = (8 * a[0] + 9 * a[1] + 2 * a[2] + 3 * a[3] + 4 * a[4] + 5 * a[5] + 6 * a[6] + 7 * a[7]) % 11; return o === 10 && (o = 0), a.join("") + o; - }, i.prototype.note = function(e) { + }, r.prototype.note = function(e) { e = c(e, { notes: "flatKey" }); var a = { naturals: ["C", "D", "E", "F", "G", "A", "B"], @@ -1115,10 +1115,10 @@ var ie = { exports: {} }; sharps: ["C\u266F", "D\u266F", "F\u266F", "G\u266F", "A\u266F"] }; return a.all = a.naturals.concat(a.flats.concat(a.sharps)), a.flatKey = a.naturals.concat(a.flats), a.sharpKey = a.naturals.concat(a.sharps), this.pickone(a[e.notes]); - }, i.prototype.midi_note = function(e) { + }, r.prototype.midi_note = function(e) { var a = 0, n = 127; return e = c(e, { min: a, max: n }), this.integer({ min: e.min, max: e.max }); - }, i.prototype.chord_quality = function(e) { + }, r.prototype.chord_quality = function(e) { e = c(e, { jazz: !0 }); var a = ["maj", "min", "aug", "dim"]; return e.jazz && (a = [ @@ -1129,49 +1129,49 @@ var ie = { exports: {} }; "dim", "\xF8" ]), this.pickone(a); - }, i.prototype.chord = function(e) { + }, r.prototype.chord = function(e) { return e = c(e), this.note(e) + this.chord_quality(e); - }, i.prototype.tempo = function(e) { + }, r.prototype.tempo = function(e) { var a = 40, n = 320; return e = c(e, { min: a, max: n }), this.integer({ min: e.min, max: e.max }); - }, i.prototype.coin = function() { + }, r.prototype.coin = function() { return this.bool() ? "heads" : "tails"; }; - function B(e) { + function T(e) { return function() { return this.natural(e); }; } - i.prototype.d4 = B({ min: 1, max: 4 }), i.prototype.d6 = B({ min: 1, max: 6 }), i.prototype.d8 = B({ min: 1, max: 8 }), i.prototype.d10 = B({ min: 1, max: 10 }), i.prototype.d12 = B({ min: 1, max: 12 }), i.prototype.d20 = B({ min: 1, max: 20 }), i.prototype.d30 = B({ min: 1, max: 30 }), i.prototype.d100 = B({ min: 1, max: 100 }), i.prototype.rpg = function(e, a) { + r.prototype.d4 = T({ min: 1, max: 4 }), r.prototype.d6 = T({ min: 1, max: 6 }), r.prototype.d8 = T({ min: 1, max: 8 }), r.prototype.d10 = T({ min: 1, max: 10 }), r.prototype.d12 = T({ min: 1, max: 12 }), r.prototype.d20 = T({ min: 1, max: 20 }), r.prototype.d30 = T({ min: 1, max: 30 }), r.prototype.d100 = T({ min: 1, max: 100 }), r.prototype.rpg = function(e, a) { if (a = c(a), e) { var n = e.toLowerCase().split("d"), o = []; if (n.length !== 2 || !parseInt(n[0], 10) || !parseInt(n[1], 10)) throw new Error("Chance: Invalid format provided. Please provide #d# where the first # is the number of dice to roll, the second # is the max of each die"); for (var u = n[0]; u > 0; u--) o[u - 1] = this.natural({ min: 1, max: n[1] }); - return typeof a.sum < "u" && a.sum ? o.reduce(function(g, T) { - return g + T; + return typeof a.sum < "u" && a.sum ? o.reduce(function(g, B) { + return g + B; }) : o; } else throw new RangeError("Chance: A type of die roll must be included"); - }, i.prototype.guid = function(e) { + }, r.prototype.guid = function(e) { e = c(e, { version: 5 }); var a = "abcdef1234567890", n = "ab89", o = this.string({ pool: a, length: 8 }) + "-" + this.string({ pool: a, length: 4 }) + "-" + // The Version e.version + this.string({ pool: a, length: 3 }) + "-" + // The Variant this.string({ pool: n, length: 1 }) + this.string({ pool: a, length: 3 }) + "-" + this.string({ pool: a, length: 12 }); return o; - }, i.prototype.hash = function(e) { + }, r.prototype.hash = function(e) { e = c(e, { length: 40, casing: "lower" }); - var a = e.casing === "upper" ? f.toUpperCase() : f; + var a = e.casing === "upper" ? b.toUpperCase() : b; return this.string({ pool: a, length: e.length }); - }, i.prototype.luhn_check = function(e) { + }, r.prototype.luhn_check = function(e) { var a = e.toString(), n = +a.substring(a.length - 1); return n === this.luhn_calculate(+a.substring(0, a.length - 1)); - }, i.prototype.luhn_calculate = function(e) { + }, r.prototype.luhn_calculate = function(e) { for (var a = e.toString().split("").reverse(), n = 0, o, u = 0, g = a.length; g > u; ++u) o = +a[u], u % 2 === 0 && (o *= 2, o > 9 && (o -= 9)), n += o; return n * 9 % 10; - }, i.prototype.md5 = function(e) { + }, r.prototype.md5 = function(e) { var a = { str: "", key: null, raw: !1 }; if (!e) a.str = this.string(), e = {}; @@ -1186,7 +1186,7 @@ var ie = { exports: {} }; if (a = c(e, a), !a.str) throw new Error("A parameter is required to return an md5 hash."); return this.bimd5.md5(a.str, a.key, a.raw); - }, i.prototype.file = function(e) { + }, r.prototype.file = function(e) { var a = e || {}, n = "fileExtension", o = Object.keys(this.get("fileExtension")), u, g; if (u = this.word({ length: a.length }), a.extension) return g = a.extension, u + "." + g; @@ -1194,8 +1194,8 @@ var ie = { exports: {} }; if (Array.isArray(a.extensions)) return g = this.pickone(a.extensions), u + "." + g; if (a.extensions.constructor === Object) { - var T = a.extensions, h = Object.keys(T); - return g = this.pickone(T[this.pickone(h)]), u + "." + g; + var B = a.extensions, h = Object.keys(B); + return g = this.pickone(B[this.pickone(h)]), u + "." + g; } throw new Error("Chance: Extensions must be an Array or Object"); } @@ -1206,7 +1206,7 @@ var ie = { exports: {} }; throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'"); } return g = this.pickone(this.get(n)[this.pickone(o)]), u + "." + g; - }, i.prototype.fileWithContent = function(e) { + }, r.prototype.fileWithContent = function(e) { var a = e || {}, n = "fileName" in a ? a.fileName : this.file().split(".")[0]; if (n += "." + ("fileExtension" in a ? a.fileExtension : this.file().split(".")[1]), typeof a.fileSize != "number") throw new Error("File size must be an integer"); @@ -1216,7 +1216,7 @@ var ie = { exports: {} }; }; return o; }; - var I = { + var x = { firstNames: { male: { en: ["James", "John", "Robert", "Michael", "William", "David", "Richard", "Joseph", "Charles", "Thomas", "Christopher", "Daniel", "Matthew", "George", "Donald", "Anthony", "Paul", "Mark", "Edward", "Steven", "Kenneth", "Andrew", "Brian", "Joshua", "Kevin", "Ronald", "Timothy", "Jason", "Jeffrey", "Frank", "Gary", "Ryan", "Nicholas", "Eric", "Stephen", "Jacob", "Larry", "Jonathan", "Scott", "Raymond", "Justin", "Brandon", "Gregory", "Samuel", "Benjamin", "Patrick", "Jack", "Henry", "Walter", "Dennis", "Jerry", "Alexander", "Peter", "Tyler", "Douglas", "Harold", "Aaron", "Jose", "Adam", "Arthur", "Zachary", "Carl", "Nathan", "Albert", "Kyle", "Lawrence", "Joe", "Willie", "Gerald", "Roger", "Keith", "Jeremy", "Terry", "Harry", "Ralph", "Sean", "Jesse", "Roy", "Louis", "Billy", "Austin", "Bruce", "Eugene", "Christian", "Bryan", "Wayne", "Russell", "Howard", "Fred", "Ethan", "Jordan", "Philip", "Alan", "Juan", "Randy", "Vincent", "Bobby", "Dylan", "Johnny", "Phillip", "Victor", "Clarence", "Ernest", "Martin", "Craig", "Stanley", "Shawn", "Travis", "Bradley", "Leonard", "Earl", "Gabriel", "Jimmy", "Francis", "Todd", "Noah", "Danny", "Dale", "Cody", "Carlos", "Allen", "Frederick", "Logan", "Curtis", "Alex", "Joel", "Luis", "Norman", "Marvin", "Glenn", "Tony", "Nathaniel", "Rodney", "Melvin", "Alfred", "Steve", "Cameron", "Chad", "Edwin", "Caleb", "Evan", "Antonio", "Lee", "Herbert", "Jeffery", "Isaac", "Derek", "Ricky", "Marcus", "Theodore", "Elijah", "Luke", "Jesus", "Eddie", "Troy", "Mike", "Dustin", "Ray", "Adrian", "Bernard", "Leroy", "Angel", "Randall", "Wesley", "Ian", "Jared", "Mason", "Hunter", "Calvin", "Oscar", "Clifford", "Jay", "Shane", "Ronnie", "Barry", "Lucas", "Corey", "Manuel", "Leo", "Tommy", "Warren", "Jackson", "Isaiah", "Connor", "Don", "Dean", "Jon", "Julian", "Miguel", "Bill", "Lloyd", "Charlie", "Mitchell", "Leon", "Jerome", "Darrell", "Jeremiah", "Alvin", "Brett", "Seth", "Floyd", "Jim", "Blake", "Micheal", "Gordon", "Trevor", "Lewis", "Erik", "Edgar", "Vernon", "Devin", "Gavin", "Jayden", "Chris", "Clyde", "Tom", "Derrick", "Mario", "Brent", "Marc", "Herman", "Chase", "Dominic", "Ricardo", "Franklin", "Maurice", "Max", "Aiden", "Owen", "Lester", "Gilbert", "Elmer", "Gene", "Francisco", "Glen", "Cory", "Garrett", "Clayton", "Sam", "Jorge", "Chester", "Alejandro", "Jeff", "Harvey", "Milton", "Cole", "Ivan", "Andre", "Duane", "Landon"], @@ -7027,31 +7027,31 @@ var ie = { exports: {} }; "sadness", "fear" ] - }, D = Object.prototype.hasOwnProperty, F = Object.keys || function(e) { + }, N = Object.prototype.hasOwnProperty, w = Object.keys || function(e) { var a = []; for (var n in e) - D.call(e, n) && a.push(n); + N.call(e, n) && a.push(n); return a; }; - function w(e, a) { - for (var n = F(e), o, u = 0, g = n.length; u < g; u++) + function D(e, a) { + for (var n = w(e), o, u = 0, g = n.length; u < g; u++) o = n[u], a[o] = e[o] || a[o]; } - function G(e, a) { + function R(e, a) { for (var n = 0, o = e.length; n < o; n++) a[n] = e[n]; } - function N(e, a) { + function _(e, a) { var n = Array.isArray(e), o = a || (n ? new Array(e.length) : {}); - return n ? G(e, o) : w(e, o), o; + return n ? R(e, o) : D(e, o), o; } - i.prototype.get = function(e) { - return N(I[e]); - }, i.prototype.mac_address = function(e) { + r.prototype.get = function(e) { + return _(x[e]); + }, r.prototype.mac_address = function(e) { e = c(e), e.separator || (e.separator = e.networkVersion ? "." : ":"); var a = "ABCDEF1234567890", n = ""; return e.networkVersion ? n = this.n(this.string, 3, { pool: a, length: 4 }).join(e.separator) : n = this.n(this.string, 6, { pool: a, length: 2 }).join(e.separator), n; - }, i.prototype.normal = function(e) { + }, r.prototype.normal = function(e) { if (e = c(e, { mean: 0, dev: 1, pool: [] }), t( e.pool.constructor !== Array, "Chance: The pool option must be a valid array." @@ -7063,12 +7063,12 @@ var ie = { exports: {} }; "Chance: Standard deviation (dev) must be a number" ), e.pool.length > 0) return this.normal_pool(e); - var a, n, o, u, g = e.mean, T = e.dev; + var a, n, o, u, g = e.mean, B = e.dev; do n = this.random() * 2 - 1, o = this.random() * 2 - 1, a = n * n + o * o; while (a >= 1); - return u = n * Math.sqrt(-2 * Math.log(a) / a), T * u + g; - }, i.prototype.normal_pool = function(e) { + return u = n * Math.sqrt(-2 * Math.log(a) / a), B * u + g; + }, r.prototype.normal_pool = function(e) { var a = 0; do { var n = Math.round(this.normal({ mean: e.mean, dev: e.dev })); @@ -7077,7 +7077,7 @@ var ie = { exports: {} }; a++; } while (a < 100); throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust."); - }, i.prototype.radio = function(e) { + }, r.prototype.radio = function(e) { e = c(e, { side: "?" }); var a = ""; switch (e.side.toLowerCase()) { @@ -7094,21 +7094,21 @@ var ie = { exports: {} }; break; } return a + this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }); - }, i.prototype.set = function(e, a) { - typeof e == "string" ? I[e] = a : I = N(e, I); - }, i.prototype.tv = function(e) { + }, r.prototype.set = function(e, a) { + typeof e == "string" ? x[e] = a : x = _(e, x); + }, r.prototype.tv = function(e) { return this.radio(e); - }, i.prototype.cnpj = function() { + }, r.prototype.cnpj = function() { var e = this.n(this.natural, 8, { max: 9 }), a = 2 + e[7] * 6 + e[6] * 7 + e[5] * 8 + e[4] * 9 + e[3] * 2 + e[2] * 3 + e[1] * 4 + e[0] * 5; a = 11 - a % 11, a >= 10 && (a = 0); var n = a * 2 + 3 + e[7] * 7 + e[6] * 8 + e[5] * 9 + e[4] * 2 + e[3] * 3 + e[2] * 4 + e[1] * 5 + e[0] * 6; return n = 11 - n % 11, n >= 10 && (n = 0), "" + e[0] + e[1] + "." + e[2] + e[3] + e[4] + "." + e[5] + e[6] + e[7] + "/0001-" + a + n; - }, i.prototype.emotion = function() { + }, r.prototype.emotion = function() { return this.pick(this.get("emotions")); - }, i.prototype.mersenne_twister = function(e) { + }, r.prototype.mersenne_twister = function(e) { return new O(e); - }, i.prototype.blueimp_md5 = function() { - return new R(); + }, r.prototype.blueimp_md5 = function() { + return new G(); }; var O = function(e) { e === void 0 && (e = Math.floor(Math.random() * Math.pow(10, 13))), this.N = 624, this.M = 397, this.MATRIX_A = 2567483615, this.UPPER_MASK = 2147483648, this.LOWER_MASK = 2147483647, this.mt = new Array(this.N), this.mti = this.N + 1, this.init_genrand(e); @@ -7146,135 +7146,135 @@ var ie = { exports: {} }; var e = this.genrand_int32() >>> 5, a = this.genrand_int32() >>> 6; return (e * 67108864 + a) * (1 / 9007199254740992); }; - var R = function() { + var G = function() { }; - R.prototype.VERSION = "1.0.1", R.prototype.safe_add = function(a, n) { + G.prototype.VERSION = "1.0.1", G.prototype.safe_add = function(a, n) { var o = (a & 65535) + (n & 65535), u = (a >> 16) + (n >> 16) + (o >> 16); return u << 16 | o & 65535; - }, R.prototype.bit_roll = function(e, a) { + }, G.prototype.bit_roll = function(e, a) { return e << a | e >>> 32 - a; - }, R.prototype.md5_cmn = function(e, a, n, o, u, g) { + }, G.prototype.md5_cmn = function(e, a, n, o, u, g) { return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a, e), this.safe_add(o, g)), u), n); - }, R.prototype.md5_ff = function(e, a, n, o, u, g, T) { - return this.md5_cmn(a & n | ~a & o, e, a, u, g, T); - }, R.prototype.md5_gg = function(e, a, n, o, u, g, T) { - return this.md5_cmn(a & o | n & ~o, e, a, u, g, T); - }, R.prototype.md5_hh = function(e, a, n, o, u, g, T) { - return this.md5_cmn(a ^ n ^ o, e, a, u, g, T); - }, R.prototype.md5_ii = function(e, a, n, o, u, g, T) { - return this.md5_cmn(n ^ (a | ~o), e, a, u, g, T); - }, R.prototype.binl_md5 = function(e, a) { + }, G.prototype.md5_ff = function(e, a, n, o, u, g, B) { + return this.md5_cmn(a & n | ~a & o, e, a, u, g, B); + }, G.prototype.md5_gg = function(e, a, n, o, u, g, B) { + return this.md5_cmn(a & o | n & ~o, e, a, u, g, B); + }, G.prototype.md5_hh = function(e, a, n, o, u, g, B) { + return this.md5_cmn(a ^ n ^ o, e, a, u, g, B); + }, G.prototype.md5_ii = function(e, a, n, o, u, g, B) { + return this.md5_cmn(n ^ (a | ~o), e, a, u, g, B); + }, G.prototype.binl_md5 = function(e, a) { e[a >> 5] |= 128 << a % 32, e[(a + 64 >>> 9 << 4) + 14] = a; - var n, o, u, g, T, h = 1732584193, v = -271733879, C = -1732584194, A = 271733878; + var n, o, u, g, B, h = 1732584193, v = -271733879, C = -1732584194, A = 271733878; for (n = 0; n < e.length; n += 16) - o = h, u = v, g = C, T = A, h = this.md5_ff(h, v, C, A, e[n], 7, -680876936), A = this.md5_ff(A, h, v, C, e[n + 1], 12, -389564586), C = this.md5_ff(C, A, h, v, e[n + 2], 17, 606105819), v = this.md5_ff(v, C, A, h, e[n + 3], 22, -1044525330), h = this.md5_ff(h, v, C, A, e[n + 4], 7, -176418897), A = this.md5_ff(A, h, v, C, e[n + 5], 12, 1200080426), C = this.md5_ff(C, A, h, v, e[n + 6], 17, -1473231341), v = this.md5_ff(v, C, A, h, e[n + 7], 22, -45705983), h = this.md5_ff(h, v, C, A, e[n + 8], 7, 1770035416), A = this.md5_ff(A, h, v, C, e[n + 9], 12, -1958414417), C = this.md5_ff(C, A, h, v, e[n + 10], 17, -42063), v = this.md5_ff(v, C, A, h, e[n + 11], 22, -1990404162), h = this.md5_ff(h, v, C, A, e[n + 12], 7, 1804603682), A = this.md5_ff(A, h, v, C, e[n + 13], 12, -40341101), C = this.md5_ff(C, A, h, v, e[n + 14], 17, -1502002290), v = this.md5_ff(v, C, A, h, e[n + 15], 22, 1236535329), h = this.md5_gg(h, v, C, A, e[n + 1], 5, -165796510), A = this.md5_gg(A, h, v, C, e[n + 6], 9, -1069501632), C = this.md5_gg(C, A, h, v, e[n + 11], 14, 643717713), v = this.md5_gg(v, C, A, h, e[n], 20, -373897302), h = this.md5_gg(h, v, C, A, e[n + 5], 5, -701558691), A = this.md5_gg(A, h, v, C, e[n + 10], 9, 38016083), C = this.md5_gg(C, A, h, v, e[n + 15], 14, -660478335), v = this.md5_gg(v, C, A, h, e[n + 4], 20, -405537848), h = this.md5_gg(h, v, C, A, e[n + 9], 5, 568446438), A = this.md5_gg(A, h, v, C, e[n + 14], 9, -1019803690), C = this.md5_gg(C, A, h, v, e[n + 3], 14, -187363961), v = this.md5_gg(v, C, A, h, e[n + 8], 20, 1163531501), h = this.md5_gg(h, v, C, A, e[n + 13], 5, -1444681467), A = this.md5_gg(A, h, v, C, e[n + 2], 9, -51403784), C = this.md5_gg(C, A, h, v, e[n + 7], 14, 1735328473), v = this.md5_gg(v, C, A, h, e[n + 12], 20, -1926607734), h = this.md5_hh(h, v, C, A, e[n + 5], 4, -378558), A = this.md5_hh(A, h, v, C, e[n + 8], 11, -2022574463), C = this.md5_hh(C, A, h, v, e[n + 11], 16, 1839030562), v = this.md5_hh(v, C, A, h, e[n + 14], 23, -35309556), h = this.md5_hh(h, v, C, A, e[n + 1], 4, -1530992060), A = this.md5_hh(A, h, v, C, e[n + 4], 11, 1272893353), C = this.md5_hh(C, A, h, v, e[n + 7], 16, -155497632), v = this.md5_hh(v, C, A, h, e[n + 10], 23, -1094730640), h = this.md5_hh(h, v, C, A, e[n + 13], 4, 681279174), A = this.md5_hh(A, h, v, C, e[n], 11, -358537222), C = this.md5_hh(C, A, h, v, e[n + 3], 16, -722521979), v = this.md5_hh(v, C, A, h, e[n + 6], 23, 76029189), h = this.md5_hh(h, v, C, A, e[n + 9], 4, -640364487), A = this.md5_hh(A, h, v, C, e[n + 12], 11, -421815835), C = this.md5_hh(C, A, h, v, e[n + 15], 16, 530742520), v = this.md5_hh(v, C, A, h, e[n + 2], 23, -995338651), h = this.md5_ii(h, v, C, A, e[n], 6, -198630844), A = this.md5_ii(A, h, v, C, e[n + 7], 10, 1126891415), C = this.md5_ii(C, A, h, v, e[n + 14], 15, -1416354905), v = this.md5_ii(v, C, A, h, e[n + 5], 21, -57434055), h = this.md5_ii(h, v, C, A, e[n + 12], 6, 1700485571), A = this.md5_ii(A, h, v, C, e[n + 3], 10, -1894986606), C = this.md5_ii(C, A, h, v, e[n + 10], 15, -1051523), v = this.md5_ii(v, C, A, h, e[n + 1], 21, -2054922799), h = this.md5_ii(h, v, C, A, e[n + 8], 6, 1873313359), A = this.md5_ii(A, h, v, C, e[n + 15], 10, -30611744), C = this.md5_ii(C, A, h, v, e[n + 6], 15, -1560198380), v = this.md5_ii(v, C, A, h, e[n + 13], 21, 1309151649), h = this.md5_ii(h, v, C, A, e[n + 4], 6, -145523070), A = this.md5_ii(A, h, v, C, e[n + 11], 10, -1120210379), C = this.md5_ii(C, A, h, v, e[n + 2], 15, 718787259), v = this.md5_ii(v, C, A, h, e[n + 9], 21, -343485551), h = this.safe_add(h, o), v = this.safe_add(v, u), C = this.safe_add(C, g), A = this.safe_add(A, T); + o = h, u = v, g = C, B = A, h = this.md5_ff(h, v, C, A, e[n], 7, -680876936), A = this.md5_ff(A, h, v, C, e[n + 1], 12, -389564586), C = this.md5_ff(C, A, h, v, e[n + 2], 17, 606105819), v = this.md5_ff(v, C, A, h, e[n + 3], 22, -1044525330), h = this.md5_ff(h, v, C, A, e[n + 4], 7, -176418897), A = this.md5_ff(A, h, v, C, e[n + 5], 12, 1200080426), C = this.md5_ff(C, A, h, v, e[n + 6], 17, -1473231341), v = this.md5_ff(v, C, A, h, e[n + 7], 22, -45705983), h = this.md5_ff(h, v, C, A, e[n + 8], 7, 1770035416), A = this.md5_ff(A, h, v, C, e[n + 9], 12, -1958414417), C = this.md5_ff(C, A, h, v, e[n + 10], 17, -42063), v = this.md5_ff(v, C, A, h, e[n + 11], 22, -1990404162), h = this.md5_ff(h, v, C, A, e[n + 12], 7, 1804603682), A = this.md5_ff(A, h, v, C, e[n + 13], 12, -40341101), C = this.md5_ff(C, A, h, v, e[n + 14], 17, -1502002290), v = this.md5_ff(v, C, A, h, e[n + 15], 22, 1236535329), h = this.md5_gg(h, v, C, A, e[n + 1], 5, -165796510), A = this.md5_gg(A, h, v, C, e[n + 6], 9, -1069501632), C = this.md5_gg(C, A, h, v, e[n + 11], 14, 643717713), v = this.md5_gg(v, C, A, h, e[n], 20, -373897302), h = this.md5_gg(h, v, C, A, e[n + 5], 5, -701558691), A = this.md5_gg(A, h, v, C, e[n + 10], 9, 38016083), C = this.md5_gg(C, A, h, v, e[n + 15], 14, -660478335), v = this.md5_gg(v, C, A, h, e[n + 4], 20, -405537848), h = this.md5_gg(h, v, C, A, e[n + 9], 5, 568446438), A = this.md5_gg(A, h, v, C, e[n + 14], 9, -1019803690), C = this.md5_gg(C, A, h, v, e[n + 3], 14, -187363961), v = this.md5_gg(v, C, A, h, e[n + 8], 20, 1163531501), h = this.md5_gg(h, v, C, A, e[n + 13], 5, -1444681467), A = this.md5_gg(A, h, v, C, e[n + 2], 9, -51403784), C = this.md5_gg(C, A, h, v, e[n + 7], 14, 1735328473), v = this.md5_gg(v, C, A, h, e[n + 12], 20, -1926607734), h = this.md5_hh(h, v, C, A, e[n + 5], 4, -378558), A = this.md5_hh(A, h, v, C, e[n + 8], 11, -2022574463), C = this.md5_hh(C, A, h, v, e[n + 11], 16, 1839030562), v = this.md5_hh(v, C, A, h, e[n + 14], 23, -35309556), h = this.md5_hh(h, v, C, A, e[n + 1], 4, -1530992060), A = this.md5_hh(A, h, v, C, e[n + 4], 11, 1272893353), C = this.md5_hh(C, A, h, v, e[n + 7], 16, -155497632), v = this.md5_hh(v, C, A, h, e[n + 10], 23, -1094730640), h = this.md5_hh(h, v, C, A, e[n + 13], 4, 681279174), A = this.md5_hh(A, h, v, C, e[n], 11, -358537222), C = this.md5_hh(C, A, h, v, e[n + 3], 16, -722521979), v = this.md5_hh(v, C, A, h, e[n + 6], 23, 76029189), h = this.md5_hh(h, v, C, A, e[n + 9], 4, -640364487), A = this.md5_hh(A, h, v, C, e[n + 12], 11, -421815835), C = this.md5_hh(C, A, h, v, e[n + 15], 16, 530742520), v = this.md5_hh(v, C, A, h, e[n + 2], 23, -995338651), h = this.md5_ii(h, v, C, A, e[n], 6, -198630844), A = this.md5_ii(A, h, v, C, e[n + 7], 10, 1126891415), C = this.md5_ii(C, A, h, v, e[n + 14], 15, -1416354905), v = this.md5_ii(v, C, A, h, e[n + 5], 21, -57434055), h = this.md5_ii(h, v, C, A, e[n + 12], 6, 1700485571), A = this.md5_ii(A, h, v, C, e[n + 3], 10, -1894986606), C = this.md5_ii(C, A, h, v, e[n + 10], 15, -1051523), v = this.md5_ii(v, C, A, h, e[n + 1], 21, -2054922799), h = this.md5_ii(h, v, C, A, e[n + 8], 6, 1873313359), A = this.md5_ii(A, h, v, C, e[n + 15], 10, -30611744), C = this.md5_ii(C, A, h, v, e[n + 6], 15, -1560198380), v = this.md5_ii(v, C, A, h, e[n + 13], 21, 1309151649), h = this.md5_ii(h, v, C, A, e[n + 4], 6, -145523070), A = this.md5_ii(A, h, v, C, e[n + 11], 10, -1120210379), C = this.md5_ii(C, A, h, v, e[n + 2], 15, 718787259), v = this.md5_ii(v, C, A, h, e[n + 9], 21, -343485551), h = this.safe_add(h, o), v = this.safe_add(v, u), C = this.safe_add(C, g), A = this.safe_add(A, B); return [h, v, C, A]; - }, R.prototype.binl2rstr = function(e) { + }, G.prototype.binl2rstr = function(e) { var a, n = ""; for (a = 0; a < e.length * 32; a += 8) n += String.fromCharCode(e[a >> 5] >>> a % 32 & 255); return n; - }, R.prototype.rstr2binl = function(e) { + }, G.prototype.rstr2binl = function(e) { var a, n = []; for (n[(e.length >> 2) - 1] = void 0, a = 0; a < n.length; a += 1) n[a] = 0; for (a = 0; a < e.length * 8; a += 8) n[a >> 5] |= (e.charCodeAt(a / 8) & 255) << a % 32; return n; - }, R.prototype.rstr_md5 = function(e) { + }, G.prototype.rstr_md5 = function(e) { return this.binl2rstr(this.binl_md5(this.rstr2binl(e), e.length * 8)); - }, R.prototype.rstr_hmac_md5 = function(e, a) { - var n, o = this.rstr2binl(e), u = [], g = [], T; + }, G.prototype.rstr_hmac_md5 = function(e, a) { + var n, o = this.rstr2binl(e), u = [], g = [], B; for (u[15] = g[15] = void 0, o.length > 16 && (o = this.binl_md5(o, e.length * 8)), n = 0; n < 16; n += 1) u[n] = o[n] ^ 909522486, g[n] = o[n] ^ 1549556828; - return T = this.binl_md5(u.concat(this.rstr2binl(a)), 512 + a.length * 8), this.binl2rstr(this.binl_md5(g.concat(T), 512 + 128)); - }, R.prototype.rstr2hex = function(e) { + return B = this.binl_md5(u.concat(this.rstr2binl(a)), 512 + a.length * 8), this.binl2rstr(this.binl_md5(g.concat(B), 512 + 128)); + }, G.prototype.rstr2hex = function(e) { var a = "0123456789abcdef", n = "", o, u; for (u = 0; u < e.length; u += 1) o = e.charCodeAt(u), n += a.charAt(o >>> 4 & 15) + a.charAt(o & 15); return n; - }, R.prototype.str2rstr_utf8 = function(e) { + }, G.prototype.str2rstr_utf8 = function(e) { return unescape(encodeURIComponent(e)); - }, R.prototype.raw_md5 = function(e) { + }, G.prototype.raw_md5 = function(e) { return this.rstr_md5(this.str2rstr_utf8(e)); - }, R.prototype.hex_md5 = function(e) { + }, G.prototype.hex_md5 = function(e) { return this.rstr2hex(this.raw_md5(e)); - }, R.prototype.raw_hmac_md5 = function(e, a) { + }, G.prototype.raw_hmac_md5 = function(e, a) { return this.rstr_hmac_md5(this.str2rstr_utf8(e), this.str2rstr_utf8(a)); - }, R.prototype.hex_hmac_md5 = function(e, a) { + }, G.prototype.hex_hmac_md5 = function(e, a) { return this.rstr2hex(this.raw_hmac_md5(e, a)); - }, R.prototype.md5 = function(e, a, n) { + }, G.prototype.md5 = function(e, a, n) { return a ? n ? this.raw_hmac_md5(a, e) : this.hex_hmac_md5(a, e) : n ? this.raw_md5(e) : this.hex_md5(e); - }, m.exports && (b = m.exports = i), b.Chance = i, typeof importScripts < "u" && (chance = new i(), self.Chance = i), typeof window == "object" && typeof window.document == "object" && (window.Chance = i, window.chance = new i()); + }, m.exports && (f = m.exports = r), f.Chance = r, typeof importScripts < "u" && (chance = new r(), self.Chance = r), typeof window == "object" && typeof window.document == "object" && (window.Chance = r, window.chance = new r()); })(); })(ie, ie.exports); var be = ie.exports; const pe = /* @__PURE__ */ fe(be); var Y = new pe(), le = function() { - function m(b, L, x, M) { - let k = x.toUpperCase(), p = b.toUpperCase(), f = L.toUpperCase(); - if (M != null && 0 < M.length) { - let r = 0, t = M.length; + function m(f, E, L, I) { + let k = L.toUpperCase(), p = f.toUpperCase(), b = E.toUpperCase(); + if (I != null && 0 < I.length) { + let i = 0, t = I.length; var y = "'"; (k.startsWith("INTEGER") || k.startsWith("NUMBER") || k.startsWith("DATE")) && (y = ""); - let s = M[Math.floor(Math.random() * (t - r)) + r]; + let s = I[Math.floor(Math.random() * (t - i)) + i]; return s.toLowerCase && s.toLowerCase() == "null" && (y = ""), y + s + y; } - if (f == "NAME" && 0 <= p.indexOf("DEPARTMENT")) { - var S = ["Sales", "Finance", "Delivery", "Manufacturing"]; - let r = 0, t = S.length; - return "'" + S[Math.floor(Math.random() * (t - r)) + r] + "'"; + if (b == "NAME" && 0 <= p.indexOf("DEPARTMENT")) { + var M = ["Sales", "Finance", "Delivery", "Manufacturing"]; + let i = 0, t = M.length; + return "'" + M[Math.floor(Math.random() * (t - i)) + i] + "'"; } - if (Y[f.toLowerCase()] != null && f.indexOf("NAME") < 0) - return "'" + Y[f.toLowerCase()]() + "'"; - if (f == "FIRST_NAME") + if (Y[b.toLowerCase()] != null && b.indexOf("NAME") < 0) + return "'" + Y[b.toLowerCase()]() + "'"; + if (b == "FIRST_NAME") return "'" + Y.first() + "'"; - if (f == "LAST_NAME") + if (b == "LAST_NAME") return "'" + Y.last() + "'"; - if (0 <= f.indexOf("NAME")) + if (0 <= b.indexOf("NAME")) return "'" + Y.name() + "'"; - if (0 < f.indexOf("ADDRESS")) + if (0 < b.indexOf("ADDRESS")) return "'" + Y.address() + "'"; - if (f == "LOCATION") + if (b == "LOCATION") return "'" + Y.city() + "'"; - if (f == "DESCRIPTION") + if (b == "DESCRIPTION") return "'" + Y.paragraph({ sentences: 2 }) + "'"; - if (f == "JOB") { - var i = ["Engineer", "Consultant", "Architect", "Manager", "Analyst", "Specialist", "Evangelist", "Salesman"]; - let r = 0, t = i.length; - return "'" + i[Math.floor(Math.random() * (t - r)) + r] + "'"; + if (b == "JOB") { + var r = ["Engineer", "Consultant", "Architect", "Manager", "Analyst", "Specialist", "Evangelist", "Salesman"]; + let i = 0, t = r.length; + return "'" + r[Math.floor(Math.random() * (t - i)) + i] + "'"; } if (k.startsWith("INTEGER") || k.startsWith("NUMBER")) { - let r = 0, t = 100; - return Math.floor(Math.random() * (t - r)) + r; + let i = 0, t = 100; + return Math.floor(Math.random() * (t - i)) + i; } if (k.startsWith("DATE") || k.startsWith("TIMESTAMP")) { - let r = 0, t = 100; - var c = Math.floor(Math.random() * (t - r)) + r; + let i = 0, t = 100; + var c = Math.floor(Math.random() * (t - i)) + i; return "sysdate-" + c; } return "'N/A'"; } return m; }(), $ = function() { - function m(b, L) { - for (var x = [], M = "", k = 0; k < b.length; k++) { - for (var p = b.charAt(k), f = x.length, y = 0; y < L.length; y++) { - var S = L.charAt(y); - if (p == S) { - 0 < M.length && x.push(M), x.push(p), M = ""; + function m(f, E) { + for (var L = [], I = "", k = 0; k < f.length; k++) { + for (var p = f.charAt(k), b = L.length, y = 0; y < E.length; y++) { + var M = E.charAt(y); + if (p == M) { + 0 < I.length && L.push(I), L.push(p), I = ""; continue; } } - f == x.length && (M = M + p); + b == L.length && (I = I + p); } - return 0 < M.length && x.push(M), x; + return 0 < I.length && L.push(I), L; } return m; -}(), Q = function() { - function m(M, k, p, f, y, S) { - this.type = f, this.value = M, this.begin = k, this.end = p, this.line = y, this.col = S, this.toString = function() { - return "{type:" + f + ",value:" + M + "}"; +}(), Z = function() { + function m(I, k, p, b, y, M) { + this.type = b, this.value = I, this.begin = k, this.end = p, this.line = y, this.col = M, this.toString = function() { + return "{type:" + b + ",value:" + I + "}"; }, this.isStandardLiteral = function() { if (this.value.length < 2 || !(this.value.charAt(0) == "'" || this.value.charAt(0) == "n" || this.value.charAt(0) == "N")) return !1; @@ -7304,24 +7304,24 @@ var Y = new pe(), le = function() { c = c.substring(1, c.length - 1); else return !1; - return i(c.charAt(0)) == c.charAt(c.length - 1); + return r(c.charAt(0)) == c.charAt(c.length - 1); }; - function i(c) { + function r(c) { return c == "<" ? ">" : c == "[" ? "]" : c == "{" ? "}" : c == "(" ? ")" : c; } } - function b(M, k, p) { - for (var f = [], y = `(){}[]^-|!*+.><='",;:%@?/\\#~` + p, S = ` -\r `, i = $( - M, + function f(I, k, p) { + for (var b = [], y = `(){}[]^-|!*+.><='",;:%@?/\\#~` + p, M = ` +\r `, r = $( + I, //".*-+/|><=()\'\", \n\r\t" - y + S - ), c = 0, r = 0, t = 0, s = 0; s < i.length; s++) { - var l = i[s], d = null; - if (f.length > 0 && (d = f[f.length - 1]), l == ` -` ? (r++, t = 0) : s > 0 && i[s - 1] !== ` -` ? t = t + i[s - 1].length : t = 0, c += l.length, d != null && d.type == "comment" && (d.value.lastIndexOf("*/") != d.value.length - 2 || d.value == "/*/")) { - l == "*" || l == "/" ? d.value = d.value + l : d.value = "/* ... ", d.end = c, d != null && d.type == "comment" && d.value.lastIndexOf("*/") == d.value.length - 2 && d.value != "/*/" && (d.value = M.substring(d.begin, d.end)); + y + M + ), c = 0, i = 0, t = 0, s = 0; s < r.length; s++) { + var l = r[s], d = null; + if (b.length > 0 && (d = b[b.length - 1]), l == ` +` ? (i++, t = 0) : s > 0 && r[s - 1] !== ` +` ? t = t + r[s - 1].length : t = 0, c += l.length, d != null && d.type == "comment" && (d.value.lastIndexOf("*/") != d.value.length - 2 || d.value == "/*/")) { + l == "*" || l == "/" ? d.value = d.value + l : d.value = "/* ... ", d.end = c, d != null && d.type == "comment" && d.value.lastIndexOf("*/") == d.value.length - 2 && d.value != "/*/" && (d.value = I.substring(d.begin, d.end)); continue; } if (d != null && (d.type == "line-comment" || d.type == "dbtools-command") && l != ` @@ -7336,12 +7336,12 @@ var Y = new pe(), le = function() { } if (!(d != null && d.type == "dquoted-string" && l != '"' && !(d.value.endsWith('"') && d.value.length > 1))) { if (d != null && d.type == "dquoted-string" && l == '"') { - d.end = c, d.value = M.substring(d.begin, d.end); + d.end = c, d.value = I.substring(d.begin, d.end); continue; } if (!(d != null && d.type == "bquoted-string" && l != "`" && !(d.value.endsWith("`") && d.value.length > 1))) { if (d != null && d.type == "bquoted-string" && l == "`") { - d.end = c, d.value = M.substring(d.begin, d.end); + d.end = c, d.value = I.substring(d.begin, d.end); continue; } if (l == "*" && d != null && d.value == "/") { @@ -7354,12 +7354,12 @@ var Y = new pe(), le = function() { } if ((l.toUpperCase() == "REM" || l.toUpperCase() == "REMA" || l.toUpperCase() == "REMAR" || l.toUpperCase() == "REMARK" || l.toUpperCase() == "PRO" || l.toUpperCase() == "PROM" || l.toUpperCase() == "PROMP" || l.toUpperCase() == "PROMPT") && (d == null || d.value == ` ` || d.value == "\r")) { - f.push(new m(l, c - l.length, -9, "line-comment", r, t)); + b.push(new m(l, c - l.length, -9, "line-comment", i, t)); continue; } if (l.toUpperCase() == "SODA" && (d == null || d.value == ` ` || d.value == "\r")) { - f.push(new m(l, c - l.length, -9, "dbtools-command", r, t)); + b.push(new m(l, c - l.length, -9, "dbtools-command", i, t)); continue; } if (d != null && d.type == "identifier" && d.end == -11 && d.value.indexOf("@") == 0 && !(l == ` @@ -7369,73 +7369,73 @@ var Y = new pe(), le = function() { } if (d != null && d.type == "identifier" && d.end == -11 && d.value.indexOf("@") == 0 && (l == ` ` || l == "\r")) { - d.end = c - 1, f.push(new m(l, c - 1, c, "ws", r, t)); + d.end = c - 1, b.push(new m(l, c - 1, c, "ws", i, t)); continue; } if (k && l == "'") { - d != null && (d.value.toUpperCase() == "Q" || d.value.toUpperCase() == "N" || d.value.toUpperCase() == "U" || d.value.toUpperCase() == "NQ") ? (d.value += l, d.type = "quoted-string") : f.push(new m(l, c - 1, -10, "quoted-string", r, t)); + d != null && (d.value.toUpperCase() == "Q" || d.value.toUpperCase() == "N" || d.value.toUpperCase() == "U" || d.value.toUpperCase() == "NQ") ? (d.value += l, d.type = "quoted-string") : b.push(new m(l, c - 1, -10, "quoted-string", i, t)); continue; } if (k && l == '"') { - f.push(new m(l, c - 1, -11, "dquoted-string", r, t)); + b.push(new m(l, c - 1, -11, "dquoted-string", i, t)); continue; } if (l == "`" && 0 <= y.indexOf("`")) { - f.push(new m(l, c - 1, -11, "bquoted-string", r, t)); + b.push(new m(l, c - 1, -11, "bquoted-string", i, t)); continue; } if (l.length == 1 && 0 <= y.indexOf(l)) { - f.push(new m(l, c - 1, c, "operation", r, t)); + b.push(new m(l, c - 1, c, "operation", i, t)); continue; } - if (l.length == 1 && 0 <= S.indexOf(l)) { - f.push(new m(l, c - 1, c, "ws", r, t)); + if (l.length == 1 && 0 <= M.indexOf(l)) { + b.push(new m(l, c - 1, c, "ws", i, t)); continue; } if ("0" <= l.charAt(0) && l.charAt(0) <= "9") { - L(l, f, c - l.length, r) || (l.charAt(l.length - 1) == "K" || l.charAt(l.length - 1) == "k" || l.charAt(l.length - 1) == "M" || l.charAt(l.length - 1) == "m" || l.charAt(l.length - 1) == "G" || l.charAt(l.length - 1) == "g" || l.charAt(l.length - 1) == "T" || l.charAt(l.length - 1) == "t" || l.charAt(l.length - 1) == "P" || l.charAt(l.length - 1) == "p" || l.charAt(l.length - 1) == "E" || l.charAt(l.length - 1) == "e" ? (f.push(new m(l.substring(0, l.length - 1), c - l.length, c - 1, "constant.numeric", r, t)), f.push(new m(l.substring(l.length - 1), c - 1, c, "constant.numeric", r, t))) : f.push(new m(l, c - l.length, c, "constant.numeric", r, t))); + E(l, b, c - l.length, i) || (l.charAt(l.length - 1) == "K" || l.charAt(l.length - 1) == "k" || l.charAt(l.length - 1) == "M" || l.charAt(l.length - 1) == "m" || l.charAt(l.length - 1) == "G" || l.charAt(l.length - 1) == "g" || l.charAt(l.length - 1) == "T" || l.charAt(l.length - 1) == "t" || l.charAt(l.length - 1) == "P" || l.charAt(l.length - 1) == "p" || l.charAt(l.length - 1) == "E" || l.charAt(l.length - 1) == "e" ? (b.push(new m(l.substring(0, l.length - 1), c - l.length, c - 1, "constant.numeric", i, t)), b.push(new m(l.substring(l.length - 1), c - 1, c, "constant.numeric", i, t))) : b.push(new m(l, c - l.length, c, "constant.numeric", i, t))); continue; } - var E = "identifier"; - s + 1 < i.length && i[s + 1], f.push(new m(l, c - l.length, c, E, r, t)); + var S = "identifier"; + s + 1 < r.length && r[s + 1], b.push(new m(l, c - l.length, c, S, i, t)); } } } - if (f.length > 0) { - var d = f[f.length - 1]; - d.end = M.length; + if (b.length > 0) { + var d = b[b.length - 1]; + d.end = I.length; } - return f; + return b; } - function L(M, k, p, f) { - if (0 > M.indexOf("e") && 0 > M.indexOf("f") && 0 > M.indexOf("d")) + function E(I, k, p, b) { + if (0 > I.indexOf("e") && 0 > I.indexOf("f") && 0 > I.indexOf("d")) return !1; - 0 <= M.indexOf("e"), 0 <= M.indexOf("e"), !(0 <= M.indexOf("e")) && 0 <= M.indexOf("f"); - for (var y = $(M, "efd"), S = 0; S < y.length; S++) { - var i = y[S]; - p += i.length, "0" <= i.charAt(0) && i.charAt(0) <= "9" ? k.push(new m(i, p - i.length, p, "constant.numeric", f)) : k.push(new m(i, p - i.length, p, "identifier", f)); + 0 <= I.indexOf("e"), 0 <= I.indexOf("e"), !(0 <= I.indexOf("e")) && 0 <= I.indexOf("f"); + for (var y = $(I, "efd"), M = 0; M < y.length; M++) { + var r = y[M]; + p += r.length, "0" <= r.charAt(0) && r.charAt(0) <= "9" ? k.push(new m(r, p - r.length, p, "constant.numeric", b)) : k.push(new m(r, p - r.length, p, "identifier", b)); } return !0; } - function x(M, k, p, f) { - for (var y = [], S = b(M, p, f), i = null, c = 0; c < S.length; c++) { - var r = S[c]; - if (r.type == "quoted-string") { - if (i != null && i.type == "quoted-string") { - i.value = i.value + r.value, i.end = r.end; + function L(I, k, p, b) { + for (var y = [], M = f(I, p, b), r = null, c = 0; c < M.length; c++) { + var i = M[c]; + if (i.type == "quoted-string") { + if (r != null && r.type == "quoted-string") { + r.value = r.value + i.value, r.end = i.end; continue; } - if (i != null && i.type == "identifier" && i.value.toUpperCase() == "N" && i.end == r.begin) { - i.begin = r.begin, i.end = r.end, i.type = r.type, i.value = r.value; + if (r != null && r.type == "identifier" && r.value.toUpperCase() == "N" && r.end == i.begin) { + r.begin = i.begin, r.end = i.end, r.type = i.type, r.value = i.value; continue; } } - if (r.value.indexOf("@") == 0 && (r.end = r.begin + r.value.length), r.value == "#" && i != null && i.type == "identifier") { - i.end += 1, i.value += "#"; + if (i.value.indexOf("@") == 0 && (i.end = i.begin + i.value.length), i.value == "#" && r != null && r.type == "identifier") { + r.end += 1, r.value += "#"; continue; } - if ((r.type === "identifier" || r.type === "constant.numeric") && i !== null && i.value[i.value.length - 1] === "#" && i.type === "identifier") { - i.end += r.value.length, i.value += r.value; + if ((i.type === "identifier" || i.type === "constant.numeric") && r !== null && r.value[r.value.length - 1] === "#" && r.type === "identifier") { + r.end += i.value.length, r.value += i.value; continue; } /*17607445: can just drop preprocessor directives @@ -7444,14 +7444,14 @@ var Y = new pe(), le = function() { || token.value.equals("$ELSE") || token.value.equals("$THEN") ||*/ - r.value.indexOf("$$") == 0 && (r.value = "$$VAR"), (k || r.type != "ws" && r.type != "comment" && r.type != "line-comment") && y.push(r), i = r; + i.value.indexOf("$$") == 0 && (i.value = "$$VAR"), (k || i.type != "ws" && i.type != "comment" && i.type != "line-comment") && y.push(i), r = i; } return y; } - return x; + return L; }(); function ge(m) { - const b = { + const f = { ACCESS: "N", ADD: "N", ALL: "Y", @@ -7562,93 +7562,93 @@ function ge(m) { WHERE: "Y", WITH: "Y" }; - let L = m.toUpperCase(); - return b[L] != null ? "the_" + m : m; + let E = m.toUpperCase(); + return f[E] != null ? "the_" + m : m; } let se = function() { - let m, b = " ", L = ["string", "varchar2", "varchar", "vc", "char"]; - var x = ["yn", "boolean", "bool"]; - function M(y, S, i) { - this.line = y, this.parent = i, this.children = [], i != null && i.children.push(this), this.fks = null, this.descendants = function() { - var r = []; - r.push(this); + let m, f = " ", E = ["string", "varchar2", "varchar", "vc", "char"]; + var L = ["yn", "boolean", "bool"]; + function I(y, M, r) { + this.line = y, this.parent = r, this.children = [], r != null && r.children.push(this), this.fks = null, this.descendants = function() { + var i = []; + i.push(this); for (var t = 0; t < this.children.length; t++) - r = r.concat(this.children[t].descendants()); - return r; + i = i.concat(this.children[t].descendants()); + return i; }, this.maxChildNameLen = function() { - var r = 2, t = this.trimmedContent().toUpperCase(); - if ((m.optionEQvalue("rowkey", !0) || 0 < t.indexOf("/ROWKEY")) && (r = 7), (m.optionEQvalue("Row Version Number", "yes") || 0 < t.indexOf("/ROWVERSION")) && (r = 11), m.optionEQvalue("Audit Columns", "yes") || 0 < t.indexOf("/AUDITCOLS") || 0 < t.indexOf("/AUDIT COL")) { + var i = 2, t = this.trimmedContent().toUpperCase(); + if ((m.optionEQvalue("rowkey", !0) || 0 < t.indexOf("/ROWKEY")) && (i = 7), (m.optionEQvalue("Row Version Number", "yes") || 0 < t.indexOf("/ROWVERSION")) && (i = 11), m.optionEQvalue("Audit Columns", "yes") || 0 < t.indexOf("/AUDITCOLS") || 0 < t.indexOf("/AUDIT COL")) { let P = m.getOptionValue("createdcol").length; - r < P && (r = P), P = m.getOptionValue("createdbycol").length, r < P && (r = P), P = m.getOptionValue("updatedcol").length, r < P && (r = P), P = m.getOptionValue("updatedbycol").length, r < P && (r = P); + i < P && (i = P), P = m.getOptionValue("createdbycol").length, i < P && (i = P), P = m.getOptionValue("updatedcol").length, i < P && (i = P), P = m.getOptionValue("updatedbycol").length, i < P && (i = P); } if (this.fks != null) for (var s in this.fks) { var l = s.length; let P = m.find(s); - P != null && P.isMany2One() && (l += 3), r < l && (r = l); + P != null && P.isMany2One() && (l += 3), i < l && (i = l); } for (var d = 0; d < this.children.length; d++) { let P = this.children[d]; if (0 < P.children.length) continue; - let B = P.parseName().length; - 0 < P.indexOf("file") && (B += 9), r < B && (r = B); + let T = P.parseName().length; + 0 < P.indexOf("file") && (T += 9), i < T && (i = T); } - var E = m.additionalColumns(); - for (let P in E) { - let B = P.length; - r < B && (r = B); + var S = m.additionalColumns(); + for (let P in S) { + let T = P.length; + i < T && (i = T); } - return r; + return i; }; - function c(r) { - let t = r; + function c(i) { + let t = i; return t = t.replace(/ timestamp with local time zone/gi, " tswltz"), t = t.replace(/ timestamp with time zone/gi, " tswtz"), t = t.replace(/ timestamp/gi, " ts"), t; } - this.content = c(S), this.comment, this.indexOf = function(r, t) { + this.content = c(M), this.comment, this.indexOf = function(i, t) { for (let s = 0; s < this.src.length; s++) { - if (t && this.src[s].value.indexOf(r) == 0) + if (t && this.src[s].value.indexOf(i) == 0) return s; - if (r == this.src[s].value) + if (i == this.src[s].value) return s; } return -1; }, this.trimmedContent = function() { - var r = this.content.trim(), t = r.indexOf("["), s = r.indexOf("]"); - return this.comment == null && 0 < t && (this.comment = r.substr(t + 1, s - t - 1)), 0 < t && (r = r.substr(0, t) + r.substr(s + 2)), t = r.indexOf("--"), this.comment == null && 0 < t && (this.comment = r.substr(t + 2)), 0 < t && (r = r.substr(0, t)), r.trim(); - }, this.src = Q(this.content.toLowerCase(), !1, !0, ""), this.parseName = function() { - let r = this.trimmedContent(); - r = r.replace(/\t/, b); - const t = r.indexOf('"'), s = r.indexOf('"', t + 1); + var i = this.content.trim(), t = i.indexOf("["), s = i.indexOf("]"); + return this.comment == null && 0 < t && (this.comment = i.substr(t + 1, s - t - 1)), 0 < t && (i = i.substr(0, t) + i.substr(s + 2)), t = i.indexOf("--"), this.comment == null && 0 < t && (this.comment = i.substr(t + 2)), 0 < t && (i = i.substr(0, t)), i.trim(); + }, this.src = Z(this.content.toLowerCase(), !1, !0, ""), this.parseName = function() { + let i = this.trimmedContent(); + i = i.replace(/\t/, f); + const t = i.indexOf('"'), s = i.indexOf('"', t + 1); if (0 <= t && t < s) - return r.substring(t, s + 1); - (r.indexOf(">") == 0 || r.indexOf("<") == 0) && (r = r.substring(1).trim()); - const l = r.toLowerCase(); + return i.substring(t, s + 1); + (i.indexOf(">") == 0 || i.indexOf("<") == 0) && (i = i.substring(1).trim()); + const l = i.toLowerCase(); if (l.indexOf("view ") == 0) { - var d = r.split(" "); + var d = i.split(" "); return d[1]; } - r = p(r, " d"); - var E = r.indexOf("/"); - 0 < E && (r = r.substring(0, E)), r = r.trim(), r = p(r, " integer"), r = p(r, " number"), r = p(r, " int"), r = p(r, " num"), r = p(r, " clob"), r = p(r, " blob"), r = p(r, " json"), r = p(r, " file"), r = p(r, " date"), r = p(r, " tstz"), r = p(r, " tswtz"), r = p(r, " tswltz"), r = p(r, " ts"), r = r.replace(/ vc\d+k/g, ""), r = r.replace(/ vc\(\d+\)/g, ""), r = r.replace(/ vc\d+/g, ""); - for (let B in L) { - let I = l.indexOf(" " + L[B]); - if (0 < I) { - r = r.substring(0, I) + r.substring(I + L[B].length + 1); + i = p(i, " d"); + var S = i.indexOf("/"); + 0 < S && (i = i.substring(0, S)), i = i.trim(), i = p(i, " integer"), i = p(i, " number"), i = p(i, " int"), i = p(i, " num"), i = p(i, " clob"), i = p(i, " blob"), i = p(i, " json"), i = p(i, " file"), i = p(i, " date"), i = p(i, " tstz"), i = p(i, " tswtz"), i = p(i, " tswltz"), i = p(i, " ts"), i = i.replace(/ vc\d+k/g, ""), i = i.replace(/ vc\(\d+\)/g, ""), i = i.replace(/ vc\d+/g, ""); + for (let T in E) { + let x = l.indexOf(" " + E[T]); + if (0 < x) { + i = i.substring(0, x) + i.substring(x + E[T].length + 1); break; } } - for (let B in x) { - let I = l.indexOf(" " + x[B]); - if (0 < I) { - r = r.substring(0, I) + r.substring(I + x[B].length + 1); + for (let T in L) { + let x = l.indexOf(" " + L[T]); + if (0 < x) { + i = i.substring(0, x) + i.substring(x + L[T].length + 1); break; } } - r = r.replace(/ num(ber)?\(\d+\)/g, ""), r = r.replace(/ num(ber)?\(\d+,\d+\)/g, ""), r = r.replace(/ num(ber)?\d+/g, ""), r = r.trim(), this.children.length == 0 && this.parent != null && this.parent.colprefix != null && (r = this.parent.colprefix + "_" + r); - var P = r.substr(0, 1); - return P >= "0" && P <= "9" && (r = "x" + r), ge(de(r)); - }, this.parseType = function(r) { + i = i.replace(/ num(ber)?\(\d+\)/g, ""), i = i.replace(/ num(ber)?\(\d+,\d+\)/g, ""), i = i.replace(/ num(ber)?\d+/g, ""), i = i.trim(), this.children.length == 0 && this.parent != null && this.parent.colprefix != null && (i = this.parent.colprefix + "_" + i); + var P = i.substr(0, 1); + return P >= "0" && P <= "9" && (i = "x" + i), ge(de(i)); + }, this.parseType = function(i) { if (this.children != null && 0 < this.children.length) return "table"; const t = this.src; @@ -7660,96 +7660,107 @@ let se = function() { return "table"; var s = m.semantics(), l = 4e3; (t[0].value.startsWith("name") || t[0].value.startsWith("email")) && (l = 255); - var d, E, P; - const B = this.indexOf("vc", !0); - if (0 < B) { - d = t[B].begin, E = t[B].end; - let N = t[B].value.substring(2); - N == "" && this.indexOf("(") == B + 1 && (N = t[B + 2].value), N != "" && (l = parseInt(N)), t[B].value.endsWith("k") && (l < 32 ? l = l * 1024 : l = l * 1024 - 1); + const d = this.indexOf("vc", !0); + if (0 < d) { + t[d].begin, t[d].end; + let w = t[d].value.substring(2); + w == "" && this.indexOf("(") == d + 1 && (w = t[d + 2].value), w != "" && (l = parseInt(w)), t[d].value.endsWith("k") && (l < 32 ? l = l * 1024 : l = l * 1024 - 1); } - var I = "varchar2(" + l + s + ")"; - r == "plsql" && (I = "varchar2"), 0 < this.indexOf("int", !0) && (I = "integer"), t[0].value.endsWith("_id") && B < 0 && this.indexOf("date") < 0 && (I = "number"), t[0].value.endsWith("id") && B < 0 && this.indexOf("/") + 1 == this.indexOf("pk") && (I = "number"); - let D = J(i.parseName(), "_", this.parseName()); - (t[0].value.endsWith("_yn") || t[0].value.startsWith("is_")) && (I = "varchar2(1 char) constraint " + J(m.objPrefix(), D) + ` -`, I += b + b + " ".repeat(i.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"); - for (let N in x) - if (0 < this.indexOf(x[N])) { - I = "varchar2(1 char) constraint " + J(m.objPrefix(), D) + ` -`, I += b + b + " ".repeat(i.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"; + var S = "varchar2(" + l + s + ")"; + i == "plsql" && (S = "varchar2"), 0 < this.indexOf("int", !0) && (S = "integer"), t[0].value.endsWith("_id") && d < 0 && this.indexOf("date") < 0 && (S = "number"), t[0].value.endsWith("id") && d < 0 && this.indexOf("/") + 1 == this.indexOf("pk") && (S = "number"); + const P = K(r.parseName(), "_", this.parseName()); + (t[0].value.endsWith("_yn") || t[0].value.startsWith("is_")) && (S = "varchar2(1 char) constraint " + K(m.objPrefix(), P) + ` +`, S += f + f + " ".repeat(r.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"); + for (let w in L) + if (0 < this.indexOf(L[w])) { + S = "varchar2(1 char) constraint " + K(m.objPrefix(), P) + ` +`, S += f + f + " ".repeat(r.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"; break; } - this.indexOf("phone_number") == 0 && (I = "number"); - let F = this.indexOf("num", !0); - 0 < F && (I = "number"); - let w = this.indexOf(")"); - if (0 < F && 0 < w && (I += this.content.toLowerCase().substring(t[F + 1].begin, t[w].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value.startsWith("created") || t[0].value.startsWith("updated")) && (I = m.getOptionValue("Date Data Type").toLowerCase()), B < 0 && (0 < this.indexOf("clob") && (I = "clob"), (0 < this.indexOf("blob") || 0 < this.indexOf("file")) && (I = "blob"), 0 < this.indexOf("json") && (I = "clob check (" + this.parseName() + " is json)")), 0 < this.indexOf("tswltz") ? I = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : 0 < this.indexOf("tswtz") || 0 < this.indexOf("tstz") ? I = "TIMESTAMP WITH TIME ZONE".toLowerCase() : 0 < this.indexOf("ts") && (I = "TIMESTAMP".toLowerCase()), r) { + this.indexOf("phone_number") == 0 && (S = "number"); + let T = this.indexOf("num", !0); + 0 < T && (S = "number"); + let x = this.indexOf(")"); + if (0 < T && 0 < x && (S += this.content.toLowerCase().substring(t[T + 1].begin, t[x].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value.startsWith("created") || t[0].value.startsWith("updated")) && (S = m.getOptionValue("Date Data Type").toLowerCase()), d < 0 && (0 < this.indexOf("clob") && (S = "clob"), (0 < this.indexOf("blob") || 0 < this.indexOf("file")) && (S = "blob"), 0 < this.indexOf("json") && (S = "clob check (" + this.parseName() + " is json)")), 0 < this.indexOf("tswltz") ? S = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : 0 < this.indexOf("tswtz") || 0 < this.indexOf("tstz") ? S = "TIMESTAMP WITH TIME ZONE".toLowerCase() : 0 < this.indexOf("ts") && (S = "TIMESTAMP".toLowerCase()), i) { if (0 < this.indexOf("fk") || 0 < this.indexOf("reference")) { - const N = this.refId(); - let O = "number", R = m.find(N); - return R != null && R.getExplicitPkNode() != null && (O = R.getExplicitPkNode().parseType((e) => !0)), O; + const w = this.refId(); + let D = "number", R = m.find(w); + return R != null && R.getExplicitPkNode() != null && (D = R.getExplicitPkNode().parseType((_) => !0)), D; } - return I; - } - 0 < this.indexOf("unique") && (I += ` -`, I += b + b + " ".repeat(i.maxChildNameLen()) + "constraint " + D + "_unq unique"); - var G = "'"; - if ((I.startsWith("integer") || I.startsWith("number") || I.startsWith("date")) && (G = ""), 0 < this.indexOf("default")) { - const N = t[this.indexOf("default") + 1].value; - I += " default on null " + G + N + G; + return S; } - if ((0 < this.indexOf("nn") || this.indexOf("not") + 1 == this.indexOf("null")) && this.indexOf("pk") < 0 && (I += " not null"), (0 < this.indexOf("hidden") || 0 < this.indexOf("invincible")) && (I += " invisible"), 0 < this.indexOf("check")) { - const N = this.trimmedContent().toUpperCase(); - d = N.indexOf("/CHECK"), E = N.lastIndexOf("/"), E == d && (E = N.length), P = this.trimmedContent().substr(d + 6, E - d - 6).trim(), 0 < P.indexOf(", ") ? P = P.replace(/, /g, G + "," + G) : 0 < P.indexOf(",") ? P = P.replace(/,/g, G + "," + G) : P = P.replace(/ /g, G + "," + G), I += " constraint " + J(m.objPrefix(), D, "_ck") + ` -`, I += b + b + " ".repeat(i.maxChildNameLen()) + "check (" + this.parseName() + " in (" + G + P + G + "))", I = I.replace(/''/gm, "'"); + 0 < this.indexOf("unique") && (S += ` +`, S += f + f + " ".repeat(r.maxChildNameLen()) + "constraint " + P + "_unq unique"); + var N = "'"; + if ((S.startsWith("integer") || S.startsWith("number") || S.startsWith("date")) && (N = ""), 0 < this.indexOf("default")) { + const w = t[this.indexOf("default") + 1].value; + S += " default on null " + N + w + N; } - if (0 < this.indexOf("between")) { - const N = this.indexOf("between"), O = t[N + 1].value + " and " + t[N + 3].value; - I += " constraint " + J(D, "_bet") + ` -`, I += " check (" + this.parseName() + " between " + O + ")"; + if ((0 < this.indexOf("nn") || this.indexOf("not") + 1 == this.indexOf("null")) && this.indexOf("pk") < 0 && (S += " not null"), (0 < this.indexOf("hidden") || 0 < this.indexOf("invincible")) && (S += " invisible"), S += this.genConstraint(N), 0 < this.indexOf("between")) { + const w = this.indexOf("between"), D = t[w + 1].value + " and " + t[w + 3].value; + S += " constraint " + K(P, "_bet") + ` +`, S += " check (" + this.parseName() + " between " + D + ")"; } if (0 < this.indexOf("pk")) { - let N = " not null"; - I.startsWith("number") && m.optionEQvalue("pk", "identityDataType") && (N = " GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), I.startsWith("number") && m.optionEQvalue("pk", "seq") && (N = " default on null " + (m.objPrefix() + this.parent.parseName()) + "_seq.NEXTVAL ".toLowerCase()), I.startsWith("number") && m.optionEQvalue("pk", "guid") && (N = " default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), I += N + ` -`, I += b + b + " ".repeat(i.maxChildNameLen()) + "constraint " + J(m.objPrefix(), D, "_pk") + " primary key"; + let w = " not null"; + S.startsWith("number") && m.optionEQvalue("pk", "identityDataType") && (w = " GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), S.startsWith("number") && m.optionEQvalue("pk", "seq") && (w = " default on null " + (m.objPrefix() + this.parent.parseName()) + "_seq.NEXTVAL ".toLowerCase()), S.startsWith("number") && m.optionEQvalue("pk", "guid") && (w = " default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), S += w + ` +`, S += f + f + " ".repeat(r.maxChildNameLen()) + "constraint " + K(m.objPrefix(), P, "_pk") + " primary key"; } - return I; + return S; + }, this.genConstraint = function(i) { + let t = ""; + if (0 < this.indexOf("check")) { + let s = ""; + r != null && (s = r.parseName() + "_"); + const l = K(s, this.parseName()), d = this.trimmedContent().toLowerCase(), S = d.indexOf("/check"); + let P = d.lastIndexOf("/"); + P == S && (P = d.length); + let T = this.trimmedContent().substr(S + 6, P - S - 6).trim(); + const x = Z(T, !1, !0, ""); + let N = f; + r != null && (N = " ".repeat(r.maxChildNameLen())), this.children != null && 0 < this.children.length ? (x[0].value != "(" && (T = "( " + T + ")"), t += f + "constraint " + K(m.objPrefix(), l, "_ck"), t += " check " + T + `, +`) : x[0].value == "(" && x[x.length - 1].value == ")" ? (t += " constraint " + K(m.objPrefix(), l, "_ck") + ` +`, t += f + f + N + "check " + T) : (0 < T.indexOf(", ") ? T = T.replace(/, /g, i + "," + i) : 0 < T.indexOf(",") ? T = T.replace(/,/g, i + "," + i) : T = T.replace(/ /g, i + "," + i), t += " constraint " + K(m.objPrefix(), l, "_ck") + ` +`, t += f + f + N + "check (" + this.parseName() + " in (" + i + T + i + "))", t = t.replace(/''/gm, "'")); + } + return t; }, this.isMany2One = function() { - var r = this.trimmedContent(), t = r.indexOf(">"); + var i = this.trimmedContent(), t = i.indexOf(">"); return t == 0; }, this.getExplicitPkNode = function() { - for (var r = 0; r < this.children.length; r++) { - var t = this.children[r], s = t.trimmedContent().toLowerCase(); + for (var i = 0; i < this.children.length; i++) { + var t = this.children[i], s = t.trimmedContent().toLowerCase(); if (0 < s.indexOf("/pk")) return t; } return null; }, this.refId = function() { - var r = this.trimmedContent(); - r = r.replace(/\/cascade/g, ""); - var t = r.indexOf(" id "); - if (t < 0 && t == r.length - 3 && (t = r.indexOf(" id")), t < 0 && (t = r.indexOf(" id"), t != r.length - 3 && (t = -1)), t < 0 && (t = r.indexOf("_id "), t != r.length - 4 && (t = -1)), t < 0 && (t = r.indexOf("_id"), t != r.length - 3 && (t = -1)), t < 0 && (t = r.indexOf("Id "), t != r.length - 3 && (t = -1)), 0 < t) { - let s = r.substr(0, t) + "s"; - if (m.find(s) != null || (s = r.substr(0, t), m.find(s) != null)) + var i = this.trimmedContent(); + i = i.replace(/\/cascade/g, ""); + var t = i.indexOf(" id "); + if (t < 0 && t == i.length - 3 && (t = i.indexOf(" id")), t < 0 && (t = i.indexOf(" id"), t != i.length - 3 && (t = -1)), t < 0 && (t = i.indexOf("_id "), t != i.length - 4 && (t = -1)), t < 0 && (t = i.indexOf("_id"), t != i.length - 3 && (t = -1)), t < 0 && (t = i.indexOf("Id "), t != i.length - 3 && (t = -1)), 0 < t) { + let s = i.substr(0, t) + "s"; + if (m.find(s) != null || (s = i.substr(0, t), m.find(s) != null)) return s; } - return t = r.indexOf("/fk"), 0 < t ? (r = r.substr(t + 3).trim(), t = r.indexOf("/"), 0 < t && (r = r.substring(0, t).trim()), r.replace(" ", "_")) : (t = r.indexOf("/reference"), 0 < t ? (r = r.substr(t + 10).trim(), r.indexOf("s") == 0 && (r = r.substring(1).trim()), t = r.indexOf("/"), 0 < t && (r = r.substring(0, t).trim()), r.replace(" ", "_")) : null); + return t = i.indexOf("/fk"), 0 < t ? (i = i.substr(t + 3).trim(), t = i.indexOf("/"), 0 < t && (i = i.substring(0, t).trim()), i.replace(" ", "_")) : (t = i.indexOf("/reference"), 0 < t ? (i = i.substr(t + 10).trim(), i.indexOf("s") == 0 && (i = i.substring(1).trim()), t = i.indexOf("/"), 0 < t && (i = i.substring(0, t).trim()), i.replace(" ", "_")) : null); }, this.parseValues = function() { - var r = this.trimmedContent().toUpperCase(), t, s, l; - if (0 <= r.indexOf("/CHECK") || 0 <= r.indexOf("/VALUES")) { + var i = this.trimmedContent().toUpperCase(), t, s, l; + if (0 <= i.indexOf("/CHECK") || 0 <= i.indexOf("/VALUES")) { var d = "/CHECK"; - return t = r.indexOf(d), t < 0 && (d = "/VALUES", t = r.indexOf(d)), s = r.lastIndexOf("/"), s == t && (s = r.length), l = r.substr(t + d.length, s - t - d.length).trim(), 0 < l.indexOf(",") ? (l = l.replace(/ /g, ""), l.split(",")) : l.split(" "); + return t = i.indexOf(d), t < 0 && (d = "/VALUES", t = i.indexOf(d)), s = i.lastIndexOf("/"), s == t && (s = i.length), l = i.substr(t + d.length, s - t - d.length).trim(), 0 < l.indexOf(",") ? (l = l.replace(/ /g, ""), l.split(",")) : l.split(" "); } - if (0 <= r.indexOf("/BETWEEN")) { - t = r.indexOf("/BETWEEN"), s = r.lastIndexOf("/"), s == t && (s = r.length), l = r.substr(t + 8, s - t - 8).trim(), l = l.replace(" AND ", " "); - for (var E = [], P = parseInt(l.split(" ")[0]); P <= parseInt(l.split(" ")[1]); P++) - E.push(P); - return E; + if (0 <= i.indexOf("/BETWEEN")) { + t = i.indexOf("/BETWEEN"), s = i.lastIndexOf("/"), s == t && (s = i.length), l = i.substr(t + 8, s - t - 8).trim(), l = l.replace(" AND ", " "); + for (var S = [], P = parseInt(l.split(" ")[0]); P <= parseInt(l.split(" ")[1]); P++) + S.push(P); + return S; } return null; }, this.apparentDepth = function() { - let r = this.content.split(/ |\t/), t = 0; - for (var s = 0; s < r.length; s++) { - var l = r[s]; + let i = this.content.split(/ |\t/), t = 0; + for (var s = 0; s < i.length; s++) { + var l = i[s]; if (l == " ") { t += this.tab; continue; @@ -7764,7 +7775,7 @@ let se = function() { }, this.depth = function() { return this.parent == null ? 0 : this.parent.depth() + 1; }, this.isLeaf = function() { - return this.children.every((r) => r.children.length == 0); + return this.children.every((i) => i.children.length == 0); }, this.getGenIdColName = function() { if (this.parseType() != "table" || this.getExplicitPkNode() != null) return null; @@ -7774,13 +7785,13 @@ let se = function() { } return null; }, this.getPkName = function() { - let r = this.getGenIdColName(); - return r ?? this.getExplicitPkNode().parseName(); + let i = this.getGenIdColName(); + return i ?? this.getExplicitPkNode().parseName(); }, this.toDDL = function() { if (this.parseType() == "view" || this.parseType() == "dv") return ""; if (this.children.length == 0 && 0 < this.apparentDepth()) { - let n = b; + let n = f; return this.parent != null && (n += " ".repeat(this.parent.maxChildNameLen() - this.parseName().length)), this.parseName() + n + this.parseType(); } if (this.fks == null && (this.fks = []), !this.isMany2One()) { @@ -7788,10 +7799,10 @@ let se = function() { for (let n = 0; n < this.children.length; n++) this.children[n].refId() != null && (this.fks[this.children[n].parseName()] = this.children[n].refId()); } - const r = this.trimmedContent().toUpperCase(); - var t = r.indexOf("/COLPREFIX "); + const i = this.trimmedContent().toUpperCase(); + var t = i.indexOf("/COLPREFIX "); if (0 < t) { - let o = r.substr(t + 11).split(" "); + let o = i.substr(t + 11).split(" "); this.colprefix = o[0]; } var s = [], l = ""; @@ -7800,30 +7811,30 @@ let se = function() { `), l = l + "create table " + d + ` ( `; - var E = b + " ".repeat(this.maxChildNameLen() - 2); + var S = f + " ".repeat(this.maxChildNameLen() - 2); let P = this.getGenIdColName(); if (P != null) { let n = "not null"; - m.optionEQvalue("pk", "identityDataType") && (n = "GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), m.optionEQvalue("pk", "seq") && (n = "default on null " + d + "_seq.NEXTVAL ".toLowerCase()), m.optionEQvalue("pk", "guid") && (n = "default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), l += b + P + E + "number " + n + ` + m.optionEQvalue("pk", "identityDataType") && (n = "GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), m.optionEQvalue("pk", "seq") && (n = "default on null " + d + "_seq.NEXTVAL ".toLowerCase()), m.optionEQvalue("pk", "guid") && (n = "default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), l += f + P + S + "number " + n + ` `; - const o = J(m.objPrefix("no schema") + this.parseName(), "_", P); - l += b + b + " ".repeat(this.maxChildNameLen()) + "constraint " + J(o, "_pk") + ` primary key, + const o = K(m.objPrefix("no schema") + this.parseName(), "_", P); + l += f + f + " ".repeat(this.maxChildNameLen()) + "constraint " + K(o, "_pk") + ` primary key, `; } else { let n = this.getExplicitPkNode(); if (n != null) { - let o = b + " ".repeat(this.maxChildNameLen() - n.parseName().length); - l += b + n.parseName() + o + n.parseType() + `, + let o = f + " ".repeat(this.maxChildNameLen() - n.parseName().length); + l += f + n.parseName() + o + n.parseType() + `, `; } } for (let n in this.fks) { - let o = this.fks[n], u = "number", g = m.find(o), T = ""; - g != null && g.getExplicitPkNode() != null ? u = g.getExplicitPkNode().parseType((C) => !0) : g == null && (g = m.find(n), g.isMany2One() & !n.endsWith("_id") && (o = n, n = z(n), T = "_id")), E = b + " ".repeat(this.maxChildNameLen() - n.length), l += b + n + T + E + u + ` -`, l += b + b + " ".repeat(this.maxChildNameLen()) + "constraint " + d + "_" + n + `_fk + let o = this.fks[n], u = "number", g = m.find(o), B = ""; + g != null && g.getExplicitPkNode() != null ? u = g.getExplicitPkNode().parseType((C) => !0) : g == null && (g = m.find(n), g.isMany2One() & !n.endsWith("_id") && (o = n, n = z(n), B = "_id")), S = f + " ".repeat(this.maxChildNameLen() - n.length), l += f + n + B + S + u + ` +`, l += f + f + " ".repeat(this.maxChildNameLen()) + "constraint " + d + "_" + n + `_fk `; let h = ""; - 0 <= r.indexOf("/CASCADE") && (h = " on delete cascade"); + 0 <= i.indexOf("/CASCADE") && (h = " on delete cascade"); let v = ""; for (let C in this.children) { let A = this.children[C]; @@ -7833,13 +7844,13 @@ let se = function() { break; } } - l += b + b + " ".repeat(this.maxChildNameLen()) + "references " + m.objPrefix() + o + h + v + `, + l += f + f + " ".repeat(this.maxChildNameLen()) + "references " + m.objPrefix() + o + h + v + `, `; } - if (m.optionEQvalue("rowkey", !0) || 0 < r.indexOf("/ROWKEY")) { - let n = b + " ".repeat(this.maxChildNameLen() - 7); - l += b + "row_key" + n + `varchar2(30 char) -`, l += b + b + " ".repeat(this.maxChildNameLen()) + "constraint " + d + `_row_key_unq unique not null, + if (m.optionEQvalue("rowkey", !0) || 0 < i.indexOf("/ROWKEY")) { + let n = f + " ".repeat(this.maxChildNameLen() - 7); + l += f + "row_key" + n + `varchar2(30 char) +`, l += f + f + " ".repeat(this.maxChildNameLen()) + "constraint " + d + `_row_key_unq unique not null, `; } for (let n = 0; n < this.children.length; n++) { @@ -7852,65 +7863,65 @@ let se = function() { if (o.refId() == null) { if (o == this.getExplicitPkNode()) continue; - if (l += b + o.toDDL([]) + `, + if (l += f + o.toDDL([]) + `, `, 0 < o.indexOf("file")) { const u = o.parseName().toUpperCase(); - let g = u + "_FILENAME", T = b + " ".repeat(this.maxChildNameLen() - g.length); - l += b + g.toLowerCase() + T + "varchar2(255" + m.semantics() + `), -`, g = u + "_MIMETYPE", T = b + " ".repeat(this.maxChildNameLen() - g.length), l += b + g.toLowerCase() + T + "varchar2(255" + m.semantics() + `), -`, g = u + "_CHARSET", T = b + " ".repeat(this.maxChildNameLen() - g.length), l += b + g.toLowerCase() + T + "varchar2(255" + m.semantics() + `), -`, g = u + "_LASTUPD", T = b + " ".repeat(this.maxChildNameLen() - g.length), l += b + g.toLowerCase() + T + m.getOptionValue("Date Data Type").toLowerCase() + `, + let g = u + "_FILENAME", B = f + " ".repeat(this.maxChildNameLen() - g.length); + l += f + g.toLowerCase() + B + "varchar2(255" + m.semantics() + `), +`, g = u + "_MIMETYPE", B = f + " ".repeat(this.maxChildNameLen() - g.length), l += f + g.toLowerCase() + B + "varchar2(255" + m.semantics() + `), +`, g = u + "_CHARSET", B = f + " ".repeat(this.maxChildNameLen() - g.length), l += f + g.toLowerCase() + B + "varchar2(255" + m.semantics() + `), +`, g = u + "_LASTUPD", B = f + " ".repeat(this.maxChildNameLen() - g.length), l += f + g.toLowerCase() + B + m.getOptionValue("Date Data Type").toLowerCase() + `, `; } } } } - if (m.optionEQvalue("rowVersion", "yes") || 0 < r.indexOf("/ROWVERSION")) { - let n = b + " ".repeat(this.maxChildNameLen() - 11); - l += b + "row_version" + n + `integer not null, + if (m.optionEQvalue("rowVersion", "yes") || 0 < i.indexOf("/ROWVERSION")) { + let n = f + " ".repeat(this.maxChildNameLen() - 11); + l += f + "row_version" + n + `integer not null, `; } - if (m.optionEQvalue("Audit Columns", "yes") || 0 < r.indexOf("/AUDITCOLS") || 0 < r.indexOf("/AUDIT COL")) { - let n = m.getOptionValue("createdcol"), o = b + " ".repeat(this.maxChildNameLen() - n.length); - l += b + n + o + m.getOptionValue("Date Data Type").toLowerCase() + ` not null, + if (m.optionEQvalue("Audit Columns", "yes") || 0 < i.indexOf("/AUDITCOLS") || 0 < i.indexOf("/AUDIT COL")) { + let n = m.getOptionValue("createdcol"), o = f + " ".repeat(this.maxChildNameLen() - n.length); + l += f + n + o + m.getOptionValue("Date Data Type").toLowerCase() + ` not null, `; let u = m.getOptionValue("createdbycol"); - o = b + " ".repeat(this.maxChildNameLen() - u.length), l += b + u + o + "varchar2(255" + m.semantics() + `) not null, + o = f + " ".repeat(this.maxChildNameLen() - u.length), l += f + u + o + "varchar2(255" + m.semantics() + `) not null, `; let g = m.getOptionValue("updatedcol"); - o = b + " ".repeat(this.maxChildNameLen() - g.length), l += b + g + o + m.getOptionValue("Date Data Type").toLowerCase() + ` not null, + o = f + " ".repeat(this.maxChildNameLen() - g.length), l += f + g + o + m.getOptionValue("Date Data Type").toLowerCase() + ` not null, `; - let T = m.getOptionValue("updatedbycol"); - o = b + " ".repeat(this.maxChildNameLen() - T.length), l += b + T + o + "varchar2(255" + m.semantics() + `) not null, + let B = m.getOptionValue("updatedbycol"); + o = f + " ".repeat(this.maxChildNameLen() - B.length), l += f + B + o + "varchar2(255" + m.semantics() + `) not null, `; } - var B = m.additionalColumns(); - for (let n in B) { - var I = B[n]; - E = b + " ".repeat(this.maxChildNameLen() - n.length), l += b + n.toUpperCase() + E + I + ` not null, + var T = m.additionalColumns(); + for (let n in T) { + var x = T[n]; + S = f + " ".repeat(this.maxChildNameLen() - n.length), l += f + n.toUpperCase() + S + x + ` not null, `; } - l.lastIndexOf(`, + l += this.genConstraint(), l.lastIndexOf(`, `) == l.length - 2 && (l = l.substr(0, l.length - 2) + ` -`), l += ")" + (m.optionEQvalue("compress", "yes") || 0 < r.indexOf("/COMPRESS") ? " compress" : "") + `; +`), l += ")" + (m.optionEQvalue("compress", "yes") || 0 < i.indexOf("/COMPRESS") ? " compress" : "") + `; `; - const D = r.indexOf("/AUDIT"), F = r.indexOf("/AUDITCOLS"), w = r.indexOf("/AUDIT COL"); - 0 < D && F < 0 && w < 0 && (l += "audit all on " + d + `; + const N = i.indexOf("/AUDIT"), w = i.indexOf("/AUDITCOLS"), D = i.indexOf("/AUDIT COL"); + 0 < N && w < 0 && D < 0 && (l += "audit all on " + d + `; `); - let G = 1; + let R = 1; for (let n in this.fks) if (!this.isMany2One()) { - var N = this.fks[n], O = N, R = n; - R == null && (R = z(O) + "_id"), G == 1 && (l += `-- table index -`), l += "create index " + d + "_i" + G++ + " on " + d + " (" + R + `); + var _ = this.fks[n], O = _, G = n; + G == null && (G = z(O) + "_id"), R == 1 && (l += `-- table index +`), l += "create index " + d + "_i" + R++ + " on " + d + " (" + G + `); `; } - let e = r.indexOf("/UNIQUE "); + let e = i.indexOf("/UNIQUE "); if (0 < e) { - let n = r.substr(e + 8), o = n.indexOf("/"); + let n = i.substr(e + 8), o = n.indexOf("/"); 0 < o && (n = n.substring(0, o).trim()), l += "alter table " + d + " add constraint " + d + "_uk unique (" + n + `); `; @@ -7918,8 +7929,8 @@ let se = function() { for (let n = 0; n < this.children.length; n++) { var a = this.children[n]; let o = a.trimmedContent().toUpperCase(); - (0 <= o.indexOf("/IDX") || 0 <= o.indexOf("/INDEX")) && (G == 1 && (l += `-- table index -`), l += "create index " + d + "_i" + G++ + " on " + d + " (" + a.parseName() + `); + (0 <= o.indexOf("/IDX") || 0 <= o.indexOf("/INDEX")) && (R == 1 && (l += `-- table index +`), l += "create index " + d + "_i" + R++ + " on " + d + " (" + a.parseName() + `); `); } this.comment != null && (l += "comment on table " + d + " is '" + this.comment + `'; @@ -7935,80 +7946,80 @@ let se = function() { l += s[n].toDDL(); return l; }, this.generateDrop = function() { - let r = m.objPrefix() + this.parseName(), t = ""; - return this.parseType() == "view" && (t = "drop view " + r + `; -`), this.parseType() == "table" && (t = "drop table " + r + ` cascade constraints; -`, m.optionEQvalue("api", "yes") && (t += "drop package " + r + `_api; + let i = m.objPrefix() + this.parseName(), t = ""; + return this.parseType() == "view" && (t = "drop view " + i + `; +`), this.parseType() == "table" && (t = "drop table " + i + ` cascade constraints; +`, m.optionEQvalue("api", "yes") && (t += "drop package " + i + `_api; `)), t.toLowerCase(); }, this.generateView = function() { if (this.parseType() != "view" && this.parseType() != "dv") return ""; if (m.optionEQvalue("Duality View", "yes") || this.parseType() == "dv") return this.generateDualityView(); - let r = m.objPrefix() + this.parseName(); - var s = this.trimmedContent().split(" "), l = "create or replace view " + r + ` as + let i = m.objPrefix() + this.parseName(); + var s = this.trimmedContent().split(" "), l = "create or replace view " + i + ` as `; l += `select `; - for (var d = 0, E = 2; E < s.length; E++) { - let u = m.find(s[E]); + for (var d = 0, S = 2; S < s.length; S++) { + let u = m.find(s[S]); if (u == null) return ""; - var P = (s[E] + ".id").length; + var P = (s[S] + ".id").length; d < P && (d = P); - for (var B = 0; B < u.children.length; B++) { - var I = u.children[B]; - P = (s[E] + "." + I.parseName()).length, d < P && (d = P); + for (var T = 0; T < u.children.length; T++) { + var x = u.children[T]; + P = (s[S] + "." + x.parseName()).length, d < P && (d = P); } } - var D = {}; + var N = {}; for (let u = 2; u < s.length; u++) { let g = m.find(s[u]); if (g != null) - for (let T = 0; T < g.children.length; T++) { - var F = g.children[T].parseName(), w = D[F]; - w == null && (w = 0), D[F] = w + 1; + for (let B = 0; B < g.children.length; B++) { + var w = g.children[B].parseName(), D = N[w]; + D == null && (D = 0), N[w] = D + 1; } } for (let u = 2; u < s.length; u++) { let g = m.find(s[u]); if (g == null) continue; - let T = " ".repeat(d - (s[u] + ".id").length); - l += b + s[u] + ".id" + b + T + z(s[u]) + `_id, + let B = " ".repeat(d - (s[u] + ".id").length); + l += f + s[u] + ".id" + f + B + z(s[u]) + `_id, `; for (let v = 0; v < g.children.length; v++) { let C = g.children[v]; if (C.children.length == 0) { - T = " ".repeat(d - (s[u] + "." + C.parseName()).length); - var G = ""; - 1 < D[C.parseName()] && (G = z(s[u]) + "_"), l += b + s[u] + "." + C.parseName() + b + T + G + C.parseName() + `, + B = " ".repeat(d - (s[u] + "." + C.parseName()).length); + var R = ""; + 1 < N[C.parseName()] && (R = z(s[u]) + "_"), l += f + s[u] + "." + C.parseName() + f + B + R + C.parseName() + `, `; } } let h = g.trimmedContent().toUpperCase(); if (m.optionEQvalue("rowVersion", "yes") || 0 < h.indexOf("/ROWVERSION")) { - let v = b + " ".repeat(g.maxChildNameLen() - 11); - l += b + s[u] + ".row_version" + z(v + s[u]) + `_row_version, + let v = f + " ".repeat(g.maxChildNameLen() - 11); + l += f + s[u] + ".row_version" + z(v + s[u]) + `_row_version, `; } if (m.optionEQvalue("rowkey", "yes") || 0 < h.indexOf("/ROWKEY")) { - let v = b + " ".repeat(g.maxChildNameLen() - 7); - l += b + s[u] + ".ROW_KEY" + z(v + s[u]) + `_ROW_KEY, + let v = f + " ".repeat(g.maxChildNameLen() - 7); + l += f + s[u] + ".ROW_KEY" + z(v + s[u]) + `_ROW_KEY, `; } if (m.optionEQvalue("Audit Columns", "yes") || 0 < h.indexOf("/AUDITCOLS") || 0 < h.indexOf("/AUDIT COL")) { - let v = m.getOptionValue("createdcol"), C = b + " ".repeat(g.maxChildNameLen() - v.length); - l += b + s[u] + "." + v + z(C + s[u]) + "_" + v + `, + let v = m.getOptionValue("createdcol"), C = f + " ".repeat(g.maxChildNameLen() - v.length); + l += f + s[u] + "." + v + z(C + s[u]) + "_" + v + `, `; let A = m.getOptionValue("createdbycol"); - C = b + " ".repeat(g.maxChildNameLen() - A.length), l += b + s[u] + "." + A + z(C + s[u]) + "_" + A + `, + C = f + " ".repeat(g.maxChildNameLen() - A.length), l += f + s[u] + "." + A + z(C + s[u]) + "_" + A + `, `; let H = m.getOptionValue("updatedcol"); - C = b + " ".repeat(g.maxChildNameLen() - H.length), l += b + s[u] + "." + H + z(C + s[u]) + "_" + H + `, + C = f + " ".repeat(g.maxChildNameLen() - H.length), l += f + s[u] + "." + H + z(C + s[u]) + "_" + H + `, `; - let _ = m.getOptionValue("updatedbycol"); - C = b + " ".repeat(g.maxChildNameLen() - _.length), l += b + s[u] + "." + _ + z(C + s[u]) + "_" + _ + `, + let F = m.getOptionValue("updatedbycol"); + C = f + " ".repeat(g.maxChildNameLen() - F.length), l += f + s[u] + "." + F + z(C + s[u]) + "_" + F + `, `; } } @@ -8018,8 +8029,8 @@ let se = function() { `; for (let u = 2; u < s.length; u++) { let g = " ".repeat(d - s[u].length); - var N = s[u]; - m.objPrefix() != null && m.objPrefix() != "" && (N = m.objPrefix() + s[u] + g + s[u]), l += b + N + `, + var _ = s[u]; + m.objPrefix() != null && m.objPrefix() != "" && (_ = m.objPrefix() + s[u] + g + s[u]), l += f + _ + `, `; } l.lastIndexOf(`, @@ -8029,13 +8040,13 @@ let se = function() { for (let u = 2; u < s.length; u++) for (let g = 2; g < s.length; g++) if (g != u) { - var O = s[u], R = s[g], e = m.find(O); + var O = s[u], G = s[g], e = m.find(O); if (e != null) { - var a = m.find(R); + var a = m.find(G); if (a != null) for (var n in e.fks) { var o = e.fks[n]; - o == R && (l += b + O + "." + z(o) + "_id(+) = " + R + `.id and + o == G && (l += f + O + "." + z(o) + "_id(+) = " + G + `.id and `); } } @@ -8051,17 +8062,17 @@ let se = function() { const l = s.indexOf('"') == 0; let d = m.objPrefix() + s; return l ? d = m.objPrefix() + s.substring(1, s.length - 1) : d = (m.objPrefix() + s).toUpperCase(), `begin -` + b + "ords.enable_object(p_enabled=>TRUE, p_object=>'" + d + `'); +` + f + "ords.enable_object(p_enabled=>TRUE, p_object=>'" + d + `'); end; / `; }, this.generateTrigger = function() { if (this.parseType() != "table") return ""; - let r = ""; - m.optionEQvalue("editionable", "yes") && (r = " editionable"); + let i = ""; + m.optionEQvalue("editionable", "yes") && (i = " editionable"); let t = m.objPrefix() + this.parseName(); - var s = "create or replace" + r + " trigger " + t.toLowerCase() + `_BIU + var s = "create or replace" + i + " trigger " + t.toLowerCase() + `_BIU `.toLowerCase(); s += ` before insert or update `, s += " on " + t.toLowerCase() + ` @@ -8093,15 +8104,15 @@ end; end compress_int; `), s += `begin `; - var d = !1, E = "user"; - m.optionEQvalue("apex", "yes") && (E = "coalesce(sys_context('APEX$SESSION','APP_USER'),user)"), (m.optionEQvalue("rowkey", "yes") || 0 < l.indexOf("/ROWKEY")) && (s += ` if inserting then + var d = !1, S = "user"; + m.optionEQvalue("apex", "yes") && (S = "coalesce(sys_context('APEX$SESSION','APP_USER'),user)"), (m.optionEQvalue("rowkey", "yes") || 0 < l.indexOf("/ROWKEY")) && (s += ` if inserting then `, s += ` :new.row_key := compress_int(row_key_seq.nextval); `, s += ` end if; `, d = !0); for (var P = 0; P < this.children.length; P++) { - var B = this.children[P]; - let w = null; - 0 < B.content.indexOf("/lower") ? w = "LOWER".toLowerCase() : 0 < B.content.indexOf("/upper") && (w = "UPPER".toLowerCase()), w != null && (s += " :new." + B.parseName().toLowerCase() + " := " + w + "(:new." + B.parseName().toLowerCase() + `); + var T = this.children[P]; + let D = null; + 0 < T.content.indexOf("/lower") ? D = "LOWER".toLowerCase() : 0 < T.content.indexOf("/upper") && (D = "UPPER".toLowerCase()), D != null && (s += " :new." + T.parseName().toLowerCase() + " := " + D + "(:new." + T.parseName().toLowerCase() + `); `, d = !0); } (m.optionEQvalue("Row Version Number", "yes") || 0 < l.indexOf("/ROWVERSION")) && (s += ` if inserting then @@ -8111,17 +8122,17 @@ end; `, s += ` end if; `, d = !0), (m.optionEQvalue("Audit Columns", "yes") || 0 < l.indexOf("/AUDITCOLS") || 0 < l.indexOf("/AUDIT COL")) && (s += ` if inserting then `, s += " :new." + m.getOptionValue("createdcol") + ` := SYSDATE; -`.toLowerCase(), s += " :new." + m.getOptionValue("createdbycol") + " := " + E + `; +`.toLowerCase(), s += " :new." + m.getOptionValue("createdbycol") + " := " + S + `; `.toLowerCase(), s += ` end if; `, s += " :new." + m.getOptionValue("updatedcol") + ` := SYSDATE; -`.toLowerCase(), s += " :new." + m.getOptionValue("updatedbycol") + " := " + E + `; +`.toLowerCase(), s += " :new." + m.getOptionValue("updatedbycol") + " := " + S + `; `.toLowerCase(), d = !0); - var I = m.additionalColumns(); - for (var D in I) { - var F = I[D]; - s += " if :new." + D + ` is null then -`, F.startsWith("INT") ? s += " " + D + ` := 0; -` : s += " " + D + ` := 'N/A'; + var x = m.additionalColumns(); + for (var N in x) { + var w = x[N]; + s += " if :new." + N + ` is null then +`, w.startsWith("INT") ? s += " " + N + ` := 0; +` : s += " " + N + ` := 'N/A'; `, s += ` end if; `, d = !0; } @@ -8129,79 +8140,79 @@ end; / `.toLowerCase(), s) : ""; - }, this.procDecl = function(r) { + }, this.procDecl = function(i) { let t = ""; - r != "get" && (t = " default null"); + i != "get" && (t = " default null"); let s = "out"; - r != "get" && (s = " in"); - let l = b + "procedure " + r + `_row ( + i != "get" && (s = " in"); + let l = f + "procedure " + i + `_row ( `; - l += b + b + "p_id in number" + t; + l += f + f + "p_id in number" + t; for (var d in this.fks) { - let P = this.fks[d], B = "number", I = m.find(P); - I != null && I.getExplicitPkNode() != null && (B = I.getExplicitPkNode().parseType((D) => !0)), l += `, -`, l += b + b + "P_" + d + " " + s + " " + B + t; + let P = this.fks[d], T = "number", x = m.find(P); + x != null && x.getExplicitPkNode() != null && (T = x.getExplicitPkNode().parseType((N) => !0)), l += `, +`, l += f + f + "P_" + d + " " + s + " " + T + t; } for (let P = 0; P < this.children.length; P++) { - var E = this.children[P]; - E.children.length == 0 && (l += `, -`, l += b + b + "P_" + E.parseName() + " " + s + " " + E.parseType("plsql") + t); + var S = this.children[P]; + S.children.length == 0 && (l += `, +`, l += f + f + "P_" + S.parseName() + " " + s + " " + S.parseType("plsql") + t); } return l += ` )`, l; - }, this.procBody = function(r) { - let t = m.objPrefix() + this.parseName(), s = b + `is + }, this.procBody = function(i) { + let t = m.objPrefix() + this.parseName(), s = f + `is `; - s += b + `begin + s += f + `begin `; - let l = b + b + "for c1 in (select * from " + t + ` where id = p_id) loop + let l = f + f + "for c1 in (select * from " + t + ` where id = p_id) loop `; - r == "insert" && (l = b + b + "insert into " + t + ` ( -`, l += b + b + "id"), r == "update" && (l = b + b + "update " + t + ` set -`, l += b + b + "id = p_id"), s += l; - for (let B in this.fks) { - let I = this.fks[B], D = m.find(I); - D != null && D.getExplicitPkNode() != null && D.getExplicitPkNode().parseType((w) => !0), (r == "insert" || r == "update") && (s += `, + i == "insert" && (l = f + f + "insert into " + t + ` ( +`, l += f + f + "id"), i == "update" && (l = f + f + "update " + t + ` set +`, l += f + f + "id = p_id"), s += l; + for (let T in this.fks) { + let x = this.fks[T], N = m.find(x); + N != null && N.getExplicitPkNode() != null && N.getExplicitPkNode().parseType((D) => !0), (i == "insert" || i == "update") && (s += `, `); - let F = " P_" + B + " := c1." + B + `; + let w = " P_" + T + " := c1." + T + `; `; - r == "insert" && (F = " " + B), r == "update" && (F = " " + B + " = P_" + B + ` -`), s += F; + i == "insert" && (w = " " + T), i == "update" && (w = " " + T + " = P_" + T + ` +`), s += w; } for (var d = 0; d < this.children.length; d++) { - var E = this.children[d]; - if (E.children.length != 0) + var S = this.children[d]; + if (S.children.length != 0) continue; - (r == "insert" || r == "update") && (s += `, + (i == "insert" || i == "update") && (s += `, `); - let B = " P_" + E.parseName().toLowerCase() + " := c1." + E.parseName().toLowerCase() + `; + let T = " P_" + S.parseName().toLowerCase() + " := c1." + S.parseName().toLowerCase() + `; `; - r == "insert" && (B = " " + E.parseName().toLowerCase()), r == "update" && (B = " " + E.parseName().toLowerCase() + " = P_" + E.parseName().toLowerCase() + ` -`), s += B; + i == "insert" && (T = " " + S.parseName().toLowerCase()), i == "update" && (T = " " + S.parseName().toLowerCase() + " = P_" + S.parseName().toLowerCase() + ` +`), s += T; } - if (r == "insert") { + if (i == "insert") { s += ` ) values ( `, s += " p_id"; - for (let B in this.fks) + for (let T in this.fks) s += `, -`, s += " p_" + B; - for (let B = 0; B < this.children.length; B++) { - let I = this.children[B]; - I.children.length == 0 && (s += `, -`, s += " p_" + I.parseName()); +`, s += " p_" + T; + for (let T = 0; T < this.children.length; T++) { + let x = this.children[T]; + x.children.length == 0 && (s += `, +`, s += " p_" + x.parseName()); } } let P = ` end loop; `; - return r == "insert" && (P = " );"), r == "update" && (P = " where id = p_id;"), s += P, s += " end " + r + `_row; + return i == "insert" && (P = " );"), i == "update" && (P = " where id = p_id;"), s += P, s += " end " + i + `_row; `, s += ` `, s; }, this.generateTAPI = function() { if (this.children.length == 0) return ""; - let r = m.objPrefix() + this.parseName(); - var t = "create or replace package " + r.toLowerCase() + `_API + let i = m.objPrefix() + this.parseName(); + var t = "create or replace package " + i.toLowerCase() + `_API is `.toLowerCase(); @@ -8214,10 +8225,10 @@ is `, t += ` procedure delete_row ( p_id in number ); -end ` + r.toLowerCase() + `_api; +end ` + i.toLowerCase() + `_api; / -`, t += "create or replace package body " + r.toLowerCase() + `_API +`, t += "create or replace package body " + i.toLowerCase() + `_API is `.toLowerCase(), t += this.procDecl("get"), t += ` @@ -8228,96 +8239,96 @@ is `, t += ` ) `, t += ` is `, t += ` begin -`, t += " delete from " + r.toLowerCase() + ` where id = p_id; +`, t += " delete from " + i.toLowerCase() + ` where id = p_id; `, t += ` end delete_row; -`, t += "end " + r.toLowerCase() + `_api; +`, t += "end " + i.toLowerCase() + `_api; `, t += `/ `, t.toLowerCase(); - }, this.rows = 0, this.generateData = function(r, t) { + }, this.rows = 0, this.generateData = function(i, t) { let s = ""; if (m.optionEQvalue("inserts", !1)) return s; - let l = m.objPrefix() + this.parseName(), d = this.trimmedContent().toLowerCase(), E = d.indexOf("/insert "), P = 0; - if (0 < E) { - d = d.substr(E + 8); - let I = d.split(" "); - if (this.rows = parseInt(I[0]), 0 < this.rows) { + let l = m.objPrefix() + this.parseName(), d = this.trimmedContent().toLowerCase(), S = d.indexOf("/insert "), P = 0; + if (0 < S) { + d = d.substr(S + 8); + let x = d.split(" "); + if (this.rows = parseInt(x[0]), 0 < this.rows) { for (m.getOptionValue("datalimit") < this.rows && (this.rows = m.getOptionValue("datalimit")), P = 0; P < this.rows; P++) { - let D = r; - r != null && Array.isArray(r) && (D = r[P]), s += "insert into " + l + ` ( + let N = i; + i != null && Array.isArray(i) && (N = i[P]), s += "insert into " + l + ` ( `; - let F = this.getGenIdColName(); - if (F != null) - s += b + F + `, + let w = this.getGenIdColName(); + if (w != null) + s += f + w + `, `; else { - let w = this.getExplicitPkNode(); - w != null && (s += b + w.parseName() + `, + let D = this.getExplicitPkNode(); + D != null && (s += f + D.parseName() + `, `); } - for (let w in this.fks) { - let G = this.fks[w], N = m.find(G), O = ""; - N == null && (N = m.find(w), N.isMany2One() & !w.endsWith("_id") && (G = w, w = z(w), O = "_id")), s += b + w + O + `, + for (let D in this.fks) { + let R = this.fks[D], _ = m.find(R), O = ""; + _ == null && (_ = m.find(D), _.isMany2One() & !D.endsWith("_id") && (R = D, D = z(D), O = "_id")), s += f + D + O + `, `; } - for (let w = 0; w < this.children.length; w++) { - let G = this.children[w]; - if (!(F != null && G.parseName() == "id") && G.refId() == null) { - if (G == this.getExplicitPkNode()) + for (let D = 0; D < this.children.length; D++) { + let R = this.children[D]; + if (!(w != null && R.parseName() == "id") && R.refId() == null) { + if (R == this.getExplicitPkNode()) continue; - G.children.length == 0 && (s += b + G.parseName() + `, + R.children.length == 0 && (s += f + R.parseName() + `, `); } } if (s.lastIndexOf(`, `) == s.length - 2 && (s = s.substr(0, s.length - 2) + ` `), s += `) values ( -`, F != null) - s += b + (P + 1) + `, +`, w != null) + s += f + (P + 1) + `, `; else { - let w = this.getExplicitPkNode(); - if (w != null) { - const G = w.parseName(); - let N = f(m.data, null, G, this.parseName()), O = -1; - D != null && (O = D[G]), N != null && N[P] != null && (O = N[P]), s += b + (O ?? P + 1) + `, + let D = this.getExplicitPkNode(); + if (D != null) { + const R = D.parseName(); + let _ = b(m.data, null, R, this.parseName()), O = -1; + N != null && (O = N[R]), _ != null && _[P] != null && (O = _[P]), s += f + (O ?? P + 1) + `, `; } } - for (let w in this.fks) { - let G = this.fks[w], N = m.find(G), O = []; - for (let R = 1; R <= N.rows; R++) - O.push(R); - if (t != null && N != null) { - const R = N.getPkName(); - let e = t[R]; + for (let D in this.fks) { + let R = this.fks[D], _ = m.find(R), O = []; + for (let G = 1; G <= _.rows; G++) + O.push(G); + if (t != null && _ != null) { + const G = _.getPkName(); + let e = t[G]; e != null && (O = [], O[0] = e); } - if (D != null) { - let R = D[G]; - if (R != null) { - let e = R[N.getPkName()]; + if (N != null) { + let G = N[R]; + if (G != null) { + let e = G[_.getPkName()]; e != null && (O = [], O[0] = e); } } - s += b + oe(m.getOptionValue("Data Language"), le(l, z(G) + "_id", "INTEGER", O)) + `, + s += f + oe(m.getOptionValue("Data Language"), le(l, z(R) + "_id", "INTEGER", O)) + `, `; } - for (let w = 0; w < this.children.length; w++) { - let G = this.children[w]; - if (!(F != null && G.parseName() == "id") && G.refId() == null) { - if (G == this.getExplicitPkNode()) + for (let D = 0; D < this.children.length; D++) { + let R = this.children[D]; + if (!(w != null && R.parseName() == "id") && R.refId() == null) { + if (R == this.getExplicitPkNode()) continue; - if (G.children.length == 0) { - let N = G.parseValues(), O = G.parseName(); - if (D != null) { - let a = D[O]; - a != null && (N = [], N[0] = a); + if (R.children.length == 0) { + let _ = R.parseValues(), O = R.parseName(); + if (N != null) { + let a = N[O]; + a != null && (_ = [], _[0] = a); } - let R = f(m.data, null, O, this.parseName()); - R != null && R[P] != null && (N = [], N[0] = R[P]); - let e = le(l, O, G.parseType(), N); - s += b + oe(m.getOptionValue("Data Language"), e) + `, + let G = b(m.data, null, O, this.parseName()); + G != null && G[P] != null && (_ = [], _[0] = G[P]); + let e = le(l, O, R.parseType(), _); + s += f + oe(m.getOptionValue("Data Language"), e) + `, `; } } @@ -8334,54 +8345,54 @@ is s != "" && (s += `commit; `); - let B = this.getGenIdColName(); - B != null && 1 < P && !m.optionEQvalue("pk", "guid") && (s += "alter table " + l + ` -modify ` + B + " generated always as identity restart start with " + (P + 1) + `; + let T = this.getGenIdColName(); + T != null && 1 < P && !m.optionEQvalue("pk", "guid") && (s += "alter table " + l + ` +modify ` + T + " generated always as identity restart start with " + (P + 1) + `; `); - for (let I = 0; I < this.children.length; I++) { - const D = this.children[I]; - if (0 < D.children.length) { - const F = r; - let w = null; - r != null && (w = r[D.parseName()]), s += D.generateData(w, F); + for (let x = 0; x < this.children.length; x++) { + const N = this.children[x]; + if (0 < N.children.length) { + const w = i; + let D = null; + i != null && (D = i[N.parseName()]), s += N.generateData(D, w); } } return s; }, this.isArray = function() { return !this.isMany2One() && this.parent != null; - }, this.hasNonArrayChildId = function(r) { - if (!r.endsWith("_id")) + }, this.hasNonArrayChildId = function(i) { + if (!i.endsWith("_id")) return !1; - var t = r.slice(0, -3); + var t = i.slice(0, -3); return this.children.some((s) => s.children.length > 0 && s.parseName() == t && !s.isArray()); - }, this.generateSelectJsonTopDown = function(r) { + }, this.generateSelectJsonTopDown = function(i) { var t = this.parseName(); let s = ""; - this.getExplicitPkNode == null && (s += r + "'" + this.getGenIdColName() + "' : " + t + "." + this.getGenIdColName() + `, + this.getExplicitPkNode == null && (s += i + "'" + this.getGenIdColName() + "' : " + t + "." + this.getGenIdColName() + `, `); for (var l = 0; l < this.children.length; l++) { - var d = this.children[l], E = d.parseName(); + var d = this.children[l], S = d.parseName(); if (d.children.length == 0) { - if (this.hasNonArrayChildId(E)) + if (this.hasNonArrayChildId(S)) continue; - s += r + "'" + E + "' : " + t + "." + E; + s += i + "'" + S + "' : " + t + "." + S; } else { - s += r + "'" + E + `' : [ -`, d.isMany2One(), r += " ", s += r + `select JSON { -`, s += d.generateSelectJsonTopDown(r + " "), s += r + " WITH NOCHECK } from " + E + ` with INSERT UPDATE + s += i + "'" + S + `' : [ +`, d.isMany2One(), i += " ", s += i + `select JSON { +`, s += d.generateSelectJsonTopDown(i + " "), s += i + " WITH NOCHECK } from " + S + ` with INSERT UPDATE `; - let I = null; + let x = null; for (var P in d.fks) { - var B = d.fks[P]; - if (B == t) { - I = P; + var T = d.fks[P]; + if (T == t) { + x = P; break; } } - const D = t + "." + this.getPkName(), F = E + "." + I; - s += r + "where " + F + " = " + D + ` -`, r = r.slice(0, -2), s += r + "]"; + const N = t + "." + this.getPkName(), w = S + "." + x; + s += i + "where " + w + " = " + N + ` +`, i = i.slice(0, -2), s += i + "]"; } s += l < this.children.length - 1 ? `, ` : ` @@ -8390,7 +8401,7 @@ modify ` + B + " generated always as identity restart start with " + (P + 1) + return s[s.length - 2] == "," ? s.slice(0, -2) + ` ` : s; }, this.generateDualityView = function() { - var r = this.trimmedContent(), t = r.split(" "); + var i = this.trimmedContent(), t = i.split(" "); if (3 < t.length) throw "max 1 table is allowed in DV"; var s = "", l = m.find(t[2]); @@ -8404,267 +8415,267 @@ modify ` + B + " generated always as identity restart start with " + (P + 1) + } function k(y) { m = y; - const S = y.input; - let i = [], c = []; - const r = Q(S + ` + const M = y.input; + let r = [], c = []; + const i = Z(M + ` `, !0, !0, ""); m.data = null; let t = null, s = "", l = 0; e: - for (let d in r) { - const E = r[d]; - if (E.value == ` + for (let d in i) { + const S = i[d]; + if (S.value == ` ` && t == null) { if (s = s.replace(/\r/g, ""), s.replace(/\r/g, "").replace(/ /g, "") == "") { s = "", l++; continue; } - let B = new M(l, s, null), I = !1; - for (let D = 0; D < i.length; D++) { - let F = i[D]; - if (B.apparentDepth() <= F.apparentDepth()) - if (0 < D) { - let w = i[D - 1]; - B = new M(l, s, w), i[D] = B, i = i.slice(0, D + 1), I = !0; + let T = new I(l, s, null), x = !1; + for (let N = 0; N < r.length; N++) { + let w = r[N]; + if (T.apparentDepth() <= w.apparentDepth()) + if (0 < N) { + let D = r[N - 1]; + T = new I(l, s, D), r[N] = T, r = r.slice(0, N + 1), x = !0; break; } else - i[0] = B, i = i.slice(0, 1), c.push(B), I = !0; + r[0] = T, r = r.slice(0, 1), c.push(T), x = !0; } - if (!I) { - if (0 < i.length) { - let D = i[i.length - 1]; - B = new M(l, s, D); + if (!x) { + if (0 < r.length) { + let N = r[r.length - 1]; + T = new I(l, s, N); } - i.push(B), B.apparentDepth() == 0 && c.push(B); + r.push(T), T.apparentDepth() == 0 && c.push(T); } - if (B.isMany2One()) { - const D = B.parent; - D.fks == null && (D.fks = []); - let F = B.refId(); - F == null && (F = B.parseName()), D.fks[B.parseName() + "_id"] = F; + if (T.isMany2One()) { + const N = T.parent; + N.fks == null && (N.fks = []); + let w = T.refId(); + w == null && (w = T.parseName()), N.fks[T.parseName() + "_id"] = w; } l++, s = ""; continue; } - if (t == null && E.value == "#") { + if (t == null && S.value == "#") { t = ""; continue; } if (t != null) { - if (t += E.value, E.value != ` -` && E.value != "}") + if (t += S.value, S.value != ` +` && S.value != "}") continue; - const P = Q(t, !1, !0, ""); + const P = Z(t, !1, !0, ""); if (P.length % 4 == 3 && P[1].value == ":") { y.setOptions(t), t = null, s = ""; continue; } - let B = null, I = null; - for (let D in P) { - const F = P[D]; - if (B == null && F.value == "document") { - B = ""; + let T = null, x = null; + for (let N in P) { + const w = P[N]; + if (T == null && w.value == "document") { + T = ""; continue; } - if (B != null) { - if (B += F.value, B == "=") + if (T != null) { + if (T += w.value, T == "=") continue; - let w = B.substring(1); + let D = T.substring(1); try { - m.data = JSON.parse(w), t = null, s = ""; + m.data = JSON.parse(D), t = null, s = ""; continue e; } catch { } } - if (I == null && F.value == "settings") { - I = ""; + if (x == null && w.value == "settings") { + x = ""; continue; } - if (I != null) { - I += F.value, I.substring(1); + if (x != null) { + x += w.value, x.substring(1); try { - y.setOptions(I), t = null, s = ""; + y.setOptions(x), t = null, s = ""; continue e; } catch { } } } } - if (E.type != "comment") { - if (E.type == "line-comment") { - 0 < s.trim().length && (s += E.value); + if (S.type != "comment") { + if (S.type == "line-comment") { + 0 < s.trim().length && (s += S.value); continue; } - s += E.value; + s += S.value; } } return c; } - function p(y, S) { - let i = S.toLowerCase(); - return 0 < y.indexOf(i) && y.indexOf(i) == y.length - i.length ? y.substring(0, y.length - i.length) : y.trim(); + function p(y, M) { + let r = M.toLowerCase(); + return 0 < y.indexOf(r) && y.indexOf(r) == y.length - r.length ? y.substring(0, y.length - r.length) : y.trim(); } - function f(y, S, i, c) { - let r = []; + function b(y, M, r, c) { + let i = []; if (y == null || typeof y != "object") return null; - let t = y[i]; - t != null && S == c && r.push(t); + let t = y[r]; + t != null && M == c && i.push(t); for (var s in y) { let l = y[s]; - t = f(l, s, i, c), t != null && (r = r.concat(t)); + t = b(l, s, r, c), t != null && (i = i.concat(t)); } - return r; + return i; } return k; }(); var Ce = function() { function m() { - this.aggrCounts = {}, this.calculateCounts = function(L, x) { - let M = this.aggrSizes[L]; - M == null && (M = 0); + this.aggrCounts = {}, this.calculateCounts = function(E, L) { + let I = this.aggrSizes[E]; + I == null && (I = 0); let k = 1; - x.length != null && (k = x.length), this.aggrSizes[L] = M + k; - for (let p in x) - typeof x[p] == "object" && this.calculateCounts(p, x[p]); - }, this.introspect = function(L, x, M, k) { - if (M == 0) { - if (this.aggrSizes = {}, L == null) - for (let y in x) { - let S = ["_address", "_id", "_name", "Id"], i = !1, c = ""; - for (let r = 0; r < S.length; r++) { - const t = S[r]; + L.length != null && (k = L.length), this.aggrSizes[E] = I + k; + for (let p in L) + typeof L[p] == "object" && this.calculateCounts(p, L[p]); + }, this.introspect = function(E, L, I, k) { + if (I == 0) { + if (this.aggrSizes = {}, E == null) + for (let y in L) { + let M = ["_address", "_id", "_name", "Id"], r = !1, c = ""; + for (let i = 0; i < M.length; i++) { + const t = M[i]; if (y.endsWith(t)) { - c += y.substring(0, y.length - t.length), i = !0; + c += y.substring(0, y.length - t.length), r = !0; break; } } - i || (c += "unnamed_entity"), L = c; + r || (c += "unnamed_entity"), E = c; break; } - this.calculateCounts(L, x); + this.calculateCounts(E, L); } let p = ""; k != null && k && (p = ">"); - let f = ` -` + b(M) + p + L; - if (typeof x == "number" && (f += " num", L.endsWith("_id") || L.endsWith("Id"))) - return f += " /pk", f; - if (typeof x == "object") { - if (Array.isArray(x)) - for (let S in x) { - 1 <= S && console.log("1 <= property !"); - const i = x[S]; - return this.introspect(L, i, M, !1); + let b = ` +` + f(I) + p + E; + if (typeof L == "number" && (b += " num", E.endsWith("_id") || E.endsWith("Id"))) + return b += " /pk", b; + if (typeof L == "object") { + if (Array.isArray(L)) + for (let M in L) { + 1 <= M && console.log("1 <= property !"); + const r = L[M]; + return this.introspect(E, r, I, !1); } - else if (L != "") { - let S = this.aggrSizes[L]; - f += " /insert " + S; + else if (E != "") { + let M = this.aggrSizes[E]; + b += " /insert " + M; } let y = ""; - for (let S in x) { - const i = x[S]; - if (S != null) { - const t = z(L), s = S.toLowerCase(); - if (L != null && t + "_id" == s && 0 < M && (y = S), t + "_id" == s) + for (let M in L) { + const r = L[M]; + if (M != null) { + const t = z(E), s = M.toLowerCase(); + if (E != null && t + "_id" == s && 0 < I && (y = M), t + "_id" == s) continue; } - let c = typeof i == "object"; - const r = this.introspect(S, i, M + 1, c); - f += r; + let c = typeof r == "object"; + const i = this.introspect(M, r, I + 1, c); + b += i; } - y != "" && (f += ` -` + b(M) + y); + y != "" && (b += ` +` + f(I) + y); } - return M == 0 && (f += ` + return I == 0 && (b += ` -dv ` + L + "_dv " + L, f += ` +dv ` + E + "_dv " + E, b += ` -#settings = { genpk: false, drop: true }`, f += ` +#settings = { genpk: false, drop: true }`, b += ` -- Generated by json2qsql.js ${te()} ` + (/* @__PURE__ */ new Date()).toLocaleString() + ` -`, f += `#document = -`, f += JSON.stringify(x, null, 3), f += ` -`), f; +`, b += `#document = +`, b += JSON.stringify(L, null, 3), b += ` +`), b; }; } - function b(L) { - for (var x = "", M = 0; M < L; M++) - x = x + " "; - return x; + function f(E) { + for (var L = "", I = 0; I < E; I++) + L = L + " "; + return L; } return new m(); }(); const ve = function() { - function m(p, f, y, S) { - this.from = f, this.to = y, y == null && (this.to = new b(f.line, f.depth + 1)), this.message = p, this.severity = S, S == null && (this.severity = "error"); + function m(p, b, y, M) { + this.from = b, this.to = y, y == null && (this.to = new f(b.line, b.depth + 1)), this.message = p, this.severity = M, M == null && (this.severity = "error"); } - function b(p, f) { - this.line = p, this.depth = f; + function f(p, b) { + this.line = p, this.depth = b; } - function L(p) { - const f = p, y = p.input; - let S = []; - const i = y.split(` + function E(p) { + const b = p, y = p.input; + let M = []; + const r = y.split(` `); - S = S.concat(k(i)); - const c = f.descendants(); - for (let r = 0; r < c.length; r++) { - const t = c[r]; - if (f.optionEQvalue("genpk", !0) && c[r].parseName() == "id") { + M = M.concat(k(r)); + const c = b.descendants(); + for (let i = 0; i < c.length; i++) { + const t = c[i]; + if (b.optionEQvalue("genpk", !0) && c[i].parseName() == "id") { const d = t.content.toLowerCase().indexOf("id"); - S.push(new m(q.duplicateId, new b(t.line, d))); + M.push(new m(q.duplicateId, new f(t.line, d))); continue; } const s = t.src[2]; if (2 < t.src.length && s.value == "-") { const d = s.begin; - S.push(new m(q.invalidDatatype, new b(t.line, d))); + M.push(new m(q.invalidDatatype, new f(t.line, d))); continue; } const l = t.src[1]; if (1 < t.src.length && 0 < l.value.indexOf("0")) { const d = l.begin; - S.push(new m(q.invalidDatatype, new b(t.line, d))); + M.push(new m(q.invalidDatatype, new f(t.line, d))); continue; } - S = S.concat(x(f, t)), S = S.concat(M(f, t)); + M = M.concat(L(b, t)), M = M.concat(I(b, t)); } - return S; + return M; } - function x(p, f) { - var y = [], S = f.content.toLowerCase(); - if (f.parseType() == "view") { - var i = $(S, " "); + function L(p, b) { + var y = [], M = b.content.toLowerCase(); + if (b.parseType() == "view") { + var r = $(M, " "); let t = 0; - for (var c = 0; c < i.length; c++) - if (t += i[c].length, i[c] != " " && i[c] != "view" && c != 1) { - var r = p.find(i[c]); - r == null && y.push(new m( - q.undefinedObject + i[c], - new b(f.line, t - i[c].length) + for (var c = 0; c < r.length; c++) + if (t += r[c].length, r[c] != " " && r[c] != "view" && c != 1) { + var i = p.find(r[c]); + i == null && y.push(new m( + q.undefinedObject + r[c], + new f(b.line, t - r[c].length) )); } } return y; } - function M(p, f) { - var y = [], S = f.content.toLowerCase(); - if (0 < S.indexOf("/fk") || 0 < S.indexOf("/reference")) { - let r = $(S, " "), t = 0, s = !1; - for (var i = 0; i < r.length; i++) - if (t += r[i].length, r[i] != " ") { - if (r[i] == "/fk" || r[i].indexOf("/reference") == 0) { + function I(p, b) { + var y = [], M = b.content.toLowerCase(); + if (0 < M.indexOf("/fk") || 0 < M.indexOf("/reference")) { + let i = $(M, " "), t = 0, s = !1; + for (var r = 0; r < i.length; r++) + if (t += i[r].length, i[r] != " ") { + if (i[r] == "/fk" || i[r].indexOf("/reference") == 0) { s = !0; continue; } if (s) { - var c = p.find(r[i]); + var c = p.find(i[r]); if (c == null) { y.push(new m( - q.undefinedObject + r[i], - new b(f.line, t - r[i].length) + q.undefinedObject + i[r], + new f(b.line, t - i[r].length) )); break; } @@ -8674,54 +8685,54 @@ const ve = function() { return y; } function k(p) { - for (var f = [], y = Ae(p), S = 1; S < p.length; S++) { - var i = p[S - 1], c = p[S], r = re(i), t = re(c); - t != 0 && r < t && t < r + y && f.push( + for (var b = [], y = Ae(p), M = 1; M < p.length; M++) { + var r = p[M - 1], c = p[M], i = re(r), t = re(c); + t != 0 && i < t && t < i + y && b.push( new m( q.misalignedAttribute + y, - new b(S, t) + new f(M, t) ) ); } - return f; + return b; } - return L; + return E; }(); function Ae(m) { - let b = []; - for (var L = 0; L < m.length; L++) { - var x = m[L]; - b[L] = re(x); + let f = []; + for (var E = 0; E < m.length; E++) { + var L = m[E]; + f[E] = re(L); } - let M = []; - for (let p = 0; p < b.length; p++) { - let f = ye(b, p); - if (f != null) { - let y = M[b[p] - b[f]]; - y == null && (y = 0), M[b[p] - b[f]] = y + 1; + let I = []; + for (let p = 0; p < f.length; p++) { + let b = ye(f, p); + if (b != null) { + let y = I[f[p] - f[b]]; + y == null && (y = 0), I[f[p] - f[b]] = y + 1; } } let k = null; - for (let p in M) - (k == null || M[k] <= M[p]) && (k = p); + for (let p in I) + (k == null || I[k] <= I[p]) && (k = p); return k; } function re(m) { - for (var b = m.split(/ |\t/), L = 0, x = 0; x < b.length; x++) { - var M = b[x]; - if (M == " " && (L += 4), M == "") { - L++; + for (var f = m.split(/ |\t/), E = 0, L = 0; L < f.length; L++) { + var I = f[L]; + if (I == " " && (E += 4), I == "") { + E++; continue; } - if (!/[^.a-zA-Z0-9_"]/.test(M)) - return L; + if (!/[^.a-zA-Z0-9_"]/.test(I)) + return E; } return 0; } -function ye(m, b) { - for (let L = b; 0 <= L; L--) - if (m[L] < m[b]) - return L; +function ye(m, f) { + for (let E = f; 0 <= E; E--) + if (m[E] < m[f]) + return E; return null; } const q = { @@ -8763,156 +8774,156 @@ const q = { //"Auxiliary Columns": {label: "Auxiliary Columns", value:''}, // e.g. security_group_id integer //namecase: {label: 'Object and Field name convention', value:'canonic',check:['canonic','json']}, }; - function b(x) { - if (x == null) + function f(L) { + if (L == null) return null; - let M = x; - return typeof M == "string" && (M = M.toLowerCase()), M == "yes" ? !0 : M == "no" ? !1 : M == "y" ? !0 : M == "n" ? !1 : M == "true" ? !0 : M == "false" ? !1 : M == ne.toLowerCase() ? "identity" : M == ce.toLowerCase() ? "guid" : M == ue.toLowerCase() ? "tswtz" : M == me.toLowerCase() ? "tswltz" : M; + let I = L; + return typeof I == "string" && (I = I.toLowerCase()), I == "yes" ? !0 : I == "no" ? !1 : I == "y" ? !0 : I == "n" ? !1 : I == "true" ? !0 : I == "false" ? !1 : I == ne.toLowerCase() ? "identity" : I == ce.toLowerCase() ? "guid" : I == ue.toLowerCase() ? "tswtz" : I == me.toLowerCase() ? "tswltz" : I; } - function L(x, M) { - this.ddl = null, this.erd = null, this.errors = null, this.options = JSON.parse(JSON.stringify(m)), this.input = x, this.getOptionValue = function(p) { - const f = p.toLowerCase(); - let y = this.options[f]; - if (!(f in this.options)) - for (let S in this.options) { - const i = this.options[S].label; - if (i == null) + function E(L, I) { + this.ddl = null, this.erd = null, this.errors = null, this.options = JSON.parse(JSON.stringify(m)), this.input = L, this.getOptionValue = function(p) { + const b = p.toLowerCase(); + let y = this.options[b]; + if (!(b in this.options)) + for (let M in this.options) { + const r = this.options[M].label; + if (r == null) continue; - i.toLowerCase() == f && (y = this.options[S]); + r.toLowerCase() == b && (y = this.options[M]); } return y == null ? null : y.value; - }, this.optionEQvalue = function(p, f) { + }, this.optionEQvalue = function(p, b) { var y = this.getOptionValue(p); - return b(y) == b(f); + return f(y) == f(b); }, this.nonDefaultOptions = function() { let p = {}; - for (let f in this.options) - m[f] && !this.optionEQvalue(f, m[f].value) && (p[f] = this.options[f].value); + for (let b in this.options) + m[b] && !this.optionEQvalue(b, m[b].value) && (p[b] = this.options[b].value); return p; }, this.unknownOptions = function() { let p = []; - for (let f in this.options) - m[f] == null && p.push(f); + for (let b in this.options) + m[b] == null && p.push(b); return p; - }, this.setOptionValue = function(p, f) { + }, this.setOptionValue = function(p, b) { let y = p.toLowerCase(); if (!(y in this.options)) { - for (let i in this.options) - if (this.options[i].label == p) { - this.options[i].value = f; + for (let r in this.options) + if (this.options[r].label == p) { + this.options[r].value = b; return; } } - f == null && (f = ""); - let S = this.options[y]; - S == null && (S = {}, this.options[y] = S), S.value = f; + b == null && (b = ""); + let M = this.options[y]; + M == null && (M = {}, this.options[y] = M), M.value = b; }, this.semantics = function() { var p = ""; return this.optionEQvalue("semantics", "CHAR") ? p = " char" : this.optionEQvalue("semantics", "BYTE") && (p = " byte"), p; }, this.find = function(p) { - for (var f = 0; f < this.forest.length; f++) - for (var y = this.forest[f].descendants(), S = 0; S < y.length; S++) { - var i = y[S]; - if (i.parseName() == de(p)) - return i; + for (var b = 0; b < this.forest.length; b++) + for (var y = this.forest[b].descendants(), M = 0; M < y.length; M++) { + var r = y[M]; + if (r.parseName() == de(p)) + return r; } return null; }, this.setOptions = function(p) { p = p.trim(), p.startsWith("#") && (p = p.substring(1).trim()); - const f = p.indexOf("="); - let y = p.substring(f + 1).trim(); + const b = p.indexOf("="); + let y = p.substring(b + 1).trim(); y.indexOf("{") < 0 && (y = "{" + p + "}"); - let S = "", i = Q(y, !0, !0, ""); - for (let r in i) { - let t = i[r]; - t.type == "identifier" && t.value != "true" && t.value != "false" && t.value != "null" ? S += '"' + t.value + '"' : S += t.value; + let M = "", r = Z(y, !0, !0, ""); + for (let i in r) { + let t = r[i]; + t.type == "identifier" && t.value != "true" && t.value != "false" && t.value != "null" ? M += '"' + t.value + '"' : M += t.value; } - let c = JSON.parse(S); - for (let r in c) - this.setOptionValue(r.toLowerCase(), c[r]); + let c = JSON.parse(M); + for (let i in c) + this.setOptionValue(i.toLowerCase(), c[i]); }, this.descendants = function() { - for (var p = [], f = 0; f < this.forest.length; f++) - p = p.concat(this.forest[f].descendants()); + for (var p = [], b = 0; b < this.forest.length; b++) + p = p.concat(this.forest[b].descendants()); return p; }, this.additionalColumns = function() { - var p = [], f = this.getOptionValue("Auxiliary Columns"); - if (f == null) + var p = [], b = this.getOptionValue("Auxiliary Columns"); + if (b == null) return p; - for (var y = f.split(","), S = 0; S < y.length; S++) { - var i = y[S].trim(), c = "VARCHAR2(4000)", r = i.indexOf(" "); - 0 < r && (c = i.substring(r + 1).toUpperCase(), i = i.substring(0, r)), p[i] = c; + for (var y = b.split(","), M = 0; M < y.length; M++) { + var r = y[M].trim(), c = "VARCHAR2(4000)", i = r.indexOf(" "); + 0 < i && (c = r.substring(i + 1).toUpperCase(), r = r.substring(0, i)), p[r] = c; } return p; }, this.objPrefix = function(p) { - var f = this.getOptionValue("schema"); - f == null && (f = ""), f != "" && p == null ? f = f + "." : f = ""; + var b = this.getOptionValue("schema"); + b == null && (b = ""), b != "" && p == null ? b = b + "." : b = ""; var y = ""; - return this.getOptionValue("prefix") != null && (y = this.getOptionValue("prefix")), f = f + y, y != "" && (f = f + "_"), f.toLowerCase(); + return this.getOptionValue("prefix") != null && (y = this.getOptionValue("prefix")), b = b + y, y != "" && (b = b + "_"), b.toLowerCase(); }; let k = ""; - 0 < x.toLowerCase().indexOf("overridesettings") && se(this), M != null && this.optionEQvalue("overrideSettings", !1) && (k = "# settings = " + M + ` + 0 < L.toLowerCase().indexOf("overridesettings") && se(this), I != null && this.optionEQvalue("overrideSettings", !1) && (k = "# settings = " + I + ` -`), this.input = k + x, this.forest = se(this), this.getERD = function() { +`), this.input = k + L, this.forest = se(this), this.getERD = function() { if (this.erd != null) return this.erd; - let p = this.descendants(), f = { items: [] }; - for (let i = 0; i < p.length; i++) { - if (p[i].parseType() != "table") + let p = this.descendants(), b = { items: [] }; + for (let r = 0; r < p.length; r++) { + if (p[r].parseType() != "table") continue; - let c = { name: this.objPrefix("no schema") + p[i].parseName("") }, r = this.getOptionValue("schema"); - r == "" && (r = null), c.schema = r, c.columns = [], f.items.push(c); - let t = p[i].getGenIdColName(); + let c = { name: this.objPrefix("no schema") + p[r].parseName("") }, i = this.getOptionValue("schema"); + i == "" && (i = null), c.schema = i, c.columns = [], b.items.push(c); + let t = p[r].getGenIdColName(); t != null && c.columns.push({ name: t, datatype: "number" }); - for (let l = 0; l < p[i].children.length; l++) { - let d = p[i].children[l]; - if (d.parseType() != "table" && (c.columns.push({ name: d.parseName(""), datatype: d.parseType((E) => !0) }), 0 < d.indexOf("file"))) { - const E = d.parseName(); - c.columns.push({ name: E + "_filename", datatype: "varchar2(255" + this.semantics() + ")" }), c.columns.push({ name: E + "_mimetype", datatype: "varchar2(255" + this.semantics() + ")" }), c.columns.push({ name: E + "_charset", datatype: "varchar2(255" + this.semantics() + ")" }), c.columns.push({ name: E + "_lastupd", datatype: "date" }); + for (let l = 0; l < p[r].children.length; l++) { + let d = p[r].children[l]; + if (d.parseType() != "table" && (c.columns.push({ name: d.parseName(""), datatype: d.parseType((S) => !0) }), 0 < d.indexOf("file"))) { + const S = d.parseName(); + c.columns.push({ name: S + "_filename", datatype: "varchar2(255" + this.semantics() + ")" }), c.columns.push({ name: S + "_mimetype", datatype: "varchar2(255" + this.semantics() + ")" }), c.columns.push({ name: S + "_charset", datatype: "varchar2(255" + this.semantics() + ")" }), c.columns.push({ name: S + "_lastupd", datatype: "date" }); } } - const s = p[i].trimmedContent().toUpperCase(); + const s = p[r].trimmedContent().toUpperCase(); if ((this.optionEQvalue("rowkey", !0) || 0 < s.indexOf("/ROWKEY")) && c.columns.push({ name: "row_key", datatype: "varchar2(30 char)" }), (this.optionEQvalue("rowVersion", "yes") || 0 < s.indexOf("/ROWVERSION")) && c.columns.push({ name: "row_version", datatype: "integer" }), this.optionEQvalue("Audit Columns", "yes") || 0 < s.indexOf("/AUDITCOLS")) { let l = this.getOptionValue("createdcol"); c.columns.push({ name: l, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); let d = this.getOptionValue("createdbycol"); c.columns.push({ name: d, datatype: "varchar2(255" + this.semantics() + ")" }); - let E = this.getOptionValue("updatedcol"); - c.columns.push({ name: E, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); + let S = this.getOptionValue("updatedcol"); + c.columns.push({ name: S, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); let P = this.getOptionValue("updatedbycol"); c.columns.push({ name: P, datatype: "varchar2(255" + this.semantics() + ")" }); } var y = this.additionalColumns(); for (let l in y) { - var S = y[l]; - pad = tab + " ".repeat(this.maxChildNameLen() - l.length), ret += tab + l.toUpperCase() + pad + S + ` not null, + var M = y[l]; + pad = tab + " ".repeat(this.maxChildNameLen() - l.length), ret += tab + l.toUpperCase() + pad + M + ` not null, `; } } - f.links = []; - for (let i = 0; i < p.length; i++) - if (p[i].parseType() == "table") { - p[i].toDDL(); - for (let c in p[i].fks) { - let r = p[i].fks[c], t = this.find(r); + b.links = []; + for (let r = 0; r < p.length; r++) + if (p[r].parseType() == "table") { + p[r].toDDL(); + for (let c in p[r].fks) { + let i = p[r].fks[c], t = this.find(i); if (t == null) continue; let s = "id"; - t.getExplicitPkNode() != null && (s = t.getExplicitPkNode().parseName()), f.links.push({ - source: this.objPrefix() + r, + t.getExplicitPkNode() != null && (s = t.getExplicitPkNode().parseName()), b.links.push({ + source: this.objPrefix() + i, source_id: s, - target: this.objPrefix() + p[i].parseName(""), + target: this.objPrefix() + p[r].parseName(""), target_id: c }); } } - return this.erd = f, f; + return this.erd = b, b; }, this.getDDL = function() { if (this.ddl != null) return this.ddl; - var p = "", f = this.descendants(); + var p = "", b = this.descendants(); if (this.optionEQvalue("Include Drops", "yes")) - for (let i = 0; i < f.length; i++) { - let c = f[i].generateDrop(); + for (let r = 0; r < b.length; r++) { + let c = b[r].generateDrop(); c != "" && (p += c); } if (this.optionEQvalue("rowkey", !0)) @@ -8920,8 +8931,8 @@ const q = { `; else - for (let i = 0; i < this.forest.length; i++) - if (0 < this.forest[i].trimmedContent().toUpperCase().indexOf("/ROWKEY")) { + for (let r = 0; r < this.forest.length; r++) + if (0 < this.forest[r].trimmedContent().toUpperCase().indexOf("/ROWKEY")) { p += `create sequence row_key_seq; `; @@ -8930,41 +8941,41 @@ const q = { p += `-- create tables `; - for (let i = 0; i < this.forest.length; i++) - p += this.forest[i].toDDL() + ` + for (let r = 0; r < this.forest.length; r++) + p += this.forest[r].toDDL() + ` `; let y = 0; - for (let i = 0; i < f.length; i++) { - let c = f[i].generateTrigger(); + for (let r = 0; r < b.length; r++) { + let c = b[r].generateTrigger(); c != "" && (y++ == 0 && (p += `-- triggers `), p += c + ` `); } y = 0; - for (let i = 0; i < f.length; i++) { - let c = f[i].restEnable(); + for (let r = 0; r < b.length; r++) { + let c = b[r].restEnable(); c != "" && (p += c + ` `); } y = 0; - for (let i = 0; i < f.length; i++) { - if (this.optionEQvalue("api", !1) && f[i].trimmedContent().toLowerCase().indexOf("/api") < 0) + for (let r = 0; r < b.length; r++) { + if (this.optionEQvalue("api", !1) && b[r].trimmedContent().toLowerCase().indexOf("/api") < 0) continue; - let c = f[i].generateTAPI(); + let c = b[r].generateTAPI(); c != "" && (y++ == 0 && (p += `-- APIs `), p += c + ` `); } y = 0; - for (let i = 0; i < this.forest.length; i++) { - let c = this.forest[i].generateView(); + for (let r = 0; r < this.forest.length; r++) { + let c = this.forest[r].generateView(); c != "" && (y++ == 0 && (p += `-- create views `), p += c + ` `); } y = 0; - for (let i = 0; i < this.forest.length; i++) { - let c = this.forest[i].generateData(this.data); + for (let r = 0; r < this.forest.length; r++) { + let c = this.forest[r].generateData(this.data); c != "" && (y++ == 0 && (p += `-- load data `), p += c + ` @@ -8974,12 +8985,12 @@ const q = { `, p += `/* `; - let S = x; - S = S.replace(/#.+/g, ` -`), S = S.replace(/\/\*/g, "--<--"), S = S.replace(/\*\//g, "-->--"), S = S.replace(/\/* Non-default options:/g, ""), p += S, p += ` + let M = L; + M = M.replace(/#.+/g, ` +`), M = M.replace(/\/\*/g, "--<--"), M = M.replace(/\*\//g, "-->--"), M = M.replace(/\/* Non-default options:/g, ""), p += M, p += ` `; - for (let i = 0; i < this.unknownOptions().length; i++) - p += "*** Unknown setting: " + this.unknownOptions()[i] + ` + for (let r = 0; r < this.unknownOptions().length; r++) + p += "*** Unknown setting: " + this.unknownOptions()[r] + ` `; return p += ` Non-default options: @@ -8990,20 +9001,20 @@ const q = { return this.errors != null ? this.errors : (this.errors = Se.findErrors(this, this.fullInput), this.errors); }, this.version = te; } - return L; + return E; }(); function Me(m) { - const b = JSON.parse(m); - return Ce.introspect(null, b, 0); + const f = JSON.parse(m); + return Ce.introspect(null, f, 0); } -function Te(m, b) { - return new j(m, b).getERD(); +function Te(m, f) { + return new j(m, f).getERD(); } -function Ie(m, b) { - return new j(m, b).getDDL(); +function Ie(m, f) { + return new j(m, f).getDDL(); } -function Be(m, b) { - return new j(m, b).getErrors(); +function Be(m, f) { + return new j(m, f).getErrors(); } function te() { return "1.2.1"; diff --git a/dist/quick-sql.umd.cjs b/dist/quick-sql.umd.cjs index dcf30ee..d9e1098 100644 --- a/dist/quick-sql.umd.cjs +++ b/dist/quick-sql.umd.cjs @@ -1,86 +1,88 @@ -(function(V,W){typeof exports=="object"&&typeof module<"u"?W(exports):typeof define=="function"&&define.amd?define(["exports"],W):(V=typeof globalThis<"u"?globalThis:V||self,W(V.quickSQL={}))})(this,function(V){"use strict";function W(m){return m==null?m:m.toUpperCase().endsWith("IES")?m.substring(0,m.length-3)+"y":m.toUpperCase().endsWith("ES")||m.toUpperCase().endsWith("S")?m.substring(0,m.length-1):m}function Ce(m,b){let L='"';if(m==null)return null;let k=!1;const M="$#_ ";if(!m.startsWith(L)&&!k){const x=m;if(x.length>0&&"0"<=x[0]&&x[0]<="9")k=!0;else for(let p in x){const f=x[p];if(M.indexOf(f)<0&&(f<"0"||"9""u"&&(e[n]=a[n]);return e}function r(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var s=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?s=btoa:typeof Buffer=="function"&&(s=function(a){return new Buffer(a).toString("base64")})})(),i.prototype.bool=function(e){return e=c(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100o,"Chance: Max specified is out of range with fixed. Max should be, at most, "+o),e=c(e,{min:u,max:o}),a=this.integer({min:e.min*n,max:e.max*n});var g=(a/n).toFixed(e.fixed);return parseFloat(g)},i.prototype.integer=function(e){return e=c(e,{min:k,max:L}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},i.prototype.natural=function(e){if(e=c(e,{min:0,max:L}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),o=e.exclude.sort();for(var u in o){if(ne.max,"Chance: Min cannot be greater than Max.");var a=I.primes[I.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&I.primes.push(n);var o=I.primes.filter(function(u){return u>=e.min&&u<=e.max});return this.pick(o)},i.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},i.prototype.hex=function(e){e=c(e,{min:0,max:L,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},i.prototype.letter=function(e){e=c(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},i.prototype.string=function(e){e=c(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function d(e){this.c=e}d.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function E(e){this.c=e}E.prototype={replacers:{"#":function(e){return e.character({pool:M})},A:function(e){return e.character({pool:p})},a:function(e){return e.character({pool:x})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function P(e){for(var a=[],n="identity",o=0;o"u")throw new y("Sorry, the buffer() function is not supported on your platform");e=c(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},i.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},i.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},i.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var o=function(A,H){return A.indexOf(H)!==-1};n&&(o=n.comparator||o);for(var u=[],g=0,T,h=a*50,v=S.call(arguments,2);u.lengthh)throw new RangeError("Chance: num is likely too large for sample set")}return u},i.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,o=[],u=S.call(arguments,2);for(n=Math.max(0,n),null;n--;null)o.push(e.apply(this,u));return o},i.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},i.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},i.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},i.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),o=n.length;return this.n(function(){var u=this.natural({max:--o}),g=n[u];return n[u]=n[o],g},Math.min(o,a))},i.prototype.shuffle=function(e){for(var a=[],n=0,o=Number(e.length),u=r(o),g=o-1,T,h=0;h0&&(o+=u)}if(o===0)throw new RangeError("Chance: No valid entries in array weights");var T=this.random()*o,h=0,v=-1,C;for(g=0;g0){if(T<=h){C=g;break}v=g}g===a.length-1&&(C=v)}var A=e[C];return n=typeof n>"u"?!1:n,n&&(e.splice(C,1),a.splice(C,1)),A},i.prototype.paragraph=function(e){e=c(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),o=e.linebreak===!0?` -`:" ";return n.join(o)},i.prototype.sentence=function(e){e=c(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,o,u=this.n(this.word,a);return o=u.join(" "),o=this.capitalize(o),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(o+=n),o},i.prototype.syllable=function(e){e=c(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",o="aeiou",u=n+o,g="",T,h=0;he.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var T=e.minAge!==void 0?e.minAge:0,h=e.maxAge!==void 0?e.maxAge:100,v=new Date(o-h-1,n.getMonth(),n.getDate()),C=new Date(o-T,n.getMonth(),n.getDate());v.setDate(v.getDate()+1),C.setDate(C.getDate()+1),C.setMilliseconds(C.getMilliseconds()-1),e=c(e,{min:v,max:C})}else e=c(e,{year:o-a});return this.date(e)},i.prototype.cpf=function(e){e=c(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var o=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;o=11-o%11,o>=10&&(o=0);var u=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+o;return e.formatted?u:u.replace(/\D/g,"")},i.prototype.cnpj=function(e){e=c(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var o=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;o=11-o%11,o<2&&(o=0);var u=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+o;return e.formatted?u:u.replace(/\D/g,"")},i.prototype.first=function(e){return e=c(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},i.prototype.profession=function(e){return e=c(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},i.prototype.company=function(){return this.pick(this.get("company"))},i.prototype.gender=function(e){return e=c(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},i.prototype.last=function(e){if(e=c(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(o){a=a.concat(n[o])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},i.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},i.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},i.prototype.tld=function(){return this.pick(this.tlds())},i.prototype.twitter=function(){return"@"+this.word()},i.prototype.url=function(e){e=c(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},i.prototype.port=function(){return this.integer({min:0,max:65535})},i.prototype.locale=function(e){return e=c(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},i.prototype.locales=function(e){return e=c(e),e.region?this.get("locale_regions"):this.get("locale_languages")},i.prototype.loremPicsum=function(e){e=c(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},i.prototype.address=function(e){return e=c(e),this.natural({min:5,max:2e3})+" "+this.street(e)},i.prototype.altitude=function(e){return e=c(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},i.prototype.areacode=function(e){e=c(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},i.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},i.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},i.prototype.countries=function(){return this.get("countries")},i.prototype.country=function(e){e=c(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},i.prototype.depth=function(e){return e=c(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},i.prototype.geohash=function(e){return e=c(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},i.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},i.prototype.latitude=function(e){var[a,n,o]=["ddm","dms","dd"];e=c(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:o});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case o:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},i.prototype.longitude=function(e){var[a,n,o]=["ddm","dms","dd"];e=c(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:o});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case o:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},i.prototype.phone=function(e){var a=this,n,o=function(H){var _=[];return H.sections.forEach(function(z){_.push(a.string({pool:"0123456789",length:z}))}),H.area+_.join(" ")};e=c(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var u;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),u=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),u=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),u=e.formatted?o(n):o(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),u=e.formatted?o(n):o(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n);break;case"us":var g=this.areacode(e).toString(),T=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),h=this.natural({min:1e3,max:9999}).toString();u=e.formatted?g+" "+T+"-"+h:g+T+h;break;case"br":var v=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),C;e.mobile?C="9"+a.string({pool:"0123456789",length:4}):C=this.natural({min:2e3,max:5999}).toString();var A=a.string({pool:"0123456789",length:4});u=e.formatted?"("+v+") "+C+"-"+A:v+C+A;break}return u},i.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},i.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",o=e+a+n,u=this.natural({max:9}),g=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),T=u+g;return o+" "+T},i.prototype.counties=function(e){return e=c(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},i.prototype.county=function(e){return this.pick(this.counties(e)).name},i.prototype.provinces=function(e){return e=c(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},i.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},i.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},i.prototype.states=function(e){e=c(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),o=this.get("territories"),u=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(o)),e.armed_forces&&(a=a.concat(u));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},i.prototype.street=function(e){e=c(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},i.prototype.street_suffix=function(e){return e=c(e,{country:"us"}),this.pick(this.street_suffixes(e))},i.prototype.street_suffixes=function(e){return e=c(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},i.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},i.prototype.ampm=function(){return this.bool()?"am":"pm"},i.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=c(e,{american:!0,string:!1});var o=typeof e.min<"u"?e.min.getTime():1,u=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:o,max:u}))}else{var g=this.month({raw:!0}),T=g.days;e&&e.month&&(T=this.get("months")[(e.month%12+12)%12].days),e=c(e,{year:parseInt(this.year(),10),month:g.numeric-1,day:this.natural({min:1,max:T}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},i.prototype.hammertime=function(e){return this.date(e).getTime()},i.prototype.hour=function(e){return e=c(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},i.prototype.millisecond=function(){return this.natural({max:999})},i.prototype.minute=i.prototype.second=function(e){return e=c(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},i.prototype.month=function(e){e=c(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},i.prototype.months=function(){return this.get("months")},i.prototype.second=function(){return this.natural({max:59})},i.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},i.prototype.weekday=function(e){e=c(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},i.prototype.year=function(e){return e=c(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},i.prototype.cc=function(e){e=c(e);var a,n,o;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),o=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,o,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},i.prototype.cc_types=function(){return this.get("cc_types")},i.prototype.cc_type=function(e){e=c(e);var a=this.cc_types(),n=null;if(e.name){for(var o=0;o3&&(H?_=_.substr(0,3):_=_[0]+_.substr(2,2)),_.length<3&&(z=_,_=A.toUpperCase().split("").map(function(Y){return"AEIOU".indexOf(Y)!==-1?Y:void 0}).join("").substr(0,3-z.length)),z=z+_),z},v=function(A,H,_){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return A.getFullYear().toString().substr(2)+z[A.getMonth()]+_.pad(A.getDate()+(H.toLowerCase()==="female"?40:0),2)},C=function(A){for(var H="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",_="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",Y="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(_[H.indexOf(A[U])]):K+=Y.indexOf(_[H.indexOf(A[U])]);return z[K%26]};return T=T.concat(h(o,!0),h(n),v(u,a,this),g.toUpperCase().split("")).join(""),T+=C(T.toUpperCase()),T.toUpperCase()},i.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;u--)o[u-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?o.reduce(function(g,T){return g+T}):o}else throw new RangeError("Chance: A type of die roll must be included")},i.prototype.guid=function(e){e=c(e,{version:5});var a="abcdef1234567890",n="ab89",o=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return o},i.prototype.hash=function(e){e=c(e,{length:40,casing:"lower"});var a=e.casing==="upper"?f.toUpperCase():f;return this.string({pool:a,length:e.length})},i.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},i.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,o,u=0,g=a.length;g>u;++u)o=+a[u],u%2===0&&(o*=2,o>9&&(o-=9)),n+=o;return n*9%10},i.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=c(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},i.prototype.file=function(e){var a=e||{},n="fileExtension",o=Object.keys(this.get("fileExtension")),u,g;if(u=this.word({length:a.length}),a.extension)return g=a.extension,u+"."+g;if(a.extensions){if(Array.isArray(a.extensions))return g=this.pickone(a.extensions),u+"."+g;if(a.extensions.constructor===Object){var T=a.extensions,h=Object.keys(T);return g=this.pickone(T[this.pickone(h)]),u+"."+g}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var v=a.fileType;if(o.indexOf(v)!==-1)return g=this.pickone(this.get(n)[v]),u+"."+g;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return g=this.pickone(this.get(n)[this.pickone(o)]),u+"."+g},i.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var o={fileData:this.buffer({length:a.fileSize}),fileName:n};return o};var I={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},D=Object.prototype.hasOwnProperty,F=Object.keys||function(e){var a=[];for(var n in e)D.call(e,n)&&a.push(n);return a};function w(e,a){for(var n=F(e),o,u=0,g=n.length;u0)return this.normal_pool(e);var a,n,o,u,g=e.mean,T=e.dev;do n=this.random()*2-1,o=this.random()*2-1,a=n*n+o*o;while(a>=1);return u=n*Math.sqrt(-2*Math.log(a)/a),T*u+g},i.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},i.prototype.radio=function(e){e=c(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},i.prototype.set=function(e,a){typeof e=="string"?I[e]=a:I=N(e,I)},i.prototype.tv=function(e){return this.radio(e)},i.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},i.prototype.emotion=function(){return this.pick(this.get("emotions"))},i.prototype.mersenne_twister=function(e){return new O(e)},i.prototype.blueimp_md5=function(){return new R};var O=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};O.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},O.prototype.init_by_array=function(e,a){var n=1,o=0,u,g;for(this.init_genrand(19650218),u=this.N>a?this.N:a;u;u--)g=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((g&4294901760)>>>16)*1664525<<16)+(g&65535)*1664525)+e[o]+o,this.mt[n]>>>=0,n++,o++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),o>=a&&(o=0);for(u=this.N-1;u;u--)g=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((g&4294901760)>>>16)*1566083941<<16)+(g&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},O.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},O.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},O.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},O.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},O.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},O.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var R=function(){};R.prototype.VERSION="1.0.1",R.prototype.safe_add=function(a,n){var o=(a&65535)+(n&65535),u=(a>>16)+(n>>16)+(o>>16);return u<<16|o&65535},R.prototype.bit_roll=function(e,a){return e<>>32-a},R.prototype.md5_cmn=function(e,a,n,o,u,g){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(o,g)),u),n)},R.prototype.md5_ff=function(e,a,n,o,u,g,T){return this.md5_cmn(a&n|~a&o,e,a,u,g,T)},R.prototype.md5_gg=function(e,a,n,o,u,g,T){return this.md5_cmn(a&o|n&~o,e,a,u,g,T)},R.prototype.md5_hh=function(e,a,n,o,u,g,T){return this.md5_cmn(a^n^o,e,a,u,g,T)},R.prototype.md5_ii=function(e,a,n,o,u,g,T){return this.md5_cmn(n^(a|~o),e,a,u,g,T)},R.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,o,u,g,T,h=1732584193,v=-271733879,C=-1732584194,A=271733878;for(n=0;n>5]>>>a%32&255);return n},R.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(o=this.binl_md5(o,e.length*8)),n=0;n<16;n+=1)u[n]=o[n]^909522486,g[n]=o[n]^1549556828;return T=this.binl_md5(u.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(g.concat(T),512+128))},R.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",o,u;for(u=0;u>>4&15)+a.charAt(o&15);return n},R.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},R.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},R.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},R.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},R.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},R.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},m.exports&&(b=m.exports=i),b.Chance=i,typeof importScripts<"u"&&(chance=new i,self.Chance=i),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=i,window.chance=new i)})()})(ne,ne.exports);var Ae=ne.exports;const ye=ve(Ae);var q=new ye,ce=function(){function m(b,L,k,M){let x=k.toUpperCase(),p=b.toUpperCase(),f=L.toUpperCase();if(M!=null&&0":c=="["?"]":c=="{"?"}":c=="("?")":c}}function b(M,x,p){for(var f=[],y=`(){}[]^-|!*+.><='",;:%@?/\\#~`+p,S=` -\r `,i=Q(M,y+S),c=0,r=0,t=0,s=0;s0&&(d=f[f.length-1]),l==` -`?(r++,t=0):s>0&&i[s-1]!==` -`?t=t+i[s-1].length:t=0,c+=l.length,d!=null&&d.type=="comment"&&(d.value.lastIndexOf("*/")!=d.value.length-2||d.value=="/*/")){l=="*"||l=="/"?d.value=d.value+l:d.value="/* ... ",d.end=c,d!=null&&d.type=="comment"&&d.value.lastIndexOf("*/")==d.value.length-2&&d.value!="/*/"&&(d.value=M.substring(d.begin,d.end));continue}if(d!=null&&(d.type=="line-comment"||d.type=="dbtools-command")&&l!=` +(function(V,W){typeof exports=="object"&&typeof module<"u"?W(exports):typeof define=="function"&&define.amd?define(["exports"],W):(V=typeof globalThis<"u"?globalThis:V||self,W(V.quickSQL={}))})(this,function(V){"use strict";function W(m){return m==null?m:m.toUpperCase().endsWith("IES")?m.substring(0,m.length-3)+"y":m.toUpperCase().endsWith("ES")||m.toUpperCase().endsWith("S")?m.substring(0,m.length-1):m}function Ce(m,f){let E='"';if(m==null)return null;let L=!1;const I="$#_ ";if(!m.startsWith(E)&&!L){const k=m;if(k.length>0&&"0"<=k[0]&&k[0]<="9")L=!0;else for(let p in k){const b=k[p];if(I.indexOf(b)<0&&(b<"0"||"9""u"&&(e[n]=a[n]);return e}function i(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var s=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?s=btoa:typeof Buffer=="function"&&(s=function(a){return new Buffer(a).toString("base64")})})(),r.prototype.bool=function(e){return e=c(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100o,"Chance: Max specified is out of range with fixed. Max should be, at most, "+o),e=c(e,{min:u,max:o}),a=this.integer({min:e.min*n,max:e.max*n});var g=(a/n).toFixed(e.fixed);return parseFloat(g)},r.prototype.integer=function(e){return e=c(e,{min:L,max:E}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},r.prototype.natural=function(e){if(e=c(e,{min:0,max:E}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),o=e.exclude.sort();for(var u in o){if(ne.max,"Chance: Min cannot be greater than Max.");var a=x.primes[x.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&x.primes.push(n);var o=x.primes.filter(function(u){return u>=e.min&&u<=e.max});return this.pick(o)},r.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},r.prototype.hex=function(e){e=c(e,{min:0,max:E,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},r.prototype.letter=function(e){e=c(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},r.prototype.string=function(e){e=c(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function d(e){this.c=e}d.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function S(e){this.c=e}S.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:p})},a:function(e){return e.character({pool:k})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function P(e){for(var a=[],n="identity",o=0;o"u")throw new y("Sorry, the buffer() function is not supported on your platform");e=c(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},r.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},r.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},r.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var o=function(A,H){return A.indexOf(H)!==-1};n&&(o=n.comparator||o);for(var u=[],g=0,B,h=a*50,v=M.call(arguments,2);u.lengthh)throw new RangeError("Chance: num is likely too large for sample set")}return u},r.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,o=[],u=M.call(arguments,2);for(n=Math.max(0,n),null;n--;null)o.push(e.apply(this,u));return o},r.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},r.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},r.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},r.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),o=n.length;return this.n(function(){var u=this.natural({max:--o}),g=n[u];return n[u]=n[o],g},Math.min(o,a))},r.prototype.shuffle=function(e){for(var a=[],n=0,o=Number(e.length),u=i(o),g=o-1,B,h=0;h0&&(o+=u)}if(o===0)throw new RangeError("Chance: No valid entries in array weights");var B=this.random()*o,h=0,v=-1,C;for(g=0;g0){if(B<=h){C=g;break}v=g}g===a.length-1&&(C=v)}var A=e[C];return n=typeof n>"u"?!1:n,n&&(e.splice(C,1),a.splice(C,1)),A},r.prototype.paragraph=function(e){e=c(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),o=e.linebreak===!0?` +`:" ";return n.join(o)},r.prototype.sentence=function(e){e=c(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,o,u=this.n(this.word,a);return o=u.join(" "),o=this.capitalize(o),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(o+=n),o},r.prototype.syllable=function(e){e=c(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",o="aeiou",u=n+o,g="",B,h=0;he.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var B=e.minAge!==void 0?e.minAge:0,h=e.maxAge!==void 0?e.maxAge:100,v=new Date(o-h-1,n.getMonth(),n.getDate()),C=new Date(o-B,n.getMonth(),n.getDate());v.setDate(v.getDate()+1),C.setDate(C.getDate()+1),C.setMilliseconds(C.getMilliseconds()-1),e=c(e,{min:v,max:C})}else e=c(e,{year:o-a});return this.date(e)},r.prototype.cpf=function(e){e=c(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var o=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;o=11-o%11,o>=10&&(o=0);var u=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+o;return e.formatted?u:u.replace(/\D/g,"")},r.prototype.cnpj=function(e){e=c(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var o=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;o=11-o%11,o<2&&(o=0);var u=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+o;return e.formatted?u:u.replace(/\D/g,"")},r.prototype.first=function(e){return e=c(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},r.prototype.profession=function(e){return e=c(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},r.prototype.company=function(){return this.pick(this.get("company"))},r.prototype.gender=function(e){return e=c(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},r.prototype.last=function(e){if(e=c(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(o){a=a.concat(n[o])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},r.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},r.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},r.prototype.tld=function(){return this.pick(this.tlds())},r.prototype.twitter=function(){return"@"+this.word()},r.prototype.url=function(e){e=c(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},r.prototype.port=function(){return this.integer({min:0,max:65535})},r.prototype.locale=function(e){return e=c(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},r.prototype.locales=function(e){return e=c(e),e.region?this.get("locale_regions"):this.get("locale_languages")},r.prototype.loremPicsum=function(e){e=c(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},r.prototype.address=function(e){return e=c(e),this.natural({min:5,max:2e3})+" "+this.street(e)},r.prototype.altitude=function(e){return e=c(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.areacode=function(e){e=c(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},r.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},r.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},r.prototype.countries=function(){return this.get("countries")},r.prototype.country=function(e){e=c(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},r.prototype.depth=function(e){return e=c(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.geohash=function(e){return e=c(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},r.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},r.prototype.latitude=function(e){var[a,n,o]=["ddm","dms","dd"];e=c(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:o});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case o:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.longitude=function(e){var[a,n,o]=["ddm","dms","dd"];e=c(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:o});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case o:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.phone=function(e){var a=this,n,o=function(H){var F=[];return H.sections.forEach(function(z){F.push(a.string({pool:"0123456789",length:z}))}),H.area+F.join(" ")};e=c(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var u;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),u=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),u=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),u=e.formatted?o(n):o(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),u=e.formatted?o(n):o(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n);break;case"us":var g=this.areacode(e).toString(),B=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),h=this.natural({min:1e3,max:9999}).toString();u=e.formatted?g+" "+B+"-"+h:g+B+h;break;case"br":var v=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),C;e.mobile?C="9"+a.string({pool:"0123456789",length:4}):C=this.natural({min:2e3,max:5999}).toString();var A=a.string({pool:"0123456789",length:4});u=e.formatted?"("+v+") "+C+"-"+A:v+C+A;break}return u},r.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},r.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",o=e+a+n,u=this.natural({max:9}),g=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),B=u+g;return o+" "+B},r.prototype.counties=function(e){return e=c(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},r.prototype.county=function(e){return this.pick(this.counties(e)).name},r.prototype.provinces=function(e){return e=c(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},r.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},r.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},r.prototype.states=function(e){e=c(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),o=this.get("territories"),u=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(o)),e.armed_forces&&(a=a.concat(u));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},r.prototype.street=function(e){e=c(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},r.prototype.street_suffix=function(e){return e=c(e,{country:"us"}),this.pick(this.street_suffixes(e))},r.prototype.street_suffixes=function(e){return e=c(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},r.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},r.prototype.ampm=function(){return this.bool()?"am":"pm"},r.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=c(e,{american:!0,string:!1});var o=typeof e.min<"u"?e.min.getTime():1,u=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:o,max:u}))}else{var g=this.month({raw:!0}),B=g.days;e&&e.month&&(B=this.get("months")[(e.month%12+12)%12].days),e=c(e,{year:parseInt(this.year(),10),month:g.numeric-1,day:this.natural({min:1,max:B}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},r.prototype.hammertime=function(e){return this.date(e).getTime()},r.prototype.hour=function(e){return e=c(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.millisecond=function(){return this.natural({max:999})},r.prototype.minute=r.prototype.second=function(e){return e=c(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.month=function(e){e=c(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},r.prototype.months=function(){return this.get("months")},r.prototype.second=function(){return this.natural({max:59})},r.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},r.prototype.weekday=function(e){e=c(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},r.prototype.year=function(e){return e=c(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},r.prototype.cc=function(e){e=c(e);var a,n,o;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),o=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,o,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},r.prototype.cc_types=function(){return this.get("cc_types")},r.prototype.cc_type=function(e){e=c(e);var a=this.cc_types(),n=null;if(e.name){for(var o=0;o3&&(H?F=F.substr(0,3):F=F[0]+F.substr(2,2)),F.length<3&&(z=F,F=A.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+F),z},v=function(A,H,F){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return A.getFullYear().toString().substr(2)+z[A.getMonth()]+F.pad(A.getDate()+(H.toLowerCase()==="female"?40:0),2)},C=function(A){for(var H="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",F="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(F[H.indexOf(A[U])]):K+=j.indexOf(F[H.indexOf(A[U])]);return z[K%26]};return B=B.concat(h(o,!0),h(n),v(u,a,this),g.toUpperCase().split("")).join(""),B+=C(B.toUpperCase()),B.toUpperCase()},r.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;u--)o[u-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?o.reduce(function(g,B){return g+B}):o}else throw new RangeError("Chance: A type of die roll must be included")},r.prototype.guid=function(e){e=c(e,{version:5});var a="abcdef1234567890",n="ab89",o=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return o},r.prototype.hash=function(e){e=c(e,{length:40,casing:"lower"});var a=e.casing==="upper"?b.toUpperCase():b;return this.string({pool:a,length:e.length})},r.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},r.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,o,u=0,g=a.length;g>u;++u)o=+a[u],u%2===0&&(o*=2,o>9&&(o-=9)),n+=o;return n*9%10},r.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=c(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},r.prototype.file=function(e){var a=e||{},n="fileExtension",o=Object.keys(this.get("fileExtension")),u,g;if(u=this.word({length:a.length}),a.extension)return g=a.extension,u+"."+g;if(a.extensions){if(Array.isArray(a.extensions))return g=this.pickone(a.extensions),u+"."+g;if(a.extensions.constructor===Object){var B=a.extensions,h=Object.keys(B);return g=this.pickone(B[this.pickone(h)]),u+"."+g}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var v=a.fileType;if(o.indexOf(v)!==-1)return g=this.pickone(this.get(n)[v]),u+"."+g;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return g=this.pickone(this.get(n)[this.pickone(o)]),u+"."+g},r.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var o={fileData:this.buffer({length:a.fileSize}),fileName:n};return o};var x={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},D=Object.prototype.hasOwnProperty,w=Object.keys||function(e){var a=[];for(var n in e)D.call(e,n)&&a.push(n);return a};function N(e,a){for(var n=w(e),o,u=0,g=n.length;u0)return this.normal_pool(e);var a,n,o,u,g=e.mean,B=e.dev;do n=this.random()*2-1,o=this.random()*2-1,a=n*n+o*o;while(a>=1);return u=n*Math.sqrt(-2*Math.log(a)/a),B*u+g},r.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},r.prototype.radio=function(e){e=c(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},r.prototype.set=function(e,a){typeof e=="string"?x[e]=a:x=_(e,x)},r.prototype.tv=function(e){return this.radio(e)},r.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},r.prototype.emotion=function(){return this.pick(this.get("emotions"))},r.prototype.mersenne_twister=function(e){return new O(e)},r.prototype.blueimp_md5=function(){return new G};var O=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};O.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},O.prototype.init_by_array=function(e,a){var n=1,o=0,u,g;for(this.init_genrand(19650218),u=this.N>a?this.N:a;u;u--)g=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((g&4294901760)>>>16)*1664525<<16)+(g&65535)*1664525)+e[o]+o,this.mt[n]>>>=0,n++,o++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),o>=a&&(o=0);for(u=this.N-1;u;u--)g=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((g&4294901760)>>>16)*1566083941<<16)+(g&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},O.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},O.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},O.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},O.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},O.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},O.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var G=function(){};G.prototype.VERSION="1.0.1",G.prototype.safe_add=function(a,n){var o=(a&65535)+(n&65535),u=(a>>16)+(n>>16)+(o>>16);return u<<16|o&65535},G.prototype.bit_roll=function(e,a){return e<>>32-a},G.prototype.md5_cmn=function(e,a,n,o,u,g){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(o,g)),u),n)},G.prototype.md5_ff=function(e,a,n,o,u,g,B){return this.md5_cmn(a&n|~a&o,e,a,u,g,B)},G.prototype.md5_gg=function(e,a,n,o,u,g,B){return this.md5_cmn(a&o|n&~o,e,a,u,g,B)},G.prototype.md5_hh=function(e,a,n,o,u,g,B){return this.md5_cmn(a^n^o,e,a,u,g,B)},G.prototype.md5_ii=function(e,a,n,o,u,g,B){return this.md5_cmn(n^(a|~o),e,a,u,g,B)},G.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,o,u,g,B,h=1732584193,v=-271733879,C=-1732584194,A=271733878;for(n=0;n>5]>>>a%32&255);return n},G.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(o=this.binl_md5(o,e.length*8)),n=0;n<16;n+=1)u[n]=o[n]^909522486,g[n]=o[n]^1549556828;return B=this.binl_md5(u.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(g.concat(B),512+128))},G.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",o,u;for(u=0;u>>4&15)+a.charAt(o&15);return n},G.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},G.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},G.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},G.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},G.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},G.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},m.exports&&(f=m.exports=r),f.Chance=r,typeof importScripts<"u"&&(chance=new r,self.Chance=r),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=r,window.chance=new r)})()})(ne,ne.exports);var Ae=ne.exports;const ye=ve(Ae);var q=new ye,ce=function(){function m(f,E,L,I){let k=L.toUpperCase(),p=f.toUpperCase(),b=E.toUpperCase();if(I!=null&&0":c=="["?"]":c=="{"?"}":c=="("?")":c}}function f(I,k,p){for(var b=[],y=`(){}[]^-|!*+.><='",;:%@?/\\#~`+p,M=` +\r `,r=$(I,y+M),c=0,i=0,t=0,s=0;s0&&(d=b[b.length-1]),l==` +`?(i++,t=0):s>0&&r[s-1]!==` +`?t=t+r[s-1].length:t=0,c+=l.length,d!=null&&d.type=="comment"&&(d.value.lastIndexOf("*/")!=d.value.length-2||d.value=="/*/")){l=="*"||l=="/"?d.value=d.value+l:d.value="/* ... ",d.end=c,d!=null&&d.type=="comment"&&d.value.lastIndexOf("*/")==d.value.length-2&&d.value!="/*/"&&(d.value=I.substring(d.begin,d.end));continue}if(d!=null&&(d.type=="line-comment"||d.type=="dbtools-command")&&l!=` `){d.value=d.value+l;continue}if(d!=null&&(d.type=="line-comment"||d.type=="dbtools-command")&&l==` -`&&(d.end=d.begin+d.value.length),d!=null&&d.type=="quoted-string"&&!(d.isStandardLiteral()||d.isAltLiteral())){d.value=d.value+l,d.end=d.begin+d.value.length;continue}if(!(d!=null&&d.type=="dquoted-string"&&l!='"'&&!(d.value.endsWith('"')&&d.value.length>1))){if(d!=null&&d.type=="dquoted-string"&&l=='"'){d.end=c,d.value=M.substring(d.begin,d.end);continue}if(!(d!=null&&d.type=="bquoted-string"&&l!="`"&&!(d.value.endsWith("`")&&d.value.length>1))){if(d!=null&&d.type=="bquoted-string"&&l=="`"){d.end=c,d.value=M.substring(d.begin,d.end);continue}if(l=="*"&&d!=null&&d.value=="/"){d.value=d.value+l,d.end=d.begin+d.value.length,d.type="comment";continue}if(l=="-"&&d!=null&&d.value=="-"){d.value=d.value+l,d.type="line-comment";continue}if((l.toUpperCase()=="REM"||l.toUpperCase()=="REMA"||l.toUpperCase()=="REMAR"||l.toUpperCase()=="REMARK"||l.toUpperCase()=="PRO"||l.toUpperCase()=="PROM"||l.toUpperCase()=="PROMP"||l.toUpperCase()=="PROMPT")&&(d==null||d.value==` -`||d.value=="\r")){f.push(new m(l,c-l.length,-9,"line-comment",r,t));continue}if(l.toUpperCase()=="SODA"&&(d==null||d.value==` -`||d.value=="\r")){f.push(new m(l,c-l.length,-9,"dbtools-command",r,t));continue}if(d!=null&&d.type=="identifier"&&d.end==-11&&d.value.indexOf("@")==0&&!(l==` +`&&(d.end=d.begin+d.value.length),d!=null&&d.type=="quoted-string"&&!(d.isStandardLiteral()||d.isAltLiteral())){d.value=d.value+l,d.end=d.begin+d.value.length;continue}if(!(d!=null&&d.type=="dquoted-string"&&l!='"'&&!(d.value.endsWith('"')&&d.value.length>1))){if(d!=null&&d.type=="dquoted-string"&&l=='"'){d.end=c,d.value=I.substring(d.begin,d.end);continue}if(!(d!=null&&d.type=="bquoted-string"&&l!="`"&&!(d.value.endsWith("`")&&d.value.length>1))){if(d!=null&&d.type=="bquoted-string"&&l=="`"){d.end=c,d.value=I.substring(d.begin,d.end);continue}if(l=="*"&&d!=null&&d.value=="/"){d.value=d.value+l,d.end=d.begin+d.value.length,d.type="comment";continue}if(l=="-"&&d!=null&&d.value=="-"){d.value=d.value+l,d.type="line-comment";continue}if((l.toUpperCase()=="REM"||l.toUpperCase()=="REMA"||l.toUpperCase()=="REMAR"||l.toUpperCase()=="REMARK"||l.toUpperCase()=="PRO"||l.toUpperCase()=="PROM"||l.toUpperCase()=="PROMP"||l.toUpperCase()=="PROMPT")&&(d==null||d.value==` +`||d.value=="\r")){b.push(new m(l,c-l.length,-9,"line-comment",i,t));continue}if(l.toUpperCase()=="SODA"&&(d==null||d.value==` +`||d.value=="\r")){b.push(new m(l,c-l.length,-9,"dbtools-command",i,t));continue}if(d!=null&&d.type=="identifier"&&d.end==-11&&d.value.indexOf("@")==0&&!(l==` `||l=="\r")){d.value=d.value+l;continue}if(d!=null&&d.type=="identifier"&&d.end==-11&&d.value.indexOf("@")==0&&(l==` -`||l=="\r")){d.end=c-1,f.push(new m(l,c-1,c,"ws",r,t));continue}if(x&&l=="'"){d!=null&&(d.value.toUpperCase()=="Q"||d.value.toUpperCase()=="N"||d.value.toUpperCase()=="U"||d.value.toUpperCase()=="NQ")?(d.value+=l,d.type="quoted-string"):f.push(new m(l,c-1,-10,"quoted-string",r,t));continue}if(x&&l=='"'){f.push(new m(l,c-1,-11,"dquoted-string",r,t));continue}if(l=="`"&&0<=y.indexOf("`")){f.push(new m(l,c-1,-11,"bquoted-string",r,t));continue}if(l.length==1&&0<=y.indexOf(l)){f.push(new m(l,c-1,c,"operation",r,t));continue}if(l.length==1&&0<=S.indexOf(l)){f.push(new m(l,c-1,c,"ws",r,t));continue}if("0"<=l.charAt(0)&&l.charAt(0)<="9"){L(l,f,c-l.length,r)||(l.charAt(l.length-1)=="K"||l.charAt(l.length-1)=="k"||l.charAt(l.length-1)=="M"||l.charAt(l.length-1)=="m"||l.charAt(l.length-1)=="G"||l.charAt(l.length-1)=="g"||l.charAt(l.length-1)=="T"||l.charAt(l.length-1)=="t"||l.charAt(l.length-1)=="P"||l.charAt(l.length-1)=="p"||l.charAt(l.length-1)=="E"||l.charAt(l.length-1)=="e"?(f.push(new m(l.substring(0,l.length-1),c-l.length,c-1,"constant.numeric",r,t)),f.push(new m(l.substring(l.length-1),c-1,c,"constant.numeric",r,t))):f.push(new m(l,c-l.length,c,"constant.numeric",r,t)));continue}var E="identifier";s+10){var d=f[f.length-1];d.end=M.length}return f}function L(M,x,p,f){if(0>M.indexOf("e")&&0>M.indexOf("f")&&0>M.indexOf("d"))return!1;0<=M.indexOf("e"),0<=M.indexOf("e"),!(0<=M.indexOf("e"))&&0<=M.indexOf("f");for(var y=Q(M,"efd"),S=0;S")==0||r.indexOf("<")==0)&&(r=r.substring(1).trim());const l=r.toLowerCase();if(l.indexOf("view ")==0){var d=r.split(" ");return d[1]}r=p(r," d");var E=r.indexOf("/");0="0"&&P<="9"&&(r="x"+r),Se(le(r))},this.parseType=function(r){if(this.children!=null&&0!0)),O}return I}0");return t==0},this.getExplicitPkNode=function(){for(var r=0;rr.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(m.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),m.optionEQvalue("prefixPKwithTname","yes")&&(t=W(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let r=this.getGenIdColName();return r??this.getExplicitPkNode().parseName()},this.toDDL=function(){if(this.parseType()=="view"||this.parseType()=="dv")return"";if(this.children.length==0&&00){var d=b[b.length-1];d.end=I.length}return b}function E(I,k,p,b){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var y=$(I,"efd"),M=0;M")==0||i.indexOf("<")==0)&&(i=i.substring(1).trim());const l=i.toLowerCase();if(l.indexOf("view ")==0){var d=i.split(" ");return d[1]}i=p(i," d");var S=i.indexOf("/");0="0"&&P<="9"&&(i="x"+i),Se(le(i))},this.parseType=function(i){if(this.children!=null&&0!0)),N}return S}0");return t==0},this.getExplicitPkNode=function(){for(var i=0;ii.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(m.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),m.optionEQvalue("prefixPKwithTname","yes")&&(t=W(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let i=this.getGenIdColName();return i??this.getExplicitPkNode().parseName()},this.toDDL=function(){if(this.parseType()=="view"||this.parseType()=="dv")return"";if(this.children.length==0&&0!0):g==null&&(g=m.find(n),g.isMany2One()&!n.endsWith("_id")&&(o=n,n=W(n),T="_id")),E=b+" ".repeat(this.maxChildNameLen()-n.length),l+=b+n+T+E+u+` -`,l+=b+b+" ".repeat(this.maxChildNameLen())+"constraint "+d+"_"+n+`_fk -`;let h="";0<=r.indexOf("/CASCADE")&&(h=" on delete cascade");let v="";for(let C in this.children){let A=this.children[C];if(n==A.parseName()){let H=A.trimmedContent().toUpperCase();(0<=H.indexOf("/NN")||0<=H.indexOf("/NOTNULL"))&&(v=" NOT NULL".toLowerCase()),0<=H.indexOf("/CASCADE")&&(h=" on delete cascade");break}}l+=b+b+" ".repeat(this.maxChildNameLen())+"references "+m.objPrefix()+o+h+v+`, -`}if(m.optionEQvalue("rowkey",!0)||0!0):g==null&&(g=m.find(n),g.isMany2One()&!n.endsWith("_id")&&(o=n,n=W(n),B="_id")),S=f+" ".repeat(this.maxChildNameLen()-n.length),l+=f+n+B+S+u+` +`,l+=f+f+" ".repeat(this.maxChildNameLen())+"constraint "+d+"_"+n+`_fk +`;let h="";0<=i.indexOf("/CASCADE")&&(h=" on delete cascade");let v="";for(let C in this.children){let A=this.children[C];if(n==A.parseName()){let H=A.trimmedContent().toUpperCase();(0<=H.indexOf("/NN")||0<=H.indexOf("/NOTNULL"))&&(v=" NOT NULL".toLowerCase()),0<=H.indexOf("/CASCADE")&&(h=" on delete cascade");break}}l+=f+f+" ".repeat(this.maxChildNameLen())+"references "+m.objPrefix()+o+h+v+`, +`}if(m.optionEQvalue("rowkey",!0)||0TRUE, p_object=>'"+d+`'); +`+f+"ords.enable_object(p_enabled=>TRUE, p_object=>'"+d+`'); end; / -`},this.generateTrigger=function(){if(this.parseType()!="table")return"";let r="";m.optionEQvalue("editionable","yes")&&(r=" editionable");let t=m.objPrefix()+this.parseName();var s="create or replace"+r+" trigger "+t.toLowerCase()+`_BIU +`},this.generateTrigger=function(){if(this.parseType()!="table")return"";let i="";m.optionEQvalue("editionable","yes")&&(i=" editionable");let t=m.objPrefix()+this.parseName();var s="create or replace"+i+" trigger "+t.toLowerCase()+`_BIU `.toLowerCase();s+=` before insert or update `,s+=" on "+t.toLowerCase()+` `,s+=` for each row @@ -108,10 +110,10 @@ end; return upper(ret); end compress_int; `),s+=`begin -`;var d=!1,E="user";m.optionEQvalue("apex","yes")&&(E="coalesce(sys_context('APEX$SESSION','APP_USER'),user)"),(m.optionEQvalue("rowkey","yes")||0!0)),l+=`, -`,l+=b+b+"P_"+d+" "+s+" "+B+t}for(let P=0;P!0),(r=="insert"||r=="update")&&(s+=`, -`);let F=" P_"+B+" := c1."+B+`; -`;r=="insert"&&(F=" "+B),r=="update"&&(F=" "+B+" = P_"+B+` -`),s+=F}for(var d=0;d!0)),l+=`, +`,l+=f+f+"P_"+d+" "+s+" "+T+t}for(let P=0;P!0),(i=="insert"||i=="update")&&(s+=`, +`);let w=" P_"+T+" := c1."+T+`; +`;i=="insert"&&(w=" "+T),i=="update"&&(w=" "+T+" = P_"+T+` +`),s+=w}for(var d=0;ds.children.length>0&&s.parseName()==t&&!s.isArray())},this.generateSelectJsonTopDown=function(r){var t=this.parseName();let s="";this.getExplicitPkNode==null&&(s+=r+"'"+this.getGenIdColName()+"' : "+t+"."+this.getGenIdColName()+`, -`);for(var l=0;ls.children.length>0&&s.parseName()==t&&!s.isArray())},this.generateSelectJsonTopDown=function(i){var t=this.parseName();let s="";this.getExplicitPkNode==null&&(s+=i+"'"+this.getGenIdColName()+"' : "+t+"."+this.getGenIdColName()+`, +`);for(var l=0;l");let f=` -`+b(M)+p+L;if(typeof k=="number"&&(f+=" num",L.endsWith("_id")||L.endsWith("Id")))return f+=" /pk",f;if(typeof k=="object"){if(Array.isArray(k))for(let S in k){1<=S&&console.log("1 <= property !");const i=k[S];return this.introspect(L,i,M,!1)}else if(L!=""){let S=this.aggrSizes[L];f+=" /insert "+S}let y="";for(let S in k){const i=k[S];if(S!=null){const t=W(L),s=S.toLowerCase();if(L!=null&&t+"_id"==s&&0");let b=` +`+f(I)+p+E;if(typeof L=="number"&&(b+=" num",E.endsWith("_id")||E.endsWith("Id")))return b+=" /pk",b;if(typeof L=="object"){if(Array.isArray(L))for(let M in L){1<=M&&console.log("1 <= property !");const r=L[M];return this.introspect(E,r,I,!1)}else if(E!=""){let M=this.aggrSizes[E];b+=" /insert "+M}let y="";for(let M in L){const r=L[M];if(M!=null){const t=W(E),s=M.toLowerCase();if(E!=null&&t+"_id"==s&&0!0)}),0!0)}),0--"),S=S.replace(/\/* Non-default options:/g,""),p+=S,p+=` -`;for(let i=0;i--"),M=M.replace(/\/* Non-default options:/g,""),p+=M,p+=` +`;for(let r=0;r'); @@ -710,6 +734,7 @@ let tree = (function(){ pad = tab+' '.repeat(this.maxChildNameLen() - col.length); ret += tab + col.toUpperCase() + pad + type + ' not null,\n'; } + ret += this.genConstraint(); if( ret.lastIndexOf(',\n') == ret.length-2 ) ret = ret.substr(0,ret.length-2)+'\n'; ret += ')'+(ddl.optionEQvalue('compress','yes') || 0 < nodeContent.indexOf('/COMPRESS')?' compress':'')+';\n\n'; diff --git a/test/compatibility_tests.js b/test/compatibility_tests.js index 35b65c5..81ba103 100644 --- a/test/compatibility_tests.js +++ b/test/compatibility_tests.js @@ -5,6 +5,7 @@ function assert( condition ) { console.error("Failed: "+condition); throw new Error('Test failed'); } + console.log('.\r'); } let output; diff --git a/test/experimental/constraints.qsql b/test/constraints.qsql similarity index 100% rename from test/experimental/constraints.qsql rename to test/constraints.qsql diff --git a/test/experimental/constraints.sql b/test/constraints.sql similarity index 73% rename from test/experimental/constraints.sql rename to test/constraints.sql index 9e0cb7c..78b6d5c 100644 --- a/test/experimental/constraints.sql +++ b/test/constraints.sql @@ -1,11 +1,13 @@ create table issues36_37 ( id number generated by default on null as identity constraint issues36_37_id_pk primary key, + c1 varchar2(4000 char) constraint issues36_37_c1_ck + check (c1 in ('A','B','C')), c2 varchar2(4000 char) constraint issues36_37_c2_ck check (c2 in ('A','B','C')), c3 varchar2(4000 char) constraint issues36_37_c3_ck check (c3 in ('A','B','C')), c4 varchar2(4000 char) constraint issues36_37_c4_ck check (c4='A1' or c4 = 'A2'), - constraint issues36_37_c1 check (not (c1 = 'B' and c2 is null)) + constraint issues36_37_ck check (not (c1 = 'B' and c2 is null)) ); diff --git a/test/diagram_tests.js b/test/diagram_tests.js index 9f20c45..431906a 100644 --- a/test/diagram_tests.js +++ b/test/diagram_tests.js @@ -8,6 +8,7 @@ function assert( condition ) { console.error("Failed: "+condition); throw new Error('Test failed'); } + console.log('.\r'); } var output; diff --git a/test/small_tests.js b/test/small_tests.js index 78d25e7..9185b75 100644 --- a/test/small_tests.js +++ b/test/small_tests.js @@ -4,7 +4,8 @@ function assert( condition ) { if( !eval(condition) ) { console.error("Failed: "+condition); throw new Error('Test failed'); - } + } + console.log('.\r'); } var output; @@ -514,7 +515,7 @@ students /insert 2 assert( "output.indexOf('audit all') < 0 " ); assert( "output.indexOf('created date not null') < output.lastIndexOf('created date not null,')" ); -// https://github.com/oracle/quicksql/issues/32 + // https://github.com/oracle/quicksql/issues/32 output = new quicksql( `queues created /default sysdate created dt /default systimestamp From 9c642f9dc5f859d9bdfa304d33b329fbc20cc484 Mon Sep 17 00:00:00 2001 From: Vadim Tropashko Date: Tue, 12 Dec 2023 10:48:58 -0800 Subject: [PATCH 03/22] issue 39 --- dist/quick-sql.js | 927 +++++++++++++++++++++-------------------- dist/quick-sql.umd.cjs | 231 +++++----- src/tree.js | 36 +- test/bugs/35.qsql | 8 + test/bugs/35.sql | 245 +++++++++++ test/single_test.js | 2 +- 6 files changed, 857 insertions(+), 592 deletions(-) create mode 100644 test/bugs/35.qsql create mode 100644 test/bugs/35.sql diff --git a/dist/quick-sql.js b/dist/quick-sql.js index 49515b6..377fe39 100644 --- a/dist/quick-sql.js +++ b/dist/quick-sql.js @@ -1,19 +1,19 @@ function z(m) { return m == null ? m : m.toUpperCase().endsWith("IES") ? m.substring(0, m.length - 3) + "y" : m.toUpperCase().endsWith("ES") || m.toUpperCase().endsWith("S") ? m.substring(0, m.length - 1) : m; } -function he(m, f) { +function he(m, d) { let E = '"'; if (m == null) return null; let L = !1; const I = "$#_ "; if (!m.startsWith(E) && !L) { - const k = m; - if (k.length > 0 && "0" <= k[0] && k[0] <= "9") + const x = m; + if (x.length > 0 && "0" <= x[0] && x[0] <= "9") L = !0; else - for (let p in k) { - const b = k[p]; + for (let p in x) { + const b = x[p]; if (I.indexOf(b) < 0 && (b < "0" || "9" < b && b < "A" || "Z" < b && b < "a" || "z" < b)) { L = !0; break; @@ -27,13 +27,13 @@ function de(m) { return null; if (m.indexOf('"') == 0) return m; - let f = he(m); - return f.indexOf('"') == 0 || (f = f.replace(/ /g, "_")), f; + let d = he(m); + return d.indexOf('"') == 0 || (d = d.replace(/ /g, "_")), d; } -function K(m, f, E) { +function K(m, d, E) { let L = !1; - E == null && (E = ""), m.indexOf('"') == 0 && (L = !0, m = m.substring(1, m.length - 1)), f.indexOf('"') == 0 && (L = !0, f = f.substring(1, f.length - 1)), E.indexOf('"') == 0 && (L = !0, E = E.substring(1, E.length - 1)); - let I = m + f + E; + E == null && (E = ""), m.indexOf('"') == 0 && (L = !0, m = m.substring(1, m.length - 1)), d.indexOf('"') == 0 && (L = !0, d = d.substring(1, d.length - 1)), E.indexOf('"') == 0 && (L = !0, E = E.substring(1, E.length - 1)); + let I = m + d + E; return L ? I = '"' + I + '"' : I = I.toLowerCase(), I; } var oe = function() { @@ -50,7 +50,7 @@ var oe = function() { "Specialist", "Evangelist", "Salesman" - ], f = [ + ], d = [ "\u300C\u8CA9\u58F2\u300D", "\u300C\u8CA1\u52D9\u300D", "\u300C\u914D\u9001\u300D", @@ -76,16 +76,16 @@ var oe = function() { "\uC804\uB3C4\uC790", "\uD310\uB9E4\uC6D0" ]; - function L(I, k) { - if (typeof k != "string" || I.substring(0, 2).toLowerCase() == "en") - return k; - k.indexOf("'") == 0 && (k = k.substring(1, k.length - 1)); + function L(I, x) { + if (typeof x != "string" || I.substring(0, 2).toLowerCase() == "en") + return x; + x.indexOf("'") == 0 && (x = x.substring(1, x.length - 1)); for (var p = -1, b = 0; b < m.length; b++) - if (m[b] == k) { + if (m[b] == x) { p = b; break; } - return 0 <= p && I.substring(0, 2).toLowerCase() == "jp" && p < f.length ? "'" + f[p] + "'" : 0 <= p && I.substring(0, 2).toLowerCase() == "kr" && p < E.length ? "'" + E[p] + "'" : k; + return 0 <= p && I.substring(0, 2).toLowerCase() == "jp" && p < d.length ? "'" + d[p] + "'" : 0 <= p && I.substring(0, 2).toLowerCase() == "kr" && p < E.length ? "'" + E[p] + "'" : x; } return L; }(); @@ -93,13 +93,13 @@ function fe(m) { return m && m.__esModule && Object.prototype.hasOwnProperty.call(m, "default") ? m.default : m; } var ie = { exports: {} }; -(function(m, f) { +(function(m, d) { (function() { - var E = 9007199254740992, L = -E, I = "0123456789", k = "abcdefghijklmnopqrstuvwxyz", p = k.toUpperCase(), b = I + "abcdef"; - function y(e) { + var E = 9007199254740992, L = -E, I = "0123456789", x = "abcdefghijklmnopqrstuvwxyz", p = x.toUpperCase(), b = I + "abcdef"; + function S(e) { this.name = "UnsupportedError", this.message = e || "This feature is not supported on this platform"; } - y.prototype = new Error(), y.prototype.constructor = y; + S.prototype = new Error(), S.prototype.constructor = S; var M = Array.prototype.slice; function r(e) { if (!(this instanceof r)) @@ -166,7 +166,7 @@ var ie = { exports: {} }; }, r.prototype.character = function(e) { e = c(e); var a = "!@#$%^&*()[]", n, o; - return e.casing === "lower" ? n = k : e.casing === "upper" ? n = p : n = k + p, e.pool ? o = e.pool : (o = "", e.alpha && (o += n), e.numeric && (o += I), e.symbols && (o += a), o || (o = n + I + a)), o.charAt(this.natural({ max: o.length - 1 })); + return e.casing === "lower" ? n = x : e.casing === "upper" ? n = p : n = x + p, e.pool ? o = e.pool : (o = "", e.alpha && (o += n), e.numeric && (o += I), e.symbols && (o += a), o || (o = n + I + a)), o.charAt(this.natural({ max: o.length - 1 })); }, r.prototype.floating = function(e) { e = c(e, { fixed: 4 }), t( e.fixed && e.precision, @@ -200,11 +200,11 @@ var ie = { exports: {} }; return this.integer(e); }, r.prototype.prime = function(e) { e = c(e, { min: 0, max: 1e4 }), t(e.min < 0, "Chance: Min cannot be less than zero."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); - var a = x.primes[x.primes.length - 1]; + var a = k.primes[k.primes.length - 1]; if (e.max > a) for (var n = a + 2; n <= e.max; ++n) - this.is_prime(n) && x.primes.push(n); - var o = x.primes.filter(function(u) { + this.is_prime(n) && k.primes.push(n); + var o = k.primes.filter(function(u) { return u >= e.min && u <= e.max; }); return this.pick(o); @@ -240,20 +240,20 @@ var ie = { exports: {} }; return this.c; } }; - function d(e) { + function h(e) { this.c = e; } - d.prototype = { + h.prototype = { substitute: function() { if (!/[{}\\]/.test(this.c)) throw new Error('Invalid escape sequence: "\\' + this.c + '".'); return this.c; } }; - function S(e) { + function y(e) { this.c = e; } - S.prototype = { + y.prototype = { replacers: { "#": function(e) { return e.character({ pool: I }); @@ -262,7 +262,7 @@ var ie = { exports: {} }; return e.character({ pool: p }); }, a: function(e) { - return e.character({ pool: k }); + return e.character({ pool: x }); } }, substitute: function(e) { @@ -277,13 +277,13 @@ var ie = { exports: {} }; var u = e[o]; switch (n) { case "escape": - a.push(new d(u)), n = "identity"; + a.push(new h(u)), n = "identity"; break; case "identity": u === "{" ? n = "replace" : u === "\\" ? n = "escape" : a.push(new l(u)); break; case "replace": - u === "}" ? n = "identity" : a.push(new S(u)); + u === "}" ? n = "identity" : a.push(new y(u)); break; } } @@ -298,7 +298,7 @@ var ie = { exports: {} }; }).join(""); }, r.prototype.buffer = function(e) { if (typeof Buffer > "u") - throw new y("Sorry, the buffer() function is not supported on your platform"); + throw new S("Sorry, the buffer() function is not supported on your platform"); e = c(e, { length: this.natural({ min: 5, max: 20 }) }), t(e.length < 0, "Chance: Length cannot be less than zero."); var a = e.length, n = this.n(this.character, a, e); return Buffer.from(n); @@ -317,9 +317,9 @@ var ie = { exports: {} }; return A.indexOf(H) !== -1; }; n && (o = n.comparator || o); - for (var u = [], g = 0, B, h = a * 50, v = M.call(arguments, 2); u.length < a; ) { + for (var u = [], g = 0, B, f = a * 50, v = M.call(arguments, 2); u.length < a; ) { var C = JSON.parse(JSON.stringify(v)); - if (B = e.apply(this, C), o(u, B) || (u.push(B), g = 0), ++g > h) + if (B = e.apply(this, C), o(u, B) || (u.push(B), g = 0), ++g > f) throw new RangeError("Chance: num is likely too large for sample set"); } return u; @@ -357,8 +357,8 @@ var ie = { exports: {} }; return n[u] = n[o], g; }, Math.min(o, a)); }, r.prototype.shuffle = function(e) { - for (var a = [], n = 0, o = Number(e.length), u = i(o), g = o - 1, B, h = 0; h < o; h++) - B = this.natural({ max: g }), n = u[B], a[h] = e[n], u[B] = u[g], g -= 1; + for (var a = [], n = 0, o = Number(e.length), u = i(o), g = o - 1, B, f = 0; f < o; f++) + B = this.natural({ max: g }), n = u[B], a[f] = e[n], u[B] = u[g], g -= 1; return a; }, r.prototype.weighted = function(e, a, n) { if (e.length !== a.length) @@ -370,10 +370,10 @@ var ie = { exports: {} }; } if (o === 0) throw new RangeError("Chance: No valid entries in array weights"); - var B = this.random() * o, h = 0, v = -1, C; + var B = this.random() * o, f = 0, v = -1, C; for (g = 0; g < a.length; ++g) { - if (u = a[g], h += u, u > 0) { - if (B <= h) { + if (u = a[g], f += u, u > 0) { + if (B <= f) { C = g; break; } @@ -394,8 +394,8 @@ var ie = { exports: {} }; return o = u.join(" "), o = this.capitalize(o), n !== !1 && !/^[.?;!:]$/.test(n) && (n = "."), n && (o += n), o; }, r.prototype.syllable = function(e) { e = c(e); - for (var a = e.length || this.natural({ min: 2, max: 3 }), n = "bcdfghjklmnprstvwz", o = "aeiou", u = n + o, g = "", B, h = 0; h < a; h++) - h === 0 ? B = this.character({ pool: u }) : n.indexOf(B) === -1 ? B = this.character({ pool: n }) : B = this.character({ pool: o }), g += B; + for (var a = e.length || this.natural({ min: 2, max: 3 }), n = "bcdfghjklmnprstvwz", o = "aeiou", u = n + o, g = "", B, f = 0; f < a; f++) + f === 0 ? B = this.character({ pool: u }) : n.indexOf(B) === -1 ? B = this.character({ pool: n }) : B = this.character({ pool: o }), g += B; return e.capitalize && (g = this.capitalize(g)), g; }, r.prototype.word = function(e) { e = c(e), t( @@ -446,7 +446,7 @@ var ie = { exports: {} }; }); } else if (e && (e.minAge !== void 0 || e.maxAge !== void 0)) { t(e.minAge < 0, "Chance: MinAge cannot be less than zero."), t(e.minAge > e.maxAge, "Chance: MinAge cannot be greater than MaxAge."); - var B = e.minAge !== void 0 ? e.minAge : 0, h = e.maxAge !== void 0 ? e.maxAge : 100, v = new Date(o - h - 1, n.getMonth(), n.getDate()), C = new Date(o - B, n.getMonth(), n.getDate()); + var B = e.minAge !== void 0 ? e.minAge : 0, f = e.maxAge !== void 0 ? e.maxAge : 100, v = new Date(o - f - 1, n.getMonth(), n.getDate()), C = new Date(o - B, n.getMonth(), n.getDate()); v.setDate(v.getDate() + 1), C.setDate(C.getDate() + 1), C.setMilliseconds(C.getMilliseconds() - 1), e = c(e, { min: v, max: C @@ -500,14 +500,14 @@ var ie = { exports: {} }; return e = e + (10 - parseInt(a.toString().slice(-1))).toString().slice(-1), e; }, r.prototype.mrz = function(e) { var a = function(u) { - var g = "> 5] |= 128 << a % 32, e[(a + 64 >>> 9 << 4) + 14] = a; - var n, o, u, g, B, h = 1732584193, v = -271733879, C = -1732584194, A = 271733878; + var n, o, u, g, B, f = 1732584193, v = -271733879, C = -1732584194, A = 271733878; for (n = 0; n < e.length; n += 16) - o = h, u = v, g = C, B = A, h = this.md5_ff(h, v, C, A, e[n], 7, -680876936), A = this.md5_ff(A, h, v, C, e[n + 1], 12, -389564586), C = this.md5_ff(C, A, h, v, e[n + 2], 17, 606105819), v = this.md5_ff(v, C, A, h, e[n + 3], 22, -1044525330), h = this.md5_ff(h, v, C, A, e[n + 4], 7, -176418897), A = this.md5_ff(A, h, v, C, e[n + 5], 12, 1200080426), C = this.md5_ff(C, A, h, v, e[n + 6], 17, -1473231341), v = this.md5_ff(v, C, A, h, e[n + 7], 22, -45705983), h = this.md5_ff(h, v, C, A, e[n + 8], 7, 1770035416), A = this.md5_ff(A, h, v, C, e[n + 9], 12, -1958414417), C = this.md5_ff(C, A, h, v, e[n + 10], 17, -42063), v = this.md5_ff(v, C, A, h, e[n + 11], 22, -1990404162), h = this.md5_ff(h, v, C, A, e[n + 12], 7, 1804603682), A = this.md5_ff(A, h, v, C, e[n + 13], 12, -40341101), C = this.md5_ff(C, A, h, v, e[n + 14], 17, -1502002290), v = this.md5_ff(v, C, A, h, e[n + 15], 22, 1236535329), h = this.md5_gg(h, v, C, A, e[n + 1], 5, -165796510), A = this.md5_gg(A, h, v, C, e[n + 6], 9, -1069501632), C = this.md5_gg(C, A, h, v, e[n + 11], 14, 643717713), v = this.md5_gg(v, C, A, h, e[n], 20, -373897302), h = this.md5_gg(h, v, C, A, e[n + 5], 5, -701558691), A = this.md5_gg(A, h, v, C, e[n + 10], 9, 38016083), C = this.md5_gg(C, A, h, v, e[n + 15], 14, -660478335), v = this.md5_gg(v, C, A, h, e[n + 4], 20, -405537848), h = this.md5_gg(h, v, C, A, e[n + 9], 5, 568446438), A = this.md5_gg(A, h, v, C, e[n + 14], 9, -1019803690), C = this.md5_gg(C, A, h, v, e[n + 3], 14, -187363961), v = this.md5_gg(v, C, A, h, e[n + 8], 20, 1163531501), h = this.md5_gg(h, v, C, A, e[n + 13], 5, -1444681467), A = this.md5_gg(A, h, v, C, e[n + 2], 9, -51403784), C = this.md5_gg(C, A, h, v, e[n + 7], 14, 1735328473), v = this.md5_gg(v, C, A, h, e[n + 12], 20, -1926607734), h = this.md5_hh(h, v, C, A, e[n + 5], 4, -378558), A = this.md5_hh(A, h, v, C, e[n + 8], 11, -2022574463), C = this.md5_hh(C, A, h, v, e[n + 11], 16, 1839030562), v = this.md5_hh(v, C, A, h, e[n + 14], 23, -35309556), h = this.md5_hh(h, v, C, A, e[n + 1], 4, -1530992060), A = this.md5_hh(A, h, v, C, e[n + 4], 11, 1272893353), C = this.md5_hh(C, A, h, v, e[n + 7], 16, -155497632), v = this.md5_hh(v, C, A, h, e[n + 10], 23, -1094730640), h = this.md5_hh(h, v, C, A, e[n + 13], 4, 681279174), A = this.md5_hh(A, h, v, C, e[n], 11, -358537222), C = this.md5_hh(C, A, h, v, e[n + 3], 16, -722521979), v = this.md5_hh(v, C, A, h, e[n + 6], 23, 76029189), h = this.md5_hh(h, v, C, A, e[n + 9], 4, -640364487), A = this.md5_hh(A, h, v, C, e[n + 12], 11, -421815835), C = this.md5_hh(C, A, h, v, e[n + 15], 16, 530742520), v = this.md5_hh(v, C, A, h, e[n + 2], 23, -995338651), h = this.md5_ii(h, v, C, A, e[n], 6, -198630844), A = this.md5_ii(A, h, v, C, e[n + 7], 10, 1126891415), C = this.md5_ii(C, A, h, v, e[n + 14], 15, -1416354905), v = this.md5_ii(v, C, A, h, e[n + 5], 21, -57434055), h = this.md5_ii(h, v, C, A, e[n + 12], 6, 1700485571), A = this.md5_ii(A, h, v, C, e[n + 3], 10, -1894986606), C = this.md5_ii(C, A, h, v, e[n + 10], 15, -1051523), v = this.md5_ii(v, C, A, h, e[n + 1], 21, -2054922799), h = this.md5_ii(h, v, C, A, e[n + 8], 6, 1873313359), A = this.md5_ii(A, h, v, C, e[n + 15], 10, -30611744), C = this.md5_ii(C, A, h, v, e[n + 6], 15, -1560198380), v = this.md5_ii(v, C, A, h, e[n + 13], 21, 1309151649), h = this.md5_ii(h, v, C, A, e[n + 4], 6, -145523070), A = this.md5_ii(A, h, v, C, e[n + 11], 10, -1120210379), C = this.md5_ii(C, A, h, v, e[n + 2], 15, 718787259), v = this.md5_ii(v, C, A, h, e[n + 9], 21, -343485551), h = this.safe_add(h, o), v = this.safe_add(v, u), C = this.safe_add(C, g), A = this.safe_add(A, B); - return [h, v, C, A]; + o = f, u = v, g = C, B = A, f = this.md5_ff(f, v, C, A, e[n], 7, -680876936), A = this.md5_ff(A, f, v, C, e[n + 1], 12, -389564586), C = this.md5_ff(C, A, f, v, e[n + 2], 17, 606105819), v = this.md5_ff(v, C, A, f, e[n + 3], 22, -1044525330), f = this.md5_ff(f, v, C, A, e[n + 4], 7, -176418897), A = this.md5_ff(A, f, v, C, e[n + 5], 12, 1200080426), C = this.md5_ff(C, A, f, v, e[n + 6], 17, -1473231341), v = this.md5_ff(v, C, A, f, e[n + 7], 22, -45705983), f = this.md5_ff(f, v, C, A, e[n + 8], 7, 1770035416), A = this.md5_ff(A, f, v, C, e[n + 9], 12, -1958414417), C = this.md5_ff(C, A, f, v, e[n + 10], 17, -42063), v = this.md5_ff(v, C, A, f, e[n + 11], 22, -1990404162), f = this.md5_ff(f, v, C, A, e[n + 12], 7, 1804603682), A = this.md5_ff(A, f, v, C, e[n + 13], 12, -40341101), C = this.md5_ff(C, A, f, v, e[n + 14], 17, -1502002290), v = this.md5_ff(v, C, A, f, e[n + 15], 22, 1236535329), f = this.md5_gg(f, v, C, A, e[n + 1], 5, -165796510), A = this.md5_gg(A, f, v, C, e[n + 6], 9, -1069501632), C = this.md5_gg(C, A, f, v, e[n + 11], 14, 643717713), v = this.md5_gg(v, C, A, f, e[n], 20, -373897302), f = this.md5_gg(f, v, C, A, e[n + 5], 5, -701558691), A = this.md5_gg(A, f, v, C, e[n + 10], 9, 38016083), C = this.md5_gg(C, A, f, v, e[n + 15], 14, -660478335), v = this.md5_gg(v, C, A, f, e[n + 4], 20, -405537848), f = this.md5_gg(f, v, C, A, e[n + 9], 5, 568446438), A = this.md5_gg(A, f, v, C, e[n + 14], 9, -1019803690), C = this.md5_gg(C, A, f, v, e[n + 3], 14, -187363961), v = this.md5_gg(v, C, A, f, e[n + 8], 20, 1163531501), f = this.md5_gg(f, v, C, A, e[n + 13], 5, -1444681467), A = this.md5_gg(A, f, v, C, e[n + 2], 9, -51403784), C = this.md5_gg(C, A, f, v, e[n + 7], 14, 1735328473), v = this.md5_gg(v, C, A, f, e[n + 12], 20, -1926607734), f = this.md5_hh(f, v, C, A, e[n + 5], 4, -378558), A = this.md5_hh(A, f, v, C, e[n + 8], 11, -2022574463), C = this.md5_hh(C, A, f, v, e[n + 11], 16, 1839030562), v = this.md5_hh(v, C, A, f, e[n + 14], 23, -35309556), f = this.md5_hh(f, v, C, A, e[n + 1], 4, -1530992060), A = this.md5_hh(A, f, v, C, e[n + 4], 11, 1272893353), C = this.md5_hh(C, A, f, v, e[n + 7], 16, -155497632), v = this.md5_hh(v, C, A, f, e[n + 10], 23, -1094730640), f = this.md5_hh(f, v, C, A, e[n + 13], 4, 681279174), A = this.md5_hh(A, f, v, C, e[n], 11, -358537222), C = this.md5_hh(C, A, f, v, e[n + 3], 16, -722521979), v = this.md5_hh(v, C, A, f, e[n + 6], 23, 76029189), f = this.md5_hh(f, v, C, A, e[n + 9], 4, -640364487), A = this.md5_hh(A, f, v, C, e[n + 12], 11, -421815835), C = this.md5_hh(C, A, f, v, e[n + 15], 16, 530742520), v = this.md5_hh(v, C, A, f, e[n + 2], 23, -995338651), f = this.md5_ii(f, v, C, A, e[n], 6, -198630844), A = this.md5_ii(A, f, v, C, e[n + 7], 10, 1126891415), C = this.md5_ii(C, A, f, v, e[n + 14], 15, -1416354905), v = this.md5_ii(v, C, A, f, e[n + 5], 21, -57434055), f = this.md5_ii(f, v, C, A, e[n + 12], 6, 1700485571), A = this.md5_ii(A, f, v, C, e[n + 3], 10, -1894986606), C = this.md5_ii(C, A, f, v, e[n + 10], 15, -1051523), v = this.md5_ii(v, C, A, f, e[n + 1], 21, -2054922799), f = this.md5_ii(f, v, C, A, e[n + 8], 6, 1873313359), A = this.md5_ii(A, f, v, C, e[n + 15], 10, -30611744), C = this.md5_ii(C, A, f, v, e[n + 6], 15, -1560198380), v = this.md5_ii(v, C, A, f, e[n + 13], 21, 1309151649), f = this.md5_ii(f, v, C, A, e[n + 4], 6, -145523070), A = this.md5_ii(A, f, v, C, e[n + 11], 10, -1120210379), C = this.md5_ii(C, A, f, v, e[n + 2], 15, 718787259), v = this.md5_ii(v, C, A, f, e[n + 9], 21, -343485551), f = this.safe_add(f, o), v = this.safe_add(v, u), C = this.safe_add(C, g), A = this.safe_add(A, B); + return [f, v, C, A]; }, G.prototype.binl2rstr = function(e) { var a, n = ""; for (a = 0; a < e.length * 32; a += 8) @@ -7205,20 +7205,20 @@ var ie = { exports: {} }; return this.rstr2hex(this.raw_hmac_md5(e, a)); }, G.prototype.md5 = function(e, a, n) { return a ? n ? this.raw_hmac_md5(a, e) : this.hex_hmac_md5(a, e) : n ? this.raw_md5(e) : this.hex_md5(e); - }, m.exports && (f = m.exports = r), f.Chance = r, typeof importScripts < "u" && (chance = new r(), self.Chance = r), typeof window == "object" && typeof window.document == "object" && (window.Chance = r, window.chance = new r()); + }, m.exports && (d = m.exports = r), d.Chance = r, typeof importScripts < "u" && (chance = new r(), self.Chance = r), typeof window == "object" && typeof window.document == "object" && (window.Chance = r, window.chance = new r()); })(); })(ie, ie.exports); var be = ie.exports; const pe = /* @__PURE__ */ fe(be); var Y = new pe(), le = function() { - function m(f, E, L, I) { - let k = L.toUpperCase(), p = f.toUpperCase(), b = E.toUpperCase(); + function m(d, E, L, I) { + let x = L.toUpperCase(), p = d.toUpperCase(), b = E.toUpperCase(); if (I != null && 0 < I.length) { let i = 0, t = I.length; - var y = "'"; - (k.startsWith("INTEGER") || k.startsWith("NUMBER") || k.startsWith("DATE")) && (y = ""); + var S = "'"; + (x.startsWith("INTEGER") || x.startsWith("NUMBER") || x.startsWith("DATE")) && (S = ""); let s = I[Math.floor(Math.random() * (t - i)) + i]; - return s.toLowerCase && s.toLowerCase() == "null" && (y = ""), y + s + y; + return s.toLowerCase && s.toLowerCase() == "null" && (S = ""), S + s + S; } if (b == "NAME" && 0 <= p.indexOf("DEPARTMENT")) { var M = ["Sales", "Finance", "Delivery", "Manufacturing"]; @@ -7244,11 +7244,11 @@ var Y = new pe(), le = function() { let i = 0, t = r.length; return "'" + r[Math.floor(Math.random() * (t - i)) + i] + "'"; } - if (k.startsWith("INTEGER") || k.startsWith("NUMBER")) { + if (x.startsWith("INTEGER") || x.startsWith("NUMBER")) { let i = 0, t = 100; return Math.floor(Math.random() * (t - i)) + i; } - if (k.startsWith("DATE") || k.startsWith("TIMESTAMP")) { + if (x.startsWith("DATE") || x.startsWith("TIMESTAMP")) { let i = 0, t = 100; var c = Math.floor(Math.random() * (t - i)) + i; return "sysdate-" + c; @@ -7257,10 +7257,10 @@ var Y = new pe(), le = function() { } return m; }(), $ = function() { - function m(f, E) { - for (var L = [], I = "", k = 0; k < f.length; k++) { - for (var p = f.charAt(k), b = L.length, y = 0; y < E.length; y++) { - var M = E.charAt(y); + function m(d, E) { + for (var L = [], I = "", x = 0; x < d.length; x++) { + for (var p = d.charAt(x), b = L.length, S = 0; S < E.length; S++) { + var M = E.charAt(S); if (p == M) { 0 < I.length && L.push(I), L.push(p), I = ""; continue; @@ -7272,8 +7272,8 @@ var Y = new pe(), le = function() { } return m; }(), Z = function() { - function m(I, k, p, b, y, M) { - this.type = b, this.value = I, this.begin = k, this.end = p, this.line = y, this.col = M, this.toString = function() { + function m(I, x, p, b, S, M) { + this.type = b, this.value = I, this.begin = x, this.end = p, this.line = S, this.col = M, this.toString = function() { return "{type:" + b + ",value:" + I + "}"; }, this.isStandardLiteral = function() { if (this.value.length < 2 || !(this.value.charAt(0) == "'" || this.value.charAt(0) == "n" || this.value.charAt(0) == "N")) @@ -7310,81 +7310,81 @@ var Y = new pe(), le = function() { return c == "<" ? ">" : c == "[" ? "]" : c == "{" ? "}" : c == "(" ? ")" : c; } } - function f(I, k, p) { - for (var b = [], y = `(){}[]^-|!*+.><='",;:%@?/\\#~` + p, M = ` + function d(I, x, p) { + for (var b = [], S = `(){}[]^-|!*+.><='",;:%@?/\\#~` + p, M = ` \r `, r = $( I, //".*-+/|><=()\'\", \n\r\t" - y + M + S + M ), c = 0, i = 0, t = 0, s = 0; s < r.length; s++) { - var l = r[s], d = null; - if (b.length > 0 && (d = b[b.length - 1]), l == ` + var l = r[s], h = null; + if (b.length > 0 && (h = b[b.length - 1]), l == ` ` ? (i++, t = 0) : s > 0 && r[s - 1] !== ` -` ? t = t + r[s - 1].length : t = 0, c += l.length, d != null && d.type == "comment" && (d.value.lastIndexOf("*/") != d.value.length - 2 || d.value == "/*/")) { - l == "*" || l == "/" ? d.value = d.value + l : d.value = "/* ... ", d.end = c, d != null && d.type == "comment" && d.value.lastIndexOf("*/") == d.value.length - 2 && d.value != "/*/" && (d.value = I.substring(d.begin, d.end)); +` ? t = t + r[s - 1].length : t = 0, c += l.length, h != null && h.type == "comment" && (h.value.lastIndexOf("*/") != h.value.length - 2 || h.value == "/*/")) { + l == "*" || l == "/" ? h.value = h.value + l : h.value = "/* ... ", h.end = c, h != null && h.type == "comment" && h.value.lastIndexOf("*/") == h.value.length - 2 && h.value != "/*/" && (h.value = I.substring(h.begin, h.end)); continue; } - if (d != null && (d.type == "line-comment" || d.type == "dbtools-command") && l != ` + if (h != null && (h.type == "line-comment" || h.type == "dbtools-command") && l != ` `) { - d.value = d.value + l; + h.value = h.value + l; continue; } - if (d != null && (d.type == "line-comment" || d.type == "dbtools-command") && l == ` -` && (d.end = d.begin + d.value.length), d != null && d.type == "quoted-string" && !(d.isStandardLiteral() || d.isAltLiteral())) { - d.value = d.value + l, d.end = d.begin + d.value.length; + if (h != null && (h.type == "line-comment" || h.type == "dbtools-command") && l == ` +` && (h.end = h.begin + h.value.length), h != null && h.type == "quoted-string" && !(h.isStandardLiteral() || h.isAltLiteral())) { + h.value = h.value + l, h.end = h.begin + h.value.length; continue; } - if (!(d != null && d.type == "dquoted-string" && l != '"' && !(d.value.endsWith('"') && d.value.length > 1))) { - if (d != null && d.type == "dquoted-string" && l == '"') { - d.end = c, d.value = I.substring(d.begin, d.end); + if (!(h != null && h.type == "dquoted-string" && l != '"' && !(h.value.endsWith('"') && h.value.length > 1))) { + if (h != null && h.type == "dquoted-string" && l == '"') { + h.end = c, h.value = I.substring(h.begin, h.end); continue; } - if (!(d != null && d.type == "bquoted-string" && l != "`" && !(d.value.endsWith("`") && d.value.length > 1))) { - if (d != null && d.type == "bquoted-string" && l == "`") { - d.end = c, d.value = I.substring(d.begin, d.end); + if (!(h != null && h.type == "bquoted-string" && l != "`" && !(h.value.endsWith("`") && h.value.length > 1))) { + if (h != null && h.type == "bquoted-string" && l == "`") { + h.end = c, h.value = I.substring(h.begin, h.end); continue; } - if (l == "*" && d != null && d.value == "/") { - d.value = d.value + l, d.end = d.begin + d.value.length, d.type = "comment"; + if (l == "*" && h != null && h.value == "/") { + h.value = h.value + l, h.end = h.begin + h.value.length, h.type = "comment"; continue; } - if (l == "-" && d != null && d.value == "-") { - d.value = d.value + l, d.type = "line-comment"; + if (l == "-" && h != null && h.value == "-") { + h.value = h.value + l, h.type = "line-comment"; continue; } - if ((l.toUpperCase() == "REM" || l.toUpperCase() == "REMA" || l.toUpperCase() == "REMAR" || l.toUpperCase() == "REMARK" || l.toUpperCase() == "PRO" || l.toUpperCase() == "PROM" || l.toUpperCase() == "PROMP" || l.toUpperCase() == "PROMPT") && (d == null || d.value == ` -` || d.value == "\r")) { + if ((l.toUpperCase() == "REM" || l.toUpperCase() == "REMA" || l.toUpperCase() == "REMAR" || l.toUpperCase() == "REMARK" || l.toUpperCase() == "PRO" || l.toUpperCase() == "PROM" || l.toUpperCase() == "PROMP" || l.toUpperCase() == "PROMPT") && (h == null || h.value == ` +` || h.value == "\r")) { b.push(new m(l, c - l.length, -9, "line-comment", i, t)); continue; } - if (l.toUpperCase() == "SODA" && (d == null || d.value == ` -` || d.value == "\r")) { + if (l.toUpperCase() == "SODA" && (h == null || h.value == ` +` || h.value == "\r")) { b.push(new m(l, c - l.length, -9, "dbtools-command", i, t)); continue; } - if (d != null && d.type == "identifier" && d.end == -11 && d.value.indexOf("@") == 0 && !(l == ` + if (h != null && h.type == "identifier" && h.end == -11 && h.value.indexOf("@") == 0 && !(l == ` ` || l == "\r")) { - d.value = d.value + l; + h.value = h.value + l; continue; } - if (d != null && d.type == "identifier" && d.end == -11 && d.value.indexOf("@") == 0 && (l == ` + if (h != null && h.type == "identifier" && h.end == -11 && h.value.indexOf("@") == 0 && (l == ` ` || l == "\r")) { - d.end = c - 1, b.push(new m(l, c - 1, c, "ws", i, t)); + h.end = c - 1, b.push(new m(l, c - 1, c, "ws", i, t)); continue; } - if (k && l == "'") { - d != null && (d.value.toUpperCase() == "Q" || d.value.toUpperCase() == "N" || d.value.toUpperCase() == "U" || d.value.toUpperCase() == "NQ") ? (d.value += l, d.type = "quoted-string") : b.push(new m(l, c - 1, -10, "quoted-string", i, t)); + if (x && l == "'") { + h != null && (h.value.toUpperCase() == "Q" || h.value.toUpperCase() == "N" || h.value.toUpperCase() == "U" || h.value.toUpperCase() == "NQ") ? (h.value += l, h.type = "quoted-string") : b.push(new m(l, c - 1, -10, "quoted-string", i, t)); continue; } - if (k && l == '"') { + if (x && l == '"') { b.push(new m(l, c - 1, -11, "dquoted-string", i, t)); continue; } - if (l == "`" && 0 <= y.indexOf("`")) { + if (l == "`" && 0 <= S.indexOf("`")) { b.push(new m(l, c - 1, -11, "bquoted-string", i, t)); continue; } - if (l.length == 1 && 0 <= y.indexOf(l)) { + if (l.length == 1 && 0 <= S.indexOf(l)) { b.push(new m(l, c - 1, c, "operation", i, t)); continue; } @@ -7396,29 +7396,29 @@ var Y = new pe(), le = function() { E(l, b, c - l.length, i) || (l.charAt(l.length - 1) == "K" || l.charAt(l.length - 1) == "k" || l.charAt(l.length - 1) == "M" || l.charAt(l.length - 1) == "m" || l.charAt(l.length - 1) == "G" || l.charAt(l.length - 1) == "g" || l.charAt(l.length - 1) == "T" || l.charAt(l.length - 1) == "t" || l.charAt(l.length - 1) == "P" || l.charAt(l.length - 1) == "p" || l.charAt(l.length - 1) == "E" || l.charAt(l.length - 1) == "e" ? (b.push(new m(l.substring(0, l.length - 1), c - l.length, c - 1, "constant.numeric", i, t)), b.push(new m(l.substring(l.length - 1), c - 1, c, "constant.numeric", i, t))) : b.push(new m(l, c - l.length, c, "constant.numeric", i, t))); continue; } - var S = "identifier"; - s + 1 < r.length && r[s + 1], b.push(new m(l, c - l.length, c, S, i, t)); + var y = "identifier"; + s + 1 < r.length && r[s + 1], b.push(new m(l, c - l.length, c, y, i, t)); } } } if (b.length > 0) { - var d = b[b.length - 1]; - d.end = I.length; + var h = b[b.length - 1]; + h.end = I.length; } return b; } - function E(I, k, p, b) { + function E(I, x, p, b) { if (0 > I.indexOf("e") && 0 > I.indexOf("f") && 0 > I.indexOf("d")) return !1; 0 <= I.indexOf("e"), 0 <= I.indexOf("e"), !(0 <= I.indexOf("e")) && 0 <= I.indexOf("f"); - for (var y = $(I, "efd"), M = 0; M < y.length; M++) { - var r = y[M]; - p += r.length, "0" <= r.charAt(0) && r.charAt(0) <= "9" ? k.push(new m(r, p - r.length, p, "constant.numeric", b)) : k.push(new m(r, p - r.length, p, "identifier", b)); + for (var S = $(I, "efd"), M = 0; M < S.length; M++) { + var r = S[M]; + p += r.length, "0" <= r.charAt(0) && r.charAt(0) <= "9" ? x.push(new m(r, p - r.length, p, "constant.numeric", b)) : x.push(new m(r, p - r.length, p, "identifier", b)); } return !0; } - function L(I, k, p, b) { - for (var y = [], M = f(I, p, b), r = null, c = 0; c < M.length; c++) { + function L(I, x, p, b) { + for (var S = [], M = d(I, p, b), r = null, c = 0; c < M.length; c++) { var i = M[c]; if (i.type == "quoted-string") { if (r != null && r.type == "quoted-string") { @@ -7444,14 +7444,14 @@ var Y = new pe(), le = function() { || token.value.equals("$ELSE") || token.value.equals("$THEN") ||*/ - i.value.indexOf("$$") == 0 && (i.value = "$$VAR"), (k || i.type != "ws" && i.type != "comment" && i.type != "line-comment") && y.push(i), r = i; + i.value.indexOf("$$") == 0 && (i.value = "$$VAR"), (x || i.type != "ws" && i.type != "comment" && i.type != "line-comment") && S.push(i), r = i; } - return y; + return S; } return L; }(); function ge(m) { - const f = { + const d = { ACCESS: "N", ADD: "N", ALL: "Y", @@ -7563,13 +7563,13 @@ function ge(m) { WITH: "Y" }; let E = m.toUpperCase(); - return f[E] != null ? "the_" + m : m; + return d[E] != null ? "the_" + m : m; } let se = function() { - let m, f = " ", E = ["string", "varchar2", "varchar", "vc", "char"]; + let m, d = " ", E = ["string", "varchar2", "varchar", "vc", "char"]; var L = ["yn", "boolean", "bool"]; - function I(y, M, r) { - this.line = y, this.parent = r, this.children = [], r != null && r.children.push(this), this.fks = null, this.descendants = function() { + function I(S, M, r) { + this.line = S, this.parent = r, this.children = [], r != null && r.children.push(this), this.fks = null, this.descendants = function() { var i = []; i.push(this); for (var t = 0; t < this.children.length; t++) @@ -7587,15 +7587,15 @@ let se = function() { let P = m.find(s); P != null && P.isMany2One() && (l += 3), i < l && (i = l); } - for (var d = 0; d < this.children.length; d++) { - let P = this.children[d]; + for (var h = 0; h < this.children.length; h++) { + let P = this.children[h]; if (0 < P.children.length) continue; let T = P.parseName().length; 0 < P.indexOf("file") && (T += 9), i < T && (i = T); } - var S = m.additionalColumns(); - for (let P in S) { + var y = m.additionalColumns(); + for (let P in y) { let T = P.length; i < T && (i = T); } @@ -7618,30 +7618,30 @@ let se = function() { return this.comment == null && 0 < t && (this.comment = i.substr(t + 1, s - t - 1)), 0 < t && (i = i.substr(0, t) + i.substr(s + 2)), t = i.indexOf("--"), this.comment == null && 0 < t && (this.comment = i.substr(t + 2)), 0 < t && (i = i.substr(0, t)), i.trim(); }, this.src = Z(this.content.toLowerCase(), !1, !0, ""), this.parseName = function() { let i = this.trimmedContent(); - i = i.replace(/\t/, f); + i = i.replace(/\t/, d); const t = i.indexOf('"'), s = i.indexOf('"', t + 1); if (0 <= t && t < s) return i.substring(t, s + 1); (i.indexOf(">") == 0 || i.indexOf("<") == 0) && (i = i.substring(1).trim()); const l = i.toLowerCase(); if (l.indexOf("view ") == 0) { - var d = i.split(" "); - return d[1]; + var h = i.split(" "); + return h[1]; } i = p(i, " d"); - var S = i.indexOf("/"); - 0 < S && (i = i.substring(0, S)), i = i.trim(), i = p(i, " integer"), i = p(i, " number"), i = p(i, " int"), i = p(i, " num"), i = p(i, " clob"), i = p(i, " blob"), i = p(i, " json"), i = p(i, " file"), i = p(i, " date"), i = p(i, " tstz"), i = p(i, " tswtz"), i = p(i, " tswltz"), i = p(i, " ts"), i = i.replace(/ vc\d+k/g, ""), i = i.replace(/ vc\(\d+\)/g, ""), i = i.replace(/ vc\d+/g, ""); + var y = i.indexOf("/"); + 0 < y && (i = i.substring(0, y)), i = i.trim(), i = p(i, " integer"), i = p(i, " number"), i = p(i, " int"), i = p(i, " num"), i = p(i, " clob"), i = p(i, " blob"), i = p(i, " json"), i = p(i, " file"), i = p(i, " date"), i = p(i, " tstz"), i = p(i, " tswtz"), i = p(i, " tswltz"), i = p(i, " ts"), i = i.replace(/ vc\d+k/g, ""), i = i.replace(/ vc\(\d+\)/g, ""), i = i.replace(/ vc\d+/g, ""); for (let T in E) { - let x = l.indexOf(" " + E[T]); - if (0 < x) { - i = i.substring(0, x) + i.substring(x + E[T].length + 1); + let k = l.indexOf(" " + E[T]); + if (0 < k) { + i = i.substring(0, k) + i.substring(k + E[T].length + 1); break; } } for (let T in L) { - let x = l.indexOf(" " + L[T]); - if (0 < x) { - i = i.substring(0, x) + i.substring(x + L[T].length + 1); + let k = l.indexOf(" " + L[T]); + if (0 < k) { + i = i.substring(0, k) + i.substring(k + L[T].length + 1); break; } } @@ -7660,68 +7660,68 @@ let se = function() { return "table"; var s = m.semantics(), l = 4e3; (t[0].value.startsWith("name") || t[0].value.startsWith("email")) && (l = 255); - const d = this.indexOf("vc", !0); - if (0 < d) { - t[d].begin, t[d].end; - let w = t[d].value.substring(2); - w == "" && this.indexOf("(") == d + 1 && (w = t[d + 2].value), w != "" && (l = parseInt(w)), t[d].value.endsWith("k") && (l < 32 ? l = l * 1024 : l = l * 1024 - 1); + const h = this.indexOf("vc", !0); + if (0 < h) { + t[h].begin, t[h].end; + let w = t[h].value.substring(2); + w == "" && this.indexOf("(") == h + 1 && (w = t[h + 2].value), w != "" && (l = parseInt(w)), t[h].value.endsWith("k") && (l < 32 ? l = l * 1024 : l = l * 1024 - 1); } - var S = "varchar2(" + l + s + ")"; - i == "plsql" && (S = "varchar2"), 0 < this.indexOf("int", !0) && (S = "integer"), t[0].value.endsWith("_id") && d < 0 && this.indexOf("date") < 0 && (S = "number"), t[0].value.endsWith("id") && d < 0 && this.indexOf("/") + 1 == this.indexOf("pk") && (S = "number"); + var y = "varchar2(" + l + s + ")"; + i == "plsql" && (y = "varchar2"), 0 < this.indexOf("int", !0) && (y = "integer"), t[0].value.endsWith("_id") && h < 0 && this.indexOf("date") < 0 && (y = "number"), t[0].value.endsWith("id") && h < 0 && this.indexOf("/") + 1 == this.indexOf("pk") && (y = "number"); const P = K(r.parseName(), "_", this.parseName()); - (t[0].value.endsWith("_yn") || t[0].value.startsWith("is_")) && (S = "varchar2(1 char) constraint " + K(m.objPrefix(), P) + ` -`, S += f + f + " ".repeat(r.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"); + (t[0].value.endsWith("_yn") || t[0].value.startsWith("is_")) && (y = "varchar2(1 char) constraint " + K(m.objPrefix(), P) + ` +`, y += d + d + " ".repeat(r.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"); for (let w in L) if (0 < this.indexOf(L[w])) { - S = "varchar2(1 char) constraint " + K(m.objPrefix(), P) + ` -`, S += f + f + " ".repeat(r.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"; + y = "varchar2(1 char) constraint " + K(m.objPrefix(), P) + ` +`, y += d + d + " ".repeat(r.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"; break; } - this.indexOf("phone_number") == 0 && (S = "number"); + this.indexOf("phone_number") == 0 && (y = "number"); let T = this.indexOf("num", !0); - 0 < T && (S = "number"); - let x = this.indexOf(")"); - if (0 < T && 0 < x && (S += this.content.toLowerCase().substring(t[T + 1].begin, t[x].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value.startsWith("created") || t[0].value.startsWith("updated")) && (S = m.getOptionValue("Date Data Type").toLowerCase()), d < 0 && (0 < this.indexOf("clob") && (S = "clob"), (0 < this.indexOf("blob") || 0 < this.indexOf("file")) && (S = "blob"), 0 < this.indexOf("json") && (S = "clob check (" + this.parseName() + " is json)")), 0 < this.indexOf("tswltz") ? S = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : 0 < this.indexOf("tswtz") || 0 < this.indexOf("tstz") ? S = "TIMESTAMP WITH TIME ZONE".toLowerCase() : 0 < this.indexOf("ts") && (S = "TIMESTAMP".toLowerCase()), i) { + 0 < T && (y = "number"); + let k = this.indexOf(")"); + if (0 < T && 0 < k && (y += this.content.toLowerCase().substring(t[T + 1].begin, t[k].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value.startsWith("created") || t[0].value.startsWith("updated")) && (y = m.getOptionValue("Date Data Type").toLowerCase()), h < 0 && (0 < this.indexOf("clob") && (y = "clob"), (0 < this.indexOf("blob") || 0 < this.indexOf("file")) && (y = "blob"), 0 < this.indexOf("json") && (y = "clob check (" + this.parseName() + " is json)")), 0 < this.indexOf("tswltz") ? y = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : 0 < this.indexOf("tswtz") || 0 < this.indexOf("tstz") ? y = "TIMESTAMP WITH TIME ZONE".toLowerCase() : 0 < this.indexOf("ts") && (y = "TIMESTAMP".toLowerCase()), i) { if (0 < this.indexOf("fk") || 0 < this.indexOf("reference")) { const w = this.refId(); let D = "number", R = m.find(w); return R != null && R.getExplicitPkNode() != null && (D = R.getExplicitPkNode().parseType((_) => !0)), D; } - return S; + return y; } - 0 < this.indexOf("unique") && (S += ` -`, S += f + f + " ".repeat(r.maxChildNameLen()) + "constraint " + P + "_unq unique"); + 0 < this.indexOf("unique") && (y += ` +`, y += d + d + " ".repeat(r.maxChildNameLen()) + "constraint " + P + "_unq unique"); var N = "'"; - if ((S.startsWith("integer") || S.startsWith("number") || S.startsWith("date")) && (N = ""), 0 < this.indexOf("default")) { + if ((y.startsWith("integer") || y.startsWith("number") || y.startsWith("date")) && (N = ""), 0 < this.indexOf("default")) { const w = t[this.indexOf("default") + 1].value; - S += " default on null " + N + w + N; + y += " default on null " + N + w + N; } - if ((0 < this.indexOf("nn") || this.indexOf("not") + 1 == this.indexOf("null")) && this.indexOf("pk") < 0 && (S += " not null"), (0 < this.indexOf("hidden") || 0 < this.indexOf("invincible")) && (S += " invisible"), S += this.genConstraint(N), 0 < this.indexOf("between")) { + if ((0 < this.indexOf("nn") || this.indexOf("not") + 1 == this.indexOf("null")) && this.indexOf("pk") < 0 && (y += " not null"), (0 < this.indexOf("hidden") || 0 < this.indexOf("invincible")) && (y += " invisible"), y += this.genConstraint(N), 0 < this.indexOf("between")) { const w = this.indexOf("between"), D = t[w + 1].value + " and " + t[w + 3].value; - S += " constraint " + K(P, "_bet") + ` -`, S += " check (" + this.parseName() + " between " + D + ")"; + y += " constraint " + K(P, "_bet") + ` +`, y += " check (" + this.parseName() + " between " + D + ")"; } if (0 < this.indexOf("pk")) { let w = " not null"; - S.startsWith("number") && m.optionEQvalue("pk", "identityDataType") && (w = " GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), S.startsWith("number") && m.optionEQvalue("pk", "seq") && (w = " default on null " + (m.objPrefix() + this.parent.parseName()) + "_seq.NEXTVAL ".toLowerCase()), S.startsWith("number") && m.optionEQvalue("pk", "guid") && (w = " default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), S += w + ` -`, S += f + f + " ".repeat(r.maxChildNameLen()) + "constraint " + K(m.objPrefix(), P, "_pk") + " primary key"; + y.startsWith("number") && m.optionEQvalue("pk", "identityDataType") && (w = " GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), y.startsWith("number") && m.optionEQvalue("pk", "seq") && (w = " default on null " + (m.objPrefix() + this.parent.parseName()) + "_seq.NEXTVAL ".toLowerCase()), y.startsWith("number") && m.optionEQvalue("pk", "guid") && (w = " default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), y += w + ` +`, y += d + d + " ".repeat(r.maxChildNameLen()) + "constraint " + K(m.objPrefix(), P, "_pk") + " primary key"; } - return S; + return y; }, this.genConstraint = function(i) { let t = ""; if (0 < this.indexOf("check")) { let s = ""; r != null && (s = r.parseName() + "_"); - const l = K(s, this.parseName()), d = this.trimmedContent().toLowerCase(), S = d.indexOf("/check"); - let P = d.lastIndexOf("/"); - P == S && (P = d.length); - let T = this.trimmedContent().substr(S + 6, P - S - 6).trim(); - const x = Z(T, !1, !0, ""); - let N = f; - r != null && (N = " ".repeat(r.maxChildNameLen())), this.children != null && 0 < this.children.length ? (x[0].value != "(" && (T = "( " + T + ")"), t += f + "constraint " + K(m.objPrefix(), l, "_ck"), t += " check " + T + `, -`) : x[0].value == "(" && x[x.length - 1].value == ")" ? (t += " constraint " + K(m.objPrefix(), l, "_ck") + ` -`, t += f + f + N + "check " + T) : (0 < T.indexOf(", ") ? T = T.replace(/, /g, i + "," + i) : 0 < T.indexOf(",") ? T = T.replace(/,/g, i + "," + i) : T = T.replace(/ /g, i + "," + i), t += " constraint " + K(m.objPrefix(), l, "_ck") + ` -`, t += f + f + N + "check (" + this.parseName() + " in (" + i + T + i + "))", t = t.replace(/''/gm, "'")); + const l = K(s, this.parseName()), h = this.trimmedContent().toLowerCase(), y = h.indexOf("/check"); + let P = h.lastIndexOf("/"); + P == y && (P = h.length); + let T = this.trimmedContent().substr(y + 6, P - y - 6).trim(); + const k = Z(T, !1, !0, ""); + let N = d; + r != null && (N = " ".repeat(r.maxChildNameLen())), this.children != null && 0 < this.children.length ? (k[0].value != "(" && (T = "( " + T + ")"), t += d + "constraint " + K(m.objPrefix(), l, "_ck"), t += " check " + T + `, +`) : k[0].value == "(" && k[k.length - 1].value == ")" ? (t += " constraint " + K(m.objPrefix(), l, "_ck") + ` +`, t += d + d + N + "check " + T) : (0 < T.indexOf(", ") ? T = T.replace(/, /g, i + "," + i) : 0 < T.indexOf(",") ? T = T.replace(/,/g, i + "," + i) : T = T.replace(/ /g, i + "," + i), t += " constraint " + K(m.objPrefix(), l, "_ck") + ` +`, t += d + d + N + "check (" + this.parseName() + " in (" + i + T + i + "))", t = t.replace(/''/gm, "'")); } return t; }, this.isMany2One = function() { @@ -7747,14 +7747,14 @@ let se = function() { }, this.parseValues = function() { var i = this.trimmedContent().toUpperCase(), t, s, l; if (0 <= i.indexOf("/CHECK") || 0 <= i.indexOf("/VALUES")) { - var d = "/CHECK"; - return t = i.indexOf(d), t < 0 && (d = "/VALUES", t = i.indexOf(d)), s = i.lastIndexOf("/"), s == t && (s = i.length), l = i.substr(t + d.length, s - t - d.length).trim(), 0 < l.indexOf(",") ? (l = l.replace(/ /g, ""), l.split(",")) : l.split(" "); + var h = "/CHECK"; + return t = i.indexOf(h), t < 0 && (h = "/VALUES", t = i.indexOf(h)), s = i.lastIndexOf("/"), s == t && (s = i.length), l = i.substr(t + h.length, s - t - h.length).trim(), 0 < l.indexOf(",") ? (l = l.replace(/ /g, ""), l.split(",")) : l.split(" "); } if (0 <= i.indexOf("/BETWEEN")) { t = i.indexOf("/BETWEEN"), s = i.lastIndexOf("/"), s == t && (s = i.length), l = i.substr(t + 8, s - t - 8).trim(), l = l.replace(" AND ", " "); - for (var S = [], P = parseInt(l.split(" ")[0]); P <= parseInt(l.split(" ")[1]); P++) - S.push(P); - return S; + for (var y = [], P = parseInt(l.split(" ")[0]); P <= parseInt(l.split(" ")[1]); P++) + y.push(P); + return y; } return null; }, this.apparentDepth = function() { @@ -7791,7 +7791,7 @@ let se = function() { if (this.parseType() == "view" || this.parseType() == "dv") return ""; if (this.children.length == 0 && 0 < this.apparentDepth()) { - let n = f; + let n = d; return this.parent != null && (n += " ".repeat(this.parent.maxChildNameLen() - this.parseName().length)), this.parseName() + n + this.parseType(); } if (this.fks == null && (this.fks = []), !this.isMany2One()) { @@ -7806,51 +7806,51 @@ let se = function() { this.colprefix = o[0]; } var s = [], l = ""; - const d = m.objPrefix() + this.parseName(); - m.optionEQvalue("pk", "SEQ") && m.optionEQvalue("genpk", !0) && (l = l + "create sequence " + d + `_seq; + const h = m.objPrefix() + this.parseName(); + m.optionEQvalue("pk", "SEQ") && m.optionEQvalue("genpk", !0) && (l = l + "create sequence " + h + `_seq; -`), l = l + "create table " + d + ` ( +`), l = l + "create table " + h + ` ( `; - var S = f + " ".repeat(this.maxChildNameLen() - 2); + var y = d + " ".repeat(this.maxChildNameLen() - 2); let P = this.getGenIdColName(); if (P != null) { let n = "not null"; - m.optionEQvalue("pk", "identityDataType") && (n = "GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), m.optionEQvalue("pk", "seq") && (n = "default on null " + d + "_seq.NEXTVAL ".toLowerCase()), m.optionEQvalue("pk", "guid") && (n = "default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), l += f + P + S + "number " + n + ` + m.optionEQvalue("pk", "identityDataType") && (n = "GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), m.optionEQvalue("pk", "seq") && (n = "default on null " + h + "_seq.NEXTVAL ".toLowerCase()), m.optionEQvalue("pk", "guid") && (n = "default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), l += d + P + y + "number " + n + ` `; const o = K(m.objPrefix("no schema") + this.parseName(), "_", P); - l += f + f + " ".repeat(this.maxChildNameLen()) + "constraint " + K(o, "_pk") + ` primary key, + l += d + d + " ".repeat(this.maxChildNameLen()) + "constraint " + K(o, "_pk") + ` primary key, `; } else { let n = this.getExplicitPkNode(); if (n != null) { - let o = f + " ".repeat(this.maxChildNameLen() - n.parseName().length); - l += f + n.parseName() + o + n.parseType() + `, + let o = d + " ".repeat(this.maxChildNameLen() - n.parseName().length); + l += d + n.parseName() + o + n.parseType() + `, `; } } for (let n in this.fks) { let o = this.fks[n], u = "number", g = m.find(o), B = ""; - g != null && g.getExplicitPkNode() != null ? u = g.getExplicitPkNode().parseType((C) => !0) : g == null && (g = m.find(n), g.isMany2One() & !n.endsWith("_id") && (o = n, n = z(n), B = "_id")), S = f + " ".repeat(this.maxChildNameLen() - n.length), l += f + n + B + S + u + ` -`, l += f + f + " ".repeat(this.maxChildNameLen()) + "constraint " + d + "_" + n + `_fk + g != null && g.getExplicitPkNode() != null ? u = g.getExplicitPkNode().parseType((C) => !0) : g == null && (g = m.find(n), g.isMany2One() & !n.endsWith("_id") && (o = n, n = z(n), B = "_id")), y = d + " ".repeat(this.maxChildNameLen() - n.length), l += d + n + B + y + u + ` +`, l += d + d + " ".repeat(this.maxChildNameLen()) + "constraint " + h + "_" + n + `_fk `; - let h = ""; - 0 <= i.indexOf("/CASCADE") && (h = " on delete cascade"); + let f = ""; + 0 <= i.indexOf("/CASCADE") && (f = " on delete cascade"); let v = ""; for (let C in this.children) { let A = this.children[C]; if (n == A.parseName()) { let H = A.trimmedContent().toUpperCase(); - (0 <= H.indexOf("/NN") || 0 <= H.indexOf("/NOTNULL")) && (v = " NOT NULL".toLowerCase()), 0 <= H.indexOf("/CASCADE") && (h = " on delete cascade"); + (0 <= H.indexOf("/NN") || 0 <= H.indexOf("/NOTNULL")) && (v = " NOT NULL".toLowerCase()), 0 <= H.indexOf("/CASCADE") && (f = " on delete cascade"); break; } } - l += f + f + " ".repeat(this.maxChildNameLen()) + "references " + m.objPrefix() + o + h + v + `, + l += d + d + " ".repeat(this.maxChildNameLen()) + "references " + m.objPrefix() + o + f + v + `, `; } if (m.optionEQvalue("rowkey", !0) || 0 < i.indexOf("/ROWKEY")) { - let n = f + " ".repeat(this.maxChildNameLen() - 7); - l += f + "row_key" + n + `varchar2(30 char) -`, l += f + f + " ".repeat(this.maxChildNameLen()) + "constraint " + d + `_row_key_unq unique not null, + let n = d + " ".repeat(this.maxChildNameLen() - 7); + l += d + "row_key" + n + `varchar2(30 char) +`, l += d + d + " ".repeat(this.maxChildNameLen()) + "constraint " + h + `_row_key_unq unique not null, `; } for (let n = 0; n < this.children.length; n++) { @@ -7863,42 +7863,42 @@ let se = function() { if (o.refId() == null) { if (o == this.getExplicitPkNode()) continue; - if (l += f + o.toDDL([]) + `, + if (l += d + o.toDDL([]) + `, `, 0 < o.indexOf("file")) { const u = o.parseName().toUpperCase(); - let g = u + "_FILENAME", B = f + " ".repeat(this.maxChildNameLen() - g.length); - l += f + g.toLowerCase() + B + "varchar2(255" + m.semantics() + `), -`, g = u + "_MIMETYPE", B = f + " ".repeat(this.maxChildNameLen() - g.length), l += f + g.toLowerCase() + B + "varchar2(255" + m.semantics() + `), -`, g = u + "_CHARSET", B = f + " ".repeat(this.maxChildNameLen() - g.length), l += f + g.toLowerCase() + B + "varchar2(255" + m.semantics() + `), -`, g = u + "_LASTUPD", B = f + " ".repeat(this.maxChildNameLen() - g.length), l += f + g.toLowerCase() + B + m.getOptionValue("Date Data Type").toLowerCase() + `, + let g = u + "_FILENAME", B = d + " ".repeat(this.maxChildNameLen() - g.length); + l += d + g.toLowerCase() + B + "varchar2(255" + m.semantics() + `), +`, g = u + "_MIMETYPE", B = d + " ".repeat(this.maxChildNameLen() - g.length), l += d + g.toLowerCase() + B + "varchar2(255" + m.semantics() + `), +`, g = u + "_CHARSET", B = d + " ".repeat(this.maxChildNameLen() - g.length), l += d + g.toLowerCase() + B + "varchar2(255" + m.semantics() + `), +`, g = u + "_LASTUPD", B = d + " ".repeat(this.maxChildNameLen() - g.length), l += d + g.toLowerCase() + B + m.getOptionValue("Date Data Type").toLowerCase() + `, `; } } } } if (m.optionEQvalue("rowVersion", "yes") || 0 < i.indexOf("/ROWVERSION")) { - let n = f + " ".repeat(this.maxChildNameLen() - 11); - l += f + "row_version" + n + `integer not null, + let n = d + " ".repeat(this.maxChildNameLen() - 11); + l += d + "row_version" + n + `integer not null, `; } if (m.optionEQvalue("Audit Columns", "yes") || 0 < i.indexOf("/AUDITCOLS") || 0 < i.indexOf("/AUDIT COL")) { - let n = m.getOptionValue("createdcol"), o = f + " ".repeat(this.maxChildNameLen() - n.length); - l += f + n + o + m.getOptionValue("Date Data Type").toLowerCase() + ` not null, + let n = m.getOptionValue("createdcol"), o = d + " ".repeat(this.maxChildNameLen() - n.length); + l += d + n + o + m.getOptionValue("Date Data Type").toLowerCase() + ` not null, `; let u = m.getOptionValue("createdbycol"); - o = f + " ".repeat(this.maxChildNameLen() - u.length), l += f + u + o + "varchar2(255" + m.semantics() + `) not null, + o = d + " ".repeat(this.maxChildNameLen() - u.length), l += d + u + o + "varchar2(255" + m.semantics() + `) not null, `; let g = m.getOptionValue("updatedcol"); - o = f + " ".repeat(this.maxChildNameLen() - g.length), l += f + g + o + m.getOptionValue("Date Data Type").toLowerCase() + ` not null, + o = d + " ".repeat(this.maxChildNameLen() - g.length), l += d + g + o + m.getOptionValue("Date Data Type").toLowerCase() + ` not null, `; let B = m.getOptionValue("updatedbycol"); - o = f + " ".repeat(this.maxChildNameLen() - B.length), l += f + B + o + "varchar2(255" + m.semantics() + `) not null, + o = d + " ".repeat(this.maxChildNameLen() - B.length), l += d + B + o + "varchar2(255" + m.semantics() + `) not null, `; } var T = m.additionalColumns(); for (let n in T) { - var x = T[n]; - S = f + " ".repeat(this.maxChildNameLen() - n.length), l += f + n.toUpperCase() + S + x + ` not null, + var k = T[n]; + y = d + " ".repeat(this.maxChildNameLen() - n.length), l += d + n.toUpperCase() + y + k + ` not null, `; } l += this.genConstraint(), l.lastIndexOf(`, @@ -7907,7 +7907,7 @@ let se = function() { `; const N = i.indexOf("/AUDIT"), w = i.indexOf("/AUDITCOLS"), D = i.indexOf("/AUDIT COL"); - 0 < N && w < 0 && D < 0 && (l += "audit all on " + d + `; + 0 < N && w < 0 && D < 0 && (l += "audit all on " + h + `; `); let R = 1; @@ -7915,14 +7915,14 @@ let se = function() { if (!this.isMany2One()) { var _ = this.fks[n], O = _, G = n; G == null && (G = z(O) + "_id"), R == 1 && (l += `-- table index -`), l += "create index " + d + "_i" + R++ + " on " + d + " (" + G + `); +`), l += "create index " + h + "_i" + R++ + " on " + h + " (" + G + `); `; } let e = i.indexOf("/UNIQUE "); if (0 < e) { let n = i.substr(e + 8), o = n.indexOf("/"); - 0 < o && (n = n.substring(0, o).trim()), l += "alter table " + d + " add constraint " + d + "_uk unique (" + n + `); + 0 < o && (n = n.substring(0, o).trim()), l += "alter table " + h + " add constraint " + h + "_uk unique (" + n + `); `; } @@ -7930,14 +7930,14 @@ let se = function() { var a = this.children[n]; let o = a.trimmedContent().toUpperCase(); (0 <= o.indexOf("/IDX") || 0 <= o.indexOf("/INDEX")) && (R == 1 && (l += `-- table index -`), l += "create index " + d + "_i" + R++ + " on " + d + " (" + a.parseName() + `); +`), l += "create index " + h + "_i" + R++ + " on " + h + " (" + a.parseName() + `); `); } - this.comment != null && (l += "comment on table " + d + " is '" + this.comment + `'; + this.comment != null && (l += "comment on table " + h + " is '" + this.comment + `'; `); for (let n = 0; n < this.children.length; n++) { let o = this.children[n]; - o.comment != null && o.children.length == 0 && (l += "comment on column " + d + "." + o.parseName() + " is '" + o.comment + `'; + o.comment != null && o.children.length == 0 && (l += "comment on column " + h + "." + o.parseName() + " is '" + o.comment + `'; `); } l += ` @@ -7961,15 +7961,15 @@ let se = function() { `; l += `select `; - for (var d = 0, S = 2; S < s.length; S++) { - let u = m.find(s[S]); + for (var h = 0, y = 2; y < s.length; y++) { + let u = m.find(s[y]); if (u == null) return ""; - var P = (s[S] + ".id").length; - d < P && (d = P); + var P = (s[y] + ".id").length; + h < P && (h = P); for (var T = 0; T < u.children.length; T++) { - var x = u.children[T]; - P = (s[S] + "." + x.parseName()).length, d < P && (d = P); + var k = u.children[T]; + P = (s[y] + "." + k.parseName()).length, h < P && (h = P); } } var N = {}; @@ -7985,41 +7985,41 @@ let se = function() { let g = m.find(s[u]); if (g == null) continue; - let B = " ".repeat(d - (s[u] + ".id").length); - l += f + s[u] + ".id" + f + B + z(s[u]) + `_id, + let B = " ".repeat(h - (s[u] + ".id").length); + l += d + s[u] + ".id" + d + B + z(s[u]) + `_id, `; for (let v = 0; v < g.children.length; v++) { let C = g.children[v]; if (C.children.length == 0) { - B = " ".repeat(d - (s[u] + "." + C.parseName()).length); + B = " ".repeat(h - (s[u] + "." + C.parseName()).length); var R = ""; - 1 < N[C.parseName()] && (R = z(s[u]) + "_"), l += f + s[u] + "." + C.parseName() + f + B + R + C.parseName() + `, + 1 < N[C.parseName()] && (R = z(s[u]) + "_"), l += d + s[u] + "." + C.parseName() + d + B + R + C.parseName() + `, `; } } - let h = g.trimmedContent().toUpperCase(); - if (m.optionEQvalue("rowVersion", "yes") || 0 < h.indexOf("/ROWVERSION")) { - let v = f + " ".repeat(g.maxChildNameLen() - 11); - l += f + s[u] + ".row_version" + z(v + s[u]) + `_row_version, + let f = g.trimmedContent().toUpperCase(); + if (m.optionEQvalue("rowVersion", "yes") || 0 < f.indexOf("/ROWVERSION")) { + let v = d + " ".repeat(g.maxChildNameLen() - 11); + l += d + s[u] + ".row_version" + z(v + s[u]) + `_row_version, `; } - if (m.optionEQvalue("rowkey", "yes") || 0 < h.indexOf("/ROWKEY")) { - let v = f + " ".repeat(g.maxChildNameLen() - 7); - l += f + s[u] + ".ROW_KEY" + z(v + s[u]) + `_ROW_KEY, + if (m.optionEQvalue("rowkey", "yes") || 0 < f.indexOf("/ROWKEY")) { + let v = d + " ".repeat(g.maxChildNameLen() - 7); + l += d + s[u] + ".ROW_KEY" + z(v + s[u]) + `_ROW_KEY, `; } - if (m.optionEQvalue("Audit Columns", "yes") || 0 < h.indexOf("/AUDITCOLS") || 0 < h.indexOf("/AUDIT COL")) { - let v = m.getOptionValue("createdcol"), C = f + " ".repeat(g.maxChildNameLen() - v.length); - l += f + s[u] + "." + v + z(C + s[u]) + "_" + v + `, + if (m.optionEQvalue("Audit Columns", "yes") || 0 < f.indexOf("/AUDITCOLS") || 0 < f.indexOf("/AUDIT COL")) { + let v = m.getOptionValue("createdcol"), C = d + " ".repeat(g.maxChildNameLen() - v.length); + l += d + s[u] + "." + v + z(C + s[u]) + "_" + v + `, `; let A = m.getOptionValue("createdbycol"); - C = f + " ".repeat(g.maxChildNameLen() - A.length), l += f + s[u] + "." + A + z(C + s[u]) + "_" + A + `, + C = d + " ".repeat(g.maxChildNameLen() - A.length), l += d + s[u] + "." + A + z(C + s[u]) + "_" + A + `, `; let H = m.getOptionValue("updatedcol"); - C = f + " ".repeat(g.maxChildNameLen() - H.length), l += f + s[u] + "." + H + z(C + s[u]) + "_" + H + `, + C = d + " ".repeat(g.maxChildNameLen() - H.length), l += d + s[u] + "." + H + z(C + s[u]) + "_" + H + `, `; let F = m.getOptionValue("updatedbycol"); - C = f + " ".repeat(g.maxChildNameLen() - F.length), l += f + s[u] + "." + F + z(C + s[u]) + "_" + F + `, + C = d + " ".repeat(g.maxChildNameLen() - F.length), l += d + s[u] + "." + F + z(C + s[u]) + "_" + F + `, `; } } @@ -8028,9 +8028,9 @@ let se = function() { `), l += `from `; for (let u = 2; u < s.length; u++) { - let g = " ".repeat(d - s[u].length); + let g = " ".repeat(h - s[u].length); var _ = s[u]; - m.objPrefix() != null && m.objPrefix() != "" && (_ = m.objPrefix() + s[u] + g + s[u]), l += f + _ + `, + m.objPrefix() != null && m.objPrefix() != "" && (_ = m.objPrefix() + s[u] + g + s[u]), l += d + _ + `, `; } l.lastIndexOf(`, @@ -8046,7 +8046,7 @@ let se = function() { if (a != null) for (var n in e.fks) { var o = e.fks[n]; - o == G && (l += f + O + "." + z(o) + "_id(+) = " + G + `.id and + o == G && (l += d + O + "." + z(o) + "_id(+) = " + G + `.id and `); } } @@ -8060,9 +8060,9 @@ let se = function() { return ""; let s = this.parseName(); const l = s.indexOf('"') == 0; - let d = m.objPrefix() + s; - return l ? d = m.objPrefix() + s.substring(1, s.length - 1) : d = (m.objPrefix() + s).toUpperCase(), `begin -` + f + "ords.enable_object(p_enabled=>TRUE, p_object=>'" + d + `'); + let h = m.objPrefix() + s; + return l ? h = m.objPrefix() + s.substring(1, s.length - 1) : h = (m.objPrefix() + s).toUpperCase(), `begin +` + d + "ords.enable_object(p_enabled=>TRUE, p_object=>'" + h + `'); end; / `; @@ -8104,39 +8104,39 @@ end; end compress_int; `), s += `begin `; - var d = !1, S = "user"; - m.optionEQvalue("apex", "yes") && (S = "coalesce(sys_context('APEX$SESSION','APP_USER'),user)"), (m.optionEQvalue("rowkey", "yes") || 0 < l.indexOf("/ROWKEY")) && (s += ` if inserting then + var h = !1, y = "user"; + m.optionEQvalue("apex", "yes") && (y = "coalesce(sys_context('APEX$SESSION','APP_USER'),user)"), (m.optionEQvalue("rowkey", "yes") || 0 < l.indexOf("/ROWKEY")) && (s += ` if inserting then `, s += ` :new.row_key := compress_int(row_key_seq.nextval); `, s += ` end if; -`, d = !0); +`, h = !0); for (var P = 0; P < this.children.length; P++) { var T = this.children[P]; let D = null; 0 < T.content.indexOf("/lower") ? D = "LOWER".toLowerCase() : 0 < T.content.indexOf("/upper") && (D = "UPPER".toLowerCase()), D != null && (s += " :new." + T.parseName().toLowerCase() + " := " + D + "(:new." + T.parseName().toLowerCase() + `); -`, d = !0); +`, h = !0); } (m.optionEQvalue("Row Version Number", "yes") || 0 < l.indexOf("/ROWVERSION")) && (s += ` if inserting then `, s += ` :new.row_version := 1; `, s += ` elsif updating then `, s += ` :new.row_version := NVL(:old.row_version, 0) + 1; `, s += ` end if; -`, d = !0), (m.optionEQvalue("Audit Columns", "yes") || 0 < l.indexOf("/AUDITCOLS") || 0 < l.indexOf("/AUDIT COL")) && (s += ` if inserting then +`, h = !0), (m.optionEQvalue("Audit Columns", "yes") || 0 < l.indexOf("/AUDITCOLS") || 0 < l.indexOf("/AUDIT COL")) && (s += ` if inserting then `, s += " :new." + m.getOptionValue("createdcol") + ` := SYSDATE; -`.toLowerCase(), s += " :new." + m.getOptionValue("createdbycol") + " := " + S + `; +`.toLowerCase(), s += " :new." + m.getOptionValue("createdbycol") + " := " + y + `; `.toLowerCase(), s += ` end if; `, s += " :new." + m.getOptionValue("updatedcol") + ` := SYSDATE; -`.toLowerCase(), s += " :new." + m.getOptionValue("updatedbycol") + " := " + S + `; -`.toLowerCase(), d = !0); - var x = m.additionalColumns(); - for (var N in x) { - var w = x[N]; +`.toLowerCase(), s += " :new." + m.getOptionValue("updatedbycol") + " := " + y + `; +`.toLowerCase(), h = !0); + var k = m.additionalColumns(); + for (var N in k) { + var w = k[N]; s += " if :new." + N + ` is null then `, w.startsWith("INT") ? s += " " + N + ` := 0; ` : s += " " + N + ` := 'N/A'; `, s += ` end if; -`, d = !0; +`, h = !0; } - return d ? (s += "end " + t.toLowerCase() + `_BIU; + return h ? (s += "end " + t.toLowerCase() + `_BIU; / `.toLowerCase(), s) : ""; @@ -8145,67 +8145,70 @@ end; i != "get" && (t = " default null"); let s = "out"; i != "get" && (s = " in"); - let l = f + "procedure " + i + `_row ( + let l = d + "procedure " + i + `_row ( `; - l += f + f + "p_id in number" + t; - for (var d in this.fks) { - let P = this.fks[d], T = "number", x = m.find(P); - x != null && x.getExplicitPkNode() != null && (T = x.getExplicitPkNode().parseType((N) => !0)), l += `, -`, l += f + f + "P_" + d + " " + s + " " + T + t; + l += d + d + "p_id in number" + t; + for (var h in this.fks) { + let P = this.fks[h], T = "number", k = m.find(P); + k != null && k.getExplicitPkNode() != null && (T = k.getExplicitPkNode().parseType((N) => !0)), l += `, +`, l += d + d + "P_" + h + " " + s + " " + T + t; } for (let P = 0; P < this.children.length; P++) { - var S = this.children[P]; - S.children.length == 0 && (l += `, -`, l += f + f + "P_" + S.parseName() + " " + s + " " + S.parseType("plsql") + t); + var y = this.children[P]; + y.refId() == null && y.children.length == 0 && (l += `, +`, l += d + d + "P_" + y.parseName() + " " + s + " " + y.parseType("plsql") + t); } return l += ` )`, l; }, this.procBody = function(i) { - let t = m.objPrefix() + this.parseName(), s = f + `is + let t = m.objPrefix() + this.parseName(), s = d + `is `; - s += f + `begin + s += d + `begin `; - let l = f + f + "for c1 in (select * from " + t + ` where id = p_id) loop + let l = d + d + "for c1 in (select * from " + t + ` where id = p_id) loop `; - i == "insert" && (l = f + f + "insert into " + t + ` ( -`, l += f + f + "id"), i == "update" && (l = f + f + "update " + t + ` set -`, l += f + f + "id = p_id"), s += l; + i == "insert" && (l = d + d + "insert into " + t + ` ( +`, l += d + d + d + "id"), i == "update" && (l = d + d + "update " + t + ` set +`, l += d + d + d + "id = p_id"), s += l; for (let T in this.fks) { - let x = this.fks[T], N = m.find(x); + let k = this.fks[T], N = m.find(k); N != null && N.getExplicitPkNode() != null && N.getExplicitPkNode().parseType((D) => !0), (i == "insert" || i == "update") && (s += `, `); - let w = " P_" + T + " := c1." + T + `; + let w = d + d + d + "P_" + T + " := c1." + T + `; `; - i == "insert" && (w = " " + T), i == "update" && (w = " " + T + " = P_" + T + ` + i == "insert" && (w = d + d + d + T), i == "update" && (w = d + d + d + T + " = P_" + T + ` `), s += w; } - for (var d = 0; d < this.children.length; d++) { - var S = this.children[d]; - if (S.children.length != 0) + for (var h = 0; h < this.children.length; h++) { + var y = this.children[h]; + if (y.refId() != null || y.children.length != 0) continue; (i == "insert" || i == "update") && (s += `, `); - let T = " P_" + S.parseName().toLowerCase() + " := c1." + S.parseName().toLowerCase() + `; + let T = d + d + d + "P_" + y.parseName().toLowerCase() + " := c1." + y.parseName().toLowerCase() + `; `; - i == "insert" && (T = " " + S.parseName().toLowerCase()), i == "update" && (T = " " + S.parseName().toLowerCase() + " = P_" + S.parseName().toLowerCase() + ` + i == "insert" && (T = d + d + d + y.parseName().toLowerCase()), i == "update" && (T = d + d + d + y.parseName().toLowerCase() + " = P_" + y.parseName().toLowerCase() + ` `), s += T; } if (i == "insert") { - s += ` ) values ( -`, s += " p_id"; + s += ` +` + d + d + `) values ( +`, s += d + d + d + "p_id"; for (let T in this.fks) s += `, -`, s += " p_" + T; +`, s += d + d + d + "p_" + T; for (let T = 0; T < this.children.length; T++) { - let x = this.children[T]; - x.children.length == 0 && (s += `, -`, s += " p_" + x.parseName()); + let k = this.children[T]; + k.refId() == null && k.children.length == 0 && (s += `, +`, s += d + d + d + "p_" + k.parseName()); } } let P = ` end loop; `; - return i == "insert" && (P = " );"), i == "update" && (P = " where id = p_id;"), s += P, s += " end " + i + `_row; + return i == "insert" && (P = ` +` + d + d + ");"), i == "update" && (P = d + d + "where id = p_id;"), s += P, s += ` +` + d + "end " + i + `_row; `, s += ` `, s; }, this.generateTAPI = function() { @@ -8248,27 +8251,27 @@ is let s = ""; if (m.optionEQvalue("inserts", !1)) return s; - let l = m.objPrefix() + this.parseName(), d = this.trimmedContent().toLowerCase(), S = d.indexOf("/insert "), P = 0; - if (0 < S) { - d = d.substr(S + 8); - let x = d.split(" "); - if (this.rows = parseInt(x[0]), 0 < this.rows) { + let l = m.objPrefix() + this.parseName(), h = this.trimmedContent().toLowerCase(), y = h.indexOf("/insert "), P = 0; + if (0 < y) { + h = h.substr(y + 8); + let k = h.split(" "); + if (this.rows = parseInt(k[0]), 0 < this.rows) { for (m.getOptionValue("datalimit") < this.rows && (this.rows = m.getOptionValue("datalimit")), P = 0; P < this.rows; P++) { let N = i; i != null && Array.isArray(i) && (N = i[P]), s += "insert into " + l + ` ( `; let w = this.getGenIdColName(); if (w != null) - s += f + w + `, + s += d + w + `, `; else { let D = this.getExplicitPkNode(); - D != null && (s += f + D.parseName() + `, + D != null && (s += d + D.parseName() + `, `); } for (let D in this.fks) { let R = this.fks[D], _ = m.find(R), O = ""; - _ == null && (_ = m.find(D), _.isMany2One() & !D.endsWith("_id") && (R = D, D = z(D), O = "_id")), s += f + D + O + `, + _ == null && (_ = m.find(D), _.isMany2One() & !D.endsWith("_id") && (R = D, D = z(D), O = "_id")), s += d + D + O + `, `; } for (let D = 0; D < this.children.length; D++) { @@ -8276,7 +8279,7 @@ is if (!(w != null && R.parseName() == "id") && R.refId() == null) { if (R == this.getExplicitPkNode()) continue; - R.children.length == 0 && (s += f + R.parseName() + `, + R.children.length == 0 && (s += d + R.parseName() + `, `); } } @@ -8284,14 +8287,14 @@ is `) == s.length - 2 && (s = s.substr(0, s.length - 2) + ` `), s += `) values ( `, w != null) - s += f + (P + 1) + `, + s += d + (P + 1) + `, `; else { let D = this.getExplicitPkNode(); if (D != null) { const R = D.parseName(); let _ = b(m.data, null, R, this.parseName()), O = -1; - N != null && (O = N[R]), _ != null && _[P] != null && (O = _[P]), s += f + (O ?? P + 1) + `, + N != null && (O = N[R]), _ != null && _[P] != null && (O = _[P]), s += d + (O ?? P + 1) + `, `; } } @@ -8311,7 +8314,7 @@ is e != null && (O = [], O[0] = e); } } - s += f + oe(m.getOptionValue("Data Language"), le(l, z(R) + "_id", "INTEGER", O)) + `, + s += d + oe(m.getOptionValue("Data Language"), le(l, z(R) + "_id", "INTEGER", O)) + `, `; } for (let D = 0; D < this.children.length; D++) { @@ -8328,7 +8331,7 @@ is let G = b(m.data, null, O, this.parseName()); G != null && G[P] != null && (_ = [], _[0] = G[P]); let e = le(l, O, R.parseType(), _); - s += f + oe(m.getOptionValue("Data Language"), e) + `, + s += d + oe(m.getOptionValue("Data Language"), e) + `, `; } } @@ -8350,8 +8353,8 @@ is modify ` + T + " generated always as identity restart start with " + (P + 1) + `; `); - for (let x = 0; x < this.children.length; x++) { - const N = this.children[x]; + for (let k = 0; k < this.children.length; k++) { + const N = this.children[k]; if (0 < N.children.length) { const w = i; let D = null; @@ -8372,25 +8375,25 @@ modify ` + T + " generated always as identity restart start with " + (P + 1) + this.getExplicitPkNode == null && (s += i + "'" + this.getGenIdColName() + "' : " + t + "." + this.getGenIdColName() + `, `); for (var l = 0; l < this.children.length; l++) { - var d = this.children[l], S = d.parseName(); - if (d.children.length == 0) { - if (this.hasNonArrayChildId(S)) + var h = this.children[l], y = h.parseName(); + if (h.children.length == 0) { + if (this.hasNonArrayChildId(y)) continue; - s += i + "'" + S + "' : " + t + "." + S; + s += i + "'" + y + "' : " + t + "." + y; } else { - s += i + "'" + S + `' : [ -`, d.isMany2One(), i += " ", s += i + `select JSON { -`, s += d.generateSelectJsonTopDown(i + " "), s += i + " WITH NOCHECK } from " + S + ` with INSERT UPDATE + s += i + "'" + y + `' : [ +`, h.isMany2One(), i += " ", s += i + `select JSON { +`, s += h.generateSelectJsonTopDown(i + " "), s += i + " WITH NOCHECK } from " + y + ` with INSERT UPDATE `; - let x = null; - for (var P in d.fks) { - var T = d.fks[P]; + let k = null; + for (var P in h.fks) { + var T = h.fks[P]; if (T == t) { - x = P; + k = P; break; } } - const N = t + "." + this.getPkName(), w = S + "." + x; + const N = t + "." + this.getPkName(), w = y + "." + k; s += i + "where " + w + " = " + N + ` `, i = i.slice(0, -2), s += i + "]"; } @@ -8413,35 +8416,35 @@ modify ` + T + " generated always as identity restart start with " + (P + 1) + `), s; }; } - function k(y) { - m = y; - const M = y.input; + function x(S) { + m = S; + const M = S.input; let r = [], c = []; const i = Z(M + ` `, !0, !0, ""); m.data = null; let t = null, s = "", l = 0; e: - for (let d in i) { - const S = i[d]; - if (S.value == ` + for (let h in i) { + const y = i[h]; + if (y.value == ` ` && t == null) { if (s = s.replace(/\r/g, ""), s.replace(/\r/g, "").replace(/ /g, "") == "") { s = "", l++; continue; } - let T = new I(l, s, null), x = !1; + let T = new I(l, s, null), k = !1; for (let N = 0; N < r.length; N++) { let w = r[N]; if (T.apparentDepth() <= w.apparentDepth()) if (0 < N) { let D = r[N - 1]; - T = new I(l, s, D), r[N] = T, r = r.slice(0, N + 1), x = !0; + T = new I(l, s, D), r[N] = T, r = r.slice(0, N + 1), k = !0; break; } else - r[0] = T, r = r.slice(0, 1), c.push(T), x = !0; + r[0] = T, r = r.slice(0, 1), c.push(T), k = !0; } - if (!x) { + if (!k) { if (0 < r.length) { let N = r[r.length - 1]; T = new I(l, s, N); @@ -8457,20 +8460,20 @@ modify ` + T + " generated always as identity restart start with " + (P + 1) + l++, s = ""; continue; } - if (t == null && S.value == "#") { + if (t == null && y.value == "#") { t = ""; continue; } if (t != null) { - if (t += S.value, S.value != ` -` && S.value != "}") + if (t += y.value, y.value != ` +` && y.value != "}") continue; const P = Z(t, !1, !0, ""); if (P.length % 4 == 3 && P[1].value == ":") { - y.setOptions(t), t = null, s = ""; + S.setOptions(t), t = null, s = ""; continue; } - let T = null, x = null; + let T = null, k = null; for (let N in P) { const w = P[N]; if (T == null && w.value == "document") { @@ -8487,66 +8490,66 @@ modify ` + T + " generated always as identity restart start with " + (P + 1) + } catch { } } - if (x == null && w.value == "settings") { - x = ""; + if (k == null && w.value == "settings") { + k = ""; continue; } - if (x != null) { - x += w.value, x.substring(1); + if (k != null) { + k += w.value, k.substring(1); try { - y.setOptions(x), t = null, s = ""; + S.setOptions(k), t = null, s = ""; continue e; } catch { } } } } - if (S.type != "comment") { - if (S.type == "line-comment") { - 0 < s.trim().length && (s += S.value); + if (y.type != "comment") { + if (y.type == "line-comment") { + 0 < s.trim().length && (s += y.value); continue; } - s += S.value; + s += y.value; } } return c; } - function p(y, M) { + function p(S, M) { let r = M.toLowerCase(); - return 0 < y.indexOf(r) && y.indexOf(r) == y.length - r.length ? y.substring(0, y.length - r.length) : y.trim(); + return 0 < S.indexOf(r) && S.indexOf(r) == S.length - r.length ? S.substring(0, S.length - r.length) : S.trim(); } - function b(y, M, r, c) { + function b(S, M, r, c) { let i = []; - if (y == null || typeof y != "object") + if (S == null || typeof S != "object") return null; - let t = y[r]; + let t = S[r]; t != null && M == c && i.push(t); - for (var s in y) { - let l = y[s]; + for (var s in S) { + let l = S[s]; t = b(l, s, r, c), t != null && (i = i.concat(t)); } return i; } - return k; + return x; }(); var Ce = function() { function m() { this.aggrCounts = {}, this.calculateCounts = function(E, L) { let I = this.aggrSizes[E]; I == null && (I = 0); - let k = 1; - L.length != null && (k = L.length), this.aggrSizes[E] = I + k; + let x = 1; + L.length != null && (x = L.length), this.aggrSizes[E] = I + x; for (let p in L) typeof L[p] == "object" && this.calculateCounts(p, L[p]); - }, this.introspect = function(E, L, I, k) { + }, this.introspect = function(E, L, I, x) { if (I == 0) { if (this.aggrSizes = {}, E == null) - for (let y in L) { + for (let S in L) { let M = ["_address", "_id", "_name", "Id"], r = !1, c = ""; for (let i = 0; i < M.length; i++) { const t = M[i]; - if (y.endsWith(t)) { - c += y.substring(0, y.length - t.length), r = !0; + if (S.endsWith(t)) { + c += S.substring(0, S.length - t.length), r = !0; break; } } @@ -8556,9 +8559,9 @@ var Ce = function() { this.calculateCounts(E, L); } let p = ""; - k != null && k && (p = ">"); + x != null && x && (p = ">"); let b = ` -` + f(I) + p + E; +` + d(I) + p + E; if (typeof L == "number" && (b += " num", E.endsWith("_id") || E.endsWith("Id"))) return b += " /pk", b; if (typeof L == "object") { @@ -8572,20 +8575,20 @@ var Ce = function() { let M = this.aggrSizes[E]; b += " /insert " + M; } - let y = ""; + let S = ""; for (let M in L) { const r = L[M]; if (M != null) { const t = z(E), s = M.toLowerCase(); - if (E != null && t + "_id" == s && 0 < I && (y = M), t + "_id" == s) + if (E != null && t + "_id" == s && 0 < I && (S = M), t + "_id" == s) continue; } let c = typeof r == "object"; const i = this.introspect(M, r, I + 1, c); b += i; } - y != "" && (b += ` -` + f(I) + y); + S != "" && (b += ` +` + d(I) + S); } return I == 0 && (b += ` @@ -8600,7 +8603,7 @@ dv ` + E + "_dv " + E, b += ` `), b; }; } - function f(E) { + function d(E) { for (var L = "", I = 0; I < E; I++) L = L + " "; return L; @@ -8608,36 +8611,36 @@ dv ` + E + "_dv " + E, b += ` return new m(); }(); const ve = function() { - function m(p, b, y, M) { - this.from = b, this.to = y, y == null && (this.to = new f(b.line, b.depth + 1)), this.message = p, this.severity = M, M == null && (this.severity = "error"); + function m(p, b, S, M) { + this.from = b, this.to = S, S == null && (this.to = new d(b.line, b.depth + 1)), this.message = p, this.severity = M, M == null && (this.severity = "error"); } - function f(p, b) { + function d(p, b) { this.line = p, this.depth = b; } function E(p) { - const b = p, y = p.input; + const b = p, S = p.input; let M = []; - const r = y.split(` + const r = S.split(` `); - M = M.concat(k(r)); + M = M.concat(x(r)); const c = b.descendants(); for (let i = 0; i < c.length; i++) { const t = c[i]; if (b.optionEQvalue("genpk", !0) && c[i].parseName() == "id") { - const d = t.content.toLowerCase().indexOf("id"); - M.push(new m(q.duplicateId, new f(t.line, d))); + const h = t.content.toLowerCase().indexOf("id"); + M.push(new m(q.duplicateId, new d(t.line, h))); continue; } const s = t.src[2]; if (2 < t.src.length && s.value == "-") { - const d = s.begin; - M.push(new m(q.invalidDatatype, new f(t.line, d))); + const h = s.begin; + M.push(new m(q.invalidDatatype, new d(t.line, h))); continue; } const l = t.src[1]; if (1 < t.src.length && 0 < l.value.indexOf("0")) { - const d = l.begin; - M.push(new m(q.invalidDatatype, new f(t.line, d))); + const h = l.begin; + M.push(new m(q.invalidDatatype, new d(t.line, h))); continue; } M = M.concat(L(b, t)), M = M.concat(I(b, t)); @@ -8645,23 +8648,23 @@ const ve = function() { return M; } function L(p, b) { - var y = [], M = b.content.toLowerCase(); + var S = [], M = b.content.toLowerCase(); if (b.parseType() == "view") { var r = $(M, " "); let t = 0; for (var c = 0; c < r.length; c++) if (t += r[c].length, r[c] != " " && r[c] != "view" && c != 1) { var i = p.find(r[c]); - i == null && y.push(new m( + i == null && S.push(new m( q.undefinedObject + r[c], - new f(b.line, t - r[c].length) + new d(b.line, t - r[c].length) )); } } - return y; + return S; } function I(p, b) { - var y = [], M = b.content.toLowerCase(); + var S = [], M = b.content.toLowerCase(); if (0 < M.indexOf("/fk") || 0 < M.indexOf("/reference")) { let i = $(M, " "), t = 0, s = !1; for (var r = 0; r < i.length; r++) @@ -8673,24 +8676,24 @@ const ve = function() { if (s) { var c = p.find(i[r]); if (c == null) { - y.push(new m( + S.push(new m( q.undefinedObject + i[r], - new f(b.line, t - i[r].length) + new d(b.line, t - i[r].length) )); break; } } } } - return y; + return S; } - function k(p) { - for (var b = [], y = Ae(p), M = 1; M < p.length; M++) { + function x(p) { + for (var b = [], S = Ae(p), M = 1; M < p.length; M++) { var r = p[M - 1], c = p[M], i = re(r), t = re(c); - t != 0 && i < t && t < i + y && b.push( + t != 0 && i < t && t < i + S && b.push( new m( - q.misalignedAttribute + y, - new f(M, t) + q.misalignedAttribute + S, + new d(M, t) ) ); } @@ -8699,27 +8702,27 @@ const ve = function() { return E; }(); function Ae(m) { - let f = []; + let d = []; for (var E = 0; E < m.length; E++) { var L = m[E]; - f[E] = re(L); + d[E] = re(L); } let I = []; - for (let p = 0; p < f.length; p++) { - let b = ye(f, p); + for (let p = 0; p < d.length; p++) { + let b = ye(d, p); if (b != null) { - let y = I[f[p] - f[b]]; - y == null && (y = 0), I[f[p] - f[b]] = y + 1; + let S = I[d[p] - d[b]]; + S == null && (S = 0), I[d[p] - d[b]] = S + 1; } } - let k = null; + let x = null; for (let p in I) - (k == null || I[k] <= I[p]) && (k = p); - return k; + (x == null || I[x] <= I[p]) && (x = p); + return x; } function re(m) { - for (var f = m.split(/ |\t/), E = 0, L = 0; L < f.length; L++) { - var I = f[L]; + for (var d = m.split(/ |\t/), E = 0, L = 0; L < d.length; L++) { + var I = d[L]; if (I == " " && (E += 4), I == "") { E++; continue; @@ -8729,9 +8732,9 @@ function re(m) { } return 0; } -function ye(m, f) { - for (let E = f; 0 <= E; E--) - if (m[E] < m[f]) +function ye(m, d) { + for (let E = d; 0 <= E; E--) + if (m[E] < m[d]) return E; return null; } @@ -8774,7 +8777,7 @@ const q = { //"Auxiliary Columns": {label: "Auxiliary Columns", value:''}, // e.g. security_group_id integer //namecase: {label: 'Object and Field name convention', value:'canonic',check:['canonic','json']}, }; - function f(L) { + function d(L) { if (L == null) return null; let I = L; @@ -8783,18 +8786,18 @@ const q = { function E(L, I) { this.ddl = null, this.erd = null, this.errors = null, this.options = JSON.parse(JSON.stringify(m)), this.input = L, this.getOptionValue = function(p) { const b = p.toLowerCase(); - let y = this.options[b]; + let S = this.options[b]; if (!(b in this.options)) for (let M in this.options) { const r = this.options[M].label; if (r == null) continue; - r.toLowerCase() == b && (y = this.options[M]); + r.toLowerCase() == b && (S = this.options[M]); } - return y == null ? null : y.value; + return S == null ? null : S.value; }, this.optionEQvalue = function(p, b) { - var y = this.getOptionValue(p); - return f(y) == f(b); + var S = this.getOptionValue(p); + return d(S) == d(b); }, this.nonDefaultOptions = function() { let p = {}; for (let b in this.options) @@ -8806,8 +8809,8 @@ const q = { m[b] == null && p.push(b); return p; }, this.setOptionValue = function(p, b) { - let y = p.toLowerCase(); - if (!(y in this.options)) { + let S = p.toLowerCase(); + if (!(S in this.options)) { for (let r in this.options) if (this.options[r].label == p) { this.options[r].value = b; @@ -8815,15 +8818,15 @@ const q = { } } b == null && (b = ""); - let M = this.options[y]; - M == null && (M = {}, this.options[y] = M), M.value = b; + let M = this.options[S]; + M == null && (M = {}, this.options[S] = M), M.value = b; }, this.semantics = function() { var p = ""; return this.optionEQvalue("semantics", "CHAR") ? p = " char" : this.optionEQvalue("semantics", "BYTE") && (p = " byte"), p; }, this.find = function(p) { for (var b = 0; b < this.forest.length; b++) - for (var y = this.forest[b].descendants(), M = 0; M < y.length; M++) { - var r = y[M]; + for (var S = this.forest[b].descendants(), M = 0; M < S.length; M++) { + var r = S[M]; if (r.parseName() == de(p)) return r; } @@ -8831,9 +8834,9 @@ const q = { }, this.setOptions = function(p) { p = p.trim(), p.startsWith("#") && (p = p.substring(1).trim()); const b = p.indexOf("="); - let y = p.substring(b + 1).trim(); - y.indexOf("{") < 0 && (y = "{" + p + "}"); - let M = "", r = Z(y, !0, !0, ""); + let S = p.substring(b + 1).trim(); + S.indexOf("{") < 0 && (S = "{" + p + "}"); + let M = "", r = Z(S, !0, !0, ""); for (let i in r) { let t = r[i]; t.type == "identifier" && t.value != "true" && t.value != "false" && t.value != "null" ? M += '"' + t.value + '"' : M += t.value; @@ -8849,21 +8852,21 @@ const q = { var p = [], b = this.getOptionValue("Auxiliary Columns"); if (b == null) return p; - for (var y = b.split(","), M = 0; M < y.length; M++) { - var r = y[M].trim(), c = "VARCHAR2(4000)", i = r.indexOf(" "); + for (var S = b.split(","), M = 0; M < S.length; M++) { + var r = S[M].trim(), c = "VARCHAR2(4000)", i = r.indexOf(" "); 0 < i && (c = r.substring(i + 1).toUpperCase(), r = r.substring(0, i)), p[r] = c; } return p; }, this.objPrefix = function(p) { var b = this.getOptionValue("schema"); b == null && (b = ""), b != "" && p == null ? b = b + "." : b = ""; - var y = ""; - return this.getOptionValue("prefix") != null && (y = this.getOptionValue("prefix")), b = b + y, y != "" && (b = b + "_"), b.toLowerCase(); + var S = ""; + return this.getOptionValue("prefix") != null && (S = this.getOptionValue("prefix")), b = b + S, S != "" && (b = b + "_"), b.toLowerCase(); }; - let k = ""; - 0 < L.toLowerCase().indexOf("overridesettings") && se(this), I != null && this.optionEQvalue("overrideSettings", !1) && (k = "# settings = " + I + ` + let x = ""; + 0 < L.toLowerCase().indexOf("overridesettings") && se(this), I != null && this.optionEQvalue("overrideSettings", !1) && (x = "# settings = " + I + ` -`), this.input = k + L, this.forest = se(this), this.getERD = function() { +`), this.input = x + L, this.forest = se(this), this.getERD = function() { if (this.erd != null) return this.erd; let p = this.descendants(), b = { items: [] }; @@ -8875,26 +8878,26 @@ const q = { let t = p[r].getGenIdColName(); t != null && c.columns.push({ name: t, datatype: "number" }); for (let l = 0; l < p[r].children.length; l++) { - let d = p[r].children[l]; - if (d.parseType() != "table" && (c.columns.push({ name: d.parseName(""), datatype: d.parseType((S) => !0) }), 0 < d.indexOf("file"))) { - const S = d.parseName(); - c.columns.push({ name: S + "_filename", datatype: "varchar2(255" + this.semantics() + ")" }), c.columns.push({ name: S + "_mimetype", datatype: "varchar2(255" + this.semantics() + ")" }), c.columns.push({ name: S + "_charset", datatype: "varchar2(255" + this.semantics() + ")" }), c.columns.push({ name: S + "_lastupd", datatype: "date" }); + let h = p[r].children[l]; + if (h.parseType() != "table" && (c.columns.push({ name: h.parseName(""), datatype: h.parseType((y) => !0) }), 0 < h.indexOf("file"))) { + const y = h.parseName(); + c.columns.push({ name: y + "_filename", datatype: "varchar2(255" + this.semantics() + ")" }), c.columns.push({ name: y + "_mimetype", datatype: "varchar2(255" + this.semantics() + ")" }), c.columns.push({ name: y + "_charset", datatype: "varchar2(255" + this.semantics() + ")" }), c.columns.push({ name: y + "_lastupd", datatype: "date" }); } } const s = p[r].trimmedContent().toUpperCase(); if ((this.optionEQvalue("rowkey", !0) || 0 < s.indexOf("/ROWKEY")) && c.columns.push({ name: "row_key", datatype: "varchar2(30 char)" }), (this.optionEQvalue("rowVersion", "yes") || 0 < s.indexOf("/ROWVERSION")) && c.columns.push({ name: "row_version", datatype: "integer" }), this.optionEQvalue("Audit Columns", "yes") || 0 < s.indexOf("/AUDITCOLS")) { let l = this.getOptionValue("createdcol"); c.columns.push({ name: l, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); - let d = this.getOptionValue("createdbycol"); - c.columns.push({ name: d, datatype: "varchar2(255" + this.semantics() + ")" }); - let S = this.getOptionValue("updatedcol"); - c.columns.push({ name: S, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); + let h = this.getOptionValue("createdbycol"); + c.columns.push({ name: h, datatype: "varchar2(255" + this.semantics() + ")" }); + let y = this.getOptionValue("updatedcol"); + c.columns.push({ name: y, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); let P = this.getOptionValue("updatedbycol"); c.columns.push({ name: P, datatype: "varchar2(255" + this.semantics() + ")" }); } - var y = this.additionalColumns(); - for (let l in y) { - var M = y[l]; + var S = this.additionalColumns(); + for (let l in S) { + var M = S[l]; pad = tab + " ".repeat(this.maxChildNameLen() - l.length), ret += tab + l.toUpperCase() + pad + M + ` not null, `; } @@ -8944,44 +8947,44 @@ const q = { for (let r = 0; r < this.forest.length; r++) p += this.forest[r].toDDL() + ` `; - let y = 0; + let S = 0; for (let r = 0; r < b.length; r++) { let c = b[r].generateTrigger(); - c != "" && (y++ == 0 && (p += `-- triggers + c != "" && (S++ == 0 && (p += `-- triggers `), p += c + ` `); } - y = 0; + S = 0; for (let r = 0; r < b.length; r++) { let c = b[r].restEnable(); c != "" && (p += c + ` `); } - y = 0; + S = 0; for (let r = 0; r < b.length; r++) { if (this.optionEQvalue("api", !1) && b[r].trimmedContent().toLowerCase().indexOf("/api") < 0) continue; let c = b[r].generateTAPI(); - c != "" && (y++ == 0 && (p += `-- APIs + c != "" && (S++ == 0 && (p += `-- APIs `), p += c + ` `); } - y = 0; + S = 0; for (let r = 0; r < this.forest.length; r++) { let c = this.forest[r].generateView(); - c != "" && (y++ == 0 && (p += `-- create views + c != "" && (S++ == 0 && (p += `-- create views `), p += c + ` `); } - y = 0; + S = 0; for (let r = 0; r < this.forest.length; r++) { let c = this.forest[r].generateData(this.data); - c != "" && (y++ == 0 && (p += `-- load data + c != "" && (S++ == 0 && (p += `-- load data `), p += c + ` `); } - y = 0, p += `-- Generated by Quick SQL ${this.version()} ` + (/* @__PURE__ */ new Date()).toLocaleString() + ` + S = 0, p += `-- Generated by Quick SQL ${this.version()} ` + (/* @__PURE__ */ new Date()).toLocaleString() + ` `, p += `/* `; @@ -9004,17 +9007,17 @@ const q = { return E; }(); function Me(m) { - const f = JSON.parse(m); - return Ce.introspect(null, f, 0); + const d = JSON.parse(m); + return Ce.introspect(null, d, 0); } -function Te(m, f) { - return new j(m, f).getERD(); +function Te(m, d) { + return new j(m, d).getERD(); } -function Ie(m, f) { - return new j(m, f).getDDL(); +function Ie(m, d) { + return new j(m, d).getDDL(); } -function Be(m, f) { - return new j(m, f).getErrors(); +function Be(m, d) { + return new j(m, d).getErrors(); } function te() { return "1.2.1"; diff --git a/dist/quick-sql.umd.cjs b/dist/quick-sql.umd.cjs index d9e1098..445d325 100644 --- a/dist/quick-sql.umd.cjs +++ b/dist/quick-sql.umd.cjs @@ -1,85 +1,85 @@ -(function(V,W){typeof exports=="object"&&typeof module<"u"?W(exports):typeof define=="function"&&define.amd?define(["exports"],W):(V=typeof globalThis<"u"?globalThis:V||self,W(V.quickSQL={}))})(this,function(V){"use strict";function W(m){return m==null?m:m.toUpperCase().endsWith("IES")?m.substring(0,m.length-3)+"y":m.toUpperCase().endsWith("ES")||m.toUpperCase().endsWith("S")?m.substring(0,m.length-1):m}function Ce(m,f){let E='"';if(m==null)return null;let L=!1;const I="$#_ ";if(!m.startsWith(E)&&!L){const k=m;if(k.length>0&&"0"<=k[0]&&k[0]<="9")L=!0;else for(let p in k){const b=k[p];if(I.indexOf(b)<0&&(b<"0"||"9""u"&&(e[n]=a[n]);return e}function i(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var s=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?s=btoa:typeof Buffer=="function"&&(s=function(a){return new Buffer(a).toString("base64")})})(),r.prototype.bool=function(e){return e=c(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100o,"Chance: Max specified is out of range with fixed. Max should be, at most, "+o),e=c(e,{min:u,max:o}),a=this.integer({min:e.min*n,max:e.max*n});var g=(a/n).toFixed(e.fixed);return parseFloat(g)},r.prototype.integer=function(e){return e=c(e,{min:L,max:E}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},r.prototype.natural=function(e){if(e=c(e,{min:0,max:E}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),o=e.exclude.sort();for(var u in o){if(ne.max,"Chance: Min cannot be greater than Max.");var a=x.primes[x.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&x.primes.push(n);var o=x.primes.filter(function(u){return u>=e.min&&u<=e.max});return this.pick(o)},r.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},r.prototype.hex=function(e){e=c(e,{min:0,max:E,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},r.prototype.letter=function(e){e=c(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},r.prototype.string=function(e){e=c(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function d(e){this.c=e}d.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function S(e){this.c=e}S.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:p})},a:function(e){return e.character({pool:k})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function P(e){for(var a=[],n="identity",o=0;o"u")throw new y("Sorry, the buffer() function is not supported on your platform");e=c(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},r.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},r.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},r.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var o=function(A,H){return A.indexOf(H)!==-1};n&&(o=n.comparator||o);for(var u=[],g=0,B,h=a*50,v=M.call(arguments,2);u.lengthh)throw new RangeError("Chance: num is likely too large for sample set")}return u},r.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,o=[],u=M.call(arguments,2);for(n=Math.max(0,n),null;n--;null)o.push(e.apply(this,u));return o},r.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},r.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},r.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},r.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),o=n.length;return this.n(function(){var u=this.natural({max:--o}),g=n[u];return n[u]=n[o],g},Math.min(o,a))},r.prototype.shuffle=function(e){for(var a=[],n=0,o=Number(e.length),u=i(o),g=o-1,B,h=0;h0&&(o+=u)}if(o===0)throw new RangeError("Chance: No valid entries in array weights");var B=this.random()*o,h=0,v=-1,C;for(g=0;g0){if(B<=h){C=g;break}v=g}g===a.length-1&&(C=v)}var A=e[C];return n=typeof n>"u"?!1:n,n&&(e.splice(C,1),a.splice(C,1)),A},r.prototype.paragraph=function(e){e=c(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),o=e.linebreak===!0?` -`:" ";return n.join(o)},r.prototype.sentence=function(e){e=c(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,o,u=this.n(this.word,a);return o=u.join(" "),o=this.capitalize(o),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(o+=n),o},r.prototype.syllable=function(e){e=c(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",o="aeiou",u=n+o,g="",B,h=0;he.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var B=e.minAge!==void 0?e.minAge:0,h=e.maxAge!==void 0?e.maxAge:100,v=new Date(o-h-1,n.getMonth(),n.getDate()),C=new Date(o-B,n.getMonth(),n.getDate());v.setDate(v.getDate()+1),C.setDate(C.getDate()+1),C.setMilliseconds(C.getMilliseconds()-1),e=c(e,{min:v,max:C})}else e=c(e,{year:o-a});return this.date(e)},r.prototype.cpf=function(e){e=c(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var o=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;o=11-o%11,o>=10&&(o=0);var u=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+o;return e.formatted?u:u.replace(/\D/g,"")},r.prototype.cnpj=function(e){e=c(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var o=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;o=11-o%11,o<2&&(o=0);var u=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+o;return e.formatted?u:u.replace(/\D/g,"")},r.prototype.first=function(e){return e=c(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},r.prototype.profession=function(e){return e=c(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},r.prototype.company=function(){return this.pick(this.get("company"))},r.prototype.gender=function(e){return e=c(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},r.prototype.last=function(e){if(e=c(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(o){a=a.concat(n[o])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},r.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},r.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},r.prototype.tld=function(){return this.pick(this.tlds())},r.prototype.twitter=function(){return"@"+this.word()},r.prototype.url=function(e){e=c(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},r.prototype.port=function(){return this.integer({min:0,max:65535})},r.prototype.locale=function(e){return e=c(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},r.prototype.locales=function(e){return e=c(e),e.region?this.get("locale_regions"):this.get("locale_languages")},r.prototype.loremPicsum=function(e){e=c(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},r.prototype.address=function(e){return e=c(e),this.natural({min:5,max:2e3})+" "+this.street(e)},r.prototype.altitude=function(e){return e=c(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.areacode=function(e){e=c(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},r.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},r.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},r.prototype.countries=function(){return this.get("countries")},r.prototype.country=function(e){e=c(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},r.prototype.depth=function(e){return e=c(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.geohash=function(e){return e=c(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},r.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},r.prototype.latitude=function(e){var[a,n,o]=["ddm","dms","dd"];e=c(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:o});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case o:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.longitude=function(e){var[a,n,o]=["ddm","dms","dd"];e=c(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:o});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case o:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.phone=function(e){var a=this,n,o=function(H){var F=[];return H.sections.forEach(function(z){F.push(a.string({pool:"0123456789",length:z}))}),H.area+F.join(" ")};e=c(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var u;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),u=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),u=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),u=e.formatted?o(n):o(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),u=e.formatted?o(n):o(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n);break;case"us":var g=this.areacode(e).toString(),B=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),h=this.natural({min:1e3,max:9999}).toString();u=e.formatted?g+" "+B+"-"+h:g+B+h;break;case"br":var v=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),C;e.mobile?C="9"+a.string({pool:"0123456789",length:4}):C=this.natural({min:2e3,max:5999}).toString();var A=a.string({pool:"0123456789",length:4});u=e.formatted?"("+v+") "+C+"-"+A:v+C+A;break}return u},r.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},r.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",o=e+a+n,u=this.natural({max:9}),g=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),B=u+g;return o+" "+B},r.prototype.counties=function(e){return e=c(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},r.prototype.county=function(e){return this.pick(this.counties(e)).name},r.prototype.provinces=function(e){return e=c(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},r.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},r.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},r.prototype.states=function(e){e=c(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),o=this.get("territories"),u=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(o)),e.armed_forces&&(a=a.concat(u));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},r.prototype.street=function(e){e=c(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},r.prototype.street_suffix=function(e){return e=c(e,{country:"us"}),this.pick(this.street_suffixes(e))},r.prototype.street_suffixes=function(e){return e=c(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},r.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},r.prototype.ampm=function(){return this.bool()?"am":"pm"},r.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=c(e,{american:!0,string:!1});var o=typeof e.min<"u"?e.min.getTime():1,u=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:o,max:u}))}else{var g=this.month({raw:!0}),B=g.days;e&&e.month&&(B=this.get("months")[(e.month%12+12)%12].days),e=c(e,{year:parseInt(this.year(),10),month:g.numeric-1,day:this.natural({min:1,max:B}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},r.prototype.hammertime=function(e){return this.date(e).getTime()},r.prototype.hour=function(e){return e=c(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.millisecond=function(){return this.natural({max:999})},r.prototype.minute=r.prototype.second=function(e){return e=c(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.month=function(e){e=c(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},r.prototype.months=function(){return this.get("months")},r.prototype.second=function(){return this.natural({max:59})},r.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},r.prototype.weekday=function(e){e=c(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},r.prototype.year=function(e){return e=c(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},r.prototype.cc=function(e){e=c(e);var a,n,o;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),o=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,o,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},r.prototype.cc_types=function(){return this.get("cc_types")},r.prototype.cc_type=function(e){e=c(e);var a=this.cc_types(),n=null;if(e.name){for(var o=0;o3&&(H?F=F.substr(0,3):F=F[0]+F.substr(2,2)),F.length<3&&(z=F,F=A.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+F),z},v=function(A,H,F){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return A.getFullYear().toString().substr(2)+z[A.getMonth()]+F.pad(A.getDate()+(H.toLowerCase()==="female"?40:0),2)},C=function(A){for(var H="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",F="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(F[H.indexOf(A[U])]):K+=j.indexOf(F[H.indexOf(A[U])]);return z[K%26]};return B=B.concat(h(o,!0),h(n),v(u,a,this),g.toUpperCase().split("")).join(""),B+=C(B.toUpperCase()),B.toUpperCase()},r.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;u--)o[u-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?o.reduce(function(g,B){return g+B}):o}else throw new RangeError("Chance: A type of die roll must be included")},r.prototype.guid=function(e){e=c(e,{version:5});var a="abcdef1234567890",n="ab89",o=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return o},r.prototype.hash=function(e){e=c(e,{length:40,casing:"lower"});var a=e.casing==="upper"?b.toUpperCase():b;return this.string({pool:a,length:e.length})},r.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},r.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,o,u=0,g=a.length;g>u;++u)o=+a[u],u%2===0&&(o*=2,o>9&&(o-=9)),n+=o;return n*9%10},r.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=c(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},r.prototype.file=function(e){var a=e||{},n="fileExtension",o=Object.keys(this.get("fileExtension")),u,g;if(u=this.word({length:a.length}),a.extension)return g=a.extension,u+"."+g;if(a.extensions){if(Array.isArray(a.extensions))return g=this.pickone(a.extensions),u+"."+g;if(a.extensions.constructor===Object){var B=a.extensions,h=Object.keys(B);return g=this.pickone(B[this.pickone(h)]),u+"."+g}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var v=a.fileType;if(o.indexOf(v)!==-1)return g=this.pickone(this.get(n)[v]),u+"."+g;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return g=this.pickone(this.get(n)[this.pickone(o)]),u+"."+g},r.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var o={fileData:this.buffer({length:a.fileSize}),fileName:n};return o};var x={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},D=Object.prototype.hasOwnProperty,w=Object.keys||function(e){var a=[];for(var n in e)D.call(e,n)&&a.push(n);return a};function N(e,a){for(var n=w(e),o,u=0,g=n.length;u0)return this.normal_pool(e);var a,n,o,u,g=e.mean,B=e.dev;do n=this.random()*2-1,o=this.random()*2-1,a=n*n+o*o;while(a>=1);return u=n*Math.sqrt(-2*Math.log(a)/a),B*u+g},r.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},r.prototype.radio=function(e){e=c(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},r.prototype.set=function(e,a){typeof e=="string"?x[e]=a:x=_(e,x)},r.prototype.tv=function(e){return this.radio(e)},r.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},r.prototype.emotion=function(){return this.pick(this.get("emotions"))},r.prototype.mersenne_twister=function(e){return new O(e)},r.prototype.blueimp_md5=function(){return new G};var O=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};O.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},O.prototype.init_by_array=function(e,a){var n=1,o=0,u,g;for(this.init_genrand(19650218),u=this.N>a?this.N:a;u;u--)g=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((g&4294901760)>>>16)*1664525<<16)+(g&65535)*1664525)+e[o]+o,this.mt[n]>>>=0,n++,o++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),o>=a&&(o=0);for(u=this.N-1;u;u--)g=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((g&4294901760)>>>16)*1566083941<<16)+(g&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},O.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},O.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},O.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},O.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},O.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},O.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var G=function(){};G.prototype.VERSION="1.0.1",G.prototype.safe_add=function(a,n){var o=(a&65535)+(n&65535),u=(a>>16)+(n>>16)+(o>>16);return u<<16|o&65535},G.prototype.bit_roll=function(e,a){return e<>>32-a},G.prototype.md5_cmn=function(e,a,n,o,u,g){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(o,g)),u),n)},G.prototype.md5_ff=function(e,a,n,o,u,g,B){return this.md5_cmn(a&n|~a&o,e,a,u,g,B)},G.prototype.md5_gg=function(e,a,n,o,u,g,B){return this.md5_cmn(a&o|n&~o,e,a,u,g,B)},G.prototype.md5_hh=function(e,a,n,o,u,g,B){return this.md5_cmn(a^n^o,e,a,u,g,B)},G.prototype.md5_ii=function(e,a,n,o,u,g,B){return this.md5_cmn(n^(a|~o),e,a,u,g,B)},G.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,o,u,g,B,h=1732584193,v=-271733879,C=-1732584194,A=271733878;for(n=0;n>5]>>>a%32&255);return n},G.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(o=this.binl_md5(o,e.length*8)),n=0;n<16;n+=1)u[n]=o[n]^909522486,g[n]=o[n]^1549556828;return B=this.binl_md5(u.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(g.concat(B),512+128))},G.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",o,u;for(u=0;u>>4&15)+a.charAt(o&15);return n},G.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},G.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},G.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},G.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},G.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},G.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},m.exports&&(f=m.exports=r),f.Chance=r,typeof importScripts<"u"&&(chance=new r,self.Chance=r),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=r,window.chance=new r)})()})(ne,ne.exports);var Ae=ne.exports;const ye=ve(Ae);var q=new ye,ce=function(){function m(f,E,L,I){let k=L.toUpperCase(),p=f.toUpperCase(),b=E.toUpperCase();if(I!=null&&0":c=="["?"]":c=="{"?"}":c=="("?")":c}}function f(I,k,p){for(var b=[],y=`(){}[]^-|!*+.><='",;:%@?/\\#~`+p,M=` -\r `,r=$(I,y+M),c=0,i=0,t=0,s=0;s0&&(d=b[b.length-1]),l==` +(function(V,W){typeof exports=="object"&&typeof module<"u"?W(exports):typeof define=="function"&&define.amd?define(["exports"],W):(V=typeof globalThis<"u"?globalThis:V||self,W(V.quickSQL={}))})(this,function(V){"use strict";function W(m){return m==null?m:m.toUpperCase().endsWith("IES")?m.substring(0,m.length-3)+"y":m.toUpperCase().endsWith("ES")||m.toUpperCase().endsWith("S")?m.substring(0,m.length-1):m}function Ce(m,d){let E='"';if(m==null)return null;let L=!1;const I="$#_ ";if(!m.startsWith(E)&&!L){const x=m;if(x.length>0&&"0"<=x[0]&&x[0]<="9")L=!0;else for(let p in x){const b=x[p];if(I.indexOf(b)<0&&(b<"0"||"9""u"&&(e[n]=a[n]);return e}function i(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var s=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?s=btoa:typeof Buffer=="function"&&(s=function(a){return new Buffer(a).toString("base64")})})(),r.prototype.bool=function(e){return e=c(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100o,"Chance: Max specified is out of range with fixed. Max should be, at most, "+o),e=c(e,{min:u,max:o}),a=this.integer({min:e.min*n,max:e.max*n});var g=(a/n).toFixed(e.fixed);return parseFloat(g)},r.prototype.integer=function(e){return e=c(e,{min:L,max:E}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},r.prototype.natural=function(e){if(e=c(e,{min:0,max:E}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),o=e.exclude.sort();for(var u in o){if(ne.max,"Chance: Min cannot be greater than Max.");var a=k.primes[k.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&k.primes.push(n);var o=k.primes.filter(function(u){return u>=e.min&&u<=e.max});return this.pick(o)},r.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},r.prototype.hex=function(e){e=c(e,{min:0,max:E,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},r.prototype.letter=function(e){e=c(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},r.prototype.string=function(e){e=c(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function h(e){this.c=e}h.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function y(e){this.c=e}y.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:p})},a:function(e){return e.character({pool:x})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function P(e){for(var a=[],n="identity",o=0;o"u")throw new S("Sorry, the buffer() function is not supported on your platform");e=c(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},r.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},r.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},r.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var o=function(A,H){return A.indexOf(H)!==-1};n&&(o=n.comparator||o);for(var u=[],g=0,B,f=a*50,v=M.call(arguments,2);u.lengthf)throw new RangeError("Chance: num is likely too large for sample set")}return u},r.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,o=[],u=M.call(arguments,2);for(n=Math.max(0,n),null;n--;null)o.push(e.apply(this,u));return o},r.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},r.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},r.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},r.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),o=n.length;return this.n(function(){var u=this.natural({max:--o}),g=n[u];return n[u]=n[o],g},Math.min(o,a))},r.prototype.shuffle=function(e){for(var a=[],n=0,o=Number(e.length),u=i(o),g=o-1,B,f=0;f0&&(o+=u)}if(o===0)throw new RangeError("Chance: No valid entries in array weights");var B=this.random()*o,f=0,v=-1,C;for(g=0;g0){if(B<=f){C=g;break}v=g}g===a.length-1&&(C=v)}var A=e[C];return n=typeof n>"u"?!1:n,n&&(e.splice(C,1),a.splice(C,1)),A},r.prototype.paragraph=function(e){e=c(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),o=e.linebreak===!0?` +`:" ";return n.join(o)},r.prototype.sentence=function(e){e=c(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,o,u=this.n(this.word,a);return o=u.join(" "),o=this.capitalize(o),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(o+=n),o},r.prototype.syllable=function(e){e=c(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",o="aeiou",u=n+o,g="",B,f=0;fe.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var B=e.minAge!==void 0?e.minAge:0,f=e.maxAge!==void 0?e.maxAge:100,v=new Date(o-f-1,n.getMonth(),n.getDate()),C=new Date(o-B,n.getMonth(),n.getDate());v.setDate(v.getDate()+1),C.setDate(C.getDate()+1),C.setMilliseconds(C.getMilliseconds()-1),e=c(e,{min:v,max:C})}else e=c(e,{year:o-a});return this.date(e)},r.prototype.cpf=function(e){e=c(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var o=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;o=11-o%11,o>=10&&(o=0);var u=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+o;return e.formatted?u:u.replace(/\D/g,"")},r.prototype.cnpj=function(e){e=c(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var o=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;o=11-o%11,o<2&&(o=0);var u=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+o;return e.formatted?u:u.replace(/\D/g,"")},r.prototype.first=function(e){return e=c(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},r.prototype.profession=function(e){return e=c(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},r.prototype.company=function(){return this.pick(this.get("company"))},r.prototype.gender=function(e){return e=c(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},r.prototype.last=function(e){if(e=c(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(o){a=a.concat(n[o])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},r.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},r.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},r.prototype.tld=function(){return this.pick(this.tlds())},r.prototype.twitter=function(){return"@"+this.word()},r.prototype.url=function(e){e=c(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},r.prototype.port=function(){return this.integer({min:0,max:65535})},r.prototype.locale=function(e){return e=c(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},r.prototype.locales=function(e){return e=c(e),e.region?this.get("locale_regions"):this.get("locale_languages")},r.prototype.loremPicsum=function(e){e=c(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},r.prototype.address=function(e){return e=c(e),this.natural({min:5,max:2e3})+" "+this.street(e)},r.prototype.altitude=function(e){return e=c(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.areacode=function(e){e=c(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},r.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},r.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},r.prototype.countries=function(){return this.get("countries")},r.prototype.country=function(e){e=c(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},r.prototype.depth=function(e){return e=c(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.geohash=function(e){return e=c(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},r.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},r.prototype.latitude=function(e){var[a,n,o]=["ddm","dms","dd"];e=c(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:o});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case o:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.longitude=function(e){var[a,n,o]=["ddm","dms","dd"];e=c(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:o});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case o:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.phone=function(e){var a=this,n,o=function(H){var F=[];return H.sections.forEach(function(z){F.push(a.string({pool:"0123456789",length:z}))}),H.area+F.join(" ")};e=c(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var u;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),u=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),u=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),u=e.formatted?o(n):o(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),u=e.formatted?o(n):o(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n);break;case"us":var g=this.areacode(e).toString(),B=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),f=this.natural({min:1e3,max:9999}).toString();u=e.formatted?g+" "+B+"-"+f:g+B+f;break;case"br":var v=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),C;e.mobile?C="9"+a.string({pool:"0123456789",length:4}):C=this.natural({min:2e3,max:5999}).toString();var A=a.string({pool:"0123456789",length:4});u=e.formatted?"("+v+") "+C+"-"+A:v+C+A;break}return u},r.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},r.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",o=e+a+n,u=this.natural({max:9}),g=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),B=u+g;return o+" "+B},r.prototype.counties=function(e){return e=c(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},r.prototype.county=function(e){return this.pick(this.counties(e)).name},r.prototype.provinces=function(e){return e=c(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},r.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},r.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},r.prototype.states=function(e){e=c(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),o=this.get("territories"),u=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(o)),e.armed_forces&&(a=a.concat(u));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},r.prototype.street=function(e){e=c(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},r.prototype.street_suffix=function(e){return e=c(e,{country:"us"}),this.pick(this.street_suffixes(e))},r.prototype.street_suffixes=function(e){return e=c(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},r.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},r.prototype.ampm=function(){return this.bool()?"am":"pm"},r.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=c(e,{american:!0,string:!1});var o=typeof e.min<"u"?e.min.getTime():1,u=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:o,max:u}))}else{var g=this.month({raw:!0}),B=g.days;e&&e.month&&(B=this.get("months")[(e.month%12+12)%12].days),e=c(e,{year:parseInt(this.year(),10),month:g.numeric-1,day:this.natural({min:1,max:B}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},r.prototype.hammertime=function(e){return this.date(e).getTime()},r.prototype.hour=function(e){return e=c(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.millisecond=function(){return this.natural({max:999})},r.prototype.minute=r.prototype.second=function(e){return e=c(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.month=function(e){e=c(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},r.prototype.months=function(){return this.get("months")},r.prototype.second=function(){return this.natural({max:59})},r.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},r.prototype.weekday=function(e){e=c(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},r.prototype.year=function(e){return e=c(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},r.prototype.cc=function(e){e=c(e);var a,n,o;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),o=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,o,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},r.prototype.cc_types=function(){return this.get("cc_types")},r.prototype.cc_type=function(e){e=c(e);var a=this.cc_types(),n=null;if(e.name){for(var o=0;o3&&(H?F=F.substr(0,3):F=F[0]+F.substr(2,2)),F.length<3&&(z=F,F=A.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+F),z},v=function(A,H,F){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return A.getFullYear().toString().substr(2)+z[A.getMonth()]+F.pad(A.getDate()+(H.toLowerCase()==="female"?40:0),2)},C=function(A){for(var H="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",F="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(F[H.indexOf(A[U])]):K+=j.indexOf(F[H.indexOf(A[U])]);return z[K%26]};return B=B.concat(f(o,!0),f(n),v(u,a,this),g.toUpperCase().split("")).join(""),B+=C(B.toUpperCase()),B.toUpperCase()},r.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;u--)o[u-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?o.reduce(function(g,B){return g+B}):o}else throw new RangeError("Chance: A type of die roll must be included")},r.prototype.guid=function(e){e=c(e,{version:5});var a="abcdef1234567890",n="ab89",o=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return o},r.prototype.hash=function(e){e=c(e,{length:40,casing:"lower"});var a=e.casing==="upper"?b.toUpperCase():b;return this.string({pool:a,length:e.length})},r.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},r.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,o,u=0,g=a.length;g>u;++u)o=+a[u],u%2===0&&(o*=2,o>9&&(o-=9)),n+=o;return n*9%10},r.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=c(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},r.prototype.file=function(e){var a=e||{},n="fileExtension",o=Object.keys(this.get("fileExtension")),u,g;if(u=this.word({length:a.length}),a.extension)return g=a.extension,u+"."+g;if(a.extensions){if(Array.isArray(a.extensions))return g=this.pickone(a.extensions),u+"."+g;if(a.extensions.constructor===Object){var B=a.extensions,f=Object.keys(B);return g=this.pickone(B[this.pickone(f)]),u+"."+g}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var v=a.fileType;if(o.indexOf(v)!==-1)return g=this.pickone(this.get(n)[v]),u+"."+g;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return g=this.pickone(this.get(n)[this.pickone(o)]),u+"."+g},r.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var o={fileData:this.buffer({length:a.fileSize}),fileName:n};return o};var k={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},D=Object.prototype.hasOwnProperty,w=Object.keys||function(e){var a=[];for(var n in e)D.call(e,n)&&a.push(n);return a};function N(e,a){for(var n=w(e),o,u=0,g=n.length;u0)return this.normal_pool(e);var a,n,o,u,g=e.mean,B=e.dev;do n=this.random()*2-1,o=this.random()*2-1,a=n*n+o*o;while(a>=1);return u=n*Math.sqrt(-2*Math.log(a)/a),B*u+g},r.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},r.prototype.radio=function(e){e=c(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},r.prototype.set=function(e,a){typeof e=="string"?k[e]=a:k=_(e,k)},r.prototype.tv=function(e){return this.radio(e)},r.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},r.prototype.emotion=function(){return this.pick(this.get("emotions"))},r.prototype.mersenne_twister=function(e){return new O(e)},r.prototype.blueimp_md5=function(){return new G};var O=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};O.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},O.prototype.init_by_array=function(e,a){var n=1,o=0,u,g;for(this.init_genrand(19650218),u=this.N>a?this.N:a;u;u--)g=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((g&4294901760)>>>16)*1664525<<16)+(g&65535)*1664525)+e[o]+o,this.mt[n]>>>=0,n++,o++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),o>=a&&(o=0);for(u=this.N-1;u;u--)g=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((g&4294901760)>>>16)*1566083941<<16)+(g&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},O.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},O.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},O.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},O.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},O.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},O.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var G=function(){};G.prototype.VERSION="1.0.1",G.prototype.safe_add=function(a,n){var o=(a&65535)+(n&65535),u=(a>>16)+(n>>16)+(o>>16);return u<<16|o&65535},G.prototype.bit_roll=function(e,a){return e<>>32-a},G.prototype.md5_cmn=function(e,a,n,o,u,g){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(o,g)),u),n)},G.prototype.md5_ff=function(e,a,n,o,u,g,B){return this.md5_cmn(a&n|~a&o,e,a,u,g,B)},G.prototype.md5_gg=function(e,a,n,o,u,g,B){return this.md5_cmn(a&o|n&~o,e,a,u,g,B)},G.prototype.md5_hh=function(e,a,n,o,u,g,B){return this.md5_cmn(a^n^o,e,a,u,g,B)},G.prototype.md5_ii=function(e,a,n,o,u,g,B){return this.md5_cmn(n^(a|~o),e,a,u,g,B)},G.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,o,u,g,B,f=1732584193,v=-271733879,C=-1732584194,A=271733878;for(n=0;n>5]>>>a%32&255);return n},G.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(o=this.binl_md5(o,e.length*8)),n=0;n<16;n+=1)u[n]=o[n]^909522486,g[n]=o[n]^1549556828;return B=this.binl_md5(u.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(g.concat(B),512+128))},G.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",o,u;for(u=0;u>>4&15)+a.charAt(o&15);return n},G.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},G.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},G.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},G.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},G.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},G.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},m.exports&&(d=m.exports=r),d.Chance=r,typeof importScripts<"u"&&(chance=new r,self.Chance=r),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=r,window.chance=new r)})()})(ne,ne.exports);var Ae=ne.exports;const ye=ve(Ae);var q=new ye,ce=function(){function m(d,E,L,I){let x=L.toUpperCase(),p=d.toUpperCase(),b=E.toUpperCase();if(I!=null&&0":c=="["?"]":c=="{"?"}":c=="("?")":c}}function d(I,x,p){for(var b=[],S=`(){}[]^-|!*+.><='",;:%@?/\\#~`+p,M=` +\r `,r=$(I,S+M),c=0,i=0,t=0,s=0;s0&&(h=b[b.length-1]),l==` `?(i++,t=0):s>0&&r[s-1]!==` -`?t=t+r[s-1].length:t=0,c+=l.length,d!=null&&d.type=="comment"&&(d.value.lastIndexOf("*/")!=d.value.length-2||d.value=="/*/")){l=="*"||l=="/"?d.value=d.value+l:d.value="/* ... ",d.end=c,d!=null&&d.type=="comment"&&d.value.lastIndexOf("*/")==d.value.length-2&&d.value!="/*/"&&(d.value=I.substring(d.begin,d.end));continue}if(d!=null&&(d.type=="line-comment"||d.type=="dbtools-command")&&l!=` -`){d.value=d.value+l;continue}if(d!=null&&(d.type=="line-comment"||d.type=="dbtools-command")&&l==` -`&&(d.end=d.begin+d.value.length),d!=null&&d.type=="quoted-string"&&!(d.isStandardLiteral()||d.isAltLiteral())){d.value=d.value+l,d.end=d.begin+d.value.length;continue}if(!(d!=null&&d.type=="dquoted-string"&&l!='"'&&!(d.value.endsWith('"')&&d.value.length>1))){if(d!=null&&d.type=="dquoted-string"&&l=='"'){d.end=c,d.value=I.substring(d.begin,d.end);continue}if(!(d!=null&&d.type=="bquoted-string"&&l!="`"&&!(d.value.endsWith("`")&&d.value.length>1))){if(d!=null&&d.type=="bquoted-string"&&l=="`"){d.end=c,d.value=I.substring(d.begin,d.end);continue}if(l=="*"&&d!=null&&d.value=="/"){d.value=d.value+l,d.end=d.begin+d.value.length,d.type="comment";continue}if(l=="-"&&d!=null&&d.value=="-"){d.value=d.value+l,d.type="line-comment";continue}if((l.toUpperCase()=="REM"||l.toUpperCase()=="REMA"||l.toUpperCase()=="REMAR"||l.toUpperCase()=="REMARK"||l.toUpperCase()=="PRO"||l.toUpperCase()=="PROM"||l.toUpperCase()=="PROMP"||l.toUpperCase()=="PROMPT")&&(d==null||d.value==` -`||d.value=="\r")){b.push(new m(l,c-l.length,-9,"line-comment",i,t));continue}if(l.toUpperCase()=="SODA"&&(d==null||d.value==` -`||d.value=="\r")){b.push(new m(l,c-l.length,-9,"dbtools-command",i,t));continue}if(d!=null&&d.type=="identifier"&&d.end==-11&&d.value.indexOf("@")==0&&!(l==` -`||l=="\r")){d.value=d.value+l;continue}if(d!=null&&d.type=="identifier"&&d.end==-11&&d.value.indexOf("@")==0&&(l==` -`||l=="\r")){d.end=c-1,b.push(new m(l,c-1,c,"ws",i,t));continue}if(k&&l=="'"){d!=null&&(d.value.toUpperCase()=="Q"||d.value.toUpperCase()=="N"||d.value.toUpperCase()=="U"||d.value.toUpperCase()=="NQ")?(d.value+=l,d.type="quoted-string"):b.push(new m(l,c-1,-10,"quoted-string",i,t));continue}if(k&&l=='"'){b.push(new m(l,c-1,-11,"dquoted-string",i,t));continue}if(l=="`"&&0<=y.indexOf("`")){b.push(new m(l,c-1,-11,"bquoted-string",i,t));continue}if(l.length==1&&0<=y.indexOf(l)){b.push(new m(l,c-1,c,"operation",i,t));continue}if(l.length==1&&0<=M.indexOf(l)){b.push(new m(l,c-1,c,"ws",i,t));continue}if("0"<=l.charAt(0)&&l.charAt(0)<="9"){E(l,b,c-l.length,i)||(l.charAt(l.length-1)=="K"||l.charAt(l.length-1)=="k"||l.charAt(l.length-1)=="M"||l.charAt(l.length-1)=="m"||l.charAt(l.length-1)=="G"||l.charAt(l.length-1)=="g"||l.charAt(l.length-1)=="T"||l.charAt(l.length-1)=="t"||l.charAt(l.length-1)=="P"||l.charAt(l.length-1)=="p"||l.charAt(l.length-1)=="E"||l.charAt(l.length-1)=="e"?(b.push(new m(l.substring(0,l.length-1),c-l.length,c-1,"constant.numeric",i,t)),b.push(new m(l.substring(l.length-1),c-1,c,"constant.numeric",i,t))):b.push(new m(l,c-l.length,c,"constant.numeric",i,t)));continue}var S="identifier";s+10){var d=b[b.length-1];d.end=I.length}return b}function E(I,k,p,b){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var y=$(I,"efd"),M=0;M")==0||i.indexOf("<")==0)&&(i=i.substring(1).trim());const l=i.toLowerCase();if(l.indexOf("view ")==0){var d=i.split(" ");return d[1]}i=p(i," d");var S=i.indexOf("/");0="0"&&P<="9"&&(i="x"+i),Se(le(i))},this.parseType=function(i){if(this.children!=null&&0!0)),N}return S}0");return t==0},this.getExplicitPkNode=function(){for(var i=0;ii.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(m.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),m.optionEQvalue("prefixPKwithTname","yes")&&(t=W(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let i=this.getGenIdColName();return i??this.getExplicitPkNode().parseName()},this.toDDL=function(){if(this.parseType()=="view"||this.parseType()=="dv")return"";if(this.children.length==0&&01))){if(h!=null&&h.type=="dquoted-string"&&l=='"'){h.end=c,h.value=I.substring(h.begin,h.end);continue}if(!(h!=null&&h.type=="bquoted-string"&&l!="`"&&!(h.value.endsWith("`")&&h.value.length>1))){if(h!=null&&h.type=="bquoted-string"&&l=="`"){h.end=c,h.value=I.substring(h.begin,h.end);continue}if(l=="*"&&h!=null&&h.value=="/"){h.value=h.value+l,h.end=h.begin+h.value.length,h.type="comment";continue}if(l=="-"&&h!=null&&h.value=="-"){h.value=h.value+l,h.type="line-comment";continue}if((l.toUpperCase()=="REM"||l.toUpperCase()=="REMA"||l.toUpperCase()=="REMAR"||l.toUpperCase()=="REMARK"||l.toUpperCase()=="PRO"||l.toUpperCase()=="PROM"||l.toUpperCase()=="PROMP"||l.toUpperCase()=="PROMPT")&&(h==null||h.value==` +`||h.value=="\r")){b.push(new m(l,c-l.length,-9,"line-comment",i,t));continue}if(l.toUpperCase()=="SODA"&&(h==null||h.value==` +`||h.value=="\r")){b.push(new m(l,c-l.length,-9,"dbtools-command",i,t));continue}if(h!=null&&h.type=="identifier"&&h.end==-11&&h.value.indexOf("@")==0&&!(l==` +`||l=="\r")){h.value=h.value+l;continue}if(h!=null&&h.type=="identifier"&&h.end==-11&&h.value.indexOf("@")==0&&(l==` +`||l=="\r")){h.end=c-1,b.push(new m(l,c-1,c,"ws",i,t));continue}if(x&&l=="'"){h!=null&&(h.value.toUpperCase()=="Q"||h.value.toUpperCase()=="N"||h.value.toUpperCase()=="U"||h.value.toUpperCase()=="NQ")?(h.value+=l,h.type="quoted-string"):b.push(new m(l,c-1,-10,"quoted-string",i,t));continue}if(x&&l=='"'){b.push(new m(l,c-1,-11,"dquoted-string",i,t));continue}if(l=="`"&&0<=S.indexOf("`")){b.push(new m(l,c-1,-11,"bquoted-string",i,t));continue}if(l.length==1&&0<=S.indexOf(l)){b.push(new m(l,c-1,c,"operation",i,t));continue}if(l.length==1&&0<=M.indexOf(l)){b.push(new m(l,c-1,c,"ws",i,t));continue}if("0"<=l.charAt(0)&&l.charAt(0)<="9"){E(l,b,c-l.length,i)||(l.charAt(l.length-1)=="K"||l.charAt(l.length-1)=="k"||l.charAt(l.length-1)=="M"||l.charAt(l.length-1)=="m"||l.charAt(l.length-1)=="G"||l.charAt(l.length-1)=="g"||l.charAt(l.length-1)=="T"||l.charAt(l.length-1)=="t"||l.charAt(l.length-1)=="P"||l.charAt(l.length-1)=="p"||l.charAt(l.length-1)=="E"||l.charAt(l.length-1)=="e"?(b.push(new m(l.substring(0,l.length-1),c-l.length,c-1,"constant.numeric",i,t)),b.push(new m(l.substring(l.length-1),c-1,c,"constant.numeric",i,t))):b.push(new m(l,c-l.length,c,"constant.numeric",i,t)));continue}var y="identifier";s+10){var h=b[b.length-1];h.end=I.length}return b}function E(I,x,p,b){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var S=$(I,"efd"),M=0;M")==0||i.indexOf("<")==0)&&(i=i.substring(1).trim());const l=i.toLowerCase();if(l.indexOf("view ")==0){var h=i.split(" ");return h[1]}i=p(i," d");var y=i.indexOf("/");0="0"&&P<="9"&&(i="x"+i),Se(le(i))},this.parseType=function(i){if(this.children!=null&&0!0)),N}return y}0");return t==0},this.getExplicitPkNode=function(){for(var i=0;ii.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(m.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),m.optionEQvalue("prefixPKwithTname","yes")&&(t=W(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let i=this.getGenIdColName();return i??this.getExplicitPkNode().parseName()},this.toDDL=function(){if(this.parseType()=="view"||this.parseType()=="dv")return"";if(this.children.length==0&&0!0):g==null&&(g=m.find(n),g.isMany2One()&!n.endsWith("_id")&&(o=n,n=W(n),B="_id")),S=f+" ".repeat(this.maxChildNameLen()-n.length),l+=f+n+B+S+u+` -`,l+=f+f+" ".repeat(this.maxChildNameLen())+"constraint "+d+"_"+n+`_fk -`;let h="";0<=i.indexOf("/CASCADE")&&(h=" on delete cascade");let v="";for(let C in this.children){let A=this.children[C];if(n==A.parseName()){let H=A.trimmedContent().toUpperCase();(0<=H.indexOf("/NN")||0<=H.indexOf("/NOTNULL"))&&(v=" NOT NULL".toLowerCase()),0<=H.indexOf("/CASCADE")&&(h=" on delete cascade");break}}l+=f+f+" ".repeat(this.maxChildNameLen())+"references "+m.objPrefix()+o+h+v+`, -`}if(m.optionEQvalue("rowkey",!0)||0!0):g==null&&(g=m.find(n),g.isMany2One()&!n.endsWith("_id")&&(o=n,n=W(n),B="_id")),y=d+" ".repeat(this.maxChildNameLen()-n.length),l+=d+n+B+y+u+` +`,l+=d+d+" ".repeat(this.maxChildNameLen())+"constraint "+h+"_"+n+`_fk +`;let f="";0<=i.indexOf("/CASCADE")&&(f=" on delete cascade");let v="";for(let C in this.children){let A=this.children[C];if(n==A.parseName()){let H=A.trimmedContent().toUpperCase();(0<=H.indexOf("/NN")||0<=H.indexOf("/NOTNULL"))&&(v=" NOT NULL".toLowerCase()),0<=H.indexOf("/CASCADE")&&(f=" on delete cascade");break}}l+=d+d+" ".repeat(this.maxChildNameLen())+"references "+m.objPrefix()+o+f+v+`, +`}if(m.optionEQvalue("rowkey",!0)||0TRUE, p_object=>'"+d+`'); +`,l.toLowerCase()},this.restEnable=function(){if(this.parseType()!="table"||this.trimmedContent().toUpperCase().indexOf("/REST")<0)return"";let s=this.parseName();const l=s.indexOf('"')==0;let h=m.objPrefix()+s;return l?h=m.objPrefix()+s.substring(1,s.length-1):h=(m.objPrefix()+s).toUpperCase(),`begin +`+d+"ords.enable_object(p_enabled=>TRUE, p_object=>'"+h+`'); end; / `},this.generateTrigger=function(){if(this.parseType()!="table")return"";let i="";m.optionEQvalue("editionable","yes")&&(i=" editionable");let t=m.objPrefix()+this.parseName();var s="create or replace"+i+" trigger "+t.toLowerCase()+`_BIU @@ -110,49 +110,52 @@ end; return upper(ret); end compress_int; `),s+=`begin -`;var d=!1,S="user";m.optionEQvalue("apex","yes")&&(S="coalesce(sys_context('APEX$SESSION','APP_USER'),user)"),(m.optionEQvalue("rowkey","yes")||0!0)),l+=`, -`,l+=f+f+"P_"+d+" "+s+" "+T+t}for(let P=0;P!0),(i=="insert"||i=="update")&&(s+=`, -`);let w=" P_"+T+" := c1."+T+`; -`;i=="insert"&&(w=" "+T),i=="update"&&(w=" "+T+" = P_"+T+` -`),s+=w}for(var d=0;d!0)),l+=`, +`,l+=d+d+"P_"+h+" "+s+" "+T+t}for(let P=0;P!0),(i=="insert"||i=="update")&&(s+=`, +`);let w=d+d+d+"P_"+T+" := c1."+T+`; +`;i=="insert"&&(w=d+d+d+T),i=="update"&&(w=d+d+d+T+" = P_"+T+` +`),s+=w}for(var h=0;hs.children.length>0&&s.parseName()==t&&!s.isArray())},this.generateSelectJsonTopDown=function(i){var t=this.parseName();let s="";this.getExplicitPkNode==null&&(s+=i+"'"+this.getGenIdColName()+"' : "+t+"."+this.getGenIdColName()+`, -`);for(var l=0;ls.children.length>0&&s.parseName()==t&&!s.isArray())},this.generateSelectJsonTopDown=function(i){var t=this.parseName();let s="";this.getExplicitPkNode==null&&(s+=i+"'"+this.getGenIdColName()+"' : "+t+"."+this.getGenIdColName()+`, +`);for(var l=0;l");let b=` -`+f(I)+p+E;if(typeof L=="number"&&(b+=" num",E.endsWith("_id")||E.endsWith("Id")))return b+=" /pk",b;if(typeof L=="object"){if(Array.isArray(L))for(let M in L){1<=M&&console.log("1 <= property !");const r=L[M];return this.introspect(E,r,I,!1)}else if(E!=""){let M=this.aggrSizes[E];b+=" /insert "+M}let y="";for(let M in L){const r=L[M];if(M!=null){const t=W(E),s=M.toLowerCase();if(E!=null&&t+"_id"==s&&0");let b=` +`+d(I)+p+E;if(typeof L=="number"&&(b+=" num",E.endsWith("_id")||E.endsWith("Id")))return b+=" /pk",b;if(typeof L=="object"){if(Array.isArray(L))for(let M in L){1<=M&&console.log("1 <= property !");const r=L[M];return this.introspect(E,r,I,!1)}else if(E!=""){let M=this.aggrSizes[E];b+=" /insert "+M}let S="";for(let M in L){const r=L[M];if(M!=null){const t=W(E),s=M.toLowerCase();if(E!=null&&t+"_id"==s&&0!0)}),0!0)}),0 1, + p_name => l_name + ); + end; + */ + + procedure get_row ( + p_id in number, + p_name out varchar2 + ); + + /* example: + begin + feature_masters_api.insert_row ( + p_id => null, + p_name => null + ); + end; + */ + + procedure insert_row ( + p_id in number default null, + p_name in varchar2 default null + ); + procedure update_row ( + p_id in number default null, + p_name in varchar2 default null + ); + procedure delete_row ( + p_id in number + ); +end feature_masters_api; +/ + + +create or replace package body feature_masters_api +is + + procedure get_row ( + p_id in number, + p_name out varchar2 + ) + is + begin + for c1 in (select * from feature_masters where id = p_id) loop + p_name := c1.name; + end loop; + end get_row; + + + procedure insert_row ( + p_id in number default null, + p_name in varchar2 default null + ) + is + begin + insert into feature_masters ( + id, + name + ) values ( + p_id, + p_name + ); + end insert_row; + + procedure update_row ( + p_id in number default null, + p_name in varchar2 default null + ) + is + begin + update feature_masters set + id = p_id, + name = p_name + where id = p_id; + end update_row; + + procedure delete_row ( + p_id in number + ) + is + begin + delete from feature_masters where id = p_id; + end delete_row; + +end feature_masters_api; +/ + + +create or replace package app_feature_items_api +is + + /* example: + declare + l_feature_master_id number; + l_name varchar2(255); + begin + app_feature_items_api.get_row ( + p_id => 1, + p_feature_master_id => l_feature_master_id, + p_name => l_name + ); + end; + */ + + procedure get_row ( + p_id in number, + p_feature_master_id out number, + p_name out varchar2 + ); + + /* example: + begin + app_feature_items_api.insert_row ( + p_id => null, + p_feature_master_id => null, + p_name => null + ); + end; + */ + + procedure insert_row ( + p_id in number default null, + p_feature_master_id in number default null, + p_name in varchar2 default null + ); + procedure update_row ( + p_id in number default null, + p_feature_master_id in number default null, + p_name in varchar2 default null + ); + procedure delete_row ( + p_id in number + ); +end app_feature_items_api; +/ + + +create or replace package body app_feature_items_api +is + + procedure get_row ( + p_id in number, + p_feature_master_id out number, + p_name out varchar2 + ) + is + begin + for c1 in (select * from app_feature_items where id = p_id) loop + p_feature_master_id := c1.feature_master_id; + p_name := c1.name; + end loop; + end get_row; + + + procedure insert_row ( + p_id in number default null, + p_feature_master_id in number default null, + p_name in varchar2 default null + ) + is + begin + insert into app_feature_items ( + id, + feature_master_id, + name + ) values ( + p_id, + p_feature_master_id, + p_name + ); + end insert_row; + + procedure update_row ( + p_id in number default null, + p_feature_master_id in number default null, + p_name in varchar2 default null + ) + is + begin + update app_feature_items set + id = p_id, + feature_master_id = p_feature_master_id, + name = p_name + where id = p_id; + end update_row; + + procedure delete_row ( + p_id in number + ) + is + begin + delete from app_feature_items where id = p_id; + end delete_row; + +end app_feature_items_api; +/ + + + +-- load data + +-- Generated by Quick SQL Tuesday December 12, 2023 17:59:03 + +/* +feature_masters + name + +app_feature_items + feature_master_id number /fk feature_masters + name vc255 /nn + +# settings = { semantics: "CHAR", API: true, language: "EN", APEX: true } +*/ diff --git a/test/single_test.js b/test/single_test.js index 3dc9e9b..da0c400 100644 --- a/test/single_test.js +++ b/test/single_test.js @@ -5,7 +5,7 @@ import json2qsql from "../src/json2qsql.js"; import fs from "fs"; try { - let file = 'constraints.qsql';//'//DV/car_racing/2.qsql';//'DV/donuts.json'; + let file = '//bugs/35.qsql';//'//DV/car_racing/2.qsql';//'DV/donuts.json'; let args = process.argv.slice(2); if( 0 < args.length ) file = args[0]; From 76cb436cfb2b71f2c54e8560c1249216c8018535 Mon Sep 17 00:00:00 2001 From: Vadim Tropashko Date: Mon, 18 Dec 2023 15:17:17 -0800 Subject: [PATCH 04/22] issue 40 --- dist/quick-sql.js | 1 + dist/quick-sql.umd.cjs | 1 + src/tree.js | 2 ++ test/small_tests.js | 13 ++++++++++--- 4 files changed, 14 insertions(+), 3 deletions(-) diff --git a/dist/quick-sql.js b/dist/quick-sql.js index 377fe39..f343476 100644 --- a/dist/quick-sql.js +++ b/dist/quick-sql.js @@ -7950,6 +7950,7 @@ let se = function() { return this.parseType() == "view" && (t = "drop view " + i + `; `), this.parseType() == "table" && (t = "drop table " + i + ` cascade constraints; `, m.optionEQvalue("api", "yes") && (t += "drop package " + i + `_api; +`), m.optionEQvalue("pk", "SEQ") && (t += "drop sequence " + i + `_seq; `)), t.toLowerCase(); }, this.generateView = function() { if (this.parseType() != "view" && this.parseType() != "dv") diff --git a/dist/quick-sql.umd.cjs b/dist/quick-sql.umd.cjs index 445d325..5563a59 100644 --- a/dist/quick-sql.umd.cjs +++ b/dist/quick-sql.umd.cjs @@ -57,6 +57,7 @@ `;for(let n=0;n Date: Wed, 3 Jan 2024 14:25:36 -0800 Subject: [PATCH 05/22] more json 2 qsql progress --- dist/quick-sql.js | 948 ++++---- dist/quick-sql.umd.cjs | 136 +- src/ddl.js | 5 +- src/json2qsql.js | 13 +- src/tree.js | 39 +- test/experimental/donuts.qsql | 77 + test/experimental/events.json | 131 ++ test/experimental/food_product.json | 2147 +++++++++++++++++ test/experimental/food_product.qsql | 3310 +++++++++++++++++++++++++++ test/single_test.js | 32 +- 10 files changed, 6281 insertions(+), 557 deletions(-) create mode 100644 test/experimental/donuts.qsql create mode 100644 test/experimental/events.json create mode 100644 test/experimental/food_product.json create mode 100644 test/experimental/food_product.qsql diff --git a/dist/quick-sql.js b/dist/quick-sql.js index f343476..9b30aa4 100644 --- a/dist/quick-sql.js +++ b/dist/quick-sql.js @@ -6,7 +6,7 @@ function he(m, d) { if (m == null) return null; let L = !1; - const I = "$#_ "; + const T = "$#_ "; if (!m.startsWith(E) && !L) { const x = m; if (x.length > 0 && "0" <= x[0] && x[0] <= "9") @@ -14,7 +14,7 @@ function he(m, d) { else for (let p in x) { const b = x[p]; - if (I.indexOf(b) < 0 && (b < "0" || "9" < b && b < "A" || "Z" < b && b < "a" || "z" < b)) { + if (T.indexOf(b) < 0 && (b < "0" || "9" < b && b < "A" || "Z" < b && b < "a" || "z" < b)) { L = !0; break; } @@ -33,8 +33,8 @@ function de(m) { function K(m, d, E) { let L = !1; E == null && (E = ""), m.indexOf('"') == 0 && (L = !0, m = m.substring(1, m.length - 1)), d.indexOf('"') == 0 && (L = !0, d = d.substring(1, d.length - 1)), E.indexOf('"') == 0 && (L = !0, E = E.substring(1, E.length - 1)); - let I = m + d + E; - return L ? I = '"' + I + '"' : I = I.toLowerCase(), I; + let T = m + d + E; + return L ? T = '"' + T + '"' : T = T.toLowerCase(), T; } var oe = function() { var m = [ @@ -76,8 +76,8 @@ var oe = function() { "\uC804\uB3C4\uC790", "\uD310\uB9E4\uC6D0" ]; - function L(I, x) { - if (typeof x != "string" || I.substring(0, 2).toLowerCase() == "en") + function L(T, x) { + if (typeof x != "string" || T.substring(0, 2).toLowerCase() == "en") return x; x.indexOf("'") == 0 && (x = x.substring(1, x.length - 1)); for (var p = -1, b = 0; b < m.length; b++) @@ -85,7 +85,7 @@ var oe = function() { p = b; break; } - return 0 <= p && I.substring(0, 2).toLowerCase() == "jp" && p < d.length ? "'" + d[p] + "'" : 0 <= p && I.substring(0, 2).toLowerCase() == "kr" && p < E.length ? "'" + E[p] + "'" : x; + return 0 <= p && T.substring(0, 2).toLowerCase() == "jp" && p < d.length ? "'" + d[p] + "'" : 0 <= p && T.substring(0, 2).toLowerCase() == "kr" && p < E.length ? "'" + E[p] + "'" : x; } return L; }(); @@ -95,7 +95,7 @@ function fe(m) { var ie = { exports: {} }; (function(m, d) { (function() { - var E = 9007199254740992, L = -E, I = "0123456789", x = "abcdefghijklmnopqrstuvwxyz", p = x.toUpperCase(), b = I + "abcdef"; + var E = 9007199254740992, L = -E, T = "0123456789", x = "abcdefghijklmnopqrstuvwxyz", p = x.toUpperCase(), b = T + "abcdef"; function S(e) { this.name = "UnsupportedError", this.message = e || "This feature is not supported on this platform"; } @@ -111,9 +111,9 @@ var ie = { exports: {} }; var n = 0; if (Object.prototype.toString.call(arguments[a]) === "[object String]") for (var o = 0; o < arguments[a].length; o++) { - for (var u = 0, g = 0; g < arguments[a].length; g++) - u = arguments[a].charCodeAt(g) + (u << 6) + (u << 16) - u; - n += u; + for (var c = 0, g = 0; g < arguments[a].length; g++) + c = arguments[a].charCodeAt(g) + (c << 6) + (c << 16) - c; + n += c; } else n = arguments[a]; @@ -124,7 +124,7 @@ var ie = { exports: {} }; }, this; } r.prototype.VERSION = "1.1.11"; - function c(e, a) { + function u(e, a) { if (e = e || {}, a) for (var n in a) typeof e[n] > "u" && (e[n] = a[n]); @@ -147,16 +147,16 @@ var ie = { exports: {} }; return new Buffer(a).toString("base64"); }); })(), r.prototype.bool = function(e) { - return e = c(e, { likelihood: 50 }), t( + return e = u(e, { likelihood: 50 }), t( e.likelihood < 0 || e.likelihood > 100, "Chance: Likelihood accepts values from 0 to 100." ), this.random() * 100 < e.likelihood; }, r.prototype.falsy = function(e) { - e = c(e, { pool: [!1, null, 0, NaN, "", void 0] }); + e = u(e, { pool: [!1, null, 0, NaN, "", void 0] }); var a = e.pool, n = this.integer({ min: 0, max: a.length - 1 }), o = a[n]; return o; }, r.prototype.animal = function(e) { - if (e = c(e), typeof e.type < "u") + if (e = u(e), typeof e.type < "u") return t( !this.get("animals")[e.type.toLowerCase()], "Please pick from desert, ocean, grassland, forest, zoo, pets, farm." @@ -164,34 +164,34 @@ var ie = { exports: {} }; var a = ["desert", "forest", "ocean", "zoo", "farm", "pet", "grassland"]; return this.pick(this.get("animals")[this.pick(a)]); }, r.prototype.character = function(e) { - e = c(e); + e = u(e); var a = "!@#$%^&*()[]", n, o; - return e.casing === "lower" ? n = x : e.casing === "upper" ? n = p : n = x + p, e.pool ? o = e.pool : (o = "", e.alpha && (o += n), e.numeric && (o += I), e.symbols && (o += a), o || (o = n + I + a)), o.charAt(this.natural({ max: o.length - 1 })); + return e.casing === "lower" ? n = x : e.casing === "upper" ? n = p : n = x + p, e.pool ? o = e.pool : (o = "", e.alpha && (o += n), e.numeric && (o += T), e.symbols && (o += a), o || (o = n + T + a)), o.charAt(this.natural({ max: o.length - 1 })); }, r.prototype.floating = function(e) { - e = c(e, { fixed: 4 }), t( + e = u(e, { fixed: 4 }), t( e.fixed && e.precision, "Chance: Cannot specify both fixed and precision." ); - var a, n = Math.pow(10, e.fixed), o = E / n, u = -o; + var a, n = Math.pow(10, e.fixed), o = E / n, c = -o; t( - e.min && e.fixed && e.min < u, - "Chance: Min specified is out of range with fixed. Min should be, at least, " + u + e.min && e.fixed && e.min < c, + "Chance: Min specified is out of range with fixed. Min should be, at least, " + c ), t( e.max && e.fixed && e.max > o, "Chance: Max specified is out of range with fixed. Max should be, at most, " + o - ), e = c(e, { min: u, max: o }), a = this.integer({ min: e.min * n, max: e.max * n }); + ), e = u(e, { min: c, max: o }), a = this.integer({ min: e.min * n, max: e.max * n }); var g = (a / n).toFixed(e.fixed); return parseFloat(g); }, r.prototype.integer = function(e) { - return e = c(e, { min: L, max: E }), t(e.min > e.max, "Chance: Min cannot be greater than Max."), Math.floor(this.random() * (e.max - e.min + 1) + e.min); + return e = u(e, { min: L, max: E }), t(e.min > e.max, "Chance: Min cannot be greater than Max."), Math.floor(this.random() * (e.max - e.min + 1) + e.min); }, r.prototype.natural = function(e) { - if (e = c(e, { min: 0, max: E }), typeof e.numerals == "number" && (t(e.numerals < 1, "Chance: Numerals cannot be less than one."), e.min = Math.pow(10, e.numerals - 1), e.max = Math.pow(10, e.numerals) - 1), t(e.min < 0, "Chance: Min cannot be less than zero."), e.exclude) { + if (e = u(e, { min: 0, max: E }), typeof e.numerals == "number" && (t(e.numerals < 1, "Chance: Numerals cannot be less than one."), e.min = Math.pow(10, e.numerals - 1), e.max = Math.pow(10, e.numerals) - 1), t(e.min < 0, "Chance: Min cannot be less than zero."), e.exclude) { t(!Array.isArray(e.exclude), "Chance: exclude must be an array."); for (var a in e.exclude) t(!Number.isInteger(e.exclude[a]), "Chance: exclude must be numbers."); var n = e.min + this.natural({ max: e.max - e.min - e.exclude.length }), o = e.exclude.sort(); - for (var u in o) { - if (n < o[u]) + for (var c in o) { + if (n < o[c]) break; n++; } @@ -199,13 +199,13 @@ var ie = { exports: {} }; } return this.integer(e); }, r.prototype.prime = function(e) { - e = c(e, { min: 0, max: 1e4 }), t(e.min < 0, "Chance: Min cannot be less than zero."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); + e = u(e, { min: 0, max: 1e4 }), t(e.min < 0, "Chance: Min cannot be less than zero."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); var a = k.primes[k.primes.length - 1]; if (e.max > a) for (var n = a + 2; n <= e.max; ++n) this.is_prime(n) && k.primes.push(n); - var o = k.primes.filter(function(u) { - return u >= e.min && u <= e.max; + var o = k.primes.filter(function(c) { + return c >= e.min && c <= e.max; }); return this.pick(o); }, r.prototype.is_prime = function(e) { @@ -220,15 +220,15 @@ var ie = { exports: {} }; return !1; return !0; }, r.prototype.hex = function(e) { - e = c(e, { min: 0, max: E, casing: "lower" }), t(e.min < 0, "Chance: Min cannot be less than zero."); + e = u(e, { min: 0, max: E, casing: "lower" }), t(e.min < 0, "Chance: Min cannot be less than zero."); var a = this.natural({ min: e.min, max: e.max }); return e.casing === "upper" ? a.toString(16).toUpperCase() : a.toString(16); }, r.prototype.letter = function(e) { - e = c(e, { casing: "lower" }); + e = u(e, { casing: "lower" }); var a = "abcdefghijklmnopqrstuvwxyz", n = this.character({ pool: a }); return e.casing === "upper" && (n = n.toUpperCase()), n; }, r.prototype.string = function(e) { - e = c(e, { min: 5, max: 20 }), e.length !== 0 && !e.length && (e.length = this.natural({ min: e.min, max: e.max })), t(e.length < 0, "Chance: Length cannot be less than zero."); + e = u(e, { min: 5, max: 20 }), e.length !== 0 && !e.length && (e.length = this.natural({ min: e.min, max: e.max })), t(e.length < 0, "Chance: Length cannot be less than zero."); var a = e.length, n = this.n(this.character, a, e); return n.join(""); }; @@ -256,7 +256,7 @@ var ie = { exports: {} }; y.prototype = { replacers: { "#": function(e) { - return e.character({ pool: I }); + return e.character({ pool: T }); }, A: function(e) { return e.character({ pool: p }); @@ -274,16 +274,16 @@ var ie = { exports: {} }; }; function P(e) { for (var a = [], n = "identity", o = 0; o < e.length; o++) { - var u = e[o]; + var c = e[o]; switch (n) { case "escape": - a.push(new h(u)), n = "identity"; + a.push(new h(c)), n = "identity"; break; case "identity": - u === "{" ? n = "replace" : u === "\\" ? n = "escape" : a.push(new l(u)); + c === "{" ? n = "replace" : c === "\\" ? n = "escape" : a.push(new l(c)); break; case "replace": - u === "}" ? n = "identity" : a.push(new y(u)); + c === "}" ? n = "identity" : a.push(new y(c)); break; } } @@ -299,7 +299,7 @@ var ie = { exports: {} }; }, r.prototype.buffer = function(e) { if (typeof Buffer > "u") throw new S("Sorry, the buffer() function is not supported on your platform"); - e = c(e, { length: this.natural({ min: 5, max: 20 }) }), t(e.length < 0, "Chance: Length cannot be less than zero."); + e = u(e, { length: this.natural({ min: 5, max: 20 }) }), t(e.length < 0, "Chance: Length cannot be less than zero."); var a = e.length, n = this.n(this.character, a, e); return Buffer.from(n); }, r.prototype.capitalize = function(e) { @@ -317,20 +317,20 @@ var ie = { exports: {} }; return A.indexOf(H) !== -1; }; n && (o = n.comparator || o); - for (var u = [], g = 0, B, f = a * 50, v = M.call(arguments, 2); u.length < a; ) { + for (var c = [], g = 0, B, f = a * 50, v = M.call(arguments, 2); c.length < a; ) { var C = JSON.parse(JSON.stringify(v)); - if (B = e.apply(this, C), o(u, B) || (u.push(B), g = 0), ++g > f) + if (B = e.apply(this, C), o(c, B) || (c.push(B), g = 0), ++g > f) throw new RangeError("Chance: num is likely too large for sample set"); } - return u; + return c; }, r.prototype.n = function(e, a) { t( typeof e != "function", "Chance: The first argument must be a function." ), typeof a > "u" && (a = 1); - var n = a, o = [], u = M.call(arguments, 2); + var n = a, o = [], c = M.call(arguments, 2); for (n = Math.max(0, n), null; n--; null) - o.push(e.apply(this, u)); + o.push(e.apply(this, c)); return o; }, r.prototype.pad = function(e, a, n) { return n = n || "0", e = e + "", e.length >= a ? e : new Array(a - e.length + 1).join(n) + e; @@ -353,26 +353,26 @@ var ie = { exports: {} }; return [this.pickone(e)]; var n = e.slice(0), o = n.length; return this.n(function() { - var u = this.natural({ max: --o }), g = n[u]; - return n[u] = n[o], g; + var c = this.natural({ max: --o }), g = n[c]; + return n[c] = n[o], g; }, Math.min(o, a)); }, r.prototype.shuffle = function(e) { - for (var a = [], n = 0, o = Number(e.length), u = i(o), g = o - 1, B, f = 0; f < o; f++) - B = this.natural({ max: g }), n = u[B], a[f] = e[n], u[B] = u[g], g -= 1; + for (var a = [], n = 0, o = Number(e.length), c = i(o), g = o - 1, B, f = 0; f < o; f++) + B = this.natural({ max: g }), n = c[B], a[f] = e[n], c[B] = c[g], g -= 1; return a; }, r.prototype.weighted = function(e, a, n) { if (e.length !== a.length) throw new RangeError("Chance: Length of array and weights must match"); - for (var o = 0, u, g = 0; g < a.length; ++g) { - if (u = a[g], isNaN(u)) + for (var o = 0, c, g = 0; g < a.length; ++g) { + if (c = a[g], isNaN(c)) throw new RangeError("Chance: All weights must be numbers"); - u > 0 && (o += u); + c > 0 && (o += c); } if (o === 0) throw new RangeError("Chance: No valid entries in array weights"); var B = this.random() * o, f = 0, v = -1, C; for (g = 0; g < a.length; ++g) { - if (u = a[g], f += u, u > 0) { + if (c = a[g], f += c, c > 0) { if (B <= f) { C = g; break; @@ -384,21 +384,21 @@ var ie = { exports: {} }; var A = e[C]; return n = typeof n > "u" ? !1 : n, n && (e.splice(C, 1), a.splice(C, 1)), A; }, r.prototype.paragraph = function(e) { - e = c(e); + e = u(e); var a = e.sentences || this.natural({ min: 3, max: 7 }), n = this.n(this.sentence, a), o = e.linebreak === !0 ? ` ` : " "; return n.join(o); }, r.prototype.sentence = function(e) { - e = c(e); - var a = e.words || this.natural({ min: 12, max: 18 }), n = e.punctuation, o, u = this.n(this.word, a); - return o = u.join(" "), o = this.capitalize(o), n !== !1 && !/^[.?;!:]$/.test(n) && (n = "."), n && (o += n), o; + e = u(e); + var a = e.words || this.natural({ min: 12, max: 18 }), n = e.punctuation, o, c = this.n(this.word, a); + return o = c.join(" "), o = this.capitalize(o), n !== !1 && !/^[.?;!:]$/.test(n) && (n = "."), n && (o += n), o; }, r.prototype.syllable = function(e) { - e = c(e); - for (var a = e.length || this.natural({ min: 2, max: 3 }), n = "bcdfghjklmnprstvwz", o = "aeiou", u = n + o, g = "", B, f = 0; f < a; f++) - f === 0 ? B = this.character({ pool: u }) : n.indexOf(B) === -1 ? B = this.character({ pool: n }) : B = this.character({ pool: o }), g += B; + e = u(e); + for (var a = e.length || this.natural({ min: 2, max: 3 }), n = "bcdfghjklmnprstvwz", o = "aeiou", c = n + o, g = "", B, f = 0; f < a; f++) + f === 0 ? B = this.character({ pool: c }) : n.indexOf(B) === -1 ? B = this.character({ pool: n }) : B = this.character({ pool: o }), g += B; return e.capitalize && (g = this.capitalize(g)), g; }, r.prototype.word = function(e) { - e = c(e), t( + e = u(e), t( e.syllables && e.length, "Chance: Cannot specify both syllables AND length." ); @@ -413,7 +413,7 @@ var ie = { exports: {} }; n += this.syllable(); return e.capitalize && (n = this.capitalize(n)), n; }, r.prototype.age = function(e) { - e = c(e); + e = u(e); var a; switch (e.type) { case "child": @@ -439,53 +439,53 @@ var ie = { exports: {} }; }, r.prototype.birthday = function(e) { var a = this.age(e), n = /* @__PURE__ */ new Date(), o = n.getFullYear(); if (e && e.type) { - var u = /* @__PURE__ */ new Date(), g = /* @__PURE__ */ new Date(); - u.setFullYear(o - a - 1), g.setFullYear(o - a), e = c(e, { - min: u, + var c = /* @__PURE__ */ new Date(), g = /* @__PURE__ */ new Date(); + c.setFullYear(o - a - 1), g.setFullYear(o - a), e = u(e, { + min: c, max: g }); } else if (e && (e.minAge !== void 0 || e.maxAge !== void 0)) { t(e.minAge < 0, "Chance: MinAge cannot be less than zero."), t(e.minAge > e.maxAge, "Chance: MinAge cannot be greater than MaxAge."); var B = e.minAge !== void 0 ? e.minAge : 0, f = e.maxAge !== void 0 ? e.maxAge : 100, v = new Date(o - f - 1, n.getMonth(), n.getDate()), C = new Date(o - B, n.getMonth(), n.getDate()); - v.setDate(v.getDate() + 1), C.setDate(C.getDate() + 1), C.setMilliseconds(C.getMilliseconds() - 1), e = c(e, { + v.setDate(v.getDate() + 1), C.setDate(C.getDate() + 1), C.setMilliseconds(C.getMilliseconds() - 1), e = u(e, { min: v, max: C }); } else - e = c(e, { + e = u(e, { year: o - a }); return this.date(e); }, r.prototype.cpf = function(e) { - e = c(e, { + e = u(e, { formatted: !0 }); var a = this.n(this.natural, 9, { max: 9 }), n = a[8] * 2 + a[7] * 3 + a[6] * 4 + a[5] * 5 + a[4] * 6 + a[3] * 7 + a[2] * 8 + a[1] * 9 + a[0] * 10; n = 11 - n % 11, n >= 10 && (n = 0); var o = n * 2 + a[8] * 3 + a[7] * 4 + a[6] * 5 + a[5] * 6 + a[4] * 7 + a[3] * 8 + a[2] * 9 + a[1] * 10 + a[0] * 11; o = 11 - o % 11, o >= 10 && (o = 0); - var u = "" + a[0] + a[1] + a[2] + "." + a[3] + a[4] + a[5] + "." + a[6] + a[7] + a[8] + "-" + n + o; - return e.formatted ? u : u.replace(/\D/g, ""); + var c = "" + a[0] + a[1] + a[2] + "." + a[3] + a[4] + a[5] + "." + a[6] + a[7] + a[8] + "-" + n + o; + return e.formatted ? c : c.replace(/\D/g, ""); }, r.prototype.cnpj = function(e) { - e = c(e, { + e = u(e, { formatted: !0 }); var a = this.n(this.natural, 12, { max: 12 }), n = a[11] * 2 + a[10] * 3 + a[9] * 4 + a[8] * 5 + a[7] * 6 + a[6] * 7 + a[5] * 8 + a[4] * 9 + a[3] * 2 + a[2] * 3 + a[1] * 4 + a[0] * 5; n = 11 - n % 11, n < 2 && (n = 0); var o = n * 2 + a[11] * 3 + a[10] * 4 + a[9] * 5 + a[8] * 6 + a[7] * 7 + a[6] * 8 + a[5] * 9 + a[4] * 2 + a[3] * 3 + a[2] * 4 + a[1] * 5 + a[0] * 6; o = 11 - o % 11, o < 2 && (o = 0); - var u = "" + a[0] + a[1] + "." + a[2] + a[3] + a[4] + "." + a[5] + a[6] + a[7] + "/" + a[8] + a[9] + a[10] + a[11] + "-" + n + o; - return e.formatted ? u : u.replace(/\D/g, ""); + var c = "" + a[0] + a[1] + "." + a[2] + a[3] + a[4] + "." + a[5] + a[6] + a[7] + "/" + a[8] + a[9] + a[10] + a[11] + "-" + n + o; + return e.formatted ? c : c.replace(/\D/g, ""); }, r.prototype.first = function(e) { - return e = c(e, { gender: this.gender(), nationality: "en" }), this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()]); + return e = u(e, { gender: this.gender(), nationality: "en" }), this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()]); }, r.prototype.profession = function(e) { - return e = c(e), e.rank ? this.pick(["Apprentice ", "Junior ", "Senior ", "Lead "]) + this.pick(this.get("profession")) : this.pick(this.get("profession")); + return e = u(e), e.rank ? this.pick(["Apprentice ", "Junior ", "Senior ", "Lead "]) + this.pick(this.get("profession")) : this.pick(this.get("profession")); }, r.prototype.company = function() { return this.pick(this.get("company")); }, r.prototype.gender = function(e) { - return e = c(e, { extraGenders: [] }), this.pick(["Male", "Female"].concat(e.extraGenders)); + return e = u(e, { extraGenders: [] }), this.pick(["Male", "Female"].concat(e.extraGenders)); }, r.prototype.last = function(e) { - if (e = c(e, { nationality: "*" }), e.nationality === "*") { + if (e = u(e, { nationality: "*" }), e.nationality === "*") { var a = [], n = this.get("lastNames"); return Object.keys(n).forEach(function(o) { a = a.concat(n[o]); @@ -499,53 +499,53 @@ var ie = { exports: {} }; } return e = e + (10 - parseInt(a.toString().slice(-1))).toString().slice(-1), e; }, r.prototype.mrz = function(e) { - var a = function(u) { + var a = function(c) { var g = "", "<=", ">=", "="]); e.range && (a = e.range); var n = ""; @@ -744,29 +744,29 @@ var ie = { exports: {} }; }, r.prototype.twitter = function() { return "@" + this.word(); }, r.prototype.url = function(e) { - e = c(e, { protocol: "http", domain: this.domain(e), domain_prefix: "", path: this.word(), extensions: [] }); + e = u(e, { protocol: "http", domain: this.domain(e), domain_prefix: "", path: this.word(), extensions: [] }); var a = e.extensions.length > 0 ? "." + this.pick(e.extensions) : "", n = e.domain_prefix ? e.domain_prefix + "." + e.domain : e.domain; return e.protocol + "://" + n + "/" + e.path + a; }, r.prototype.port = function() { return this.integer({ min: 0, max: 65535 }); }, r.prototype.locale = function(e) { - return e = c(e), e.region ? this.pick(this.get("locale_regions")) : this.pick(this.get("locale_languages")); + return e = u(e), e.region ? this.pick(this.get("locale_regions")) : this.pick(this.get("locale_languages")); }, r.prototype.locales = function(e) { - return e = c(e), e.region ? this.get("locale_regions") : this.get("locale_languages"); + return e = u(e), e.region ? this.get("locale_regions") : this.get("locale_languages"); }, r.prototype.loremPicsum = function(e) { - e = c(e, { width: 500, height: 500, greyscale: !1, blurred: !1 }); + e = u(e, { width: 500, height: 500, greyscale: !1, blurred: !1 }); var a = e.greyscale ? "g/" : "", n = e.blurred ? "/?blur" : "/?random"; return "https://picsum.photos/" + a + e.width + "/" + e.height + n; }, r.prototype.address = function(e) { - return e = c(e), this.natural({ min: 5, max: 2e3 }) + " " + this.street(e); + return e = u(e), this.natural({ min: 5, max: 2e3 }) + " " + this.street(e); }, r.prototype.altitude = function(e) { - return e = c(e, { fixed: 5, min: 0, max: 8848 }), this.floating({ + return e = u(e, { fixed: 5, min: 0, max: 8848 }), this.floating({ min: e.min, max: e.max, fixed: e.fixed }); }, r.prototype.areacode = function(e) { - e = c(e, { parens: !0 }); + e = u(e, { parens: !0 }); var a = e.exampleNumber ? "555" : this.natural({ min: 2, max: 9 }).toString() + this.natural({ min: 0, max: 8 }).toString() + this.natural({ min: 0, max: 9 }).toString(); return e.parens ? "(" + a + ")" : a; }, r.prototype.city = function() { @@ -776,27 +776,27 @@ var ie = { exports: {} }; }, r.prototype.countries = function() { return this.get("countries"); }, r.prototype.country = function(e) { - e = c(e); + e = u(e); var a = this.pick(this.countries()); return e.raw ? a : e.full ? a.name : a.abbreviation; }, r.prototype.depth = function(e) { - return e = c(e, { fixed: 5, min: -10994, max: 0 }), this.floating({ + return e = u(e, { fixed: 5, min: -10994, max: 0 }), this.floating({ min: e.min, max: e.max, fixed: e.fixed }); }, r.prototype.geohash = function(e) { - return e = c(e, { length: 7 }), this.string({ length: e.length, pool: "0123456789bcdefghjkmnpqrstuvwxyz" }); + return e = u(e, { length: 7 }), this.string({ length: e.length, pool: "0123456789bcdefghjkmnpqrstuvwxyz" }); }, r.prototype.geojson = function(e) { return this.latitude(e) + ", " + this.longitude(e) + ", " + this.altitude(e); }, r.prototype.latitude = function(e) { var [a, n, o] = ["ddm", "dms", "dd"]; - e = c( + e = u( e, e && e.format && [a, n].includes(e.format.toLowerCase()) ? { min: 0, max: 89, fixed: 4 } : { fixed: 5, min: -90, max: 90, format: o } ); - var u = e.format.toLowerCase(); - switch ((u === a || u === n) && (t(e.min < 0 || e.min > 89, "Chance: Min specified is out of range. Should be between 0 - 89"), t(e.max < 0 || e.max > 89, "Chance: Max specified is out of range. Should be between 0 - 89"), t(e.fixed > 4, "Chance: Fixed specified should be below or equal to 4")), u) { + var c = e.format.toLowerCase(); + switch ((c === a || c === n) && (t(e.min < 0 || e.min > 89, "Chance: Min specified is out of range. Should be between 0 - 89"), t(e.max < 0 || e.max > 89, "Chance: Max specified is out of range. Should be between 0 - 89"), t(e.fixed > 4, "Chance: Fixed specified should be below or equal to 4")), c) { case a: return this.integer({ min: e.min, max: e.max }) + "\xB0" + this.floating({ min: 0, max: 59, fixed: e.fixed }); case n: @@ -807,12 +807,12 @@ var ie = { exports: {} }; } }, r.prototype.longitude = function(e) { var [a, n, o] = ["ddm", "dms", "dd"]; - e = c( + e = u( e, e && e.format && [a, n].includes(e.format.toLowerCase()) ? { min: 0, max: 179, fixed: 4 } : { fixed: 5, min: -180, max: 180, format: o } ); - var u = e.format.toLowerCase(); - switch ((u === a || u === n) && (t(e.min < 0 || e.min > 179, "Chance: Min specified is out of range. Should be between 0 - 179"), t(e.max < 0 || e.max > 179, "Chance: Max specified is out of range. Should be between 0 - 179"), t(e.fixed > 4, "Chance: Fixed specified should be below or equal to 4")), u) { + var c = e.format.toLowerCase(); + switch ((c === a || c === n) && (t(e.min < 0 || e.min > 179, "Chance: Min specified is out of range. Should be between 0 - 179"), t(e.max < 0 || e.max > 179, "Chance: Max specified is out of range. Should be between 0 - 179"), t(e.fixed > 4, "Chance: Fixed specified should be below or equal to 4")), c) { case a: return this.integer({ min: e.min, max: e.max }) + "\xB0" + this.floating({ min: 0, max: 59.9999, fixed: e.fixed }); case n: @@ -828,16 +828,16 @@ var ie = { exports: {} }; F.push(a.string({ pool: "0123456789", length: W })); }), H.area + F.join(" "); }; - e = c(e, { + e = u(e, { formatted: !0, country: "us", mobile: !1, exampleNumber: !1 }), e.formatted || (e.parens = !1); - var u; + var c; switch (e.country) { case "fr": - e.mobile ? (n = this.pick(["06", "07"]) + a.string({ pool: "0123456789", length: 8 }), u = e.formatted ? n.match(/../g).join(" ") : n) : (n = this.pick([ + e.mobile ? (n = this.pick(["06", "07"]) + a.string({ pool: "0123456789", length: 8 }), c = e.formatted ? n.match(/../g).join(" ") : n) : (n = this.pick([ // Valid zone and département codes. "01" + this.pick(["30", "34", "39", "40", "41", "42", "43", "44", "45", "46", "47", "48", "49", "53", "55", "56", "58", "60", "64", "69", "70", "72", "73", "74", "75", "76", "77", "78", "79", "80", "81", "82", "83"]) + a.string({ pool: "0123456789", length: 6 }), "02" + this.pick(["14", "18", "22", "23", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37", "38", "40", "41", "43", "44", "45", "46", "47", "48", "49", "50", "51", "52", "53", "54", "56", "57", "61", "62", "69", "72", "76", "77", "78", "85", "90", "96", "97", "98", "99"]) + a.string({ pool: "0123456789", length: 6 }), @@ -845,13 +845,13 @@ var ie = { exports: {} }; "04" + this.pick(["11", "13", "15", "20", "22", "26", "27", "30", "32", "34", "37", "42", "43", "44", "50", "56", "57", "63", "66", "67", "68", "69", "70", "71", "72", "73", "74", "75", "76", "77", "78", "79", "80", "81", "82", "83", "84", "85", "86", "88", "89", "90", "91", "92", "93", "94", "95", "97", "98"]) + a.string({ pool: "0123456789", length: 6 }), "05" + this.pick(["08", "16", "17", "19", "24", "31", "32", "33", "34", "35", "40", "45", "46", "47", "49", "53", "55", "56", "57", "58", "59", "61", "62", "63", "64", "65", "67", "79", "81", "82", "86", "87", "90", "94"]) + a.string({ pool: "0123456789", length: 6 }), "09" + a.string({ pool: "0123456789", length: 8 }) - ]), u = e.formatted ? n.match(/../g).join(" ") : n); + ]), c = e.formatted ? n.match(/../g).join(" ") : n); break; case "uk": e.mobile ? (n = this.pick([ { area: "07" + this.pick(["4", "5", "7", "8", "9"]), sections: [2, 6] }, { area: "07624 ", sections: [6] } - ]), u = e.formatted ? o(n) : o(n).replace(" ", "")) : (n = this.pick([ + ]), c = e.formatted ? o(n) : o(n).replace(" ", "")) : (n = this.pick([ //valid area codes of major cities/counties followed by random numbers in required format. { area: "01" + this.character({ pool: "234569" }) + "1 ", sections: [3, 4] }, { area: "020 " + this.character({ pool: "378" }), sections: [3, 4] }, @@ -866,7 +866,7 @@ var ie = { exports: {} }; { area: "017" + this.pick(["26", "44", "50", "68"]) + " ", sections: [6] }, { area: "018" + this.pick(["27", "37", "84", "97"]) + " ", sections: [6] }, { area: "019" + this.pick(["00", "05", "35", "46", "49", "63", "95"]) + " ", sections: [6] } - ]), u = e.formatted ? o(n) : o(n).replace(" ", "", "g")); + ]), c = e.formatted ? o(n) : o(n).replace(" ", "", "g")); break; case "za": e.mobile ? (n = this.pick([ @@ -876,49 +876,49 @@ var ie = { exports: {} }; "071" + this.pick(["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"]) + a.string({ pool: "0123456789", length: 6 }), "07" + this.pick(["2", "3", "4", "6", "7", "8", "9"]) + a.string({ pool: "0123456789", length: 7 }), "08" + this.pick(["0", "1", "2", "3", "4", "5"]) + a.string({ pool: "0123456789", length: 7 }) - ]), u = e.formatted || n) : (n = this.pick([ + ]), c = e.formatted || n) : (n = this.pick([ "01" + this.pick(["0", "1", "2", "3", "4", "5", "6", "7", "8"]) + a.string({ pool: "0123456789", length: 7 }), "02" + this.pick(["1", "2", "3", "4", "7", "8"]) + a.string({ pool: "0123456789", length: 7 }), "03" + this.pick(["1", "2", "3", "5", "6", "9"]) + a.string({ pool: "0123456789", length: 7 }), "04" + this.pick(["1", "2", "3", "4", "5", "6", "7", "8", "9"]) + a.string({ pool: "0123456789", length: 7 }), "05" + this.pick(["1", "3", "4", "6", "7", "8"]) + a.string({ pool: "0123456789", length: 7 }) - ]), u = e.formatted || n); + ]), c = e.formatted || n); break; case "us": var g = this.areacode(e).toString(), B = this.natural({ min: 2, max: 9 }).toString() + this.natural({ min: 0, max: 9 }).toString() + this.natural({ min: 0, max: 9 }).toString(), f = this.natural({ min: 1e3, max: 9999 }).toString(); - u = e.formatted ? g + " " + B + "-" + f : g + B + f; + c = e.formatted ? g + " " + B + "-" + f : g + B + f; break; case "br": var v = this.pick(["11", "12", "13", "14", "15", "16", "17", "18", "19", "21", "22", "24", "27", "28", "31", "32", "33", "34", "35", "37", "38", "41", "42", "43", "44", "45", "46", "47", "48", "49", "51", "53", "54", "55", "61", "62", "63", "64", "65", "66", "67", "68", "69", "71", "73", "74", "75", "77", "79", "81", "82", "83", "84", "85", "86", "87", "88", "89", "91", "92", "93", "94", "95", "96", "97", "98", "99"]), C; e.mobile ? C = "9" + a.string({ pool: "0123456789", length: 4 }) : C = this.natural({ min: 2e3, max: 5999 }).toString(); var A = a.string({ pool: "0123456789", length: 4 }); - u = e.formatted ? "(" + v + ") " + C + "-" + A : v + C + A; + c = e.formatted ? "(" + v + ") " + C + "-" + A : v + C + A; break; } - return u; + return c; }, r.prototype.postal = function() { var e = this.character({ pool: "XVTSRPNKLMHJGECBA" }), a = e + this.natural({ max: 9 }) + this.character({ alpha: !0, casing: "upper" }), n = this.natural({ max: 9 }) + this.character({ alpha: !0, casing: "upper" }) + this.natural({ max: 9 }); return a + " " + n; }, r.prototype.postcode = function() { - var e = this.pick(this.get("postcodeAreas")).code, a = this.natural({ max: 9 }), n = this.bool() ? this.character({ alpha: !0, casing: "upper" }) : "", o = e + a + n, u = this.natural({ max: 9 }), g = this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }), B = u + g; + var e = this.pick(this.get("postcodeAreas")).code, a = this.natural({ max: 9 }), n = this.bool() ? this.character({ alpha: !0, casing: "upper" }) : "", o = e + a + n, c = this.natural({ max: 9 }), g = this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }), B = c + g; return o + " " + B; }, r.prototype.counties = function(e) { - return e = c(e, { country: "uk" }), this.get("counties")[e.country.toLowerCase()]; + return e = u(e, { country: "uk" }), this.get("counties")[e.country.toLowerCase()]; }, r.prototype.county = function(e) { return this.pick(this.counties(e)).name; }, r.prototype.provinces = function(e) { - return e = c(e, { country: "ca" }), this.get("provinces")[e.country.toLowerCase()]; + return e = u(e, { country: "ca" }), this.get("provinces")[e.country.toLowerCase()]; }, r.prototype.province = function(e) { return e && e.full ? this.pick(this.provinces(e)).name : this.pick(this.provinces(e)).abbreviation; }, r.prototype.state = function(e) { return e && e.full ? this.pick(this.states(e)).name : this.pick(this.states(e)).abbreviation; }, r.prototype.states = function(e) { - e = c(e, { country: "us", us_states_and_dc: !0 }); + e = u(e, { country: "us", us_states_and_dc: !0 }); var a; switch (e.country.toLowerCase()) { case "us": - var n = this.get("us_states_and_dc"), o = this.get("territories"), u = this.get("armed_forces"); - a = [], e.us_states_and_dc && (a = a.concat(n)), e.territories && (a = a.concat(o)), e.armed_forces && (a = a.concat(u)); + var n = this.get("us_states_and_dc"), o = this.get("territories"), c = this.get("armed_forces"); + a = [], e.us_states_and_dc && (a = a.concat(n)), e.territories && (a = a.concat(o)), e.armed_forces && (a = a.concat(c)); break; case "it": case "mx": @@ -930,7 +930,7 @@ var ie = { exports: {} }; } return a; }, r.prototype.street = function(e) { - e = c(e, { country: "us", syllables: 2 }); + e = u(e, { country: "us", syllables: 2 }); var a; switch (e.country.toLowerCase()) { case "us": @@ -942,9 +942,9 @@ var ie = { exports: {} }; } return a; }, r.prototype.street_suffix = function(e) { - return e = c(e, { country: "us" }), this.pick(this.street_suffixes(e)); + return e = u(e, { country: "us" }), this.pick(this.street_suffixes(e)); }, r.prototype.street_suffixes = function(e) { - return e = c(e, { country: "us" }), this.get("street_suffixes")[e.country.toLowerCase()]; + return e = u(e, { country: "us" }), this.get("street_suffixes")[e.country.toLowerCase()]; }, r.prototype.zip = function(e) { var a = this.n(this.natural, 5, { max: 9 }); return e && e.plusfour === !0 && (a.push("-"), a = a.concat(this.n(this.natural, 4, { max: 9 }))), a.join(""); @@ -953,15 +953,15 @@ var ie = { exports: {} }; }, r.prototype.date = function(e) { var a, n; if (e && (e.min || e.max)) { - e = c(e, { + e = u(e, { american: !0, string: !1 }); - var o = typeof e.min < "u" ? e.min.getTime() : 1, u = typeof e.max < "u" ? e.max.getTime() : 864e13; - n = new Date(this.integer({ min: o, max: u })); + var o = typeof e.min < "u" ? e.min.getTime() : 1, c = typeof e.max < "u" ? e.max.getTime() : 864e13; + n = new Date(this.integer({ min: o, max: c })); } else { var g = this.month({ raw: !0 }), B = g.days; - e && e.month && (B = this.get("months")[(e.month % 12 + 12) % 12].days), e = c(e, { + e && e.month && (B = this.get("months")[(e.month % 12 + 12) % 12].days), e = u(e, { year: parseInt(this.year(), 10), // Necessary to subtract 1 because Date() 0-indexes month but not day or year // for some reason. @@ -979,16 +979,16 @@ var ie = { exports: {} }; }, r.prototype.hammertime = function(e) { return this.date(e).getTime(); }, r.prototype.hour = function(e) { - return e = c(e, { + return e = u(e, { min: e && e.twentyfour ? 0 : 1, max: e && e.twentyfour ? 23 : 12 }), t(e.min < 0, "Chance: Min cannot be less than 0."), t(e.twentyfour && e.max > 23, "Chance: Max cannot be greater than 23 for twentyfour option."), t(!e.twentyfour && e.max > 12, "Chance: Max cannot be greater than 12."), t(e.min > e.max, "Chance: Min cannot be greater than Max."), this.natural({ min: e.min, max: e.max }); }, r.prototype.millisecond = function() { return this.natural({ max: 999 }); }, r.prototype.minute = r.prototype.second = function(e) { - return e = c(e, { min: 0, max: 59 }), t(e.min < 0, "Chance: Min cannot be less than 0."), t(e.max > 59, "Chance: Max cannot be greater than 59."), t(e.min > e.max, "Chance: Min cannot be greater than Max."), this.natural({ min: e.min, max: e.max }); + return e = u(e, { min: 0, max: 59 }), t(e.min < 0, "Chance: Min cannot be less than 0."), t(e.max > 59, "Chance: Max cannot be greater than 59."), t(e.min > e.max, "Chance: Min cannot be greater than Max."), this.natural({ min: e.min, max: e.max }); }, r.prototype.month = function(e) { - e = c(e, { min: 1, max: 12 }), t(e.min < 1, "Chance: Min cannot be less than 1."), t(e.max > 12, "Chance: Max cannot be greater than 12."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); + e = u(e, { min: 1, max: 12 }), t(e.min < 1, "Chance: Min cannot be less than 1."), t(e.max > 12, "Chance: Max cannot be greater than 12."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); var a = this.pick(this.months().slice(e.min - 1, e.max)); return e.raw ? a : a.name; }, r.prototype.months = function() { @@ -998,19 +998,19 @@ var ie = { exports: {} }; }, r.prototype.timestamp = function() { return this.natural({ min: 1, max: parseInt((/* @__PURE__ */ new Date()).getTime() / 1e3, 10) }); }, r.prototype.weekday = function(e) { - e = c(e, { weekday_only: !1 }); + e = u(e, { weekday_only: !1 }); var a = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"]; return e.weekday_only || (a.push("Saturday"), a.push("Sunday")), this.pickone(a); }, r.prototype.year = function(e) { - return e = c(e, { min: (/* @__PURE__ */ new Date()).getFullYear() }), e.max = typeof e.max < "u" ? e.max : e.min + 100, this.natural(e).toString(); + return e = u(e, { min: (/* @__PURE__ */ new Date()).getFullYear() }), e.max = typeof e.max < "u" ? e.max : e.min + 100, this.natural(e).toString(); }, r.prototype.cc = function(e) { - e = c(e); + e = u(e); var a, n, o; return a = e.type ? this.cc_type({ name: e.type, raw: !0 }) : this.cc_type({ raw: !0 }), n = a.prefix.split(""), o = a.length - a.prefix.length - 1, n = n.concat(this.n(this.integer, o, { min: 0, max: 9 })), n.push(this.luhn_calculate(n.join(""))), n.join(""); }, r.prototype.cc_types = function() { return this.get("cc_types"); }, r.prototype.cc_type = function(e) { - e = c(e); + e = u(e); var a = this.cc_types(), n = null; if (e.name) { for (var o = 0; o < a.length; o++) @@ -1034,24 +1034,24 @@ var ie = { exports: {} }; }, r.prototype.currency_pair = function(e) { var a = this.unique(this.currency, 2, { comparator: function(n, o) { - return n.reduce(function(u, g) { - return u || g.code === o.code; + return n.reduce(function(c, g) { + return c || g.code === o.code; }, !1); } }); return e ? a[0].code + "/" + a[1].code : a; }, r.prototype.dollar = function(e) { - e = c(e, { max: 1e4, min: 0 }); + e = u(e, { max: 1e4, min: 0 }); var a = this.floating({ min: e.min, max: e.max, fixed: 2 }).toString(), n = a.split(".")[1]; return n === void 0 ? a += ".00" : n.length < 2 && (a = a + "0"), a < 0 ? "-$" + a.replace("-", "") : "$" + a; }, r.prototype.euro = function(e) { return Number(this.dollar(e).replace("$", "")).toLocaleString() + "\u20AC"; }, r.prototype.exp = function(e) { - e = c(e); + e = u(e); var a = {}; return a.year = this.exp_year(), a.year === (/* @__PURE__ */ new Date()).getFullYear().toString() ? a.month = this.exp_month({ future: !0 }) : a.month = this.exp_month(), e.raw ? a : a.month + "/" + a.year; }, r.prototype.exp_month = function(e) { - e = c(e); + e = u(e); var a, n, o = (/* @__PURE__ */ new Date()).getMonth() + 1; if (e.future && o !== 12) do @@ -1064,7 +1064,7 @@ var ie = { exports: {} }; var e = (/* @__PURE__ */ new Date()).getMonth() + 1, a = (/* @__PURE__ */ new Date()).getFullYear(); return this.year({ min: e === 12 ? a + 1 : a, max: a + 10 }); }, r.prototype.vat = function(e) { - switch (e = c(e, { country: "it" }), e.country.toLowerCase()) { + switch (e = u(e, { country: "it" }), e.country.toLowerCase()) { case "it": return this.it_vat(); } @@ -1076,7 +1076,7 @@ var ie = { exports: {} }; return e = this.pad(e, 7) + this.pad(this.pick(this.provinces({ country: "it" })).code, 3), e + this.luhn_calculate(e); }, r.prototype.cf = function(e) { e = e || {}; - var a = e.gender ? e.gender : this.gender(), n = e.first ? e.first : this.first({ gender: a, nationality: "it" }), o = e.last ? e.last : this.last({ nationality: "it" }), u = e.birthday ? e.birthday : this.birthday(), g = e.city ? e.city : this.pickone(["A", "B", "C", "D", "E", "F", "G", "H", "I", "L", "M", "Z"]) + this.pad(this.natural({ max: 999 }), 3), B = [], f = function(A, H) { + var a = e.gender ? e.gender : this.gender(), n = e.first ? e.first : this.first({ gender: a, nationality: "it" }), o = e.last ? e.last : this.last({ nationality: "it" }), c = e.birthday ? e.birthday : this.birthday(), g = e.city ? e.city : this.pickone(["A", "B", "C", "D", "E", "F", "G", "H", "I", "L", "M", "Z"]) + this.pad(this.natural({ max: 999 }), 3), B = [], f = function(A, H) { var F, W = []; return A.length < 3 ? W = A.split("").concat("XXX".split("")).splice(0, 3) : (F = A.toUpperCase().split("").map(function(J) { return "BCDFGHJKLMNPRSTVWZ".indexOf(J) !== -1 ? J : void 0; @@ -1091,7 +1091,7 @@ var ie = { exports: {} }; U % 2 !== 0 ? V += W.indexOf(F[H.indexOf(A[U])]) : V += J.indexOf(F[H.indexOf(A[U])]); return W[V % 26]; }; - return B = B.concat(f(o, !0), f(n), v(u, a, this), g.toUpperCase().split("")).join(""), B += C(B.toUpperCase()), B.toUpperCase(); + return B = B.concat(f(o, !0), f(n), v(c, a, this), g.toUpperCase().split("")).join(""), B += C(B.toUpperCase()), B.toUpperCase(); }, r.prototype.pl_pesel = function() { for (var e = this.natural({ min: 1, max: 9999999999 }), a = this.pad(e, 10).split(""), n = 0; n < a.length; n++) a[n] = parseInt(a[n]); @@ -1108,7 +1108,7 @@ var ie = { exports: {} }; var o = (8 * a[0] + 9 * a[1] + 2 * a[2] + 3 * a[3] + 4 * a[4] + 5 * a[5] + 6 * a[6] + 7 * a[7]) % 11; return o === 10 && (o = 0), a.join("") + o; }, r.prototype.note = function(e) { - e = c(e, { notes: "flatKey" }); + e = u(e, { notes: "flatKey" }); var a = { naturals: ["C", "D", "E", "F", "G", "A", "B"], flats: ["D\u266D", "E\u266D", "G\u266D", "A\u266D", "B\u266D"], @@ -1117,9 +1117,9 @@ var ie = { exports: {} }; return a.all = a.naturals.concat(a.flats.concat(a.sharps)), a.flatKey = a.naturals.concat(a.flats), a.sharpKey = a.naturals.concat(a.sharps), this.pickone(a[e.notes]); }, r.prototype.midi_note = function(e) { var a = 0, n = 127; - return e = c(e, { min: a, max: n }), this.integer({ min: e.min, max: e.max }); + return e = u(e, { min: a, max: n }), this.integer({ min: e.min, max: e.max }); }, r.prototype.chord_quality = function(e) { - e = c(e, { jazz: !0 }); + e = u(e, { jazz: !0 }); var a = ["maj", "min", "aug", "dim"]; return e.jazz && (a = [ "maj7", @@ -1130,46 +1130,46 @@ var ie = { exports: {} }; "\xF8" ]), this.pickone(a); }, r.prototype.chord = function(e) { - return e = c(e), this.note(e) + this.chord_quality(e); + return e = u(e), this.note(e) + this.chord_quality(e); }, r.prototype.tempo = function(e) { var a = 40, n = 320; - return e = c(e, { min: a, max: n }), this.integer({ min: e.min, max: e.max }); + return e = u(e, { min: a, max: n }), this.integer({ min: e.min, max: e.max }); }, r.prototype.coin = function() { return this.bool() ? "heads" : "tails"; }; - function T(e) { + function I(e) { return function() { return this.natural(e); }; } - r.prototype.d4 = T({ min: 1, max: 4 }), r.prototype.d6 = T({ min: 1, max: 6 }), r.prototype.d8 = T({ min: 1, max: 8 }), r.prototype.d10 = T({ min: 1, max: 10 }), r.prototype.d12 = T({ min: 1, max: 12 }), r.prototype.d20 = T({ min: 1, max: 20 }), r.prototype.d30 = T({ min: 1, max: 30 }), r.prototype.d100 = T({ min: 1, max: 100 }), r.prototype.rpg = function(e, a) { - if (a = c(a), e) { + r.prototype.d4 = I({ min: 1, max: 4 }), r.prototype.d6 = I({ min: 1, max: 6 }), r.prototype.d8 = I({ min: 1, max: 8 }), r.prototype.d10 = I({ min: 1, max: 10 }), r.prototype.d12 = I({ min: 1, max: 12 }), r.prototype.d20 = I({ min: 1, max: 20 }), r.prototype.d30 = I({ min: 1, max: 30 }), r.prototype.d100 = I({ min: 1, max: 100 }), r.prototype.rpg = function(e, a) { + if (a = u(a), e) { var n = e.toLowerCase().split("d"), o = []; if (n.length !== 2 || !parseInt(n[0], 10) || !parseInt(n[1], 10)) throw new Error("Chance: Invalid format provided. Please provide #d# where the first # is the number of dice to roll, the second # is the max of each die"); - for (var u = n[0]; u > 0; u--) - o[u - 1] = this.natural({ min: 1, max: n[1] }); + for (var c = n[0]; c > 0; c--) + o[c - 1] = this.natural({ min: 1, max: n[1] }); return typeof a.sum < "u" && a.sum ? o.reduce(function(g, B) { return g + B; }) : o; } else throw new RangeError("Chance: A type of die roll must be included"); }, r.prototype.guid = function(e) { - e = c(e, { version: 5 }); + e = u(e, { version: 5 }); var a = "abcdef1234567890", n = "ab89", o = this.string({ pool: a, length: 8 }) + "-" + this.string({ pool: a, length: 4 }) + "-" + // The Version e.version + this.string({ pool: a, length: 3 }) + "-" + // The Variant this.string({ pool: n, length: 1 }) + this.string({ pool: a, length: 3 }) + "-" + this.string({ pool: a, length: 12 }); return o; }, r.prototype.hash = function(e) { - e = c(e, { length: 40, casing: "lower" }); + e = u(e, { length: 40, casing: "lower" }); var a = e.casing === "upper" ? b.toUpperCase() : b; return this.string({ pool: a, length: e.length }); }, r.prototype.luhn_check = function(e) { var a = e.toString(), n = +a.substring(a.length - 1); return n === this.luhn_calculate(+a.substring(0, a.length - 1)); }, r.prototype.luhn_calculate = function(e) { - for (var a = e.toString().split("").reverse(), n = 0, o, u = 0, g = a.length; g > u; ++u) - o = +a[u], u % 2 === 0 && (o *= 2, o > 9 && (o -= 9)), n += o; + for (var a = e.toString().split("").reverse(), n = 0, o, c = 0, g = a.length; g > c; ++c) + o = +a[c], c % 2 === 0 && (o *= 2, o > 9 && (o -= 9)), n += o; return n * 9 % 10; }, r.prototype.md5 = function(e) { var a = { str: "", key: null, raw: !1 }; @@ -1183,29 +1183,29 @@ var ie = { exports: {} }; if (e.constructor === "Array") return null; } - if (a = c(e, a), !a.str) + if (a = u(e, a), !a.str) throw new Error("A parameter is required to return an md5 hash."); return this.bimd5.md5(a.str, a.key, a.raw); }, r.prototype.file = function(e) { - var a = e || {}, n = "fileExtension", o = Object.keys(this.get("fileExtension")), u, g; - if (u = this.word({ length: a.length }), a.extension) - return g = a.extension, u + "." + g; + var a = e || {}, n = "fileExtension", o = Object.keys(this.get("fileExtension")), c, g; + if (c = this.word({ length: a.length }), a.extension) + return g = a.extension, c + "." + g; if (a.extensions) { if (Array.isArray(a.extensions)) - return g = this.pickone(a.extensions), u + "." + g; + return g = this.pickone(a.extensions), c + "." + g; if (a.extensions.constructor === Object) { var B = a.extensions, f = Object.keys(B); - return g = this.pickone(B[this.pickone(f)]), u + "." + g; + return g = this.pickone(B[this.pickone(f)]), c + "." + g; } throw new Error("Chance: Extensions must be an Array or Object"); } if (a.fileType) { var v = a.fileType; if (o.indexOf(v) !== -1) - return g = this.pickone(this.get(n)[v]), u + "." + g; + return g = this.pickone(this.get(n)[v]), c + "." + g; throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'"); } - return g = this.pickone(this.get(n)[this.pickone(o)]), u + "." + g; + return g = this.pickone(this.get(n)[this.pickone(o)]), c + "." + g; }, r.prototype.fileWithContent = function(e) { var a = e || {}, n = "fileName" in a ? a.fileName : this.file().split(".")[0]; if (n += "." + ("fileExtension" in a ? a.fileExtension : this.file().split(".")[1]), typeof a.fileSize != "number") @@ -7034,8 +7034,8 @@ var ie = { exports: {} }; return a; }; function D(e, a) { - for (var n = w(e), o, u = 0, g = n.length; u < g; u++) - o = n[u], a[o] = e[o] || a[o]; + for (var n = w(e), o, c = 0, g = n.length; c < g; c++) + o = n[c], a[o] = e[o] || a[o]; } function R(e, a) { for (var n = 0, o = e.length; n < o; n++) @@ -7048,11 +7048,11 @@ var ie = { exports: {} }; r.prototype.get = function(e) { return _(k[e]); }, r.prototype.mac_address = function(e) { - e = c(e), e.separator || (e.separator = e.networkVersion ? "." : ":"); + e = u(e), e.separator || (e.separator = e.networkVersion ? "." : ":"); var a = "ABCDEF1234567890", n = ""; return e.networkVersion ? n = this.n(this.string, 3, { pool: a, length: 4 }).join(e.separator) : n = this.n(this.string, 6, { pool: a, length: 2 }).join(e.separator), n; }, r.prototype.normal = function(e) { - if (e = c(e, { mean: 0, dev: 1, pool: [] }), t( + if (e = u(e, { mean: 0, dev: 1, pool: [] }), t( e.pool.constructor !== Array, "Chance: The pool option must be a valid array." ), t( @@ -7063,11 +7063,11 @@ var ie = { exports: {} }; "Chance: Standard deviation (dev) must be a number" ), e.pool.length > 0) return this.normal_pool(e); - var a, n, o, u, g = e.mean, B = e.dev; + var a, n, o, c, g = e.mean, B = e.dev; do n = this.random() * 2 - 1, o = this.random() * 2 - 1, a = n * n + o * o; while (a >= 1); - return u = n * Math.sqrt(-2 * Math.log(a) / a), B * u + g; + return c = n * Math.sqrt(-2 * Math.log(a) / a), B * c + g; }, r.prototype.normal_pool = function(e) { var a = 0; do { @@ -7078,7 +7078,7 @@ var ie = { exports: {} }; } while (a < 100); throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust."); }, r.prototype.radio = function(e) { - e = c(e, { side: "?" }); + e = u(e, { side: "?" }); var a = ""; switch (e.side.toLowerCase()) { case "east": @@ -7117,10 +7117,10 @@ var ie = { exports: {} }; for (this.mt[0] = e >>> 0, this.mti = 1; this.mti < this.N; this.mti++) e = this.mt[this.mti - 1] ^ this.mt[this.mti - 1] >>> 30, this.mt[this.mti] = (((e & 4294901760) >>> 16) * 1812433253 << 16) + (e & 65535) * 1812433253 + this.mti, this.mt[this.mti] >>>= 0; }, O.prototype.init_by_array = function(e, a) { - var n = 1, o = 0, u, g; - for (this.init_genrand(19650218), u = this.N > a ? this.N : a; u; u--) + var n = 1, o = 0, c, g; + for (this.init_genrand(19650218), c = this.N > a ? this.N : a; c; c--) g = this.mt[n - 1] ^ this.mt[n - 1] >>> 30, this.mt[n] = (this.mt[n] ^ (((g & 4294901760) >>> 16) * 1664525 << 16) + (g & 65535) * 1664525) + e[o] + o, this.mt[n] >>>= 0, n++, o++, n >= this.N && (this.mt[0] = this.mt[this.N - 1], n = 1), o >= a && (o = 0); - for (u = this.N - 1; u; u--) + for (c = this.N - 1; c; c--) g = this.mt[n - 1] ^ this.mt[n - 1] >>> 30, this.mt[n] = (this.mt[n] ^ (((g & 4294901760) >>> 16) * 1566083941 << 16) + (g & 65535) * 1566083941) - n, this.mt[n] >>>= 0, n++, n >= this.N && (this.mt[0] = this.mt[this.N - 1], n = 1); this.mt[0] = 2147483648; }, O.prototype.genrand_int32 = function() { @@ -7149,25 +7149,25 @@ var ie = { exports: {} }; var G = function() { }; G.prototype.VERSION = "1.0.1", G.prototype.safe_add = function(a, n) { - var o = (a & 65535) + (n & 65535), u = (a >> 16) + (n >> 16) + (o >> 16); - return u << 16 | o & 65535; + var o = (a & 65535) + (n & 65535), c = (a >> 16) + (n >> 16) + (o >> 16); + return c << 16 | o & 65535; }, G.prototype.bit_roll = function(e, a) { return e << a | e >>> 32 - a; - }, G.prototype.md5_cmn = function(e, a, n, o, u, g) { - return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a, e), this.safe_add(o, g)), u), n); - }, G.prototype.md5_ff = function(e, a, n, o, u, g, B) { - return this.md5_cmn(a & n | ~a & o, e, a, u, g, B); - }, G.prototype.md5_gg = function(e, a, n, o, u, g, B) { - return this.md5_cmn(a & o | n & ~o, e, a, u, g, B); - }, G.prototype.md5_hh = function(e, a, n, o, u, g, B) { - return this.md5_cmn(a ^ n ^ o, e, a, u, g, B); - }, G.prototype.md5_ii = function(e, a, n, o, u, g, B) { - return this.md5_cmn(n ^ (a | ~o), e, a, u, g, B); + }, G.prototype.md5_cmn = function(e, a, n, o, c, g) { + return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a, e), this.safe_add(o, g)), c), n); + }, G.prototype.md5_ff = function(e, a, n, o, c, g, B) { + return this.md5_cmn(a & n | ~a & o, e, a, c, g, B); + }, G.prototype.md5_gg = function(e, a, n, o, c, g, B) { + return this.md5_cmn(a & o | n & ~o, e, a, c, g, B); + }, G.prototype.md5_hh = function(e, a, n, o, c, g, B) { + return this.md5_cmn(a ^ n ^ o, e, a, c, g, B); + }, G.prototype.md5_ii = function(e, a, n, o, c, g, B) { + return this.md5_cmn(n ^ (a | ~o), e, a, c, g, B); }, G.prototype.binl_md5 = function(e, a) { e[a >> 5] |= 128 << a % 32, e[(a + 64 >>> 9 << 4) + 14] = a; - var n, o, u, g, B, f = 1732584193, v = -271733879, C = -1732584194, A = 271733878; + var n, o, c, g, B, f = 1732584193, v = -271733879, C = -1732584194, A = 271733878; for (n = 0; n < e.length; n += 16) - o = f, u = v, g = C, B = A, f = this.md5_ff(f, v, C, A, e[n], 7, -680876936), A = this.md5_ff(A, f, v, C, e[n + 1], 12, -389564586), C = this.md5_ff(C, A, f, v, e[n + 2], 17, 606105819), v = this.md5_ff(v, C, A, f, e[n + 3], 22, -1044525330), f = this.md5_ff(f, v, C, A, e[n + 4], 7, -176418897), A = this.md5_ff(A, f, v, C, e[n + 5], 12, 1200080426), C = this.md5_ff(C, A, f, v, e[n + 6], 17, -1473231341), v = this.md5_ff(v, C, A, f, e[n + 7], 22, -45705983), f = this.md5_ff(f, v, C, A, e[n + 8], 7, 1770035416), A = this.md5_ff(A, f, v, C, e[n + 9], 12, -1958414417), C = this.md5_ff(C, A, f, v, e[n + 10], 17, -42063), v = this.md5_ff(v, C, A, f, e[n + 11], 22, -1990404162), f = this.md5_ff(f, v, C, A, e[n + 12], 7, 1804603682), A = this.md5_ff(A, f, v, C, e[n + 13], 12, -40341101), C = this.md5_ff(C, A, f, v, e[n + 14], 17, -1502002290), v = this.md5_ff(v, C, A, f, e[n + 15], 22, 1236535329), f = this.md5_gg(f, v, C, A, e[n + 1], 5, -165796510), A = this.md5_gg(A, f, v, C, e[n + 6], 9, -1069501632), C = this.md5_gg(C, A, f, v, e[n + 11], 14, 643717713), v = this.md5_gg(v, C, A, f, e[n], 20, -373897302), f = this.md5_gg(f, v, C, A, e[n + 5], 5, -701558691), A = this.md5_gg(A, f, v, C, e[n + 10], 9, 38016083), C = this.md5_gg(C, A, f, v, e[n + 15], 14, -660478335), v = this.md5_gg(v, C, A, f, e[n + 4], 20, -405537848), f = this.md5_gg(f, v, C, A, e[n + 9], 5, 568446438), A = this.md5_gg(A, f, v, C, e[n + 14], 9, -1019803690), C = this.md5_gg(C, A, f, v, e[n + 3], 14, -187363961), v = this.md5_gg(v, C, A, f, e[n + 8], 20, 1163531501), f = this.md5_gg(f, v, C, A, e[n + 13], 5, -1444681467), A = this.md5_gg(A, f, v, C, e[n + 2], 9, -51403784), C = this.md5_gg(C, A, f, v, e[n + 7], 14, 1735328473), v = this.md5_gg(v, C, A, f, e[n + 12], 20, -1926607734), f = this.md5_hh(f, v, C, A, e[n + 5], 4, -378558), A = this.md5_hh(A, f, v, C, e[n + 8], 11, -2022574463), C = this.md5_hh(C, A, f, v, e[n + 11], 16, 1839030562), v = this.md5_hh(v, C, A, f, e[n + 14], 23, -35309556), f = this.md5_hh(f, v, C, A, e[n + 1], 4, -1530992060), A = this.md5_hh(A, f, v, C, e[n + 4], 11, 1272893353), C = this.md5_hh(C, A, f, v, e[n + 7], 16, -155497632), v = this.md5_hh(v, C, A, f, e[n + 10], 23, -1094730640), f = this.md5_hh(f, v, C, A, e[n + 13], 4, 681279174), A = this.md5_hh(A, f, v, C, e[n], 11, -358537222), C = this.md5_hh(C, A, f, v, e[n + 3], 16, -722521979), v = this.md5_hh(v, C, A, f, e[n + 6], 23, 76029189), f = this.md5_hh(f, v, C, A, e[n + 9], 4, -640364487), A = this.md5_hh(A, f, v, C, e[n + 12], 11, -421815835), C = this.md5_hh(C, A, f, v, e[n + 15], 16, 530742520), v = this.md5_hh(v, C, A, f, e[n + 2], 23, -995338651), f = this.md5_ii(f, v, C, A, e[n], 6, -198630844), A = this.md5_ii(A, f, v, C, e[n + 7], 10, 1126891415), C = this.md5_ii(C, A, f, v, e[n + 14], 15, -1416354905), v = this.md5_ii(v, C, A, f, e[n + 5], 21, -57434055), f = this.md5_ii(f, v, C, A, e[n + 12], 6, 1700485571), A = this.md5_ii(A, f, v, C, e[n + 3], 10, -1894986606), C = this.md5_ii(C, A, f, v, e[n + 10], 15, -1051523), v = this.md5_ii(v, C, A, f, e[n + 1], 21, -2054922799), f = this.md5_ii(f, v, C, A, e[n + 8], 6, 1873313359), A = this.md5_ii(A, f, v, C, e[n + 15], 10, -30611744), C = this.md5_ii(C, A, f, v, e[n + 6], 15, -1560198380), v = this.md5_ii(v, C, A, f, e[n + 13], 21, 1309151649), f = this.md5_ii(f, v, C, A, e[n + 4], 6, -145523070), A = this.md5_ii(A, f, v, C, e[n + 11], 10, -1120210379), C = this.md5_ii(C, A, f, v, e[n + 2], 15, 718787259), v = this.md5_ii(v, C, A, f, e[n + 9], 21, -343485551), f = this.safe_add(f, o), v = this.safe_add(v, u), C = this.safe_add(C, g), A = this.safe_add(A, B); + o = f, c = v, g = C, B = A, f = this.md5_ff(f, v, C, A, e[n], 7, -680876936), A = this.md5_ff(A, f, v, C, e[n + 1], 12, -389564586), C = this.md5_ff(C, A, f, v, e[n + 2], 17, 606105819), v = this.md5_ff(v, C, A, f, e[n + 3], 22, -1044525330), f = this.md5_ff(f, v, C, A, e[n + 4], 7, -176418897), A = this.md5_ff(A, f, v, C, e[n + 5], 12, 1200080426), C = this.md5_ff(C, A, f, v, e[n + 6], 17, -1473231341), v = this.md5_ff(v, C, A, f, e[n + 7], 22, -45705983), f = this.md5_ff(f, v, C, A, e[n + 8], 7, 1770035416), A = this.md5_ff(A, f, v, C, e[n + 9], 12, -1958414417), C = this.md5_ff(C, A, f, v, e[n + 10], 17, -42063), v = this.md5_ff(v, C, A, f, e[n + 11], 22, -1990404162), f = this.md5_ff(f, v, C, A, e[n + 12], 7, 1804603682), A = this.md5_ff(A, f, v, C, e[n + 13], 12, -40341101), C = this.md5_ff(C, A, f, v, e[n + 14], 17, -1502002290), v = this.md5_ff(v, C, A, f, e[n + 15], 22, 1236535329), f = this.md5_gg(f, v, C, A, e[n + 1], 5, -165796510), A = this.md5_gg(A, f, v, C, e[n + 6], 9, -1069501632), C = this.md5_gg(C, A, f, v, e[n + 11], 14, 643717713), v = this.md5_gg(v, C, A, f, e[n], 20, -373897302), f = this.md5_gg(f, v, C, A, e[n + 5], 5, -701558691), A = this.md5_gg(A, f, v, C, e[n + 10], 9, 38016083), C = this.md5_gg(C, A, f, v, e[n + 15], 14, -660478335), v = this.md5_gg(v, C, A, f, e[n + 4], 20, -405537848), f = this.md5_gg(f, v, C, A, e[n + 9], 5, 568446438), A = this.md5_gg(A, f, v, C, e[n + 14], 9, -1019803690), C = this.md5_gg(C, A, f, v, e[n + 3], 14, -187363961), v = this.md5_gg(v, C, A, f, e[n + 8], 20, 1163531501), f = this.md5_gg(f, v, C, A, e[n + 13], 5, -1444681467), A = this.md5_gg(A, f, v, C, e[n + 2], 9, -51403784), C = this.md5_gg(C, A, f, v, e[n + 7], 14, 1735328473), v = this.md5_gg(v, C, A, f, e[n + 12], 20, -1926607734), f = this.md5_hh(f, v, C, A, e[n + 5], 4, -378558), A = this.md5_hh(A, f, v, C, e[n + 8], 11, -2022574463), C = this.md5_hh(C, A, f, v, e[n + 11], 16, 1839030562), v = this.md5_hh(v, C, A, f, e[n + 14], 23, -35309556), f = this.md5_hh(f, v, C, A, e[n + 1], 4, -1530992060), A = this.md5_hh(A, f, v, C, e[n + 4], 11, 1272893353), C = this.md5_hh(C, A, f, v, e[n + 7], 16, -155497632), v = this.md5_hh(v, C, A, f, e[n + 10], 23, -1094730640), f = this.md5_hh(f, v, C, A, e[n + 13], 4, 681279174), A = this.md5_hh(A, f, v, C, e[n], 11, -358537222), C = this.md5_hh(C, A, f, v, e[n + 3], 16, -722521979), v = this.md5_hh(v, C, A, f, e[n + 6], 23, 76029189), f = this.md5_hh(f, v, C, A, e[n + 9], 4, -640364487), A = this.md5_hh(A, f, v, C, e[n + 12], 11, -421815835), C = this.md5_hh(C, A, f, v, e[n + 15], 16, 530742520), v = this.md5_hh(v, C, A, f, e[n + 2], 23, -995338651), f = this.md5_ii(f, v, C, A, e[n], 6, -198630844), A = this.md5_ii(A, f, v, C, e[n + 7], 10, 1126891415), C = this.md5_ii(C, A, f, v, e[n + 14], 15, -1416354905), v = this.md5_ii(v, C, A, f, e[n + 5], 21, -57434055), f = this.md5_ii(f, v, C, A, e[n + 12], 6, 1700485571), A = this.md5_ii(A, f, v, C, e[n + 3], 10, -1894986606), C = this.md5_ii(C, A, f, v, e[n + 10], 15, -1051523), v = this.md5_ii(v, C, A, f, e[n + 1], 21, -2054922799), f = this.md5_ii(f, v, C, A, e[n + 8], 6, 1873313359), A = this.md5_ii(A, f, v, C, e[n + 15], 10, -30611744), C = this.md5_ii(C, A, f, v, e[n + 6], 15, -1560198380), v = this.md5_ii(v, C, A, f, e[n + 13], 21, 1309151649), f = this.md5_ii(f, v, C, A, e[n + 4], 6, -145523070), A = this.md5_ii(A, f, v, C, e[n + 11], 10, -1120210379), C = this.md5_ii(C, A, f, v, e[n + 2], 15, 718787259), v = this.md5_ii(v, C, A, f, e[n + 9], 21, -343485551), f = this.safe_add(f, o), v = this.safe_add(v, c), C = this.safe_add(C, g), A = this.safe_add(A, B); return [f, v, C, A]; }, G.prototype.binl2rstr = function(e) { var a, n = ""; @@ -7184,14 +7184,14 @@ var ie = { exports: {} }; }, G.prototype.rstr_md5 = function(e) { return this.binl2rstr(this.binl_md5(this.rstr2binl(e), e.length * 8)); }, G.prototype.rstr_hmac_md5 = function(e, a) { - var n, o = this.rstr2binl(e), u = [], g = [], B; - for (u[15] = g[15] = void 0, o.length > 16 && (o = this.binl_md5(o, e.length * 8)), n = 0; n < 16; n += 1) - u[n] = o[n] ^ 909522486, g[n] = o[n] ^ 1549556828; - return B = this.binl_md5(u.concat(this.rstr2binl(a)), 512 + a.length * 8), this.binl2rstr(this.binl_md5(g.concat(B), 512 + 128)); + var n, o = this.rstr2binl(e), c = [], g = [], B; + for (c[15] = g[15] = void 0, o.length > 16 && (o = this.binl_md5(o, e.length * 8)), n = 0; n < 16; n += 1) + c[n] = o[n] ^ 909522486, g[n] = o[n] ^ 1549556828; + return B = this.binl_md5(c.concat(this.rstr2binl(a)), 512 + a.length * 8), this.binl2rstr(this.binl_md5(g.concat(B), 512 + 128)); }, G.prototype.rstr2hex = function(e) { - var a = "0123456789abcdef", n = "", o, u; - for (u = 0; u < e.length; u += 1) - o = e.charCodeAt(u), n += a.charAt(o >>> 4 & 15) + a.charAt(o & 15); + var a = "0123456789abcdef", n = "", o, c; + for (c = 0; c < e.length; c += 1) + o = e.charCodeAt(c), n += a.charAt(o >>> 4 & 15) + a.charAt(o & 15); return n; }, G.prototype.str2rstr_utf8 = function(e) { return unescape(encodeURIComponent(e)); @@ -7211,13 +7211,13 @@ var ie = { exports: {} }; var be = ie.exports; const pe = /* @__PURE__ */ fe(be); var Y = new pe(), le = function() { - function m(d, E, L, I) { + function m(d, E, L, T) { let x = L.toUpperCase(), p = d.toUpperCase(), b = E.toUpperCase(); - if (I != null && 0 < I.length) { - let i = 0, t = I.length; + if (T != null && 0 < T.length) { + let i = 0, t = T.length; var S = "'"; (x.startsWith("INTEGER") || x.startsWith("NUMBER") || x.startsWith("DATE")) && (S = ""); - let s = I[Math.floor(Math.random() * (t - i)) + i]; + let s = T[Math.floor(Math.random() * (t - i)) + i]; return s.toLowerCase && s.toLowerCase() == "null" && (S = ""), S + s + S; } if (b == "NAME" && 0 <= p.indexOf("DEPARTMENT")) { @@ -7250,78 +7250,78 @@ var Y = new pe(), le = function() { } if (x.startsWith("DATE") || x.startsWith("TIMESTAMP")) { let i = 0, t = 100; - var c = Math.floor(Math.random() * (t - i)) + i; - return "sysdate-" + c; + var u = Math.floor(Math.random() * (t - i)) + i; + return "sysdate-" + u; } return "'N/A'"; } return m; }(), $ = function() { function m(d, E) { - for (var L = [], I = "", x = 0; x < d.length; x++) { + for (var L = [], T = "", x = 0; x < d.length; x++) { for (var p = d.charAt(x), b = L.length, S = 0; S < E.length; S++) { var M = E.charAt(S); if (p == M) { - 0 < I.length && L.push(I), L.push(p), I = ""; + 0 < T.length && L.push(T), L.push(p), T = ""; continue; } } - b == L.length && (I = I + p); + b == L.length && (T = T + p); } - return 0 < I.length && L.push(I), L; + return 0 < T.length && L.push(T), L; } return m; }(), Z = function() { - function m(I, x, p, b, S, M) { - this.type = b, this.value = I, this.begin = x, this.end = p, this.line = S, this.col = M, this.toString = function() { - return "{type:" + b + ",value:" + I + "}"; + function m(T, x, p, b, S, M) { + this.type = b, this.value = T, this.begin = x, this.end = p, this.line = S, this.col = M, this.toString = function() { + return "{type:" + b + ",value:" + T + "}"; }, this.isStandardLiteral = function() { if (this.value.length < 2 || !(this.value.charAt(0) == "'" || this.value.charAt(0) == "n" || this.value.charAt(0) == "N")) return !1; - var c = this.value; - if (c.charAt(0) == "n" || c.charAt(0) == "N") { - if (c.length < 3) + var u = this.value; + if (u.charAt(0) == "n" || u.charAt(0) == "N") { + if (u.length < 3) return !1; - c = c.substring(1); + u = u.substring(1); } - return c.length < 2 ? !1 : c.charAt(0) == "'" && c.charAt(c.length - 1) == "'"; + return u.length < 2 ? !1 : u.charAt(0) == "'" && u.charAt(u.length - 1) == "'"; }, this.isAltLiteral = function() { if (this.value.length < 5 || !(this.value.charAt(0) == "q" || this.value.charAt(0) == "Q" || this.value.charAt(0) == "n" || this.value.charAt(0) == "N")) return !1; - var c = this.value; + var u = this.value; if (this.value.charAt(0) == "q" || this.value.charAt(0) == "Q") - c = c.substring(1); + u = u.substring(1); else if ( /*content.startsWith("Nq")*/ (this.value.charAt(0) == "n" || this.value.charAt(0) == "N") && (this.value.charAt(1) == "q" || this.value.charAt(1) == "Q") ) { - if (c.length < 6) + if (u.length < 6) return !1; - c = c.substring(2); + u = u.substring(2); } else return !1; - if (c.charAt(0) == "'" && c.charAt(c.length - 1) == "'") - c = c.substring(1, c.length - 1); + if (u.charAt(0) == "'" && u.charAt(u.length - 1) == "'") + u = u.substring(1, u.length - 1); else return !1; - return r(c.charAt(0)) == c.charAt(c.length - 1); + return r(u.charAt(0)) == u.charAt(u.length - 1); }; - function r(c) { - return c == "<" ? ">" : c == "[" ? "]" : c == "{" ? "}" : c == "(" ? ")" : c; + function r(u) { + return u == "<" ? ">" : u == "[" ? "]" : u == "{" ? "}" : u == "(" ? ")" : u; } } - function d(I, x, p) { + function d(T, x, p) { for (var b = [], S = `(){}[]^-|!*+.><='",;:%@?/\\#~` + p, M = ` \r `, r = $( - I, + T, //".*-+/|><=()\'\", \n\r\t" S + M - ), c = 0, i = 0, t = 0, s = 0; s < r.length; s++) { + ), u = 0, i = 0, t = 0, s = 0; s < r.length; s++) { var l = r[s], h = null; if (b.length > 0 && (h = b[b.length - 1]), l == ` ` ? (i++, t = 0) : s > 0 && r[s - 1] !== ` -` ? t = t + r[s - 1].length : t = 0, c += l.length, h != null && h.type == "comment" && (h.value.lastIndexOf("*/") != h.value.length - 2 || h.value == "/*/")) { - l == "*" || l == "/" ? h.value = h.value + l : h.value = "/* ... ", h.end = c, h != null && h.type == "comment" && h.value.lastIndexOf("*/") == h.value.length - 2 && h.value != "/*/" && (h.value = I.substring(h.begin, h.end)); +` ? t = t + r[s - 1].length : t = 0, u += l.length, h != null && h.type == "comment" && (h.value.lastIndexOf("*/") != h.value.length - 2 || h.value == "/*/")) { + l == "*" || l == "/" ? h.value = h.value + l : h.value = "/* ... ", h.end = u, h != null && h.type == "comment" && h.value.lastIndexOf("*/") == h.value.length - 2 && h.value != "/*/" && (h.value = T.substring(h.begin, h.end)); continue; } if (h != null && (h.type == "line-comment" || h.type == "dbtools-command") && l != ` @@ -7336,12 +7336,12 @@ var Y = new pe(), le = function() { } if (!(h != null && h.type == "dquoted-string" && l != '"' && !(h.value.endsWith('"') && h.value.length > 1))) { if (h != null && h.type == "dquoted-string" && l == '"') { - h.end = c, h.value = I.substring(h.begin, h.end); + h.end = u, h.value = T.substring(h.begin, h.end); continue; } if (!(h != null && h.type == "bquoted-string" && l != "`" && !(h.value.endsWith("`") && h.value.length > 1))) { if (h != null && h.type == "bquoted-string" && l == "`") { - h.end = c, h.value = I.substring(h.begin, h.end); + h.end = u, h.value = T.substring(h.begin, h.end); continue; } if (l == "*" && h != null && h.value == "/") { @@ -7354,12 +7354,12 @@ var Y = new pe(), le = function() { } if ((l.toUpperCase() == "REM" || l.toUpperCase() == "REMA" || l.toUpperCase() == "REMAR" || l.toUpperCase() == "REMARK" || l.toUpperCase() == "PRO" || l.toUpperCase() == "PROM" || l.toUpperCase() == "PROMP" || l.toUpperCase() == "PROMPT") && (h == null || h.value == ` ` || h.value == "\r")) { - b.push(new m(l, c - l.length, -9, "line-comment", i, t)); + b.push(new m(l, u - l.length, -9, "line-comment", i, t)); continue; } if (l.toUpperCase() == "SODA" && (h == null || h.value == ` ` || h.value == "\r")) { - b.push(new m(l, c - l.length, -9, "dbtools-command", i, t)); + b.push(new m(l, u - l.length, -9, "dbtools-command", i, t)); continue; } if (h != null && h.type == "identifier" && h.end == -11 && h.value.indexOf("@") == 0 && !(l == ` @@ -7369,57 +7369,57 @@ var Y = new pe(), le = function() { } if (h != null && h.type == "identifier" && h.end == -11 && h.value.indexOf("@") == 0 && (l == ` ` || l == "\r")) { - h.end = c - 1, b.push(new m(l, c - 1, c, "ws", i, t)); + h.end = u - 1, b.push(new m(l, u - 1, u, "ws", i, t)); continue; } if (x && l == "'") { - h != null && (h.value.toUpperCase() == "Q" || h.value.toUpperCase() == "N" || h.value.toUpperCase() == "U" || h.value.toUpperCase() == "NQ") ? (h.value += l, h.type = "quoted-string") : b.push(new m(l, c - 1, -10, "quoted-string", i, t)); + h != null && (h.value.toUpperCase() == "Q" || h.value.toUpperCase() == "N" || h.value.toUpperCase() == "U" || h.value.toUpperCase() == "NQ") ? (h.value += l, h.type = "quoted-string") : b.push(new m(l, u - 1, -10, "quoted-string", i, t)); continue; } if (x && l == '"') { - b.push(new m(l, c - 1, -11, "dquoted-string", i, t)); + b.push(new m(l, u - 1, -11, "dquoted-string", i, t)); continue; } if (l == "`" && 0 <= S.indexOf("`")) { - b.push(new m(l, c - 1, -11, "bquoted-string", i, t)); + b.push(new m(l, u - 1, -11, "bquoted-string", i, t)); continue; } if (l.length == 1 && 0 <= S.indexOf(l)) { - b.push(new m(l, c - 1, c, "operation", i, t)); + b.push(new m(l, u - 1, u, "operation", i, t)); continue; } if (l.length == 1 && 0 <= M.indexOf(l)) { - b.push(new m(l, c - 1, c, "ws", i, t)); + b.push(new m(l, u - 1, u, "ws", i, t)); continue; } if ("0" <= l.charAt(0) && l.charAt(0) <= "9") { - E(l, b, c - l.length, i) || (l.charAt(l.length - 1) == "K" || l.charAt(l.length - 1) == "k" || l.charAt(l.length - 1) == "M" || l.charAt(l.length - 1) == "m" || l.charAt(l.length - 1) == "G" || l.charAt(l.length - 1) == "g" || l.charAt(l.length - 1) == "T" || l.charAt(l.length - 1) == "t" || l.charAt(l.length - 1) == "P" || l.charAt(l.length - 1) == "p" || l.charAt(l.length - 1) == "E" || l.charAt(l.length - 1) == "e" ? (b.push(new m(l.substring(0, l.length - 1), c - l.length, c - 1, "constant.numeric", i, t)), b.push(new m(l.substring(l.length - 1), c - 1, c, "constant.numeric", i, t))) : b.push(new m(l, c - l.length, c, "constant.numeric", i, t))); + E(l, b, u - l.length, i) || (l.charAt(l.length - 1) == "K" || l.charAt(l.length - 1) == "k" || l.charAt(l.length - 1) == "M" || l.charAt(l.length - 1) == "m" || l.charAt(l.length - 1) == "G" || l.charAt(l.length - 1) == "g" || l.charAt(l.length - 1) == "T" || l.charAt(l.length - 1) == "t" || l.charAt(l.length - 1) == "P" || l.charAt(l.length - 1) == "p" || l.charAt(l.length - 1) == "E" || l.charAt(l.length - 1) == "e" ? (b.push(new m(l.substring(0, l.length - 1), u - l.length, u - 1, "constant.numeric", i, t)), b.push(new m(l.substring(l.length - 1), u - 1, u, "constant.numeric", i, t))) : b.push(new m(l, u - l.length, u, "constant.numeric", i, t))); continue; } var y = "identifier"; - s + 1 < r.length && r[s + 1], b.push(new m(l, c - l.length, c, y, i, t)); + s + 1 < r.length && r[s + 1], b.push(new m(l, u - l.length, u, y, i, t)); } } } if (b.length > 0) { var h = b[b.length - 1]; - h.end = I.length; + h.end = T.length; } return b; } - function E(I, x, p, b) { - if (0 > I.indexOf("e") && 0 > I.indexOf("f") && 0 > I.indexOf("d")) + function E(T, x, p, b) { + if (0 > T.indexOf("e") && 0 > T.indexOf("f") && 0 > T.indexOf("d")) return !1; - 0 <= I.indexOf("e"), 0 <= I.indexOf("e"), !(0 <= I.indexOf("e")) && 0 <= I.indexOf("f"); - for (var S = $(I, "efd"), M = 0; M < S.length; M++) { + 0 <= T.indexOf("e"), 0 <= T.indexOf("e"), !(0 <= T.indexOf("e")) && 0 <= T.indexOf("f"); + for (var S = $(T, "efd"), M = 0; M < S.length; M++) { var r = S[M]; p += r.length, "0" <= r.charAt(0) && r.charAt(0) <= "9" ? x.push(new m(r, p - r.length, p, "constant.numeric", b)) : x.push(new m(r, p - r.length, p, "identifier", b)); } return !0; } - function L(I, x, p, b) { - for (var S = [], M = d(I, p, b), r = null, c = 0; c < M.length; c++) { - var i = M[c]; + function L(T, x, p, b) { + for (var S = [], M = d(T, p, b), r = null, u = 0; u < M.length; u++) { + var i = M[u]; if (i.type == "quoted-string") { if (r != null && r.type == "quoted-string") { r.value = r.value + i.value, r.end = i.end; @@ -7568,7 +7568,7 @@ function ge(m) { let se = function() { let m, d = " ", E = ["string", "varchar2", "varchar", "vc", "char"]; var L = ["yn", "boolean", "bool"]; - function I(S, M, r) { + function T(S, M, r) { this.line = S, this.parent = r, this.children = [], r != null && r.children.push(this), this.fks = null, this.descendants = function() { var i = []; i.push(this); @@ -7591,21 +7591,21 @@ let se = function() { let P = this.children[h]; if (0 < P.children.length) continue; - let T = P.parseName().length; - 0 < P.indexOf("file") && (T += 9), i < T && (i = T); + let I = P.parseName().length; + 0 < P.indexOf("file") && (I += 9), i < I && (i = I); } var y = m.additionalColumns(); for (let P in y) { - let T = P.length; - i < T && (i = T); + let I = P.length; + i < I && (i = I); } return i; }; - function c(i) { + function u(i) { let t = i; return t = t.replace(/ timestamp with local time zone/gi, " tswltz"), t = t.replace(/ timestamp with time zone/gi, " tswtz"), t = t.replace(/ timestamp/gi, " ts"), t; } - this.content = c(M), this.comment, this.indexOf = function(i, t) { + this.content = u(M), this.comment, this.indexOf = function(i, t) { for (let s = 0; s < this.src.length; s++) { if (t && this.src[s].value.indexOf(i) == 0) return s; @@ -7631,17 +7631,17 @@ let se = function() { i = p(i, " d"); var y = i.indexOf("/"); 0 < y && (i = i.substring(0, y)), i = i.trim(), i = p(i, " integer"), i = p(i, " number"), i = p(i, " int"), i = p(i, " num"), i = p(i, " clob"), i = p(i, " blob"), i = p(i, " json"), i = p(i, " file"), i = p(i, " date"), i = p(i, " tstz"), i = p(i, " tswtz"), i = p(i, " tswltz"), i = p(i, " ts"), i = i.replace(/ vc\d+k/g, ""), i = i.replace(/ vc\(\d+\)/g, ""), i = i.replace(/ vc\d+/g, ""); - for (let T in E) { - let k = l.indexOf(" " + E[T]); + for (let I in E) { + let k = l.indexOf(" " + E[I]); if (0 < k) { - i = i.substring(0, k) + i.substring(k + E[T].length + 1); + i = i.substring(0, k) + i.substring(k + E[I].length + 1); break; } } - for (let T in L) { - let k = l.indexOf(" " + L[T]); + for (let I in L) { + let k = l.indexOf(" " + L[I]); if (0 < k) { - i = i.substring(0, k) + i.substring(k + L[T].length + 1); + i = i.substring(0, k) + i.substring(k + L[I].length + 1); break; } } @@ -7678,10 +7678,10 @@ let se = function() { break; } this.indexOf("phone_number") == 0 && (y = "number"); - let T = this.indexOf("num", !0); - 0 < T && (y = "number"); + let I = this.indexOf("num", !0); + 0 < I && (y = "number"); let k = this.indexOf(")"); - if (0 < T && 0 < k && (y += this.content.toLowerCase().substring(t[T + 1].begin, t[k].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value.startsWith("created") || t[0].value.startsWith("updated")) && (y = m.getOptionValue("Date Data Type").toLowerCase()), h < 0 && (0 < this.indexOf("clob") && (y = "clob"), (0 < this.indexOf("blob") || 0 < this.indexOf("file")) && (y = "blob"), 0 < this.indexOf("json") && (y = "clob check (" + this.parseName() + " is json)")), 0 < this.indexOf("tswltz") ? y = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : 0 < this.indexOf("tswtz") || 0 < this.indexOf("tstz") ? y = "TIMESTAMP WITH TIME ZONE".toLowerCase() : 0 < this.indexOf("ts") && (y = "TIMESTAMP".toLowerCase()), i) { + if (0 < I && 0 < k && (y += this.content.toLowerCase().substring(t[I + 1].begin, t[k].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value.startsWith("created") || t[0].value.startsWith("updated")) && (y = m.getOptionValue("Date Data Type").toLowerCase()), h < 0 && (0 < this.indexOf("clob") && (y = "clob"), (0 < this.indexOf("blob") || 0 < this.indexOf("file")) && (y = "blob"), 0 < this.indexOf("json") && (y = "clob check (" + this.parseName() + " is json)")), 0 < this.indexOf("tswltz") ? y = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : 0 < this.indexOf("tswtz") || 0 < this.indexOf("tstz") ? y = "TIMESTAMP WITH TIME ZONE".toLowerCase() : 0 < this.indexOf("ts") && (y = "TIMESTAMP".toLowerCase()), i) { if (0 < this.indexOf("fk") || 0 < this.indexOf("reference")) { const w = this.refId(); let D = "number", R = m.find(w); @@ -7715,13 +7715,13 @@ let se = function() { const l = K(s, this.parseName()), h = this.trimmedContent().toLowerCase(), y = h.indexOf("/check"); let P = h.lastIndexOf("/"); P == y && (P = h.length); - let T = this.trimmedContent().substr(y + 6, P - y - 6).trim(); - const k = Z(T, !1, !0, ""); + let I = this.trimmedContent().substr(y + 6, P - y - 6).trim(); + const k = Z(I, !1, !0, ""); let N = d; - r != null && (N = " ".repeat(r.maxChildNameLen())), this.children != null && 0 < this.children.length ? (k[0].value != "(" && (T = "( " + T + ")"), t += d + "constraint " + K(m.objPrefix(), l, "_ck"), t += " check " + T + `, + r != null && (N = " ".repeat(r.maxChildNameLen())), this.children != null && 0 < this.children.length ? (k[0].value != "(" && (I = "( " + I + ")"), t += d + "constraint " + K(m.objPrefix(), l, "_ck"), t += " check " + I + `, `) : k[0].value == "(" && k[k.length - 1].value == ")" ? (t += " constraint " + K(m.objPrefix(), l, "_ck") + ` -`, t += d + d + N + "check " + T) : (0 < T.indexOf(", ") ? T = T.replace(/, /g, i + "," + i) : 0 < T.indexOf(",") ? T = T.replace(/,/g, i + "," + i) : T = T.replace(/ /g, i + "," + i), t += " constraint " + K(m.objPrefix(), l, "_ck") + ` -`, t += d + d + N + "check (" + this.parseName() + " in (" + i + T + i + "))", t = t.replace(/''/gm, "'")); +`, t += d + d + N + "check " + I) : (0 < I.indexOf(", ") ? I = I.replace(/, /g, i + "," + i) : 0 < I.indexOf(",") ? I = I.replace(/,/g, i + "," + i) : I = I.replace(/ /g, i + "," + i), t += " constraint " + K(m.objPrefix(), l, "_ck") + ` +`, t += d + d + N + "check (" + this.parseName() + " in (" + i + I + i + "))", t = t.replace(/''/gm, "'")); } return t; }, this.isMany2One = function() { @@ -7786,7 +7786,11 @@ let se = function() { return null; }, this.getPkName = function() { let i = this.getGenIdColName(); - return i ?? this.getExplicitPkNode().parseName(); + if (i == null) { + let t = this.getExplicitPkNode(); + return t == null ? null : t.parseName(); + } + return i; }, this.toDDL = function() { if (this.parseType() == "view" || this.parseType() == "dv") return ""; @@ -7829,8 +7833,8 @@ let se = function() { } } for (let n in this.fks) { - let o = this.fks[n], u = "number", g = m.find(o), B = ""; - g != null && g.getExplicitPkNode() != null ? u = g.getExplicitPkNode().parseType((C) => !0) : g == null && (g = m.find(n), g.isMany2One() & !n.endsWith("_id") && (o = n, n = z(n), B = "_id")), y = d + " ".repeat(this.maxChildNameLen() - n.length), l += d + n + B + y + u + ` + let o = this.fks[n], c = "number", g = m.find(o), B = ""; + g != null && g.getExplicitPkNode() != null ? c = g.getExplicitPkNode().parseType((C) => !0) : g == null && (g = m.find(n), g.isMany2One() & !n.endsWith("_id") && (o = n, n = z(n), B = "_id")), y = d + " ".repeat(this.maxChildNameLen() - n.length), l += d + n + B + y + c + ` `, l += d + d + " ".repeat(this.maxChildNameLen()) + "constraint " + h + "_" + n + `_fk `; let f = ""; @@ -7865,12 +7869,12 @@ let se = function() { continue; if (l += d + o.toDDL([]) + `, `, 0 < o.indexOf("file")) { - const u = o.parseName().toUpperCase(); - let g = u + "_FILENAME", B = d + " ".repeat(this.maxChildNameLen() - g.length); + const c = o.parseName().toUpperCase(); + let g = c + "_FILENAME", B = d + " ".repeat(this.maxChildNameLen() - g.length); l += d + g.toLowerCase() + B + "varchar2(255" + m.semantics() + `), -`, g = u + "_MIMETYPE", B = d + " ".repeat(this.maxChildNameLen() - g.length), l += d + g.toLowerCase() + B + "varchar2(255" + m.semantics() + `), -`, g = u + "_CHARSET", B = d + " ".repeat(this.maxChildNameLen() - g.length), l += d + g.toLowerCase() + B + "varchar2(255" + m.semantics() + `), -`, g = u + "_LASTUPD", B = d + " ".repeat(this.maxChildNameLen() - g.length), l += d + g.toLowerCase() + B + m.getOptionValue("Date Data Type").toLowerCase() + `, +`, g = c + "_MIMETYPE", B = d + " ".repeat(this.maxChildNameLen() - g.length), l += d + g.toLowerCase() + B + "varchar2(255" + m.semantics() + `), +`, g = c + "_CHARSET", B = d + " ".repeat(this.maxChildNameLen() - g.length), l += d + g.toLowerCase() + B + "varchar2(255" + m.semantics() + `), +`, g = c + "_LASTUPD", B = d + " ".repeat(this.maxChildNameLen() - g.length), l += d + g.toLowerCase() + B + m.getOptionValue("Date Data Type").toLowerCase() + `, `; } } @@ -7885,8 +7889,8 @@ let se = function() { let n = m.getOptionValue("createdcol"), o = d + " ".repeat(this.maxChildNameLen() - n.length); l += d + n + o + m.getOptionValue("Date Data Type").toLowerCase() + ` not null, `; - let u = m.getOptionValue("createdbycol"); - o = d + " ".repeat(this.maxChildNameLen() - u.length), l += d + u + o + "varchar2(255" + m.semantics() + `) not null, + let c = m.getOptionValue("createdbycol"); + o = d + " ".repeat(this.maxChildNameLen() - c.length), l += d + c + o + "varchar2(255" + m.semantics() + `) not null, `; let g = m.getOptionValue("updatedcol"); o = d + " ".repeat(this.maxChildNameLen() - g.length), l += d + g + o + m.getOptionValue("Date Data Type").toLowerCase() + ` not null, @@ -7895,9 +7899,9 @@ let se = function() { o = d + " ".repeat(this.maxChildNameLen() - B.length), l += d + B + o + "varchar2(255" + m.semantics() + `) not null, `; } - var T = m.additionalColumns(); - for (let n in T) { - var k = T[n]; + var I = m.additionalColumns(); + for (let n in I) { + var k = I[n]; y = d + " ".repeat(this.maxChildNameLen() - n.length), l += d + n.toUpperCase() + y + k + ` not null, `; } @@ -7956,71 +7960,77 @@ let se = function() { if (this.parseType() != "view" && this.parseType() != "dv") return ""; if (m.optionEQvalue("Duality View", "yes") || this.parseType() == "dv") - return this.generateDualityView(); + try { + return this.generateDualityView(); + } catch (c) { + if (c.message == this.one2many2oneUnsupoported) + return ""; + throw c; + } let i = m.objPrefix() + this.parseName(); var s = this.trimmedContent().split(" "), l = "create or replace view " + i + ` as `; l += `select `; for (var h = 0, y = 2; y < s.length; y++) { - let u = m.find(s[y]); - if (u == null) + let c = m.find(s[y]); + if (c == null) return ""; var P = (s[y] + ".id").length; h < P && (h = P); - for (var T = 0; T < u.children.length; T++) { - var k = u.children[T]; + for (var I = 0; I < c.children.length; I++) { + var k = c.children[I]; P = (s[y] + "." + k.parseName()).length, h < P && (h = P); } } var N = {}; - for (let u = 2; u < s.length; u++) { - let g = m.find(s[u]); + for (let c = 2; c < s.length; c++) { + let g = m.find(s[c]); if (g != null) for (let B = 0; B < g.children.length; B++) { var w = g.children[B].parseName(), D = N[w]; D == null && (D = 0), N[w] = D + 1; } } - for (let u = 2; u < s.length; u++) { - let g = m.find(s[u]); + for (let c = 2; c < s.length; c++) { + let g = m.find(s[c]); if (g == null) continue; - let B = " ".repeat(h - (s[u] + ".id").length); - l += d + s[u] + ".id" + d + B + z(s[u]) + `_id, + let B = " ".repeat(h - (s[c] + ".id").length); + l += d + s[c] + ".id" + d + B + z(s[c]) + `_id, `; for (let v = 0; v < g.children.length; v++) { let C = g.children[v]; if (C.children.length == 0) { - B = " ".repeat(h - (s[u] + "." + C.parseName()).length); + B = " ".repeat(h - (s[c] + "." + C.parseName()).length); var R = ""; - 1 < N[C.parseName()] && (R = z(s[u]) + "_"), l += d + s[u] + "." + C.parseName() + d + B + R + C.parseName() + `, + 1 < N[C.parseName()] && (R = z(s[c]) + "_"), l += d + s[c] + "." + C.parseName() + d + B + R + C.parseName() + `, `; } } let f = g.trimmedContent().toUpperCase(); if (m.optionEQvalue("rowVersion", "yes") || 0 < f.indexOf("/ROWVERSION")) { let v = d + " ".repeat(g.maxChildNameLen() - 11); - l += d + s[u] + ".row_version" + z(v + s[u]) + `_row_version, + l += d + s[c] + ".row_version" + z(v + s[c]) + `_row_version, `; } if (m.optionEQvalue("rowkey", "yes") || 0 < f.indexOf("/ROWKEY")) { let v = d + " ".repeat(g.maxChildNameLen() - 7); - l += d + s[u] + ".ROW_KEY" + z(v + s[u]) + `_ROW_KEY, + l += d + s[c] + ".ROW_KEY" + z(v + s[c]) + `_ROW_KEY, `; } if (m.optionEQvalue("Audit Columns", "yes") || 0 < f.indexOf("/AUDITCOLS") || 0 < f.indexOf("/AUDIT COL")) { let v = m.getOptionValue("createdcol"), C = d + " ".repeat(g.maxChildNameLen() - v.length); - l += d + s[u] + "." + v + z(C + s[u]) + "_" + v + `, + l += d + s[c] + "." + v + z(C + s[c]) + "_" + v + `, `; let A = m.getOptionValue("createdbycol"); - C = d + " ".repeat(g.maxChildNameLen() - A.length), l += d + s[u] + "." + A + z(C + s[u]) + "_" + A + `, + C = d + " ".repeat(g.maxChildNameLen() - A.length), l += d + s[c] + "." + A + z(C + s[c]) + "_" + A + `, `; let H = m.getOptionValue("updatedcol"); - C = d + " ".repeat(g.maxChildNameLen() - H.length), l += d + s[u] + "." + H + z(C + s[u]) + "_" + H + `, + C = d + " ".repeat(g.maxChildNameLen() - H.length), l += d + s[c] + "." + H + z(C + s[c]) + "_" + H + `, `; let F = m.getOptionValue("updatedbycol"); - C = d + " ".repeat(g.maxChildNameLen() - F.length), l += d + s[u] + "." + F + z(C + s[u]) + "_" + F + `, + C = d + " ".repeat(g.maxChildNameLen() - F.length), l += d + s[c] + "." + F + z(C + s[c]) + "_" + F + `, `; } } @@ -8028,20 +8038,20 @@ let se = function() { `) == l.length - 2 && (l = l.substr(0, l.length - 2) + ` `), l += `from `; - for (let u = 2; u < s.length; u++) { - let g = " ".repeat(h - s[u].length); - var _ = s[u]; - m.objPrefix() != null && m.objPrefix() != "" && (_ = m.objPrefix() + s[u] + g + s[u]), l += d + _ + `, + for (let c = 2; c < s.length; c++) { + let g = " ".repeat(h - s[c].length); + var _ = s[c]; + m.objPrefix() != null && m.objPrefix() != "" && (_ = m.objPrefix() + s[c] + g + s[c]), l += d + _ + `, `; } l.lastIndexOf(`, `) == l.length - 2 && (l = l.substr(0, l.length - 2) + ` `), l += `where `; - for (let u = 2; u < s.length; u++) + for (let c = 2; c < s.length; c++) for (let g = 2; g < s.length; g++) - if (g != u) { - var O = s[u], G = s[g], e = m.find(O); + if (g != c) { + var O = s[c], G = s[g], e = m.find(O); if (e != null) { var a = m.find(G); if (a != null) @@ -8111,9 +8121,9 @@ end; `, s += ` end if; `, h = !0); for (var P = 0; P < this.children.length; P++) { - var T = this.children[P]; + var I = this.children[P]; let D = null; - 0 < T.content.indexOf("/lower") ? D = "LOWER".toLowerCase() : 0 < T.content.indexOf("/upper") && (D = "UPPER".toLowerCase()), D != null && (s += " :new." + T.parseName().toLowerCase() + " := " + D + "(:new." + T.parseName().toLowerCase() + `); + 0 < I.content.indexOf("/lower") ? D = "LOWER".toLowerCase() : 0 < I.content.indexOf("/upper") && (D = "UPPER".toLowerCase()), D != null && (s += " :new." + I.parseName().toLowerCase() + " := " + D + "(:new." + I.parseName().toLowerCase() + `); `, h = !0); } (m.optionEQvalue("Row Version Number", "yes") || 0 < l.indexOf("/ROWVERSION")) && (s += ` if inserting then @@ -8150,9 +8160,9 @@ end; `; l += d + d + "p_id in number" + t; for (var h in this.fks) { - let P = this.fks[h], T = "number", k = m.find(P); - k != null && k.getExplicitPkNode() != null && (T = k.getExplicitPkNode().parseType((N) => !0)), l += `, -`, l += d + d + "P_" + h + " " + s + " " + T + t; + let P = this.fks[h], I = "number", k = m.find(P); + k != null && k.getExplicitPkNode() != null && (I = k.getExplicitPkNode().parseType((N) => !0)), l += `, +`, l += d + d + "P_" + h + " " + s + " " + I + t; } for (let P = 0; P < this.children.length; P++) { var y = this.children[P]; @@ -8171,13 +8181,13 @@ end; i == "insert" && (l = d + d + "insert into " + t + ` ( `, l += d + d + d + "id"), i == "update" && (l = d + d + "update " + t + ` set `, l += d + d + d + "id = p_id"), s += l; - for (let T in this.fks) { - let k = this.fks[T], N = m.find(k); + for (let I in this.fks) { + let k = this.fks[I], N = m.find(k); N != null && N.getExplicitPkNode() != null && N.getExplicitPkNode().parseType((D) => !0), (i == "insert" || i == "update") && (s += `, `); - let w = d + d + d + "P_" + T + " := c1." + T + `; + let w = d + d + d + "P_" + I + " := c1." + I + `; `; - i == "insert" && (w = d + d + d + T), i == "update" && (w = d + d + d + T + " = P_" + T + ` + i == "insert" && (w = d + d + d + I), i == "update" && (w = d + d + d + I + " = P_" + I + ` `), s += w; } for (var h = 0; h < this.children.length; h++) { @@ -8186,20 +8196,20 @@ end; continue; (i == "insert" || i == "update") && (s += `, `); - let T = d + d + d + "P_" + y.parseName().toLowerCase() + " := c1." + y.parseName().toLowerCase() + `; + let I = d + d + d + "P_" + y.parseName().toLowerCase() + " := c1." + y.parseName().toLowerCase() + `; `; - i == "insert" && (T = d + d + d + y.parseName().toLowerCase()), i == "update" && (T = d + d + d + y.parseName().toLowerCase() + " = P_" + y.parseName().toLowerCase() + ` -`), s += T; + i == "insert" && (I = d + d + d + y.parseName().toLowerCase()), i == "update" && (I = d + d + d + y.parseName().toLowerCase() + " = P_" + y.parseName().toLowerCase() + ` +`), s += I; } if (i == "insert") { s += ` ` + d + d + `) values ( `, s += d + d + d + "p_id"; - for (let T in this.fks) + for (let I in this.fks) s += `, -`, s += d + d + d + "p_" + T; - for (let T = 0; T < this.children.length; T++) { - let k = this.children[T]; +`, s += d + d + d + "p_" + I; + for (let I = 0; I < this.children.length; I++) { + let k = this.children[I]; k.refId() == null && k.children.length == 0 && (s += `, `, s += d + d + d + "p_" + k.parseName()); } @@ -8305,14 +8315,19 @@ is O.push(G); if (t != null && _ != null) { const G = _.getPkName(); + if (G == null) + continue; let e = t[G]; e != null && (O = [], O[0] = e); } if (N != null) { let G = N[R]; if (G != null) { - let e = G[_.getPkName()]; - e != null && (O = [], O[0] = e); + const e = _.getPkName(); + if (e == null) + continue; + let a = G[e]; + a != null && (O = [], O[0] = a); } } s += d + oe(m.getOptionValue("Data Language"), le(l, z(R) + "_id", "INTEGER", O)) + `, @@ -8349,9 +8364,9 @@ is s != "" && (s += `commit; `); - let T = this.getGenIdColName(); - T != null && 1 < P && !m.optionEQvalue("pk", "guid") && (s += "alter table " + l + ` -modify ` + T + " generated always as identity restart start with " + (P + 1) + `; + let I = this.getGenIdColName(); + I != null && 1 < P && !m.optionEQvalue("pk", "guid") && (s += "alter table " + l + ` +modify ` + I + " generated always as identity restart start with " + (P + 1) + `; `); for (let k = 0; k < this.children.length; k++) { @@ -8370,7 +8385,9 @@ modify ` + T + " generated always as identity restart start with " + (P + 1) + return !1; var t = i.slice(0, -3); return this.children.some((s) => s.children.length > 0 && s.parseName() == t && !s.isArray()); - }, this.generateSelectJsonTopDown = function(i) { + }, this.generateSelectJsonBottomUp = function(i) { + throw new Error("generateSelectJsonBottomUp() not implemented yet"); + }, this.one2many2oneUnsupoported = "one to many to one is not supported", this.generateSelectJsonTopDown = function(i) { var t = this.parseName(); let s = ""; this.getExplicitPkNode == null && (s += i + "'" + this.getGenIdColName() + "' : " + t + "." + this.getGenIdColName() + `, @@ -8382,14 +8399,16 @@ modify ` + T + " generated always as identity restart start with " + (P + 1) + continue; s += i + "'" + y + "' : " + t + "." + y; } else { - s += i + "'" + y + `' : [ + if (s += i + "'" + y + `' : [ `, h.isMany2One(), i += " ", s += i + `select JSON { -`, s += h.generateSelectJsonTopDown(i + " "), s += i + " WITH NOCHECK } from " + y + ` with INSERT UPDATE +`, this.isMany2One()) + throw new Error(this.one2many2oneUnsupoported); + s += h.generateSelectJsonTopDown(i + " "), s += i + " WITH NOCHECK } from " + y + ` with INSERT UPDATE `; let k = null; for (var P in h.fks) { - var T = h.fks[P]; - if (T == t) { + var I = h.fks[P]; + if (I == t) { k = P; break; } @@ -8411,8 +8430,7 @@ modify ` + T + " generated always as identity restart start with " + (P + 1) + var s = "", l = m.find(t[2]); return l != null && (s += "create or replace json relational duality view " + t[1] + ` as `, s += `select JSON { -`, s += // tbl.isLeaf()? tbl.generateSelectJsonBottomUp(' ') : what if middle? - l.generateSelectJsonTopDown(" "), s += "} from " + l.parseName() + ` with INSERT UPDATE DELETE; +`, s += l.isMany2One() ? l.generateSelectJsonBottomUp(" ") : l.generateSelectJsonTopDown(" "), s += "} from " + l.parseName() + ` with INSERT UPDATE DELETE; `), s; }; @@ -8420,7 +8438,7 @@ modify ` + T + " generated always as identity restart start with " + (P + 1) + function x(S) { m = S; const M = S.input; - let r = [], c = []; + let r = [], u = []; const i = Z(M + ` `, !0, !0, ""); m.data = null; @@ -8434,29 +8452,29 @@ modify ` + T + " generated always as identity restart start with " + (P + 1) + s = "", l++; continue; } - let T = new I(l, s, null), k = !1; + let I = new T(l, s, null), k = !1; for (let N = 0; N < r.length; N++) { let w = r[N]; - if (T.apparentDepth() <= w.apparentDepth()) + if (I.apparentDepth() <= w.apparentDepth()) if (0 < N) { let D = r[N - 1]; - T = new I(l, s, D), r[N] = T, r = r.slice(0, N + 1), k = !0; + I = new T(l, s, D), r[N] = I, r = r.slice(0, N + 1), k = !0; break; } else - r[0] = T, r = r.slice(0, 1), c.push(T), k = !0; + r[0] = I, r = r.slice(0, 1), u.push(I), k = !0; } if (!k) { if (0 < r.length) { let N = r[r.length - 1]; - T = new I(l, s, N); + I = new T(l, s, N); } - r.push(T), T.apparentDepth() == 0 && c.push(T); + r.push(I), I.apparentDepth() == 0 && u.push(I); } - if (T.isMany2One()) { - const N = T.parent; + if (I.isMany2One()) { + const N = I.parent; N.fks == null && (N.fks = []); - let w = T.refId(); - w == null && (w = T.parseName()), N.fks[T.parseName() + "_id"] = w; + let w = I.refId(); + w == null && (w = I.parseName()), N.fks[I.parseName() + "_id"] = w; } l++, s = ""; continue; @@ -8474,17 +8492,17 @@ modify ` + T + " generated always as identity restart start with " + (P + 1) + S.setOptions(t), t = null, s = ""; continue; } - let T = null, k = null; + let I = null, k = null; for (let N in P) { const w = P[N]; - if (T == null && w.value == "document") { - T = ""; + if (I == null && w.value == "document") { + I = ""; continue; } - if (T != null) { - if (T += w.value, T == "=") + if (I != null) { + if (I += w.value, I == "=") continue; - let D = T.substring(1); + let D = I.substring(1); try { m.data = JSON.parse(D), t = null, s = ""; continue e; @@ -8513,21 +8531,21 @@ modify ` + T + " generated always as identity restart start with " + (P + 1) + s += y.value; } } - return c; + return u; } function p(S, M) { let r = M.toLowerCase(); return 0 < S.indexOf(r) && S.indexOf(r) == S.length - r.length ? S.substring(0, S.length - r.length) : S.trim(); } - function b(S, M, r, c) { + function b(S, M, r, u) { let i = []; if (S == null || typeof S != "object") return null; let t = S[r]; - t != null && M == c && i.push(t); + t != null && M == u && i.push(t); for (var s in S) { let l = S[s]; - t = b(l, s, r, c), t != null && (i = i.concat(t)); + t = b(l, s, r, u), t != null && (i = i.concat(t)); } return i; } @@ -8536,25 +8554,25 @@ modify ` + T + " generated always as identity restart start with " + (P + 1) + var Ce = function() { function m() { this.aggrCounts = {}, this.calculateCounts = function(E, L) { - let I = this.aggrSizes[E]; - I == null && (I = 0); + let T = this.aggrSizes[E]; + T == null && (T = 0); let x = 1; - L.length != null && (x = L.length), this.aggrSizes[E] = I + x; + L.length != null && (x = L.length), this.aggrSizes[E] = T + x; for (let p in L) - typeof L[p] == "object" && this.calculateCounts(p, L[p]); - }, this.introspect = function(E, L, I, x) { - if (I == 0) { - if (this.aggrSizes = {}, E == null) + L[p] != null && typeof L[p] == "object" && this.calculateCounts(p, L[p]); + }, this.introspect = function(E, L, T, x) { + if (T == 0) { + if (this.aggrSizes = {}, T == 0) for (let S in L) { - let M = ["_address", "_id", "_name", "Id"], r = !1, c = ""; + let M = ["_address", "_id", "_name", "Id"], r = !1, u = ""; for (let i = 0; i < M.length; i++) { const t = M[i]; if (S.endsWith(t)) { - c += S.substring(0, S.length - t.length), r = !0; + u += S.substring(0, S.length - t.length), r = !0; break; } } - r || (c += "unnamed_entity"), E = c; + !r && E == null ? E = "unnamed_entity" : r && (E = u); break; } this.calculateCounts(E, L); @@ -8562,7 +8580,7 @@ var Ce = function() { let p = ""; x != null && x && (p = ">"); let b = ` -` + d(I) + p + E; +` + d(T) + p + E; if (typeof L == "number" && (b += " num", E.endsWith("_id") || E.endsWith("Id"))) return b += " /pk", b; if (typeof L == "object") { @@ -8570,7 +8588,7 @@ var Ce = function() { for (let M in L) { 1 <= M && console.log("1 <= property !"); const r = L[M]; - return this.introspect(E, r, I, !1); + return this.introspect(E, r, T, !1); } else if (E != "") { let M = this.aggrSizes[E]; @@ -8581,17 +8599,17 @@ var Ce = function() { const r = L[M]; if (M != null) { const t = z(E), s = M.toLowerCase(); - if (E != null && t + "_id" == s && 0 < I && (S = M), t + "_id" == s) + if (E != null && t + "_id" == s && 0 < T && (S = M), t + "_id" == s) continue; } - let c = typeof r == "object"; - const i = this.introspect(M, r, I + 1, c); + let u = typeof r == "object"; + const i = this.introspect(M, r, T + 1, u); b += i; } S != "" && (b += ` -` + d(I) + S); +` + d(T) + S); } - return I == 0 && (b += ` + return T == 0 && (b += ` dv ` + E + "_dv " + E, b += ` @@ -8605,7 +8623,7 @@ dv ` + E + "_dv " + E, b += ` }; } function d(E) { - for (var L = "", I = 0; I < E; I++) + for (var L = "", T = 0; T < E; T++) L = L + " "; return L; } @@ -8624,10 +8642,10 @@ const ve = function() { const r = S.split(` `); M = M.concat(x(r)); - const c = b.descendants(); - for (let i = 0; i < c.length; i++) { - const t = c[i]; - if (b.optionEQvalue("genpk", !0) && c[i].parseName() == "id") { + const u = b.descendants(); + for (let i = 0; i < u.length; i++) { + const t = u[i]; + if (b.optionEQvalue("genpk", !0) && u[i].parseName() == "id") { const h = t.content.toLowerCase().indexOf("id"); M.push(new m(q.duplicateId, new d(t.line, h))); continue; @@ -8644,7 +8662,7 @@ const ve = function() { M.push(new m(q.invalidDatatype, new d(t.line, h))); continue; } - M = M.concat(L(b, t)), M = M.concat(I(b, t)); + M = M.concat(L(b, t)), M = M.concat(T(b, t)); } return M; } @@ -8653,18 +8671,18 @@ const ve = function() { if (b.parseType() == "view") { var r = $(M, " "); let t = 0; - for (var c = 0; c < r.length; c++) - if (t += r[c].length, r[c] != " " && r[c] != "view" && c != 1) { - var i = p.find(r[c]); + for (var u = 0; u < r.length; u++) + if (t += r[u].length, r[u] != " " && r[u] != "view" && u != 1) { + var i = p.find(r[u]); i == null && S.push(new m( - q.undefinedObject + r[c], - new d(b.line, t - r[c].length) + q.undefinedObject + r[u], + new d(b.line, t - r[u].length) )); } } return S; } - function I(p, b) { + function T(p, b) { var S = [], M = b.content.toLowerCase(); if (0 < M.indexOf("/fk") || 0 < M.indexOf("/reference")) { let i = $(M, " "), t = 0, s = !1; @@ -8675,8 +8693,8 @@ const ve = function() { continue; } if (s) { - var c = p.find(i[r]); - if (c == null) { + var u = p.find(i[r]); + if (u == null) { S.push(new m( q.undefinedObject + i[r], new d(b.line, t - i[r].length) @@ -8690,7 +8708,7 @@ const ve = function() { } function x(p) { for (var b = [], S = Ae(p), M = 1; M < p.length; M++) { - var r = p[M - 1], c = p[M], i = re(r), t = re(c); + var r = p[M - 1], u = p[M], i = re(r), t = re(u); t != 0 && i < t && t < i + S && b.push( new m( q.misalignedAttribute + S, @@ -8708,27 +8726,27 @@ function Ae(m) { var L = m[E]; d[E] = re(L); } - let I = []; + let T = []; for (let p = 0; p < d.length; p++) { let b = ye(d, p); if (b != null) { - let S = I[d[p] - d[b]]; - S == null && (S = 0), I[d[p] - d[b]] = S + 1; + let S = T[d[p] - d[b]]; + S == null && (S = 0), T[d[p] - d[b]] = S + 1; } } let x = null; - for (let p in I) - (x == null || I[x] <= I[p]) && (x = p); + for (let p in T) + (x == null || T[x] <= T[p]) && (x = p); return x; } function re(m) { for (var d = m.split(/ |\t/), E = 0, L = 0; L < d.length; L++) { - var I = d[L]; - if (I == " " && (E += 4), I == "") { + var T = d[L]; + if (T == " " && (E += 4), T == "") { E++; continue; } - if (!/[^.a-zA-Z0-9_"]/.test(I)) + if (!/[^.a-zA-Z0-9_"]/.test(T)) return E; } return 0; @@ -8781,10 +8799,10 @@ const q = { function d(L) { if (L == null) return null; - let I = L; - return typeof I == "string" && (I = I.toLowerCase()), I == "yes" ? !0 : I == "no" ? !1 : I == "y" ? !0 : I == "n" ? !1 : I == "true" ? !0 : I == "false" ? !1 : I == ne.toLowerCase() ? "identity" : I == ce.toLowerCase() ? "guid" : I == ue.toLowerCase() ? "tswtz" : I == me.toLowerCase() ? "tswltz" : I; + let T = L; + return typeof T == "string" && (T = T.toLowerCase()), T == "yes" ? !0 : T == "no" ? !1 : T == "y" ? !0 : T == "n" ? !1 : T == "true" ? !0 : T == "false" ? !1 : T == ne.toLowerCase() ? "identity" : T == ce.toLowerCase() ? "guid" : T == ue.toLowerCase() ? "tswtz" : T == me.toLowerCase() ? "tswltz" : T; } - function E(L, I) { + function E(L, T) { this.ddl = null, this.erd = null, this.errors = null, this.options = JSON.parse(JSON.stringify(m)), this.input = L, this.getOptionValue = function(p) { const b = p.toLowerCase(); let S = this.options[b]; @@ -8842,9 +8860,9 @@ const q = { let t = r[i]; t.type == "identifier" && t.value != "true" && t.value != "false" && t.value != "null" ? M += '"' + t.value + '"' : M += t.value; } - let c = JSON.parse(M); - for (let i in c) - this.setOptionValue(i.toLowerCase(), c[i]); + let u = JSON.parse(M); + for (let i in u) + this.setOptionValue(i.toLowerCase(), u[i]); }, this.descendants = function() { for (var p = [], b = 0; b < this.forest.length; b++) p = p.concat(this.forest[b].descendants()); @@ -8854,8 +8872,8 @@ const q = { if (b == null) return p; for (var S = b.split(","), M = 0; M < S.length; M++) { - var r = S[M].trim(), c = "VARCHAR2(4000)", i = r.indexOf(" "); - 0 < i && (c = r.substring(i + 1).toUpperCase(), r = r.substring(0, i)), p[r] = c; + var r = S[M].trim(), u = "VARCHAR2(4000)", i = r.indexOf(" "); + 0 < i && (u = r.substring(i + 1).toUpperCase(), r = r.substring(0, i)), p[r] = u; } return p; }, this.objPrefix = function(p) { @@ -8865,7 +8883,7 @@ const q = { return this.getOptionValue("prefix") != null && (S = this.getOptionValue("prefix")), b = b + S, S != "" && (b = b + "_"), b.toLowerCase(); }; let x = ""; - 0 < L.toLowerCase().indexOf("overridesettings") && se(this), I != null && this.optionEQvalue("overrideSettings", !1) && (x = "# settings = " + I + ` + 0 < L.toLowerCase().indexOf("overridesettings") && se(this), T != null && this.optionEQvalue("overrideSettings", !1) && (x = "# settings = " + T + ` `), this.input = x + L, this.forest = se(this), this.getERD = function() { if (this.erd != null) @@ -8874,27 +8892,27 @@ const q = { for (let r = 0; r < p.length; r++) { if (p[r].parseType() != "table") continue; - let c = { name: this.objPrefix("no schema") + p[r].parseName("") }, i = this.getOptionValue("schema"); - i == "" && (i = null), c.schema = i, c.columns = [], b.items.push(c); + let u = { name: this.objPrefix("no schema") + p[r].parseName("") }, i = this.getOptionValue("schema"); + i == "" && (i = null), u.schema = i, u.columns = [], b.items.push(u); let t = p[r].getGenIdColName(); - t != null && c.columns.push({ name: t, datatype: "number" }); + t != null && u.columns.push({ name: t, datatype: "number" }); for (let l = 0; l < p[r].children.length; l++) { let h = p[r].children[l]; - if (h.parseType() != "table" && (c.columns.push({ name: h.parseName(""), datatype: h.parseType((y) => !0) }), 0 < h.indexOf("file"))) { + if (h.parseType() != "table" && (u.columns.push({ name: h.parseName(""), datatype: h.parseType((y) => !0) }), 0 < h.indexOf("file"))) { const y = h.parseName(); - c.columns.push({ name: y + "_filename", datatype: "varchar2(255" + this.semantics() + ")" }), c.columns.push({ name: y + "_mimetype", datatype: "varchar2(255" + this.semantics() + ")" }), c.columns.push({ name: y + "_charset", datatype: "varchar2(255" + this.semantics() + ")" }), c.columns.push({ name: y + "_lastupd", datatype: "date" }); + u.columns.push({ name: y + "_filename", datatype: "varchar2(255" + this.semantics() + ")" }), u.columns.push({ name: y + "_mimetype", datatype: "varchar2(255" + this.semantics() + ")" }), u.columns.push({ name: y + "_charset", datatype: "varchar2(255" + this.semantics() + ")" }), u.columns.push({ name: y + "_lastupd", datatype: "date" }); } } const s = p[r].trimmedContent().toUpperCase(); - if ((this.optionEQvalue("rowkey", !0) || 0 < s.indexOf("/ROWKEY")) && c.columns.push({ name: "row_key", datatype: "varchar2(30 char)" }), (this.optionEQvalue("rowVersion", "yes") || 0 < s.indexOf("/ROWVERSION")) && c.columns.push({ name: "row_version", datatype: "integer" }), this.optionEQvalue("Audit Columns", "yes") || 0 < s.indexOf("/AUDITCOLS")) { + if ((this.optionEQvalue("rowkey", !0) || 0 < s.indexOf("/ROWKEY")) && u.columns.push({ name: "row_key", datatype: "varchar2(30 char)" }), (this.optionEQvalue("rowVersion", "yes") || 0 < s.indexOf("/ROWVERSION")) && u.columns.push({ name: "row_version", datatype: "integer" }), this.optionEQvalue("Audit Columns", "yes") || 0 < s.indexOf("/AUDITCOLS")) { let l = this.getOptionValue("createdcol"); - c.columns.push({ name: l, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); + u.columns.push({ name: l, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); let h = this.getOptionValue("createdbycol"); - c.columns.push({ name: h, datatype: "varchar2(255" + this.semantics() + ")" }); + u.columns.push({ name: h, datatype: "varchar2(255" + this.semantics() + ")" }); let y = this.getOptionValue("updatedcol"); - c.columns.push({ name: y, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); + u.columns.push({ name: y, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); let P = this.getOptionValue("updatedbycol"); - c.columns.push({ name: P, datatype: "varchar2(255" + this.semantics() + ")" }); + u.columns.push({ name: P, datatype: "varchar2(255" + this.semantics() + ")" }); } var S = this.additionalColumns(); for (let l in S) { @@ -8907,8 +8925,8 @@ const q = { for (let r = 0; r < p.length; r++) if (p[r].parseType() == "table") { p[r].toDDL(); - for (let c in p[r].fks) { - let i = p[r].fks[c], t = this.find(i); + for (let u in p[r].fks) { + let i = p[r].fks[u], t = this.find(i); if (t == null) continue; let s = "id"; @@ -8916,7 +8934,7 @@ const q = { source: this.objPrefix() + i, source_id: s, target: this.objPrefix() + p[r].parseName(""), - target_id: c + target_id: u }); } } @@ -8927,8 +8945,8 @@ const q = { var p = "", b = this.descendants(); if (this.optionEQvalue("Include Drops", "yes")) for (let r = 0; r < b.length; r++) { - let c = b[r].generateDrop(); - c != "" && (p += c); + let u = b[r].generateDrop(); + u != "" && (p += u); } if (this.optionEQvalue("rowkey", !0)) p += `create sequence row_key_seq; @@ -8950,39 +8968,39 @@ const q = { `; let S = 0; for (let r = 0; r < b.length; r++) { - let c = b[r].generateTrigger(); - c != "" && (S++ == 0 && (p += `-- triggers -`), p += c + ` + let u = b[r].generateTrigger(); + u != "" && (S++ == 0 && (p += `-- triggers +`), p += u + ` `); } S = 0; for (let r = 0; r < b.length; r++) { - let c = b[r].restEnable(); - c != "" && (p += c + ` + let u = b[r].restEnable(); + u != "" && (p += u + ` `); } S = 0; for (let r = 0; r < b.length; r++) { if (this.optionEQvalue("api", !1) && b[r].trimmedContent().toLowerCase().indexOf("/api") < 0) continue; - let c = b[r].generateTAPI(); - c != "" && (S++ == 0 && (p += `-- APIs -`), p += c + ` + let u = b[r].generateTAPI(); + u != "" && (S++ == 0 && (p += `-- APIs +`), p += u + ` `); } S = 0; for (let r = 0; r < this.forest.length; r++) { - let c = this.forest[r].generateView(); - c != "" && (S++ == 0 && (p += `-- create views -`), p += c + ` + let u = this.forest[r].generateView(); + u != "" && (S++ == 0 && (p += `-- create views +`), p += u + ` `); } S = 0; for (let r = 0; r < this.forest.length; r++) { - let c = this.forest[r].generateData(this.data); - c != "" && (S++ == 0 && (p += `-- load data + let u = this.forest[r].generateData(this.data); + u != "" && (S++ == 0 && (p += `-- load data -`), p += c + ` +`), p += u + ` `); } S = 0, p += `-- Generated by Quick SQL ${this.version()} ` + (/* @__PURE__ */ new Date()).toLocaleString() + ` @@ -9007,9 +9025,9 @@ const q = { } return E; }(); -function Me(m) { - const d = JSON.parse(m); - return Ce.introspect(null, d, 0); +function Me(m, d) { + const E = JSON.parse(m); + return Ce.introspect(d, E, 0); } function Te(m, d) { return new j(m, d).getERD(); diff --git a/dist/quick-sql.umd.cjs b/dist/quick-sql.umd.cjs index 5563a59..019bb4b 100644 --- a/dist/quick-sql.umd.cjs +++ b/dist/quick-sql.umd.cjs @@ -1,43 +1,43 @@ -(function(V,W){typeof exports=="object"&&typeof module<"u"?W(exports):typeof define=="function"&&define.amd?define(["exports"],W):(V=typeof globalThis<"u"?globalThis:V||self,W(V.quickSQL={}))})(this,function(V){"use strict";function W(m){return m==null?m:m.toUpperCase().endsWith("IES")?m.substring(0,m.length-3)+"y":m.toUpperCase().endsWith("ES")||m.toUpperCase().endsWith("S")?m.substring(0,m.length-1):m}function Ce(m,d){let E='"';if(m==null)return null;let L=!1;const I="$#_ ";if(!m.startsWith(E)&&!L){const x=m;if(x.length>0&&"0"<=x[0]&&x[0]<="9")L=!0;else for(let p in x){const b=x[p];if(I.indexOf(b)<0&&(b<"0"||"9""u"&&(e[n]=a[n]);return e}function i(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var s=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?s=btoa:typeof Buffer=="function"&&(s=function(a){return new Buffer(a).toString("base64")})})(),r.prototype.bool=function(e){return e=c(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100o,"Chance: Max specified is out of range with fixed. Max should be, at most, "+o),e=c(e,{min:u,max:o}),a=this.integer({min:e.min*n,max:e.max*n});var g=(a/n).toFixed(e.fixed);return parseFloat(g)},r.prototype.integer=function(e){return e=c(e,{min:L,max:E}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},r.prototype.natural=function(e){if(e=c(e,{min:0,max:E}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),o=e.exclude.sort();for(var u in o){if(ne.max,"Chance: Min cannot be greater than Max.");var a=k.primes[k.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&k.primes.push(n);var o=k.primes.filter(function(u){return u>=e.min&&u<=e.max});return this.pick(o)},r.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},r.prototype.hex=function(e){e=c(e,{min:0,max:E,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},r.prototype.letter=function(e){e=c(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},r.prototype.string=function(e){e=c(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function h(e){this.c=e}h.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function y(e){this.c=e}y.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:p})},a:function(e){return e.character({pool:x})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function P(e){for(var a=[],n="identity",o=0;o"u")throw new S("Sorry, the buffer() function is not supported on your platform");e=c(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},r.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},r.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},r.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var o=function(A,H){return A.indexOf(H)!==-1};n&&(o=n.comparator||o);for(var u=[],g=0,B,f=a*50,v=M.call(arguments,2);u.lengthf)throw new RangeError("Chance: num is likely too large for sample set")}return u},r.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,o=[],u=M.call(arguments,2);for(n=Math.max(0,n),null;n--;null)o.push(e.apply(this,u));return o},r.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},r.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},r.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},r.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),o=n.length;return this.n(function(){var u=this.natural({max:--o}),g=n[u];return n[u]=n[o],g},Math.min(o,a))},r.prototype.shuffle=function(e){for(var a=[],n=0,o=Number(e.length),u=i(o),g=o-1,B,f=0;f0&&(o+=u)}if(o===0)throw new RangeError("Chance: No valid entries in array weights");var B=this.random()*o,f=0,v=-1,C;for(g=0;g0){if(B<=f){C=g;break}v=g}g===a.length-1&&(C=v)}var A=e[C];return n=typeof n>"u"?!1:n,n&&(e.splice(C,1),a.splice(C,1)),A},r.prototype.paragraph=function(e){e=c(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),o=e.linebreak===!0?` -`:" ";return n.join(o)},r.prototype.sentence=function(e){e=c(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,o,u=this.n(this.word,a);return o=u.join(" "),o=this.capitalize(o),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(o+=n),o},r.prototype.syllable=function(e){e=c(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",o="aeiou",u=n+o,g="",B,f=0;fe.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var B=e.minAge!==void 0?e.minAge:0,f=e.maxAge!==void 0?e.maxAge:100,v=new Date(o-f-1,n.getMonth(),n.getDate()),C=new Date(o-B,n.getMonth(),n.getDate());v.setDate(v.getDate()+1),C.setDate(C.getDate()+1),C.setMilliseconds(C.getMilliseconds()-1),e=c(e,{min:v,max:C})}else e=c(e,{year:o-a});return this.date(e)},r.prototype.cpf=function(e){e=c(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var o=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;o=11-o%11,o>=10&&(o=0);var u=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+o;return e.formatted?u:u.replace(/\D/g,"")},r.prototype.cnpj=function(e){e=c(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var o=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;o=11-o%11,o<2&&(o=0);var u=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+o;return e.formatted?u:u.replace(/\D/g,"")},r.prototype.first=function(e){return e=c(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},r.prototype.profession=function(e){return e=c(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},r.prototype.company=function(){return this.pick(this.get("company"))},r.prototype.gender=function(e){return e=c(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},r.prototype.last=function(e){if(e=c(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(o){a=a.concat(n[o])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},r.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},r.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},r.prototype.tld=function(){return this.pick(this.tlds())},r.prototype.twitter=function(){return"@"+this.word()},r.prototype.url=function(e){e=c(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},r.prototype.port=function(){return this.integer({min:0,max:65535})},r.prototype.locale=function(e){return e=c(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},r.prototype.locales=function(e){return e=c(e),e.region?this.get("locale_regions"):this.get("locale_languages")},r.prototype.loremPicsum=function(e){e=c(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},r.prototype.address=function(e){return e=c(e),this.natural({min:5,max:2e3})+" "+this.street(e)},r.prototype.altitude=function(e){return e=c(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.areacode=function(e){e=c(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},r.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},r.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},r.prototype.countries=function(){return this.get("countries")},r.prototype.country=function(e){e=c(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},r.prototype.depth=function(e){return e=c(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.geohash=function(e){return e=c(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},r.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},r.prototype.latitude=function(e){var[a,n,o]=["ddm","dms","dd"];e=c(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:o});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case o:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.longitude=function(e){var[a,n,o]=["ddm","dms","dd"];e=c(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:o});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case o:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.phone=function(e){var a=this,n,o=function(H){var F=[];return H.sections.forEach(function(z){F.push(a.string({pool:"0123456789",length:z}))}),H.area+F.join(" ")};e=c(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var u;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),u=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),u=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),u=e.formatted?o(n):o(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),u=e.formatted?o(n):o(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n);break;case"us":var g=this.areacode(e).toString(),B=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),f=this.natural({min:1e3,max:9999}).toString();u=e.formatted?g+" "+B+"-"+f:g+B+f;break;case"br":var v=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),C;e.mobile?C="9"+a.string({pool:"0123456789",length:4}):C=this.natural({min:2e3,max:5999}).toString();var A=a.string({pool:"0123456789",length:4});u=e.formatted?"("+v+") "+C+"-"+A:v+C+A;break}return u},r.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},r.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",o=e+a+n,u=this.natural({max:9}),g=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),B=u+g;return o+" "+B},r.prototype.counties=function(e){return e=c(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},r.prototype.county=function(e){return this.pick(this.counties(e)).name},r.prototype.provinces=function(e){return e=c(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},r.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},r.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},r.prototype.states=function(e){e=c(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),o=this.get("territories"),u=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(o)),e.armed_forces&&(a=a.concat(u));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},r.prototype.street=function(e){e=c(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},r.prototype.street_suffix=function(e){return e=c(e,{country:"us"}),this.pick(this.street_suffixes(e))},r.prototype.street_suffixes=function(e){return e=c(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},r.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},r.prototype.ampm=function(){return this.bool()?"am":"pm"},r.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=c(e,{american:!0,string:!1});var o=typeof e.min<"u"?e.min.getTime():1,u=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:o,max:u}))}else{var g=this.month({raw:!0}),B=g.days;e&&e.month&&(B=this.get("months")[(e.month%12+12)%12].days),e=c(e,{year:parseInt(this.year(),10),month:g.numeric-1,day:this.natural({min:1,max:B}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},r.prototype.hammertime=function(e){return this.date(e).getTime()},r.prototype.hour=function(e){return e=c(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.millisecond=function(){return this.natural({max:999})},r.prototype.minute=r.prototype.second=function(e){return e=c(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.month=function(e){e=c(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},r.prototype.months=function(){return this.get("months")},r.prototype.second=function(){return this.natural({max:59})},r.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},r.prototype.weekday=function(e){e=c(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},r.prototype.year=function(e){return e=c(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},r.prototype.cc=function(e){e=c(e);var a,n,o;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),o=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,o,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},r.prototype.cc_types=function(){return this.get("cc_types")},r.prototype.cc_type=function(e){e=c(e);var a=this.cc_types(),n=null;if(e.name){for(var o=0;o3&&(H?F=F.substr(0,3):F=F[0]+F.substr(2,2)),F.length<3&&(z=F,F=A.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+F),z},v=function(A,H,F){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return A.getFullYear().toString().substr(2)+z[A.getMonth()]+F.pad(A.getDate()+(H.toLowerCase()==="female"?40:0),2)},C=function(A){for(var H="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",F="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(F[H.indexOf(A[U])]):K+=j.indexOf(F[H.indexOf(A[U])]);return z[K%26]};return B=B.concat(f(o,!0),f(n),v(u,a,this),g.toUpperCase().split("")).join(""),B+=C(B.toUpperCase()),B.toUpperCase()},r.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;u--)o[u-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?o.reduce(function(g,B){return g+B}):o}else throw new RangeError("Chance: A type of die roll must be included")},r.prototype.guid=function(e){e=c(e,{version:5});var a="abcdef1234567890",n="ab89",o=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return o},r.prototype.hash=function(e){e=c(e,{length:40,casing:"lower"});var a=e.casing==="upper"?b.toUpperCase():b;return this.string({pool:a,length:e.length})},r.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},r.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,o,u=0,g=a.length;g>u;++u)o=+a[u],u%2===0&&(o*=2,o>9&&(o-=9)),n+=o;return n*9%10},r.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=c(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},r.prototype.file=function(e){var a=e||{},n="fileExtension",o=Object.keys(this.get("fileExtension")),u,g;if(u=this.word({length:a.length}),a.extension)return g=a.extension,u+"."+g;if(a.extensions){if(Array.isArray(a.extensions))return g=this.pickone(a.extensions),u+"."+g;if(a.extensions.constructor===Object){var B=a.extensions,f=Object.keys(B);return g=this.pickone(B[this.pickone(f)]),u+"."+g}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var v=a.fileType;if(o.indexOf(v)!==-1)return g=this.pickone(this.get(n)[v]),u+"."+g;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return g=this.pickone(this.get(n)[this.pickone(o)]),u+"."+g},r.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var o={fileData:this.buffer({length:a.fileSize}),fileName:n};return o};var k={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},D=Object.prototype.hasOwnProperty,w=Object.keys||function(e){var a=[];for(var n in e)D.call(e,n)&&a.push(n);return a};function N(e,a){for(var n=w(e),o,u=0,g=n.length;u0)return this.normal_pool(e);var a,n,o,u,g=e.mean,B=e.dev;do n=this.random()*2-1,o=this.random()*2-1,a=n*n+o*o;while(a>=1);return u=n*Math.sqrt(-2*Math.log(a)/a),B*u+g},r.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},r.prototype.radio=function(e){e=c(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},r.prototype.set=function(e,a){typeof e=="string"?k[e]=a:k=_(e,k)},r.prototype.tv=function(e){return this.radio(e)},r.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},r.prototype.emotion=function(){return this.pick(this.get("emotions"))},r.prototype.mersenne_twister=function(e){return new O(e)},r.prototype.blueimp_md5=function(){return new G};var O=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};O.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},O.prototype.init_by_array=function(e,a){var n=1,o=0,u,g;for(this.init_genrand(19650218),u=this.N>a?this.N:a;u;u--)g=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((g&4294901760)>>>16)*1664525<<16)+(g&65535)*1664525)+e[o]+o,this.mt[n]>>>=0,n++,o++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),o>=a&&(o=0);for(u=this.N-1;u;u--)g=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((g&4294901760)>>>16)*1566083941<<16)+(g&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},O.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},O.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},O.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},O.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},O.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},O.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var G=function(){};G.prototype.VERSION="1.0.1",G.prototype.safe_add=function(a,n){var o=(a&65535)+(n&65535),u=(a>>16)+(n>>16)+(o>>16);return u<<16|o&65535},G.prototype.bit_roll=function(e,a){return e<>>32-a},G.prototype.md5_cmn=function(e,a,n,o,u,g){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(o,g)),u),n)},G.prototype.md5_ff=function(e,a,n,o,u,g,B){return this.md5_cmn(a&n|~a&o,e,a,u,g,B)},G.prototype.md5_gg=function(e,a,n,o,u,g,B){return this.md5_cmn(a&o|n&~o,e,a,u,g,B)},G.prototype.md5_hh=function(e,a,n,o,u,g,B){return this.md5_cmn(a^n^o,e,a,u,g,B)},G.prototype.md5_ii=function(e,a,n,o,u,g,B){return this.md5_cmn(n^(a|~o),e,a,u,g,B)},G.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,o,u,g,B,f=1732584193,v=-271733879,C=-1732584194,A=271733878;for(n=0;n>5]>>>a%32&255);return n},G.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(o=this.binl_md5(o,e.length*8)),n=0;n<16;n+=1)u[n]=o[n]^909522486,g[n]=o[n]^1549556828;return B=this.binl_md5(u.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(g.concat(B),512+128))},G.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",o,u;for(u=0;u>>4&15)+a.charAt(o&15);return n},G.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},G.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},G.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},G.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},G.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},G.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},m.exports&&(d=m.exports=r),d.Chance=r,typeof importScripts<"u"&&(chance=new r,self.Chance=r),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=r,window.chance=new r)})()})(ne,ne.exports);var Ae=ne.exports;const ye=ve(Ae);var q=new ye,ce=function(){function m(d,E,L,I){let x=L.toUpperCase(),p=d.toUpperCase(),b=E.toUpperCase();if(I!=null&&0":c=="["?"]":c=="{"?"}":c=="("?")":c}}function d(I,x,p){for(var b=[],S=`(){}[]^-|!*+.><='",;:%@?/\\#~`+p,M=` -\r `,r=$(I,S+M),c=0,i=0,t=0,s=0;s0&&(h=b[b.length-1]),l==` +(function(V,W){typeof exports=="object"&&typeof module<"u"?W(exports):typeof define=="function"&&define.amd?define(["exports"],W):(V=typeof globalThis<"u"?globalThis:V||self,W(V.quickSQL={}))})(this,function(V){"use strict";function W(m){return m==null?m:m.toUpperCase().endsWith("IES")?m.substring(0,m.length-3)+"y":m.toUpperCase().endsWith("ES")||m.toUpperCase().endsWith("S")?m.substring(0,m.length-1):m}function Ce(m,d){let E='"';if(m==null)return null;let L=!1;const T="$#_ ";if(!m.startsWith(E)&&!L){const x=m;if(x.length>0&&"0"<=x[0]&&x[0]<="9")L=!0;else for(let p in x){const b=x[p];if(T.indexOf(b)<0&&(b<"0"||"9""u"&&(e[n]=a[n]);return e}function i(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var s=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?s=btoa:typeof Buffer=="function"&&(s=function(a){return new Buffer(a).toString("base64")})})(),r.prototype.bool=function(e){return e=u(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100o,"Chance: Max specified is out of range with fixed. Max should be, at most, "+o),e=u(e,{min:c,max:o}),a=this.integer({min:e.min*n,max:e.max*n});var g=(a/n).toFixed(e.fixed);return parseFloat(g)},r.prototype.integer=function(e){return e=u(e,{min:L,max:E}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},r.prototype.natural=function(e){if(e=u(e,{min:0,max:E}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),o=e.exclude.sort();for(var c in o){if(ne.max,"Chance: Min cannot be greater than Max.");var a=k.primes[k.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&k.primes.push(n);var o=k.primes.filter(function(c){return c>=e.min&&c<=e.max});return this.pick(o)},r.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},r.prototype.hex=function(e){e=u(e,{min:0,max:E,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},r.prototype.letter=function(e){e=u(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},r.prototype.string=function(e){e=u(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function h(e){this.c=e}h.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function y(e){this.c=e}y.prototype={replacers:{"#":function(e){return e.character({pool:T})},A:function(e){return e.character({pool:p})},a:function(e){return e.character({pool:x})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function P(e){for(var a=[],n="identity",o=0;o"u")throw new S("Sorry, the buffer() function is not supported on your platform");e=u(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},r.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},r.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},r.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var o=function(A,H){return A.indexOf(H)!==-1};n&&(o=n.comparator||o);for(var c=[],g=0,B,f=a*50,v=M.call(arguments,2);c.lengthf)throw new RangeError("Chance: num is likely too large for sample set")}return c},r.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,o=[],c=M.call(arguments,2);for(n=Math.max(0,n),null;n--;null)o.push(e.apply(this,c));return o},r.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},r.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},r.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},r.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),o=n.length;return this.n(function(){var c=this.natural({max:--o}),g=n[c];return n[c]=n[o],g},Math.min(o,a))},r.prototype.shuffle=function(e){for(var a=[],n=0,o=Number(e.length),c=i(o),g=o-1,B,f=0;f0&&(o+=c)}if(o===0)throw new RangeError("Chance: No valid entries in array weights");var B=this.random()*o,f=0,v=-1,C;for(g=0;g0){if(B<=f){C=g;break}v=g}g===a.length-1&&(C=v)}var A=e[C];return n=typeof n>"u"?!1:n,n&&(e.splice(C,1),a.splice(C,1)),A},r.prototype.paragraph=function(e){e=u(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),o=e.linebreak===!0?` +`:" ";return n.join(o)},r.prototype.sentence=function(e){e=u(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,o,c=this.n(this.word,a);return o=c.join(" "),o=this.capitalize(o),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(o+=n),o},r.prototype.syllable=function(e){e=u(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",o="aeiou",c=n+o,g="",B,f=0;fe.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var B=e.minAge!==void 0?e.minAge:0,f=e.maxAge!==void 0?e.maxAge:100,v=new Date(o-f-1,n.getMonth(),n.getDate()),C=new Date(o-B,n.getMonth(),n.getDate());v.setDate(v.getDate()+1),C.setDate(C.getDate()+1),C.setMilliseconds(C.getMilliseconds()-1),e=u(e,{min:v,max:C})}else e=u(e,{year:o-a});return this.date(e)},r.prototype.cpf=function(e){e=u(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var o=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;o=11-o%11,o>=10&&(o=0);var c=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+o;return e.formatted?c:c.replace(/\D/g,"")},r.prototype.cnpj=function(e){e=u(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var o=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;o=11-o%11,o<2&&(o=0);var c=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+o;return e.formatted?c:c.replace(/\D/g,"")},r.prototype.first=function(e){return e=u(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},r.prototype.profession=function(e){return e=u(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},r.prototype.company=function(){return this.pick(this.get("company"))},r.prototype.gender=function(e){return e=u(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},r.prototype.last=function(e){if(e=u(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(o){a=a.concat(n[o])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},r.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},r.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},r.prototype.tld=function(){return this.pick(this.tlds())},r.prototype.twitter=function(){return"@"+this.word()},r.prototype.url=function(e){e=u(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},r.prototype.port=function(){return this.integer({min:0,max:65535})},r.prototype.locale=function(e){return e=u(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},r.prototype.locales=function(e){return e=u(e),e.region?this.get("locale_regions"):this.get("locale_languages")},r.prototype.loremPicsum=function(e){e=u(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},r.prototype.address=function(e){return e=u(e),this.natural({min:5,max:2e3})+" "+this.street(e)},r.prototype.altitude=function(e){return e=u(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.areacode=function(e){e=u(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},r.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},r.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},r.prototype.countries=function(){return this.get("countries")},r.prototype.country=function(e){e=u(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},r.prototype.depth=function(e){return e=u(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.geohash=function(e){return e=u(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},r.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},r.prototype.latitude=function(e){var[a,n,o]=["ddm","dms","dd"];e=u(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:o});var c=e.format.toLowerCase();switch((c===a||c===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),c){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case o:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.longitude=function(e){var[a,n,o]=["ddm","dms","dd"];e=u(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:o});var c=e.format.toLowerCase();switch((c===a||c===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),c){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case o:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.phone=function(e){var a=this,n,o=function(H){var F=[];return H.sections.forEach(function(z){F.push(a.string({pool:"0123456789",length:z}))}),H.area+F.join(" ")};e=u(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var c;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),c=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),c=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),c=e.formatted?o(n):o(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),c=e.formatted?o(n):o(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),c=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),c=e.formatted||n);break;case"us":var g=this.areacode(e).toString(),B=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),f=this.natural({min:1e3,max:9999}).toString();c=e.formatted?g+" "+B+"-"+f:g+B+f;break;case"br":var v=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),C;e.mobile?C="9"+a.string({pool:"0123456789",length:4}):C=this.natural({min:2e3,max:5999}).toString();var A=a.string({pool:"0123456789",length:4});c=e.formatted?"("+v+") "+C+"-"+A:v+C+A;break}return c},r.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},r.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",o=e+a+n,c=this.natural({max:9}),g=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),B=c+g;return o+" "+B},r.prototype.counties=function(e){return e=u(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},r.prototype.county=function(e){return this.pick(this.counties(e)).name},r.prototype.provinces=function(e){return e=u(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},r.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},r.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},r.prototype.states=function(e){e=u(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),o=this.get("territories"),c=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(o)),e.armed_forces&&(a=a.concat(c));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},r.prototype.street=function(e){e=u(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},r.prototype.street_suffix=function(e){return e=u(e,{country:"us"}),this.pick(this.street_suffixes(e))},r.prototype.street_suffixes=function(e){return e=u(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},r.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},r.prototype.ampm=function(){return this.bool()?"am":"pm"},r.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=u(e,{american:!0,string:!1});var o=typeof e.min<"u"?e.min.getTime():1,c=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:o,max:c}))}else{var g=this.month({raw:!0}),B=g.days;e&&e.month&&(B=this.get("months")[(e.month%12+12)%12].days),e=u(e,{year:parseInt(this.year(),10),month:g.numeric-1,day:this.natural({min:1,max:B}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},r.prototype.hammertime=function(e){return this.date(e).getTime()},r.prototype.hour=function(e){return e=u(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.millisecond=function(){return this.natural({max:999})},r.prototype.minute=r.prototype.second=function(e){return e=u(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.month=function(e){e=u(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},r.prototype.months=function(){return this.get("months")},r.prototype.second=function(){return this.natural({max:59})},r.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},r.prototype.weekday=function(e){e=u(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},r.prototype.year=function(e){return e=u(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},r.prototype.cc=function(e){e=u(e);var a,n,o;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),o=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,o,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},r.prototype.cc_types=function(){return this.get("cc_types")},r.prototype.cc_type=function(e){e=u(e);var a=this.cc_types(),n=null;if(e.name){for(var o=0;o3&&(H?F=F.substr(0,3):F=F[0]+F.substr(2,2)),F.length<3&&(z=F,F=A.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+F),z},v=function(A,H,F){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return A.getFullYear().toString().substr(2)+z[A.getMonth()]+F.pad(A.getDate()+(H.toLowerCase()==="female"?40:0),2)},C=function(A){for(var H="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",F="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(F[H.indexOf(A[U])]):K+=j.indexOf(F[H.indexOf(A[U])]);return z[K%26]};return B=B.concat(f(o,!0),f(n),v(c,a,this),g.toUpperCase().split("")).join(""),B+=C(B.toUpperCase()),B.toUpperCase()},r.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;c--)o[c-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?o.reduce(function(g,B){return g+B}):o}else throw new RangeError("Chance: A type of die roll must be included")},r.prototype.guid=function(e){e=u(e,{version:5});var a="abcdef1234567890",n="ab89",o=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return o},r.prototype.hash=function(e){e=u(e,{length:40,casing:"lower"});var a=e.casing==="upper"?b.toUpperCase():b;return this.string({pool:a,length:e.length})},r.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},r.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,o,c=0,g=a.length;g>c;++c)o=+a[c],c%2===0&&(o*=2,o>9&&(o-=9)),n+=o;return n*9%10},r.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=u(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},r.prototype.file=function(e){var a=e||{},n="fileExtension",o=Object.keys(this.get("fileExtension")),c,g;if(c=this.word({length:a.length}),a.extension)return g=a.extension,c+"."+g;if(a.extensions){if(Array.isArray(a.extensions))return g=this.pickone(a.extensions),c+"."+g;if(a.extensions.constructor===Object){var B=a.extensions,f=Object.keys(B);return g=this.pickone(B[this.pickone(f)]),c+"."+g}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var v=a.fileType;if(o.indexOf(v)!==-1)return g=this.pickone(this.get(n)[v]),c+"."+g;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return g=this.pickone(this.get(n)[this.pickone(o)]),c+"."+g},r.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var o={fileData:this.buffer({length:a.fileSize}),fileName:n};return o};var k={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},D=Object.prototype.hasOwnProperty,w=Object.keys||function(e){var a=[];for(var n in e)D.call(e,n)&&a.push(n);return a};function N(e,a){for(var n=w(e),o,c=0,g=n.length;c0)return this.normal_pool(e);var a,n,o,c,g=e.mean,B=e.dev;do n=this.random()*2-1,o=this.random()*2-1,a=n*n+o*o;while(a>=1);return c=n*Math.sqrt(-2*Math.log(a)/a),B*c+g},r.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},r.prototype.radio=function(e){e=u(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},r.prototype.set=function(e,a){typeof e=="string"?k[e]=a:k=_(e,k)},r.prototype.tv=function(e){return this.radio(e)},r.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},r.prototype.emotion=function(){return this.pick(this.get("emotions"))},r.prototype.mersenne_twister=function(e){return new O(e)},r.prototype.blueimp_md5=function(){return new G};var O=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};O.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},O.prototype.init_by_array=function(e,a){var n=1,o=0,c,g;for(this.init_genrand(19650218),c=this.N>a?this.N:a;c;c--)g=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((g&4294901760)>>>16)*1664525<<16)+(g&65535)*1664525)+e[o]+o,this.mt[n]>>>=0,n++,o++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),o>=a&&(o=0);for(c=this.N-1;c;c--)g=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((g&4294901760)>>>16)*1566083941<<16)+(g&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},O.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},O.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},O.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},O.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},O.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},O.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var G=function(){};G.prototype.VERSION="1.0.1",G.prototype.safe_add=function(a,n){var o=(a&65535)+(n&65535),c=(a>>16)+(n>>16)+(o>>16);return c<<16|o&65535},G.prototype.bit_roll=function(e,a){return e<>>32-a},G.prototype.md5_cmn=function(e,a,n,o,c,g){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(o,g)),c),n)},G.prototype.md5_ff=function(e,a,n,o,c,g,B){return this.md5_cmn(a&n|~a&o,e,a,c,g,B)},G.prototype.md5_gg=function(e,a,n,o,c,g,B){return this.md5_cmn(a&o|n&~o,e,a,c,g,B)},G.prototype.md5_hh=function(e,a,n,o,c,g,B){return this.md5_cmn(a^n^o,e,a,c,g,B)},G.prototype.md5_ii=function(e,a,n,o,c,g,B){return this.md5_cmn(n^(a|~o),e,a,c,g,B)},G.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,o,c,g,B,f=1732584193,v=-271733879,C=-1732584194,A=271733878;for(n=0;n>5]>>>a%32&255);return n},G.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(o=this.binl_md5(o,e.length*8)),n=0;n<16;n+=1)c[n]=o[n]^909522486,g[n]=o[n]^1549556828;return B=this.binl_md5(c.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(g.concat(B),512+128))},G.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",o,c;for(c=0;c>>4&15)+a.charAt(o&15);return n},G.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},G.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},G.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},G.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},G.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},G.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},m.exports&&(d=m.exports=r),d.Chance=r,typeof importScripts<"u"&&(chance=new r,self.Chance=r),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=r,window.chance=new r)})()})(ne,ne.exports);var Ae=ne.exports;const ye=ve(Ae);var q=new ye,ce=function(){function m(d,E,L,T){let x=L.toUpperCase(),p=d.toUpperCase(),b=E.toUpperCase();if(T!=null&&0":u=="["?"]":u=="{"?"}":u=="("?")":u}}function d(T,x,p){for(var b=[],S=`(){}[]^-|!*+.><='",;:%@?/\\#~`+p,M=` +\r `,r=$(T,S+M),u=0,i=0,t=0,s=0;s0&&(h=b[b.length-1]),l==` `?(i++,t=0):s>0&&r[s-1]!==` -`?t=t+r[s-1].length:t=0,c+=l.length,h!=null&&h.type=="comment"&&(h.value.lastIndexOf("*/")!=h.value.length-2||h.value=="/*/")){l=="*"||l=="/"?h.value=h.value+l:h.value="/* ... ",h.end=c,h!=null&&h.type=="comment"&&h.value.lastIndexOf("*/")==h.value.length-2&&h.value!="/*/"&&(h.value=I.substring(h.begin,h.end));continue}if(h!=null&&(h.type=="line-comment"||h.type=="dbtools-command")&&l!=` +`?t=t+r[s-1].length:t=0,u+=l.length,h!=null&&h.type=="comment"&&(h.value.lastIndexOf("*/")!=h.value.length-2||h.value=="/*/")){l=="*"||l=="/"?h.value=h.value+l:h.value="/* ... ",h.end=u,h!=null&&h.type=="comment"&&h.value.lastIndexOf("*/")==h.value.length-2&&h.value!="/*/"&&(h.value=T.substring(h.begin,h.end));continue}if(h!=null&&(h.type=="line-comment"||h.type=="dbtools-command")&&l!=` `){h.value=h.value+l;continue}if(h!=null&&(h.type=="line-comment"||h.type=="dbtools-command")&&l==` -`&&(h.end=h.begin+h.value.length),h!=null&&h.type=="quoted-string"&&!(h.isStandardLiteral()||h.isAltLiteral())){h.value=h.value+l,h.end=h.begin+h.value.length;continue}if(!(h!=null&&h.type=="dquoted-string"&&l!='"'&&!(h.value.endsWith('"')&&h.value.length>1))){if(h!=null&&h.type=="dquoted-string"&&l=='"'){h.end=c,h.value=I.substring(h.begin,h.end);continue}if(!(h!=null&&h.type=="bquoted-string"&&l!="`"&&!(h.value.endsWith("`")&&h.value.length>1))){if(h!=null&&h.type=="bquoted-string"&&l=="`"){h.end=c,h.value=I.substring(h.begin,h.end);continue}if(l=="*"&&h!=null&&h.value=="/"){h.value=h.value+l,h.end=h.begin+h.value.length,h.type="comment";continue}if(l=="-"&&h!=null&&h.value=="-"){h.value=h.value+l,h.type="line-comment";continue}if((l.toUpperCase()=="REM"||l.toUpperCase()=="REMA"||l.toUpperCase()=="REMAR"||l.toUpperCase()=="REMARK"||l.toUpperCase()=="PRO"||l.toUpperCase()=="PROM"||l.toUpperCase()=="PROMP"||l.toUpperCase()=="PROMPT")&&(h==null||h.value==` -`||h.value=="\r")){b.push(new m(l,c-l.length,-9,"line-comment",i,t));continue}if(l.toUpperCase()=="SODA"&&(h==null||h.value==` -`||h.value=="\r")){b.push(new m(l,c-l.length,-9,"dbtools-command",i,t));continue}if(h!=null&&h.type=="identifier"&&h.end==-11&&h.value.indexOf("@")==0&&!(l==` +`&&(h.end=h.begin+h.value.length),h!=null&&h.type=="quoted-string"&&!(h.isStandardLiteral()||h.isAltLiteral())){h.value=h.value+l,h.end=h.begin+h.value.length;continue}if(!(h!=null&&h.type=="dquoted-string"&&l!='"'&&!(h.value.endsWith('"')&&h.value.length>1))){if(h!=null&&h.type=="dquoted-string"&&l=='"'){h.end=u,h.value=T.substring(h.begin,h.end);continue}if(!(h!=null&&h.type=="bquoted-string"&&l!="`"&&!(h.value.endsWith("`")&&h.value.length>1))){if(h!=null&&h.type=="bquoted-string"&&l=="`"){h.end=u,h.value=T.substring(h.begin,h.end);continue}if(l=="*"&&h!=null&&h.value=="/"){h.value=h.value+l,h.end=h.begin+h.value.length,h.type="comment";continue}if(l=="-"&&h!=null&&h.value=="-"){h.value=h.value+l,h.type="line-comment";continue}if((l.toUpperCase()=="REM"||l.toUpperCase()=="REMA"||l.toUpperCase()=="REMAR"||l.toUpperCase()=="REMARK"||l.toUpperCase()=="PRO"||l.toUpperCase()=="PROM"||l.toUpperCase()=="PROMP"||l.toUpperCase()=="PROMPT")&&(h==null||h.value==` +`||h.value=="\r")){b.push(new m(l,u-l.length,-9,"line-comment",i,t));continue}if(l.toUpperCase()=="SODA"&&(h==null||h.value==` +`||h.value=="\r")){b.push(new m(l,u-l.length,-9,"dbtools-command",i,t));continue}if(h!=null&&h.type=="identifier"&&h.end==-11&&h.value.indexOf("@")==0&&!(l==` `||l=="\r")){h.value=h.value+l;continue}if(h!=null&&h.type=="identifier"&&h.end==-11&&h.value.indexOf("@")==0&&(l==` -`||l=="\r")){h.end=c-1,b.push(new m(l,c-1,c,"ws",i,t));continue}if(x&&l=="'"){h!=null&&(h.value.toUpperCase()=="Q"||h.value.toUpperCase()=="N"||h.value.toUpperCase()=="U"||h.value.toUpperCase()=="NQ")?(h.value+=l,h.type="quoted-string"):b.push(new m(l,c-1,-10,"quoted-string",i,t));continue}if(x&&l=='"'){b.push(new m(l,c-1,-11,"dquoted-string",i,t));continue}if(l=="`"&&0<=S.indexOf("`")){b.push(new m(l,c-1,-11,"bquoted-string",i,t));continue}if(l.length==1&&0<=S.indexOf(l)){b.push(new m(l,c-1,c,"operation",i,t));continue}if(l.length==1&&0<=M.indexOf(l)){b.push(new m(l,c-1,c,"ws",i,t));continue}if("0"<=l.charAt(0)&&l.charAt(0)<="9"){E(l,b,c-l.length,i)||(l.charAt(l.length-1)=="K"||l.charAt(l.length-1)=="k"||l.charAt(l.length-1)=="M"||l.charAt(l.length-1)=="m"||l.charAt(l.length-1)=="G"||l.charAt(l.length-1)=="g"||l.charAt(l.length-1)=="T"||l.charAt(l.length-1)=="t"||l.charAt(l.length-1)=="P"||l.charAt(l.length-1)=="p"||l.charAt(l.length-1)=="E"||l.charAt(l.length-1)=="e"?(b.push(new m(l.substring(0,l.length-1),c-l.length,c-1,"constant.numeric",i,t)),b.push(new m(l.substring(l.length-1),c-1,c,"constant.numeric",i,t))):b.push(new m(l,c-l.length,c,"constant.numeric",i,t)));continue}var y="identifier";s+10){var h=b[b.length-1];h.end=I.length}return b}function E(I,x,p,b){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var S=$(I,"efd"),M=0;M")==0||i.indexOf("<")==0)&&(i=i.substring(1).trim());const l=i.toLowerCase();if(l.indexOf("view ")==0){var h=i.split(" ");return h[1]}i=p(i," d");var y=i.indexOf("/");0="0"&&P<="9"&&(i="x"+i),Se(le(i))},this.parseType=function(i){if(this.children!=null&&00){var h=b[b.length-1];h.end=T.length}return b}function E(T,x,p,b){if(0>T.indexOf("e")&&0>T.indexOf("f")&&0>T.indexOf("d"))return!1;0<=T.indexOf("e"),0<=T.indexOf("e"),!(0<=T.indexOf("e"))&&0<=T.indexOf("f");for(var S=$(T,"efd"),M=0;M")==0||i.indexOf("<")==0)&&(i=i.substring(1).trim());const l=i.toLowerCase();if(l.indexOf("view ")==0){var h=i.split(" ");return h[1]}i=p(i," d");var y=i.indexOf("/");0="0"&&P<="9"&&(i="x"+i),Se(le(i))},this.parseType=function(i){if(this.children!=null&&0!0)),N}return y}0!0)),N}return y}0");return t==0},this.getExplicitPkNode=function(){for(var i=0;ii.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(m.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),m.optionEQvalue("prefixPKwithTname","yes")&&(t=W(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let i=this.getGenIdColName();return i??this.getExplicitPkNode().parseName()},this.toDDL=function(){if(this.parseType()=="view"||this.parseType()=="dv")return"";if(this.children.length==0&&0");return t==0},this.getExplicitPkNode=function(){for(var i=0;ii.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(m.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),m.optionEQvalue("prefixPKwithTname","yes")&&(t=W(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let i=this.getGenIdColName();if(i==null){let t=this.getExplicitPkNode();return t==null?null:t.parseName()}return i},this.toDDL=function(){if(this.parseType()=="view"||this.parseType()=="dv")return"";if(this.children.length==0&&0!0):g==null&&(g=m.find(n),g.isMany2One()&!n.endsWith("_id")&&(o=n,n=W(n),B="_id")),y=d+" ".repeat(this.maxChildNameLen()-n.length),l+=d+n+B+y+u+` +`}}for(let n in this.fks){let o=this.fks[n],c="number",g=m.find(o),B="";g!=null&&g.getExplicitPkNode()!=null?c=g.getExplicitPkNode().parseType(C=>!0):g==null&&(g=m.find(n),g.isMany2One()&!n.endsWith("_id")&&(o=n,n=W(n),B="_id")),y=d+" ".repeat(this.maxChildNameLen()-n.length),l+=d+n+B+y+c+` `,l+=d+d+" ".repeat(this.maxChildNameLen())+"constraint "+h+"_"+n+`_fk `;let f="";0<=i.indexOf("/CASCADE")&&(f=" on delete cascade");let v="";for(let C in this.children){let A=this.children[C];if(n==A.parseName()){let H=A.trimmedContent().toUpperCase();(0<=H.indexOf("/NN")||0<=H.indexOf("/NOTNULL"))&&(v=" NOT NULL".toLowerCase()),0<=H.indexOf("/CASCADE")&&(f=" on delete cascade");break}}l+=d+d+" ".repeat(this.maxChildNameLen())+"references "+m.objPrefix()+o+f+v+`, `}if(m.optionEQvalue("rowkey",!0)||0!0)),l+=`, -`,l+=d+d+"P_"+h+" "+s+" "+T+t}for(let P=0;P!0)),l+=`, +`,l+=d+d+"P_"+h+" "+s+" "+I+t}for(let P=0;P!0),(i=="insert"||i=="update")&&(s+=`, -`);let w=d+d+d+"P_"+T+" := c1."+T+`; -`;i=="insert"&&(w=d+d+d+T),i=="update"&&(w=d+d+d+T+" = P_"+T+` +`,l+=d+d+d+"id = p_id"),s+=l;for(let I in this.fks){let k=this.fks[I],D=m.find(k);D!=null&&D.getExplicitPkNode()!=null&&D.getExplicitPkNode().parseType(N=>!0),(i=="insert"||i=="update")&&(s+=`, +`);let w=d+d+d+"P_"+I+" := c1."+I+`; +`;i=="insert"&&(w=d+d+d+I),i=="update"&&(w=d+d+d+I+" = P_"+I+` `),s+=w}for(var h=0;hs.children.length>0&&s.parseName()==t&&!s.isArray())},this.generateSelectJsonTopDown=function(i){var t=this.parseName();let s="";this.getExplicitPkNode==null&&(s+=i+"'"+this.getGenIdColName()+"' : "+t+"."+this.getGenIdColName()+`, -`);for(var l=0;ls.children.length>0&&s.parseName()==t&&!s.isArray())},this.generateSelectJsonBottomUp=function(i){throw new Error("generateSelectJsonBottomUp() not implemented yet")},this.one2many2oneUnsupoported="one to many to one is not supported",this.generateSelectJsonTopDown=function(i){var t=this.parseName();let s="";this.getExplicitPkNode==null&&(s+=i+"'"+this.getGenIdColName()+"' : "+t+"."+this.getGenIdColName()+`, +`);for(var l=0;l");let b=` -`+d(I)+p+E;if(typeof L=="number"&&(b+=" num",E.endsWith("_id")||E.endsWith("Id")))return b+=" /pk",b;if(typeof L=="object"){if(Array.isArray(L))for(let M in L){1<=M&&console.log("1 <= property !");const r=L[M];return this.introspect(E,r,I,!1)}else if(E!=""){let M=this.aggrSizes[E];b+=" /insert "+M}let S="";for(let M in L){const r=L[M];if(M!=null){const t=W(E),s=M.toLowerCase();if(E!=null&&t+"_id"==s&&0");let b=` +`+d(T)+p+E;if(typeof L=="number"&&(b+=" num",E.endsWith("_id")||E.endsWith("Id")))return b+=" /pk",b;if(typeof L=="object"){if(Array.isArray(L))for(let M in L){1<=M&&console.log("1 <= property !");const r=L[M];return this.introspect(E,r,T,!1)}else if(E!=""){let M=this.aggrSizes[E];b+=" /insert "+M}let S="";for(let M in L){const r=L[M];if(M!=null){const t=W(E),s=M.toLowerCase();if(E!=null&&t+"_id"==s&&0!0)}),0!0)}),0 #of insert starements this.calculateCounts = function ( key, value ) { + let tmp = this.aggrSizes[key]; if( tmp == null ) tmp = 0; @@ -15,8 +16,7 @@ var json2qsql = (function () { this.aggrSizes[key] = tmp + incr; for( let property in value ) { - const type = typeof value[property]; - if( type == "object" ) + if( value[property] != null && typeof value[property] == "object" ) this.calculateCounts( property, value[property] ) } @@ -25,7 +25,7 @@ var json2qsql = (function () { this.introspect = function( key, value, level, isM2O ) { if( level == 0 ) { this.aggrSizes = {}; - if( key == null ) { + if( level == 0 ) { for( let property in value ) { //const field = value[property]; let suffixes = ["_address", "_id", "_name", "Id"]; @@ -39,9 +39,10 @@ var json2qsql = (function () { break; } } - if( !found ) - tmp += "unnamed_entity"; - key = tmp; //.toLowerCase(); + if( !found && key == null ) + key = "unnamed_entity"; + else if( found ) + key = tmp; break; } } diff --git a/src/tree.js b/src/tree.js index 81c59a9..08c2959 100644 --- a/src/tree.js +++ b/src/tree.js @@ -566,8 +566,12 @@ let tree = (function(){ } this.getPkName = function () { let id = this.getGenIdColName(); - if( id == null ) - return this.getExplicitPkNode().parseName(); + if( id == null ) { + let pkn = this.getExplicitPkNode(); + if( pkn == null ) + return null; + return pkn.parseName(); + } return id; } @@ -824,7 +828,13 @@ let tree = (function(){ return ''; if( ddl.optionEQvalue('Duality View','yes') || this.parseType() == 'dv' ) { - return this.generateDualityView(); + try { + return this.generateDualityView(); + } catch ( e ) { + if( e.message == this.one2many2oneUnsupoported ) + return ''; + throw e; + } } let objName = ddl.objPrefix() + this.parseName(); let tmp = this.trimmedContent(); //.toLowerCase(); @@ -1300,6 +1310,8 @@ let tree = (function(){ values.push(k); if( parObj != null && refNode != null ) { const field = refNode.getPkName(); + if( field == null ) + continue; let v = parObj[field]; if( v != null ) { values = []; @@ -1309,7 +1321,10 @@ let tree = (function(){ if( elem != null ) { let refData = elem[ref]; if( refData != null ) { - let v = refData[refNode.getPkName()]; + const field = refNode.getPkName(); + if( field == null ) + continue; + let v = refData[field]; if( v != null ) { values = []; values[0] = v; @@ -1395,8 +1410,9 @@ let tree = (function(){ return this.children.some((c) => c.children.length > 0 && c.parseName() == name && !c.isArray()); }; - /*this.generateSelectJsonBottomUp = function( indent) { - var name = this.parseName(); + this.generateSelectJsonBottomUp = function( indent) { + throw new Error("generateSelectJsonBottomUp() not implemented yet"); + /*var name = this.parseName(); var ret = indent + '\'' + this.getGenIdColName() + '\' : ' + name +'.id,\n'; for( var j = 0; j < this.children.length; j++ ) { var child = this.children[j]; @@ -1411,7 +1427,7 @@ let tree = (function(){ ret += indent + '\'' + pname + '\' : (\n'; indent += ' '; ret += indent + 'select JSON {\n'; - ret += this.generateSelectJsonBottomUp( ptbl, indent + ' '); + ret += ptbl.generateSelectJsonBottomUp( indent + ' '); ret += indent + '} from ' + ptbl.parseName() + ' ' + pname + ' with (UPDATE)\n'; ret += indent + 'where ' + name + '.' + pname + '_id = ' + pname + '.ID\n'; indent = indent.slice(0, -2); @@ -1419,8 +1435,9 @@ let tree = (function(){ } else { ret = ret.slice(0, -2) + '\n'; } - return ret; - };*/ + return ret; */ + }; + this.one2many2oneUnsupoported = "one to many to one is not supported"; this.generateSelectJsonTopDown = function( indent ) { var name = this.parseName(); let ret = ''; @@ -1438,6 +1455,8 @@ let tree = (function(){ var isArray = !child.isMany2One(); indent += ' '; ret += indent + 'select ' + /*(isArray?'JSON_ARRAYAGG(':'') +*/ 'JSON {\n'; + if( this.isMany2One() ) + throw new Error(this.one2many2oneUnsupoported); ret += child.generateSelectJsonTopDown(indent + ' '); ret += indent + ' WITH NOCHECK }' + ' from ' + cname + ' with INSERT UPDATE\n'; var names = /*isArray? [name, cname] :*/ [cname, name]; @@ -1469,7 +1488,7 @@ let tree = (function(){ if( tbl != null) { ret += 'create or replace json relational duality view ' + chunks[1] + ' as\n'; ret += 'select JSON {\n'; - ret += // tbl.isLeaf()? tbl.generateSelectJsonBottomUp(' ') : what if middle? + ret += tbl.isMany2One()? tbl.generateSelectJsonBottomUp(' ') : tbl.generateSelectJsonTopDown(' '); ret += '} from ' + tbl.parseName() /*+ ' ' + chunks[2]*/ + ' with INSERT UPDATE DELETE;\n\n'; } diff --git a/test/experimental/donuts.qsql b/test/experimental/donuts.qsql new file mode 100644 index 0000000..1684446 --- /dev/null +++ b/test/experimental/donuts.qsql @@ -0,0 +1,77 @@ + +donuts /insert 1 + id + type + name + ppu num + >batters /insert 1 + batter /insert 4 + id + type + topping /insert 7 + id + type + +dv donuts_dv donuts + +#settings = { genpk: false, drop: true } + +-- Generated by json2qsql.js development 1/3/2024, 2:15:58 PM + +#document = +{ + "id": "0001", + "type": "donut", + "name": "Cake", + "ppu": 0.55, + "batters": { + "batter": [ + { + "id": "1001", + "type": "Regular" + }, + { + "id": "1002", + "type": "Chocolate" + }, + { + "id": "1003", + "type": "Blueberry" + }, + { + "id": "1004", + "type": "Devil's Food" + } + ] + }, + "topping": [ + { + "id": "5001", + "type": "None" + }, + { + "id": "5002", + "type": "Glazed" + }, + { + "id": "5005", + "type": "Sugar" + }, + { + "id": "5007", + "type": "Powdered Sugar" + }, + { + "id": "5006", + "type": "Chocolate with Sprinkles" + }, + { + "id": "5003", + "type": "Chocolate" + }, + { + "id": "5004", + "type": "Maple" + } + ] +} diff --git a/test/experimental/events.json b/test/experimental/events.json new file mode 100644 index 0000000..2a8a3a9 --- /dev/null +++ b/test/experimental/events.json @@ -0,0 +1,131 @@ +[ + { + "id": "2489651045", + "type": "CreateEvent", + "actor": { + "id": 665991, + "login": "petroav", + "gravatar_id": "", + "url": "https://api.github.com/users/petroav", + "avatar_url": "https://avatars.githubusercontent.com/u/665991?" + }, + "repo": { + "id": 28688495, + "name": "petroav/6.828", + "url": "https://api.github.com/repos/petroav/6.828" + }, + "payload": { + "ref": "master", + "ref_type": "branch", + "master_branch": "master", + "description": "Solution to homework and assignments from MIT's 6.828 (Operating Systems Engineering). Done in my spare time.", + "pusher_type": "user" + }, + "public": true, + "created_at": "2015-01-01T15:00:00Z" + }, + { + "id": "2489651051", + "type": "PushEvent", + "actor": { + "id": 3854017, + "login": "rspt", + "gravatar_id": "", + "url": "https://api.github.com/users/rspt", + "avatar_url": "https://avatars.githubusercontent.com/u/3854017?" + }, + "repo": { + "id": 28671719, + "name": "rspt/rspt-theme", + "url": "https://api.github.com/repos/rspt/rspt-theme" + }, + "payload": { + "push_id": 536863970, + "size": 1, + "distinct_size": 1, + "ref": "refs/heads/master", + "head": "6b089eb4a43f728f0a594388092f480f2ecacfcd", + "before": "437c03652caa0bc4a7554b18d5c0a394c2f3d326", + "commits": [ + { + "sha": "6b089eb4a43f728f0a594388092f480f2ecacfcd", + "author": { + "email": "5c682c2d1ec4073e277f9ba9f4bdf07e5794dabe@rspt.ch", + "name": "rspt" + }, + "message": "Fix main header height on mobile", + "distinct": true, + "url": "https://api.github.com/repos/rspt/rspt-theme/commits/6b089eb4a43f728f0a594388092f480f2ecacfcd" + } + ] + }, + "public": true, + "created_at": "2015-01-01T15:00:01Z" + }, + { + "id": "2489651053", + "type": "PushEvent", + "actor": { + "id": 6339799, + "login": "izuzero", + "gravatar_id": "", + "url": "https://api.github.com/users/izuzero", + "avatar_url": "https://avatars.githubusercontent.com/u/6339799?" + }, + "repo": { + "id": 28270952, + "name": "izuzero/xe-module-ajaxboard", + "url": "https://api.github.com/repos/izuzero/xe-module-ajaxboard" + }, + "payload": { + "push_id": 536863972, + "size": 1, + "distinct_size": 1, + "ref": "refs/heads/develop", + "head": "ec819b9df4fe612bb35bf562f96810bf991f9975", + "before": "590433109f221a96cf19ea7a7d9a43ca333e3b3e", + "commits": [ + { + "sha": "ec819b9df4fe612bb35bf562f96810bf991f9975", + "author": { + "email": "df05f55543db3c62cf64f7438018ec37f3605d3c@gmail.com", + "name": "Eunsoo Lee" + }, + "message": "#20 게시글 및 댓글 삭제 시 새로고침이 되는 문제 해결\n\n원래 의도는 새로고침이 되지 않고 확인창만으로 해결되어야 함.\n기본 게시판 대응 플러그인에서 발생한 이슈.", + "distinct": true, + "url": "https://api.github.com/repos/izuzero/xe-module-ajaxboard/commits/ec819b9df4fe612bb35bf562f96810bf991f9975" + } + ] + }, + "public": true, + "created_at": "2015-01-01T15:00:01Z" + }, + { + "id": "2489651057", + "type": "WatchEvent", + "actor": { + "id": 6894991, + "login": "SametSisartenep", + "gravatar_id": "", + "url": "https://api.github.com/users/SametSisartenep", + "avatar_url": "https://avatars.githubusercontent.com/u/6894991?" + }, + "repo": { + "id": 2871998, + "name": "visionmedia/debug", + "url": "https://api.github.com/repos/visionmedia/debug" + }, + "payload": { + "action": "started" + }, + "public": true, + "created_at": "2015-01-01T15:00:03Z", + "org": { + "id": 9285252, + "login": "visionmedia", + "gravatar_id": "", + "url": "https://api.github.com/orgs/visionmedia", + "avatar_url": "https://avatars.githubusercontent.com/u/9285252?" + } + } +] \ No newline at end of file diff --git a/test/experimental/food_product.json b/test/experimental/food_product.json new file mode 100644 index 0000000..29a914a --- /dev/null +++ b/test/experimental/food_product.json @@ -0,0 +1,2147 @@ +{ + "code": "5060292302201", + "product": { + "_id": "5060292302201", + "_keywords": [ + "and", + "anything", + "appetizer", + "artificial", + "barbeque", + "beverage", + "cereal", + "chip", + "crisp", + "food", + "frie", + "in", + "no", + "oil", + "plant-based", + "popchip", + "potato", + "potatoe", + "preservative", + "salty", + "snack", + "sunflower", + "vegetarian" + ], + "added_countries_tags": [], + "additives_debug_tags": [], + "additives_n": 2, + "additives_old_n": 2, + "additives_old_tags": [ + "en:e330", + "en:e160c" + ], + "additives_original_tags": [ + "en:e330", + "en:e160c" + ], + "additives_prev_original_tags": [ + "en:e330", + "en:e160c" + ], + "additives_tags": [ + "en:e160c", + "en:e330" + ], + "allergens": "en:milk", + "allergens_from_ingredients": "en:milk, milk", + "allergens_from_user": "(en) en:milk", + "allergens_hierarchy": [ + "en:milk" + ], + "allergens_lc": "en", + "allergens_tags": [ + "en:milk" + ], + "amino_acids_prev_tags": [], + "amino_acids_tags": [], + "brands": "Popchips", + "brands_tags": [ + "popchips" + ], + "carbon_footprint_from_known_ingredients_debug": "en:potato 54% x 0.6 = 32.4 g - ", + "carbon_footprint_percent_of_known_ingredients": 54, + "categories": "Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil", + "categories_hierarchy": [ + "en:plant-based-foods-and-beverages", + "en:plant-based-foods", + "en:snacks", + "en:cereals-and-potatoes", + "en:salty-snacks", + "en:appetizers", + "en:chips-and-fries", + "en:crisps", + "en:potato-crisps", + "en:potato-crisps-in-sunflower-oil" + ], + "categories_lc": "en", + "categories_old": "Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil", + "categories_properties": { + "agribalyse_food_code:en": "4004", + "ciqual_food_code:en": "4004" + }, + "categories_properties_tags": [ + "all-products", + "categories-known", + "agribalyse-food-code-4004", + "agribalyse-food-code-known", + "agribalyse-proxy-food-code-unknown", + "ciqual-food-code-4004", + "ciqual-food-code-known", + "agribalyse-known", + "agribalyse-4004" + ], + "categories_tags": [ + "en:plant-based-foods-and-beverages", + "en:plant-based-foods", + "en:snacks", + "en:cereals-and-potatoes", + "en:salty-snacks", + "en:appetizers", + "en:chips-and-fries", + "en:crisps", + "en:potato-crisps", + "en:potato-crisps-in-sunflower-oil" + ], + "category_properties": { + "ciqual_food_name:en": "Potato crisps", + "ciqual_food_name:fr": "Chips de pommes de terre, standard" + }, + "checkers_tags": [], + "ciqual_food_name_tags": [ + "potato-crisps" + ], + "cities_tags": [], + "code": "5060292302201", + "codes_tags": [ + "code-13", + "5060292302xxx", + "506029230xxxx", + "50602923xxxxx", + "5060292xxxxxx", + "506029xxxxxxx", + "50602xxxxxxxx", + "5060xxxxxxxxx", + "506xxxxxxxxxx", + "50xxxxxxxxxxx", + "5xxxxxxxxxxxx" + ], + "compared_to_category": "en:potato-crisps-in-sunflower-oil", + "complete": 0, + "completeness": 0.8875, + "correctors_tags": [ + "tacite", + "tacite-mass-editor", + "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", + "openfoodfacts-contributors", + "swipe-studio", + "yuka.sY2b0xO6T85zoF3NwEKvllZnctbb-gn-LDr4mHzUyem0FYPXMO5by7b5NKg", + "kiliweb", + "packbot", + "foodless", + "yuka.sY2b0xO6T85zoF3NwEKvlmBZVPXu-gnlBU3miFTQ-NeSIbDaMdUtu4fLGas", + "aleene" + ], + "countries": "France,United Kingdom", + "countries_hierarchy": [ + "en:france", + "en:united-kingdom" + ], + "countries_lc": "en", + "countries_tags": [ + "en:france", + "en:united-kingdom" + ], + "created_t": 1433338177, + "creator": "kyzh", + "data_quality_bugs_tags": [], + "data_quality_errors_tags": [], + "data_quality_info_tags": [ + "en:packaging-data-incomplete", + "en:ingredients-percent-analysis-ok", + "en:carbon-footprint-from-known-ingredients-but-not-from-meat-or-fish", + "en:ecoscore-extended-data-computed", + "en:ecoscore-extended-data-less-precise-than-agribalyse", + "en:food-groups-1-known", + "en:food-groups-2-known", + "en:food-groups-3-unknown" + ], + "data_quality_tags": [ + "en:packaging-data-incomplete", + "en:ingredients-percent-analysis-ok", + "en:carbon-footprint-from-known-ingredients-but-not-from-meat-or-fish", + "en:ecoscore-extended-data-computed", + "en:ecoscore-extended-data-less-precise-than-agribalyse", + "en:food-groups-1-known", + "en:food-groups-2-known", + "en:food-groups-3-unknown", + "en:nutrition-value-very-low-for-category-energy", + "en:nutrition-value-very-low-for-category-fat", + "en:nutrition-value-very-high-for-category-sugars", + "en:vegetarian-label-but-could-not-confirm-for-all-ingredients", + "en:ecoscore-origins-of-ingredients-origins-are-100-percent-unknown", + "en:ecoscore-production-system-no-label" + ], + "data_quality_warnings_tags": [ + "en:nutrition-value-very-low-for-category-energy", + "en:nutrition-value-very-low-for-category-fat", + "en:nutrition-value-very-high-for-category-sugars", + "en:vegetarian-label-but-could-not-confirm-for-all-ingredients", + "en:ecoscore-origins-of-ingredients-origins-are-100-percent-unknown", + "en:ecoscore-production-system-no-label" + ], + "data_sources": "App - yuka, Apps, App - Horizon", + "data_sources_tags": [ + "app-yuka", + "apps", + "app-horizon" + ], + "debug_param_sorted_langs": [ + "en" + ], + "ecoscore_data": { + "adjustments": { + "origins_of_ingredients": { + "aggregated_origins": [ + { + "epi_score": "0", + "origin": "en:unknown", + "percent": 100, + "transportation_score": null + } + ], + "epi_score": 0, + "epi_value": -5, + "origins_from_categories": [ + "en:unknown" + ], + "origins_from_origins_field": [ + "en:unknown" + ], + "transportation_score": 0, + "transportation_scores": { + "ad": 0, + "al": 0, + "at": 0, + "ax": 0, + "ba": 0, + "be": 0, + "bg": 0, + "ch": 0, + "cy": 0, + "cz": 0, + "de": 0, + "dk": 0, + "dz": 0, + "ee": 0, + "eg": 0, + "es": 0, + "fi": 0, + "fo": 0, + "fr": 0, + "gg": 0, + "gi": 0, + "gr": 0, + "hr": 0, + "hu": 0, + "ie": 0, + "il": 0, + "im": 0, + "is": 0, + "it": 0, + "je": 0, + "lb": 0, + "li": 0, + "lt": 0, + "lu": 0, + "lv": 0, + "ly": 0, + "ma": 0, + "mc": 0, + "md": 0, + "me": 0, + "mk": 0, + "mt": 0, + "nl": 0, + "no": 0, + "pl": 0, + "ps": 0, + "pt": 0, + "ro": 0, + "rs": 0, + "se": 0, + "si": 0, + "sj": 0, + "sk": 0, + "sm": 0, + "sy": 0, + "tn": 0, + "tr": 0, + "ua": 0, + "uk": 0, + "us": 0, + "va": 0, + "world": 0, + "xk": 0 + }, + "transportation_value": 0, + "transportation_values": { + "ad": 0, + "al": 0, + "at": 0, + "ax": 0, + "ba": 0, + "be": 0, + "bg": 0, + "ch": 0, + "cy": 0, + "cz": 0, + "de": 0, + "dk": 0, + "dz": 0, + "ee": 0, + "eg": 0, + "es": 0, + "fi": 0, + "fo": 0, + "fr": 0, + "gg": 0, + "gi": 0, + "gr": 0, + "hr": 0, + "hu": 0, + "ie": 0, + "il": 0, + "im": 0, + "is": 0, + "it": 0, + "je": 0, + "lb": 0, + "li": 0, + "lt": 0, + "lu": 0, + "lv": 0, + "ly": 0, + "ma": 0, + "mc": 0, + "md": 0, + "me": 0, + "mk": 0, + "mt": 0, + "nl": 0, + "no": 0, + "pl": 0, + "ps": 0, + "pt": 0, + "ro": 0, + "rs": 0, + "se": 0, + "si": 0, + "sj": 0, + "sk": 0, + "sm": 0, + "sy": 0, + "tn": 0, + "tr": 0, + "ua": 0, + "uk": 0, + "us": 0, + "va": 0, + "world": 0, + "xk": 0 + }, + "value": -5, + "values": { + "ad": -5, + "al": -5, + "at": -5, + "ax": -5, + "ba": -5, + "be": -5, + "bg": -5, + "ch": -5, + "cy": -5, + "cz": -5, + "de": -5, + "dk": -5, + "dz": -5, + "ee": -5, + "eg": -5, + "es": -5, + "fi": -5, + "fo": -5, + "fr": -5, + "gg": -5, + "gi": -5, + "gr": -5, + "hr": -5, + "hu": -5, + "ie": -5, + "il": -5, + "im": -5, + "is": -5, + "it": -5, + "je": -5, + "lb": -5, + "li": -5, + "lt": -5, + "lu": -5, + "lv": -5, + "ly": -5, + "ma": -5, + "mc": -5, + "md": -5, + "me": -5, + "mk": -5, + "mt": -5, + "nl": -5, + "no": -5, + "pl": -5, + "ps": -5, + "pt": -5, + "ro": -5, + "rs": -5, + "se": -5, + "si": -5, + "sj": -5, + "sk": -5, + "sm": -5, + "sy": -5, + "tn": -5, + "tr": -5, + "ua": -5, + "uk": -5, + "us": -5, + "va": -5, + "world": -5, + "xk": -5 + }, + "warning": "origins_are_100_percent_unknown" + }, + "packaging": { + "non_recyclable_and_non_biodegradable_materials": 2, + "packagings": [ + { + "ecoscore_material_score": 0, + "ecoscore_shape_ratio": 1, + "material": "en:plastic", + "non_recyclable_and_non_biodegradable": "maybe", + "shape": "en:packet" + }, + { + "ecoscore_material_score": 0, + "ecoscore_shape_ratio": 1, + "material": "en:plastic", + "non_recyclable_and_non_biodegradable": "maybe", + "shape": "en:packet" + } + ], + "score": -100, + "value": -15 + }, + "production_system": { + "labels": [], + "value": 0, + "warning": "no_label" + }, + "threatened_species": {} + }, + "agribalyse": { + "agribalyse_food_code": "4004", + "co2_agriculture": 0.82655583, + "co2_consumption": 0, + "co2_distribution": 0.019537154, + "co2_packaging": 0.28154442, + "co2_processing": 0.23156851, + "co2_total": 1.543669164, + "co2_transportation": 0.18446325, + "code": "4004", + "dqr": "2.45", + "ef_agriculture": 0.14029442, + "ef_consumption": 0, + "ef_distribution": 0.004831936, + "ef_packaging": 0.02370999, + "ef_processing": 0.038707917, + "ef_total": 0.223317319, + "ef_transportation": 0.015773056, + "is_beverage": 0, + "name_en": "Potato crisps", + "name_fr": "Chips de pommes de terre, standard", + "score": 87, + "version": "3.1" + }, + "grade": "b", + "grades": { + "ad": "b", + "al": "b", + "at": "b", + "ax": "b", + "ba": "b", + "be": "b", + "bg": "b", + "ch": "b", + "cy": "b", + "cz": "b", + "de": "b", + "dk": "b", + "dz": "b", + "ee": "b", + "eg": "b", + "es": "b", + "fi": "b", + "fo": "b", + "fr": "b", + "gg": "b", + "gi": "b", + "gr": "b", + "hr": "b", + "hu": "b", + "ie": "b", + "il": "b", + "im": "b", + "is": "b", + "it": "b", + "je": "b", + "lb": "b", + "li": "b", + "lt": "b", + "lu": "b", + "lv": "b", + "ly": "b", + "ma": "b", + "mc": "b", + "md": "b", + "me": "b", + "mk": "b", + "mt": "b", + "nl": "b", + "no": "b", + "pl": "b", + "ps": "b", + "pt": "b", + "ro": "b", + "rs": "b", + "se": "b", + "si": "b", + "sj": "b", + "sk": "b", + "sm": "b", + "sy": "b", + "tn": "b", + "tr": "b", + "ua": "b", + "uk": "b", + "us": "b", + "va": "b", + "world": "b", + "xk": "b" + }, + "missing": { + "labels": 1, + "origins": 1 + }, + "missing_data_warning": 1, + "previous_data": { + "agribalyse": { + "agribalyse_food_code": "4004", + "co2_agriculture": 1.2992636, + "co2_consumption": 0, + "co2_distribution": 0.029120657, + "co2_packaging": 0.28581962, + "co2_processing": 0.39294234, + "co2_total": 2.2443641, + "co2_transportation": 0.23728203, + "code": "4004", + "dqr": "2.45", + "ef_agriculture": 0.18214682, + "ef_consumption": 0, + "ef_distribution": 0.0098990521, + "ef_packaging": 0.021558384, + "ef_processing": 0.057508389, + "ef_total": 0.29200269, + "ef_transportation": 0.020894187, + "is_beverage": 0, + "name_en": "Potato crisps", + "name_fr": "Chips de pommes de terre, standard", + "score": 78 + }, + "grade": "b", + "score": 63 + }, + "score": 67, + "scores": { + "ad": 67, + "al": 67, + "at": 67, + "ax": 67, + "ba": 67, + "be": 67, + "bg": 67, + "ch": 67, + "cy": 67, + "cz": 67, + "de": 67, + "dk": 67, + "dz": 67, + "ee": 67, + "eg": 67, + "es": 67, + "fi": 67, + "fo": 67, + "fr": 67, + "gg": 67, + "gi": 67, + "gr": 67, + "hr": 67, + "hu": 67, + "ie": 67, + "il": 67, + "im": 67, + "is": 67, + "it": 67, + "je": 67, + "lb": 67, + "li": 67, + "lt": 67, + "lu": 67, + "lv": 67, + "ly": 67, + "ma": 67, + "mc": 67, + "md": 67, + "me": 67, + "mk": 67, + "mt": 67, + "nl": 67, + "no": 67, + "pl": 67, + "ps": 67, + "pt": 67, + "ro": 67, + "rs": 67, + "se": 67, + "si": 67, + "sj": 67, + "sk": 67, + "sm": 67, + "sy": 67, + "tn": 67, + "tr": 67, + "ua": 67, + "uk": 67, + "us": 67, + "va": 67, + "world": 67, + "xk": 67 + }, + "status": "known" + }, + "ecoscore_extended_data": { + "impact": { + "ef_single_score_log_stddev": 0.0664290643574977, + "likeliest_impacts": { + "Climate_change": 0.0835225930657116, + "EF_single_score": 0.0132996566234689 + }, + "likeliest_recipe": { + "en:Oak_smoked_sea_salti_yeast_extract": 0.103505496656251, + "en:e160c": 0.10350549665625, + "en:e330": 0.10350549665625, + "en:flavouring": 0.10350549665625, + "en:garlic_powder": 0.103505496656251, + "en:milk": 1.55847864453775, + "en:onion": 0.15510736429208, + "en:potato": 69.2208020730349, + "en:potato_starch": 10.5320407294931, + "en:rice_flour": 13.8595510001351, + "en:salt": 1.3345917157533, + "en:spice": 0.10350549665625, + "en:sugar": 10.2883618334396, + "en:sunflower_oil": 14.1645835312727, + "en:tomato_powder": 0.10350549665625, + "en:water": 6.24510964041154, + "en:yeast_powder": 0.103505496656251 + }, + "mass_ratio_uncharacterized": 0.0244618467395455, + "uncharacterized_ingredients": { + "impact": [ + "en:yeast-powder", + "en:flavouring", + "en:Oak smoked sea salti yeast extract", + "en:e160c", + "en:e330" + ], + "nutrition": [ + "en:flavouring", + "en:Oak smoked sea salti yeast extract" + ] + }, + "uncharacterized_ingredients_mass_proportion": { + "impact": 0.0244618467395455, + "nutrition": 0.0106506947223728 + }, + "uncharacterized_ingredients_ratio": { + "impact": 0.3125, + "nutrition": 0.125 + }, + "warnings": [ + "Fermentation agents are present in the product (en:yeast-powder). Carbohydrates and sugars mass balance will not be considered to estimate potential recipes", + "The product has a high number of impact uncharacterized ingredients: 31%" + ] + } + }, + "ecoscore_extended_data_version": "4", + "ecoscore_grade": "b", + "ecoscore_score": 67, + "ecoscore_tags": [ + "b" + ], + "editors": [ + "kyzh", + "tacite" + ], + "editors_tags": [ + "kiliweb", + "openfoodfacts-contributors", + "aleene", + "tacite-mass-editor", + "yuka.sY2b0xO6T85zoF3NwEKvlmBZVPXu-gnlBU3miFTQ-NeSIbDaMdUtu4fLGas", + "kyzh", + "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", + "ecoscore-impact-estimator", + "tacite", + "foodless", + "yuka.sY2b0xO6T85zoF3NwEKvllZnctbb-gn-LDr4mHzUyem0FYPXMO5by7b5NKg", + "swipe-studio", + "packbot" + ], + "emb_codes": "", + "emb_codes_20141016": "", + "emb_codes_orig": "", + "emb_codes_tags": [], + "entry_dates_tags": [ + "2015-06-03", + "2015-06", + "2015" + ], + "expiration_date": "11/05/2016", + "food_groups": "en:appetizers", + "food_groups_tags": [ + "en:salty-snacks", + "en:appetizers" + ], + "fruits-vegetables-nuts_100g_estimate": 0, + "generic_name": "", + "generic_name_en": "", + "generic_name_fr": "", + "generic_name_fr_debug_tags": [], + "id": "5060292302201", + "image_front_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", + "image_front_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", + "image_front_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", + "image_ingredients_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg", + "image_ingredients_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg", + "image_ingredients_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg", + "image_nutrition_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg", + "image_nutrition_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg", + "image_nutrition_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg", + "image_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", + "image_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", + "image_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", + "images": { + "1": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338177, + "uploader": "kyzh" + }, + "2": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338194, + "uploader": "kyzh" + }, + "3": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338203, + "uploader": "kyzh" + }, + "4": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338215, + "uploader": "kyzh" + }, + "5": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338229, + "uploader": "kyzh" + }, + "6": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338245, + "uploader": "kyzh" + }, + "7": { + "sizes": { + "100": { + "h": 43, + "w": 100 + }, + "400": { + "h": 171, + "w": 400 + }, + "full": { + "h": 846, + "w": 1974 + } + }, + "uploaded_t": "1508236270", + "uploader": "kiliweb" + }, + "8": { + "sizes": { + "100": { + "h": 100, + "w": 82 + }, + "400": { + "h": 400, + "w": 326 + }, + "full": { + "h": 1140, + "w": 930 + } + }, + "uploaded_t": 1620505759, + "uploader": "kiliweb" + }, + "9": { + "sizes": { + "100": { + "h": 56, + "w": 100 + }, + "400": { + "h": 225, + "w": 400 + }, + "full": { + "h": 569, + "w": 1011 + } + }, + "uploaded_t": 1656075071, + "uploader": "kiliweb" + }, + "front": { + "geometry": "1421x1825-0-95", + "imgid": "1", + "normalize": "false", + "rev": "9", + "sizes": { + "100": { + "h": 100, + "w": 78 + }, + "200": { + "h": 200, + "w": 156 + }, + "400": { + "h": 400, + "w": 311 + }, + "full": { + "h": 1825, + "w": 1421 + } + }, + "white_magic": "true" + }, + "front_en": { + "angle": 0, + "coordinates_image_size": "full", + "geometry": "0x0--1--1", + "imgid": "8", + "normalize": null, + "rev": "23", + "sizes": { + "100": { + "h": 100, + "w": 82 + }, + "200": { + "h": 200, + "w": 163 + }, + "400": { + "h": 400, + "w": 326 + }, + "full": { + "h": 1140, + "w": 930 + } + }, + "white_magic": null, + "x1": "-1", + "x2": "-1", + "y1": "-1", + "y2": "-1" + }, + "ingredients": { + "geometry": "1730x526-125-304", + "imgid": "5", + "normalize": "false", + "ocr": 1, + "orientation": "0", + "rev": "11", + "sizes": { + "100": { + "h": 30, + "w": 100 + }, + "200": { + "h": 61, + "w": 200 + }, + "400": { + "h": 122, + "w": 400 + }, + "full": { + "h": 526, + "w": 1730 + } + }, + "white_magic": "false" + }, + "ingredients_en": { + "geometry": "1730x526-125-304", + "imgid": "5", + "normalize": "false", + "ocr": 1, + "orientation": "0", + "rev": "11", + "sizes": { + "100": { + "h": 30, + "w": 100 + }, + "200": { + "h": 61, + "w": 200 + }, + "400": { + "h": 122, + "w": 400 + }, + "full": { + "h": 526, + "w": 1730 + } + }, + "white_magic": "false" + }, + "nutrition": { + "geometry": "1131x920-150-794", + "imgid": "3", + "normalize": "false", + "ocr": 1, + "orientation": "0", + "rev": "10", + "sizes": { + "100": { + "h": 81, + "w": 100 + }, + "200": { + "h": 163, + "w": 200 + }, + "400": { + "h": 325, + "w": 400 + }, + "full": { + "h": 920, + "w": 1131 + } + }, + "white_magic": "false" + }, + "nutrition_en": { + "angle": 0, + "coordinates_image_size": "full", + "geometry": "0x0--1--1", + "imgid": "9", + "normalize": null, + "rev": "32", + "sizes": { + "100": { + "h": 56, + "w": 100 + }, + "200": { + "h": 113, + "w": 200 + }, + "400": { + "h": 225, + "w": 400 + }, + "full": { + "h": 569, + "w": 1011 + } + }, + "white_magic": null, + "x1": "-1", + "x2": "-1", + "y1": "-1", + "y2": "-1" + } + }, + "informers_tags": [ + "kyzh", + "tacite", + "tacite-mass-editor", + "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", + "openfoodfacts-contributors", + "aleene" + ], + "ingredients": [ + { + "ciqual_food_code": "4003", + "id": "en:potato", + "percent": 54, + "percent_estimate": 54, + "percent_max": 54, + "percent_min": 54, + "processing": "en:dried", + "rank": 1, + "text": "potatoes", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "17440", + "from_palm_oil": "no", + "id": "en:sunflower-oil", + "percent_estimate": 28.75, + "percent_max": 46, + "percent_min": 11.5, + "rank": 2, + "text": "sunflower oil", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "has_sub_ingredients": "yes", + "id": "en:coating", + "percent_estimate": 8.625, + "percent_max": 33.3333333333333, + "percent_min": 0, + "rank": 3, + "text": "seasoning", + "vegan": "maybe", + "vegetarian": "maybe" + }, + { + "ciqual_food_code": "9520", + "id": "en:rice-flour", + "percent_estimate": 4.3125, + "percent_max": 17.25, + "percent_min": 0, + "rank": 4, + "text": "rice flour", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "en:potato-starch", + "percent_estimate": 4.3125, + "percent_max": 11.5, + "percent_min": 0, + "rank": 5, + "text": "potato starch", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "en:sugar", + "percent_estimate": 4.3125, + "percent_max": 8.7, + "percent_min": 0, + "text": "sugar", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "has_sub_ingredients": "yes", + "id": "en:whey-powder", + "percent_estimate": 2.15625, + "percent_max": 8.7, + "percent_min": 0, + "text": "whey powder", + "vegan": "no", + "vegetarian": "maybe" + }, + { + "ciqual_food_code": "11058", + "id": "en:salt", + "percent_estimate": 1.05, + "percent_max": 2.1, + "percent_min": 0, + "text": "salt", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "20034", + "id": "en:onion", + "percent_estimate": 0.553125, + "percent_max": 2.1, + "percent_min": 0, + "processing": "en:powder", + "text": "onion", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "en:yeast-powder", + "percent_estimate": 0.2765625, + "percent_max": 2.1, + "percent_min": 0, + "text": "yeast powder", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "11000", + "id": "en:garlic", + "percent_estimate": 0.13828125, + "percent_max": 2.1, + "percent_min": 0, + "processing": "en:powder", + "text": "garlic", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "20047", + "id": "en:tomato", + "percent_estimate": 0.0691406250000002, + "percent_max": 2.1, + "percent_min": 0, + "processing": "en:powder", + "text": "tomato", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "en:oak-smoked-sea-salti-yeast-extract", + "percent_estimate": 0.0345703124999996, + "percent_max": 2.1, + "percent_min": 0, + "text": "Oak smoked sea salti yeast extract" + }, + { + "id": "en:flavouring", + "percent_estimate": 0.0172851562499998, + "percent_max": 2.1, + "percent_min": 0, + "text": "flavourings", + "vegan": "maybe", + "vegetarian": "maybe" + }, + { + "id": "en:spice", + "percent_estimate": 0.00864257812500036, + "percent_max": 2.1, + "percent_min": 0, + "text": "spices", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "has_sub_ingredients": "yes", + "id": "en:acid", + "percent_estimate": 0.00432128906250018, + "percent_max": 2.1, + "percent_min": 0, + "text": "acid" + }, + { + "has_sub_ingredients": "yes", + "id": "en:colour", + "percent_estimate": 0.00432128906249929, + "percent_max": 2.1, + "percent_min": 0, + "text": "colour" + }, + { + "id": "en:milk", + "percent_estimate": 2.15625, + "percent_max": 8.7, + "percent_min": 0, + "text": "milk", + "vegan": "no", + "vegetarian": "yes" + }, + { + "id": "en:e330", + "percent_estimate": 0.00432128906250018, + "percent_max": 2.1, + "percent_min": 0, + "text": "citric acid", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "en:e160c", + "percent_estimate": 0.00432128906249929, + "percent_max": 2.1, + "percent_min": 0, + "text": "paprika extract", + "vegan": "yes", + "vegetarian": "yes" + } + ], + "ingredients_analysis": { + "en:non-vegan": [ + "en:whey-powder", + "en:milk" + ], + "en:palm-oil-content-unknown": [ + "en:oak-smoked-sea-salti-yeast-extract" + ], + "en:vegan-status-unknown": [ + "en:oak-smoked-sea-salti-yeast-extract" + ], + "en:vegetarian-status-unknown": [ + "en:oak-smoked-sea-salti-yeast-extract" + ] + }, + "ingredients_analysis_tags": [ + "en:palm-oil-free", + "en:non-vegan", + "en:vegetarian" + ], + "ingredients_debug": [ + "54% dried potatoes", + ",", + null, + null, + null, + " sunflower oil", + ",", + null, + null, + null, + " seasoning ", + "(", + "(", + null, + null, + "sugar", + ",", + null, + null, + null, + " whey powder ", + "[", + "[", + null, + null, + "milk]", + ",", + null, + null, + null, + " salt", + ",", + null, + null, + null, + " onion powder", + ",", + null, + null, + null, + " yeast powder", + ",", + null, + null, + null, + " garlic powder", + ",", + null, + null, + null, + " tomato powder", + ",", + null, + null, + null, + " Oak smoked sea salti yeast extract", + ",", + null, + null, + null, + " flavourings", + ",", + null, + null, + null, + " spices", + ",", + null, + null, + null, + " acid", + ":", + ":", + null, + null, + " citric acid", + ",", + null, + null, + null, + " colour", + ":", + ":", + null, + null, + " paprika extract)", + ",", + null, + null, + null, + " rice flour", + ",", + null, + null, + null, + " potato starch." + ], + "ingredients_from_or_that_may_be_from_palm_oil_n": 0, + "ingredients_from_palm_oil_n": 0, + "ingredients_from_palm_oil_tags": [], + "ingredients_hierarchy": [ + "en:potato", + "en:vegetable", + "en:root-vegetable", + "en:tuber", + "en:sunflower-oil", + "en:oil-and-fat", + "en:vegetable-oil-and-fat", + "en:vegetable-oil", + "en:coating", + "en:rice-flour", + "en:flour", + "en:rice", + "en:potato-starch", + "en:starch", + "en:sugar", + "en:added-sugar", + "en:disaccharide", + "en:whey-powder", + "en:dairy", + "en:whey", + "en:salt", + "en:onion", + "en:onion-family-vegetable", + "en:yeast-powder", + "en:yeast", + "en:garlic", + "en:tomato", + "en:fruit-vegetable", + "en:oak-smoked-sea-salti-yeast-extract", + "en:flavouring", + "en:spice", + "en:condiment", + "en:acid", + "en:colour", + "en:milk", + "en:e330", + "en:e160c" + ], + "ingredients_ids_debug": [ + "54-dried-potatoes", + "sunflower-oil", + "seasoning", + "sugar", + "whey-powder", + "milk", + "salt", + "onion-powder", + "yeast-powder", + "garlic-powder", + "tomato-powder", + "oak-smoked-sea-salti-yeast-extract", + "flavourings", + "spices", + "acid", + "citric-acid", + "colour", + "paprika-extract", + "rice-flour", + "potato-starch" + ], + "ingredients_n": 20, + "ingredients_n_tags": [ + "20", + "11-20" + ], + "ingredients_original_tags": [ + "en:potato", + "en:sunflower-oil", + "en:coating", + "en:rice-flour", + "en:potato-starch", + "en:sugar", + "en:whey-powder", + "en:salt", + "en:onion", + "en:yeast-powder", + "en:garlic", + "en:tomato", + "en:oak-smoked-sea-salti-yeast-extract", + "en:flavouring", + "en:spice", + "en:acid", + "en:colour", + "en:milk", + "en:e330", + "en:e160c" + ], + "ingredients_percent_analysis": 1, + "ingredients_tags": [ + "en:potato", + "en:vegetable", + "en:root-vegetable", + "en:tuber", + "en:sunflower-oil", + "en:oil-and-fat", + "en:vegetable-oil-and-fat", + "en:vegetable-oil", + "en:coating", + "en:rice-flour", + "en:flour", + "en:rice", + "en:potato-starch", + "en:starch", + "en:sugar", + "en:added-sugar", + "en:disaccharide", + "en:whey-powder", + "en:dairy", + "en:whey", + "en:salt", + "en:onion", + "en:onion-family-vegetable", + "en:yeast-powder", + "en:yeast", + "en:garlic", + "en:tomato", + "en:fruit-vegetable", + "en:oak-smoked-sea-salti-yeast-extract", + "en:flavouring", + "en:spice", + "en:condiment", + "en:acid", + "en:colour", + "en:milk", + "en:e330", + "en:e160c" + ], + "ingredients_text": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_debug": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_debug_tags": [], + "ingredients_text_en": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_fr": "", + "ingredients_text_fr_debug_tags": [], + "ingredients_text_with_allergens": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_with_allergens_en": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_that_may_be_from_palm_oil_n": 0, + "ingredients_that_may_be_from_palm_oil_tags": [], + "ingredients_with_specified_percent_n": 1, + "ingredients_with_specified_percent_sum": 54, + "ingredients_with_unspecified_percent_n": 15, + "ingredients_with_unspecified_percent_sum": 46, + "ingredients_without_ciqual_codes": [ + "en:e160c", + "en:e330", + "en:flavouring", + "en:milk", + "en:oak-smoked-sea-salti-yeast-extract", + "en:potato-starch", + "en:spice", + "en:sugar", + "en:yeast-powder" + ], + "ingredients_without_ciqual_codes_n": 9, + "interface_version_created": "20120622", + "interface_version_modified": "20190830", + "known_ingredients_n": 36, + "labels": "Vegetarian, No preservatives, No artificial anything", + "labels_hierarchy": [ + "en:vegetarian", + "en:no-preservatives", + "en:No artificial anything" + ], + "labels_lc": "en", + "labels_old": "Vegetarian,No preservatives,No artificial anything", + "labels_tags": [ + "en:vegetarian", + "en:no-preservatives", + "en:no-artificial-anything" + ], + "lang": "en", + "languages": { + "en:english": 5 + }, + "languages_codes": { + "en": 5 + }, + "languages_hierarchy": [ + "en:english" + ], + "languages_tags": [ + "en:english", + "en:1" + ], + "last_edit_dates_tags": [ + "2023-03-24", + "2023-03", + "2023" + ], + "last_editor": "aleene", + "last_image_dates_tags": [ + "2022-06-24", + "2022-06", + "2022" + ], + "last_image_t": 1656075071, + "last_modified_by": "aleene", + "last_modified_t": 1679645675, + "lc": "en", + "link": "", + "main_countries_tags": [], + "manufacturing_places": "European Union", + "manufacturing_places_tags": [ + "european-union" + ], + "max_imgid": "9", + "minerals_prev_tags": [], + "minerals_tags": [], + "misc_tags": [ + "en:nutriscore-computed", + "en:nutrition-fruits-vegetables-nuts-from-category", + "en:nutrition-fruits-vegetables-nuts-from-category-en-potato-crisps-in-sunflower-oil", + "en:nutrition-fruits-vegetables-legumes-from-category", + "en:nutrition-fruits-vegetables-legumes-from-category-en-potato-crisps-in-sunflower-oil", + "en:nutriscore-2021-same-as-2023", + "en:nutriscore-2021-d-2023-d", + "en:packagings-number-of-components-2", + "en:packagings-not-complete", + "en:packagings-not-empty-but-not-complete", + "en:packagings-not-empty", + "en:ecoscore-extended-data-computed", + "en:ecoscore-extended-data-version-4", + "en:ecoscore-missing-data-warning", + "en:ecoscore-missing-data-labels", + "en:ecoscore-missing-data-origins", + "en:ecoscore-computed", + "en:ecoscore-changed" + ], + "no_nutrition_data": "", + "nova_group": 4, + "nova_group_debug": "", + "nova_groups": "4", + "nova_groups_markers": { + "3": [ + [ + "categories", + "en:salty-snacks" + ], + [ + "ingredients", + "en:salt" + ], + [ + "ingredients", + "en:starch" + ], + [ + "ingredients", + "en:sugar" + ], + [ + "ingredients", + "en:vegetable-oil" + ] + ], + "4": [ + [ + "additives", + "en:e160c" + ], + [ + "ingredients", + "en:colour" + ], + [ + "ingredients", + "en:flavouring" + ], + [ + "ingredients", + "en:whey" + ] + ] + }, + "nova_groups_tags": [ + "en:4-ultra-processed-food-and-drink-products" + ], + "nucleotides_prev_tags": [], + "nucleotides_tags": [], + "nutrient_levels": { + "fat": "moderate", + "salt": "high", + "saturated-fat": "low", + "sugars": "moderate" + }, + "nutrient_levels_tags": [ + "en:fat-in-moderate-quantity", + "en:saturated-fat-in-low-quantity", + "en:sugars-in-moderate-quantity", + "en:salt-in-high-quantity" + ], + "nutriments": { + "carbohydrates": 62, + "carbohydrates_100g": 62, + "carbohydrates_serving": 14.3, + "carbohydrates_unit": "g", + "carbohydrates_value": 62, + "carbon-footprint-from-known-ingredients_100g": 32.4, + "carbon-footprint-from-known-ingredients_product": 7.45, + "carbon-footprint-from-known-ingredients_serving": 7.45, + "energy": 1759, + "energy-kcal": 420, + "energy-kcal_100g": 420, + "energy-kcal_serving": 96.6, + "energy-kcal_unit": "kcal", + "energy-kcal_value": 420, + "energy-kcal_value_computed": 413.6, + "energy-kj": 1759, + "energy-kj_100g": 1759, + "energy-kj_serving": 405, + "energy-kj_unit": "kJ", + "energy-kj_value": 1759, + "energy-kj_value_computed": 1737.1, + "energy_100g": 1759, + "energy_serving": 405, + "energy_unit": "kJ", + "energy_value": 1759, + "fat": 15, + "fat_100g": 15, + "fat_serving": 3.45, + "fat_unit": "g", + "fat_value": 15, + "fiber": 3.9, + "fiber_100g": 3.9, + "fiber_serving": 0.897, + "fiber_unit": "g", + "fiber_value": 3.9, + "fruits-vegetables-legumes-estimate-from-ingredients_100g": 0, + "fruits-vegetables-legumes-estimate-from-ingredients_serving": 0, + "fruits-vegetables-nuts-estimate-from-ingredients_100g": 0, + "fruits-vegetables-nuts-estimate-from-ingredients_serving": 0, + "nova-group": 4, + "nova-group_100g": 4, + "nova-group_serving": 4, + "nutrition-score-fr": 12, + "nutrition-score-fr_100g": 12, + "proteins": 5.7, + "proteins_100g": 5.7, + "proteins_serving": 1.31, + "proteins_unit": "g", + "proteins_value": 5.7, + "salt": 2.1, + "salt_100g": 2.1, + "salt_serving": 0.483, + "salt_unit": "g", + "salt_value": 2.1, + "saturated-fat": 1.4, + "saturated-fat_100g": 1.4, + "saturated-fat_serving": 0.322, + "saturated-fat_unit": "g", + "saturated-fat_value": 1.4, + "sodium": 0.84, + "sodium_100g": 0.84, + "sodium_serving": 0.193, + "sodium_unit": "g", + "sodium_value": 0.84, + "sugars": 8.7, + "sugars_100g": 8.7, + "sugars_serving": 2, + "sugars_unit": "g", + "sugars_value": 8.7 + }, + "nutriscore": { + "2021": { + "category_available": 1, + "data": { + "energy": 1759, + "energy_points": 5, + "energy_value": 1759, + "fiber": 3.9, + "fiber_points": 4, + "fiber_value": 3.9, + "fruits_vegetables_nuts_colza_walnut_olive_oils": "0", + "fruits_vegetables_nuts_colza_walnut_olive_oils_points": 0, + "fruits_vegetables_nuts_colza_walnut_olive_oils_value": 0, + "is_beverage": 0, + "is_cheese": 0, + "is_fat": 0, + "is_water": 0, + "negative_points": 16, + "positive_points": 4, + "proteins": 5.7, + "proteins_points": 3, + "proteins_value": 5.7, + "saturated_fat": 1.4, + "saturated_fat_points": 1, + "saturated_fat_value": 1.4, + "sodium": 840, + "sodium_points": 9, + "sodium_value": 840, + "sugars": 8.7, + "sugars_points": 1, + "sugars_value": 8.7 + }, + "grade": "d", + "nutrients_available": 1, + "nutriscore_applicable": 1, + "nutriscore_computed": 1, + "score": 12 + }, + "2023": { + "category_available": 1, + "data": { + "count_proteins": 0, + "count_proteins_reason": "negative_points_more_than_11", + "energy": 1759, + "energy_points": 5, + "fiber": 3.9, + "fiber_points": 1, + "fruits_vegetables_legumes": 0, + "fruits_vegetables_legumes_points": 0, + "is_beverage": 0, + "is_cheese": 0, + "is_fat_oil_nuts_seeds": 0, + "is_red_meat_product": 0, + "is_water": 0, + "negative_nutrients": [ + "energy", + "sugars", + "saturated_fat", + "salt", + "non_nutritive_sweeteners" + ], + "negative_points": 18, + "positive_nutrients": [ + "fruits_vegetables_legumes", + "fiber" + ], + "positive_points": 1, + "proteins": 5.7, + "proteins_points": 2, + "salt": 2.1, + "salt_points": 10, + "saturated_fat": 1.4, + "saturated_fat_points": 1, + "sugars": 8.7, + "sugars_points": 2 + }, + "grade": "d", + "nutrients_available": 1, + "nutriscore_applicable": 1, + "nutriscore_computed": 1, + "score": 17 + } + }, + "nutriscore_2021_tags": [ + "d" + ], + "nutriscore_2023_tags": [ + "d" + ], + "nutriscore_data": { + "energy": 1759, + "energy_points": 5, + "energy_value": 1759, + "fiber": 3.9, + "fiber_points": 4, + "fiber_value": 3.9, + "fruits_vegetables_nuts_colza_walnut_olive_oils": "0", + "fruits_vegetables_nuts_colza_walnut_olive_oils_points": 0, + "fruits_vegetables_nuts_colza_walnut_olive_oils_value": 0, + "grade": "d", + "is_beverage": 0, + "is_cheese": 0, + "is_fat": 0, + "is_water": 0, + "negative_points": 16, + "positive_points": 4, + "proteins": 5.7, + "proteins_points": 3, + "proteins_value": 5.7, + "saturated_fat": 1.4, + "saturated_fat_points": 1, + "saturated_fat_value": 1.4, + "score": 12, + "sodium": 840, + "sodium_points": 9, + "sodium_value": 840, + "sugars": 8.7, + "sugars_points": 1, + "sugars_value": 8.7 + }, + "nutriscore_grade": "d", + "nutriscore_score": 12, + "nutriscore_score_opposite": -12, + "nutriscore_tags": [ + "d" + ], + "nutriscore_version": "2021", + "nutrition_data": "on", + "nutrition_data_per": "100g", + "nutrition_data_prepared": "", + "nutrition_data_prepared_per": "100g", + "nutrition_grade_fr": "d", + "nutrition_grades": "d", + "nutrition_grades_tags": [ + "d" + ], + "nutrition_score_beverage": 0, + "nutrition_score_debug": "", + "obsolete": "", + "obsolete_since_date": "", + "origin": "", + "origin_en": "", + "origins": "", + "origins_hierarchy": [], + "origins_lc": "en", + "origins_old": "", + "origins_tags": [], + "other_nutritional_substances_tags": [], + "packaging": "Plastic,Mixed plastic film-packet", + "packaging_hierarchy": [ + "en:plastic", + "en:Mixed plastic film-packet" + ], + "packaging_lc": "en", + "packaging_materials_tags": [ + "en:plastic" + ], + "packaging_old": "Plastic, Mixed plastic-packet", + "packaging_old_before_taxonomization": "Plastic, en:mixed plastic-packet", + "packaging_recycling_tags": [], + "packaging_shapes_tags": [ + "en:packet" + ], + "packaging_tags": [ + "en:plastic", + "en:mixed-plastic-film-packet" + ], + "packaging_text": "", + "packaging_text_en": "", + "packagings": [ + { + "material": "en:plastic", + "shape": "en:packet" + }, + { + "material": "en:plastic", + "shape": "en:packet" + } + ], + "packagings_complete": 0, + "packagings_materials": { + "all": {}, + "en:plastic": {} + }, + "packagings_n": 2, + "photographers_tags": [ + "kyzh", + "kiliweb" + ], + "pnns_groups_1": "Salty snacks", + "pnns_groups_1_tags": [ + "salty-snacks", + "known" + ], + "pnns_groups_2": "Appetizers", + "pnns_groups_2_tags": [ + "appetizers", + "known" + ], + "popularity_key": 21900000007, + "popularity_tags": [ + "bottom-25-percent-scans-2019", + "bottom-20-percent-scans-2019", + "bottom-15-percent-scans-2019", + "top-90-percent-scans-2019", + "top-10000-gb-scans-2019", + "top-50000-gb-scans-2019", + "top-100000-gb-scans-2019", + "top-country-gb-scans-2019", + "bottom-25-percent-scans-2020", + "top-80-percent-scans-2020", + "top-85-percent-scans-2020", + "top-90-percent-scans-2020", + "top-5000-gb-scans-2020", + "top-10000-gb-scans-2020", + "top-50000-gb-scans-2020", + "top-100000-gb-scans-2020", + "top-country-gb-scans-2020", + "top-100000-scans-2021", + "at-least-5-scans-2021", + "top-75-percent-scans-2021", + "top-80-percent-scans-2021", + "top-85-percent-scans-2021", + "top-90-percent-scans-2021", + "top-5000-gb-scans-2021", + "top-10000-gb-scans-2021", + "top-50000-gb-scans-2021", + "top-100000-gb-scans-2021", + "top-country-gb-scans-2021", + "at-least-5-gb-scans-2021", + "top-5000-ie-scans-2021", + "top-10000-ie-scans-2021", + "top-50000-ie-scans-2021", + "top-100000-ie-scans-2021", + "top-1000-mu-scans-2021", + "top-5000-mu-scans-2021", + "top-10000-mu-scans-2021", + "top-50000-mu-scans-2021", + "top-100000-mu-scans-2021", + "top-100000-scans-2022", + "top-75-percent-scans-2022", + "top-80-percent-scans-2022", + "top-85-percent-scans-2022", + "top-90-percent-scans-2022", + "top-5000-gb-scans-2022", + "top-10000-gb-scans-2022", + "top-50000-gb-scans-2022", + "top-100000-gb-scans-2022", + "top-country-gb-scans-2022", + "top-500-hk-scans-2022", + "top-1000-hk-scans-2022", + "top-5000-hk-scans-2022", + "top-10000-hk-scans-2022", + "top-50000-hk-scans-2022", + "top-100000-hk-scans-2022", + "top-10000-us-scans-2022", + "top-50000-us-scans-2022", + "top-100000-us-scans-2022" + ], + "product_name": "Barbeque Potato Chips", + "product_name_en": "Barbeque Potato Chips", + "product_name_fr": "", + "product_name_fr_debug_tags": [], + "product_quantity": "23", + "purchase_places": "", + "purchase_places_tags": [], + "quantity": "23 g", + "removed_countries_tags": [], + "rev": 33, + "scans_n": 6, + "selected_images": { + "front": { + "display": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg" + }, + "small": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg" + }, + "thumb": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg" + } + }, + "ingredients": { + "display": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg" + }, + "small": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg" + }, + "thumb": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg" + } + }, + "nutrition": { + "display": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg" + }, + "small": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg" + }, + "thumb": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg" + } + } + }, + "serving_quantity": "23", + "serving_size": "23 g", + "sortkey": 1535456524, + "states": "en:to-be-completed, en:nutrition-facts-completed, en:ingredients-completed, en:expiration-date-completed, en:packaging-code-to-be-completed, en:characteristics-to-be-completed, en:origins-to-be-completed, en:categories-completed, en:brands-completed, en:packaging-completed, en:quantity-completed, en:product-name-completed, en:photos-to-be-validated, en:packaging-photo-to-be-selected, en:nutrition-photo-selected, en:ingredients-photo-selected, en:front-photo-selected, en:photos-uploaded", + "states_hierarchy": [ + "en:to-be-completed", + "en:nutrition-facts-completed", + "en:ingredients-completed", + "en:expiration-date-completed", + "en:packaging-code-to-be-completed", + "en:characteristics-to-be-completed", + "en:origins-to-be-completed", + "en:categories-completed", + "en:brands-completed", + "en:packaging-completed", + "en:quantity-completed", + "en:product-name-completed", + "en:photos-to-be-validated", + "en:packaging-photo-to-be-selected", + "en:nutrition-photo-selected", + "en:ingredients-photo-selected", + "en:front-photo-selected", + "en:photos-uploaded" + ], + "states_tags": [ + "en:to-be-completed", + "en:nutrition-facts-completed", + "en:ingredients-completed", + "en:expiration-date-completed", + "en:packaging-code-to-be-completed", + "en:characteristics-to-be-completed", + "en:origins-to-be-completed", + "en:categories-completed", + "en:brands-completed", + "en:packaging-completed", + "en:quantity-completed", + "en:product-name-completed", + "en:photos-to-be-validated", + "en:packaging-photo-to-be-selected", + "en:nutrition-photo-selected", + "en:ingredients-photo-selected", + "en:front-photo-selected", + "en:photos-uploaded" + ], + "stores": "", + "stores_tags": [], + "teams": "swipe-studio", + "teams_tags": [ + "swipe-studio" + ], + "traces": "", + "traces_from_ingredients": "", + "traces_from_user": "(en) ", + "traces_hierarchy": [], + "traces_lc": "en", + "traces_tags": [], + "unique_scans_n": 4, + "unknown_ingredients_n": 1, + "unknown_nutrients_tags": [], + "update_key": "eco20231129", + "vitamins_prev_tags": [], + "vitamins_tags": [], + "weighers_tags": [] + }, + "status": 1, + "status_verbose": "product found" +} \ No newline at end of file diff --git a/test/experimental/food_product.qsql b/test/experimental/food_product.qsql new file mode 100644 index 0000000..6593775 --- /dev/null +++ b/test/experimental/food_product.qsql @@ -0,0 +1,3310 @@ + +unnamed_entity /insert 1 + code + >product /insert 1 + _id + _keywords + >added_countries_tags + >additives_debug_tags + additives_n num + additives_old_n num + additives_old_tags + additives_original_tags + additives_prev_original_tags + additives_tags + allergens + allergens_from_ingredients + allergens_from_user + allergens_hierarchy + allergens_lc + allergens_tags + >amino_acids_prev_tags + >amino_acids_tags + brands + brands_tags + carbon_footprint_from_known_ingredients_debug + carbon_footprint_percent_of_known_ingredients num + categories + categories_hierarchy + categories_lc + categories_old + >categories_properties /insert 1 + agribalyse_food_code:en + ciqual_food_code:en + categories_properties_tags + categories_tags + >category_properties /insert 1 + ciqual_food_name:en + ciqual_food_name:fr + >checkers_tags + ciqual_food_name_tags + >cities_tags + code + codes_tags + compared_to_category + complete num + completeness num + correctors_tags + countries + countries_hierarchy + countries_lc + countries_tags + created_t num + creator + >data_quality_bugs_tags + >data_quality_errors_tags + data_quality_info_tags + data_quality_tags + data_quality_warnings_tags + data_sources + data_sources_tags + debug_param_sorted_langs + >ecoscore_data /insert 1 + >adjustments /insert 1 + >origins_of_ingredients /insert 1 + aggregated_origins /insert 1 + epi_score + origin + percent num + >transportation_score /insert undefined + epi_score num + epi_value num + origins_from_categories + origins_from_origins_field + transportation_score num + >transportation_scores /insert 1 + ad num + al num + at num + ax num + ba num + be num + bg num + ch num + cy num + cz num + de num + dk num + dz num + ee num + eg num + es num + fi num + fo num + fr num + gg num + gi num + gr num + hr num + hu num + ie num + il num + im num + is num + it num + je num + lb num + li num + lt num + lu num + lv num + ly num + ma num + mc num + md num + me num + mk num + mt num + nl num + no num + pl num + ps num + pt num + ro num + rs num + se num + si num + sj num + sk num + sm num + sy num + tn num + tr num + ua num + uk num + us num + va num + world num + xk num + transportation_value num + >transportation_values /insert 1 + ad num + al num + at num + ax num + ba num + be num + bg num + ch num + cy num + cz num + de num + dk num + dz num + ee num + eg num + es num + fi num + fo num + fr num + gg num + gi num + gr num + hr num + hu num + ie num + il num + im num + is num + it num + je num + lb num + li num + lt num + lu num + lv num + ly num + ma num + mc num + md num + me num + mk num + mt num + nl num + no num + pl num + ps num + pt num + ro num + rs num + se num + si num + sj num + sk num + sm num + sy num + tn num + tr num + ua num + uk num + us num + va num + world num + xk num + value num + >values /insert 1 + ad num + al num + at num + ax num + ba num + be num + bg num + ch num + cy num + cz num + de num + dk num + dz num + ee num + eg num + es num + fi num + fo num + fr num + gg num + gi num + gr num + hr num + hu num + ie num + il num + im num + is num + it num + je num + lb num + li num + lt num + lu num + lv num + ly num + ma num + mc num + md num + me num + mk num + mt num + nl num + no num + pl num + ps num + pt num + ro num + rs num + se num + si num + sj num + sk num + sm num + sy num + tn num + tr num + ua num + uk num + us num + va num + world num + xk num + warning + >packaging /insert 1 + non_recyclable_and_non_biodegradable_materials num + packagings /insert 4 + ecoscore_material_score num + ecoscore_shape_ratio num + material + non_recyclable_and_non_biodegradable + shape + score num + value num + >production_system /insert 1 + >labels + value num + warning + >threatened_species /insert 1 + >agribalyse /insert 2 + agribalyse_food_code + co2_agriculture num + co2_consumption num + co2_distribution num + co2_packaging num + co2_processing num + co2_total num + co2_transportation num + code + dqr + ef_agriculture num + ef_consumption num + ef_distribution num + ef_packaging num + ef_processing num + ef_total num + ef_transportation num + is_beverage num + name_en + name_fr + score num + version + grade + >grades /insert 1 + ad + al + at + ax + ba + be + bg + ch + cy + cz + de + dk + dz + ee + eg + es + fi + fo + fr + gg + gi + gr + hr + hu + ie + il + im + is + it + je + lb + li + lt + lu + lv + ly + ma + mc + md + me + mk + mt + nl + no + pl + ps + pt + ro + rs + se + si + sj + sk + sm + sy + tn + tr + ua + uk + us + va + world + xk + >missing /insert 1 + labels num + origins num + missing_data_warning num + >previous_data /insert 1 + >agribalyse /insert 2 + agribalyse_food_code + co2_agriculture num + co2_consumption num + co2_distribution num + co2_packaging num + co2_processing num + co2_total num + co2_transportation num + code + dqr + ef_agriculture num + ef_consumption num + ef_distribution num + ef_packaging num + ef_processing num + ef_total num + ef_transportation num + is_beverage num + name_en + name_fr + score num + grade + score num + score num + >scores /insert 1 + ad num + al num + at num + ax num + ba num + be num + bg num + ch num + cy num + cz num + de num + dk num + dz num + ee num + eg num + es num + fi num + fo num + fr num + gg num + gi num + gr num + hr num + hu num + ie num + il num + im num + is num + it num + je num + lb num + li num + lt num + lu num + lv num + ly num + ma num + mc num + md num + me num + mk num + mt num + nl num + no num + pl num + ps num + pt num + ro num + rs num + se num + si num + sj num + sk num + sm num + sy num + tn num + tr num + ua num + uk num + us num + va num + world num + xk num + status + >ecoscore_extended_data /insert 1 + >impact /insert 6 + ef_single_score_log_stddev num + >likeliest_impacts /insert 1 + Climate_change num + EF_single_score num + >likeliest_recipe /insert 1 + en:Oak_smoked_sea_salti_yeast_extract num + en:e160c num + en:e330 num + en:flavouring num + en:garlic_powder num + en:milk num + en:onion num + en:potato num + en:potato_starch num + en:rice_flour num + en:salt num + en:spice num + en:sugar num + en:sunflower_oil num + en:tomato_powder num + en:water num + en:yeast_powder num + mass_ratio_uncharacterized num + >uncharacterized_ingredients /insert 1 + impact + nutrition + >uncharacterized_ingredients_mass_proportion /insert 1 + impact num + nutrition num + >uncharacterized_ingredients_ratio /insert 1 + impact num + nutrition num + warnings + ecoscore_extended_data_version + ecoscore_grade + ecoscore_score num + ecoscore_tags + editors + editors_tags + emb_codes + emb_codes_20141016 + emb_codes_orig + >emb_codes_tags + entry_dates_tags + expiration_date + food_groups + food_groups_tags + fruits-vegetables-nuts_100g_estimate num + generic_name + generic_name_en + generic_name_fr + >generic_name_fr_debug_tags + id + image_front_small_url + image_front_thumb_url + image_front_url + image_ingredients_small_url + image_ingredients_thumb_url + image_ingredients_url + image_nutrition_small_url + image_nutrition_thumb_url + image_nutrition_url + image_small_url + image_thumb_url + image_url + >images /insert 1 + >1 /insert 8 + >sizes /insert 15 + >100 /insert 15 + h num + w num + >400 /insert 15 + h num + w num + >full /insert 15 + h num + w num + uploaded_t num + uploader + >2 /insert 6 + >sizes /insert 15 + >100 /insert 15 + h num + w num + >400 /insert 15 + h num + w num + >full /insert 15 + h num + w num + uploaded_t num + uploader + >3 /insert 11 + >sizes /insert 15 + >100 /insert 15 + h num + w num + >400 /insert 15 + h num + w num + >full /insert 15 + h num + w num + uploaded_t num + uploader + >4 /insert 8 + >sizes /insert 15 + >100 /insert 15 + h num + w num + >400 /insert 15 + h num + w num + >full /insert 15 + h num + w num + uploaded_t num + uploader + >5 /insert 2 + >sizes /insert 15 + >100 /insert 15 + h num + w num + >400 /insert 15 + h num + w num + >full /insert 15 + h num + w num + uploaded_t num + uploader + >6 /insert 2 + >sizes /insert 15 + >100 /insert 15 + h num + w num + >400 /insert 15 + h num + w num + >full /insert 15 + h num + w num + uploaded_t num + uploader + >7 /insert 2 + >sizes /insert 15 + >100 /insert 15 + h num + w num + >400 /insert 15 + h num + w num + >full /insert 15 + h num + w num + uploaded_t + uploader + >8 /insert 2 + >sizes /insert 15 + >100 /insert 15 + h num + w num + >400 /insert 15 + h num + w num + >full /insert 15 + h num + w num + uploaded_t num + uploader + >9 /insert 2 + >sizes /insert 15 + >100 /insert 15 + h num + w num + >400 /insert 15 + h num + w num + >full /insert 15 + h num + w num + uploaded_t num + uploader + >front /insert 2 + geometry + imgid + normalize + rev + >sizes /insert 15 + >100 /insert 15 + h num + w num + >200 /insert 6 + h num + w num + >400 /insert 15 + h num + w num + >full /insert 15 + h num + w num + white_magic + >front_en /insert 1 + angle num + coordinates_image_size + geometry + imgid + >normalize /insert undefined + rev + >sizes /insert 15 + >100 /insert 15 + h num + w num + >200 /insert 6 + h num + w num + >400 /insert 15 + h num + w num + >full /insert 15 + h num + w num + >white_magic /insert undefined + x1 + x2 + y1 + y2 + >ingredients /insert 22 + geometry + imgid + normalize + ocr num + orientation + rev + >sizes /insert 15 + >100 /insert 15 + h num + w num + >200 /insert 6 + h num + w num + >400 /insert 15 + h num + w num + >full /insert 15 + h num + w num + white_magic + >ingredients_en /insert 1 + geometry + imgid + normalize + ocr num + orientation + rev + >sizes /insert 15 + >100 /insert 15 + h num + w num + >200 /insert 6 + h num + w num + >400 /insert 15 + h num + w num + >full /insert 15 + h num + w num + white_magic + >nutrition /insert 4 + geometry + imgid + normalize + ocr num + orientation + rev + >sizes /insert 15 + >100 /insert 15 + h num + w num + >200 /insert 6 + h num + w num + >400 /insert 15 + h num + w num + >full /insert 15 + h num + w num + white_magic + >nutrition_en /insert 1 + angle num + coordinates_image_size + geometry + imgid + >normalize /insert undefined + rev + >sizes /insert 15 + >100 /insert 15 + h num + w num + >200 /insert 6 + h num + w num + >400 /insert 15 + h num + w num + >full /insert 15 + h num + w num + >white_magic /insert undefined + x1 + x2 + y1 + y2 + informers_tags + ingredients /insert 22 + ciqual_food_code + id + percent num + percent_estimate num + percent_max num + percent_min num + processing + rank num + text + vegan + vegetarian + >ingredients_analysis /insert 1 + en:non-vegan + en:palm-oil-content-unknown + en:vegan-status-unknown + en:vegetarian-status-unknown + ingredients_analysis_tags + ingredients_debug + ingredients_from_or_that_may_be_from_palm_oil_n num + ingredients_from_palm_oil_n num + >ingredients_from_palm_oil_tags + ingredients_hierarchy + ingredients_ids_debug + ingredients_n num + ingredients_n_tags + ingredients_original_tags + ingredients_percent_analysis num + ingredients_tags + ingredients_text + ingredients_text_debug + >ingredients_text_debug_tags + ingredients_text_en + ingredients_text_fr + >ingredients_text_fr_debug_tags + ingredients_text_with_allergens + ingredients_text_with_allergens_en + ingredients_that_may_be_from_palm_oil_n num + >ingredients_that_may_be_from_palm_oil_tags + ingredients_with_specified_percent_n num + ingredients_with_specified_percent_sum num + ingredients_with_unspecified_percent_n num + ingredients_with_unspecified_percent_sum num + ingredients_without_ciqual_codes + ingredients_without_ciqual_codes_n num + interface_version_created + interface_version_modified + known_ingredients_n num + labels + labels_hierarchy + labels_lc + labels_old + labels_tags + lang + >languages /insert 1 + en:english num + >languages_codes /insert 1 + en num + languages_hierarchy + languages_tags + last_edit_dates_tags + last_editor + last_image_dates_tags + last_image_t num + last_modified_by + last_modified_t num + lc + link + >main_countries_tags + manufacturing_places + manufacturing_places_tags + max_imgid + >minerals_prev_tags + >minerals_tags + misc_tags + no_nutrition_data + nova_group num + nova_group_debug + nova_groups + >nova_groups_markers /insert 1 + 3 + 4 + nova_groups_tags + >nucleotides_prev_tags + >nucleotides_tags + >nutrient_levels /insert 1 + fat + salt + saturated-fat + sugars + nutrient_levels_tags + >nutriments /insert 1 + carbohydrates num + carbohydrates_100g num + carbohydrates_serving num + carbohydrates_unit + carbohydrates_value num + carbon-footprint-from-known-ingredients_100g num + carbon-footprint-from-known-ingredients_product num + carbon-footprint-from-known-ingredients_serving num + energy num + energy-kcal num + energy-kcal_100g num + energy-kcal_serving num + energy-kcal_unit + energy-kcal_value num + energy-kcal_value_computed num + energy-kj num + energy-kj_100g num + energy-kj_serving num + energy-kj_unit + energy-kj_value num + energy-kj_value_computed num + energy_100g num + energy_serving num + energy_unit + energy_value num + fat num + fat_100g num + fat_serving num + fat_unit + fat_value num + fiber num + fiber_100g num + fiber_serving num + fiber_unit + fiber_value num + fruits-vegetables-legumes-estimate-from-ingredients_100g num + fruits-vegetables-legumes-estimate-from-ingredients_serving num + fruits-vegetables-nuts-estimate-from-ingredients_100g num + fruits-vegetables-nuts-estimate-from-ingredients_serving num + nova-group num + nova-group_100g num + nova-group_serving num + nutrition-score-fr num + nutrition-score-fr_100g num + proteins num + proteins_100g num + proteins_serving num + proteins_unit + proteins_value num + salt num + salt_100g num + salt_serving num + salt_unit + salt_value num + saturated-fat num + saturated-fat_100g num + saturated-fat_serving num + saturated-fat_unit + saturated-fat_value num + sodium num + sodium_100g num + sodium_serving num + sodium_unit + sodium_value num + sugars num + sugars_100g num + sugars_serving num + sugars_unit + sugars_value num + >nutriscore /insert 1 + >2021 /insert 1 + category_available num + >data /insert 2 + energy num + energy_points num + energy_value num + fiber num + fiber_points num + fiber_value num + fruits_vegetables_nuts_colza_walnut_olive_oils + fruits_vegetables_nuts_colza_walnut_olive_oils_points num + fruits_vegetables_nuts_colza_walnut_olive_oils_value num + is_beverage num + is_cheese num + is_fat num + is_water num + negative_points num + positive_points num + proteins num + proteins_points num + proteins_value num + saturated_fat num + saturated_fat_points num + saturated_fat_value num + sodium num + sodium_points num + sodium_value num + sugars num + sugars_points num + sugars_value num + grade + nutrients_available num + nutriscore_applicable num + nutriscore_computed num + score num + >2023 /insert 1 + category_available num + >data /insert 2 + count_proteins num + count_proteins_reason + energy num + energy_points num + fiber num + fiber_points num + fruits_vegetables_legumes num + fruits_vegetables_legumes_points num + is_beverage num + is_cheese num + is_fat_oil_nuts_seeds num + is_red_meat_product num + is_water num + negative_nutrients + negative_points num + positive_nutrients + positive_points num + proteins num + proteins_points num + salt num + salt_points num + saturated_fat num + saturated_fat_points num + sugars num + sugars_points num + grade + nutrients_available num + nutriscore_applicable num + nutriscore_computed num + score num + nutriscore_2021_tags + nutriscore_2023_tags + >nutriscore_data /insert 1 + energy num + energy_points num + energy_value num + fiber num + fiber_points num + fiber_value num + fruits_vegetables_nuts_colza_walnut_olive_oils + fruits_vegetables_nuts_colza_walnut_olive_oils_points num + fruits_vegetables_nuts_colza_walnut_olive_oils_value num + grade + is_beverage num + is_cheese num + is_fat num + is_water num + negative_points num + positive_points num + proteins num + proteins_points num + proteins_value num + saturated_fat num + saturated_fat_points num + saturated_fat_value num + score num + sodium num + sodium_points num + sodium_value num + sugars num + sugars_points num + sugars_value num + nutriscore_grade + nutriscore_score num + nutriscore_score_opposite num + nutriscore_tags + nutriscore_version + nutrition_data + nutrition_data_per + nutrition_data_prepared + nutrition_data_prepared_per + nutrition_grade_fr + nutrition_grades + nutrition_grades_tags + nutrition_score_beverage num + nutrition_score_debug + obsolete + obsolete_since_date + origin + origin_en + origins + >origins_hierarchy + origins_lc + origins_old + >origins_tags + >other_nutritional_substances_tags + packaging + packaging_hierarchy + packaging_lc + packaging_materials_tags + packaging_old + packaging_old_before_taxonomization + >packaging_recycling_tags + packaging_shapes_tags + packaging_tags + packaging_text + packaging_text_en + packagings /insert 4 + material + shape + packagings_complete num + >packagings_materials /insert 1 + >all /insert 1 + >en:plastic /insert 1 + packagings_n num + photographers_tags + pnns_groups_1 + pnns_groups_1_tags + pnns_groups_2 + pnns_groups_2_tags + popularity_key num + popularity_tags + product_name + product_name_en + product_name_fr + >product_name_fr_debug_tags + product_quantity + purchase_places + >purchase_places_tags + quantity + >removed_countries_tags + rev num + scans_n num + >selected_images /insert 1 + >front /insert 2 + >display /insert 3 + en + >small /insert 3 + en + >thumb /insert 3 + en + >ingredients /insert 22 + >display /insert 3 + en + >small /insert 3 + en + >thumb /insert 3 + en + >nutrition /insert 4 + >display /insert 3 + en + >small /insert 3 + en + >thumb /insert 3 + en + serving_quantity + serving_size + sortkey num + states + states_hierarchy + states_tags + stores + >stores_tags + teams + teams_tags + traces + traces_from_ingredients + traces_from_user + >traces_hierarchy + traces_lc + >traces_tags + unique_scans_n num + unknown_ingredients_n num + >unknown_nutrients_tags + update_key + >vitamins_prev_tags + >vitamins_tags + >weighers_tags + status num + status_verbose + +dv unnamed_entity_dv unnamed_entity + +#settings = { genpk: false, drop: true } + +-- Generated by json2qsql.js development 1/3/2024, 10:04:19 AM + +#document = +{ + "code": "5060292302201", + "product": { + "_id": "5060292302201", + "_keywords": [ + "and", + "anything", + "appetizer", + "artificial", + "barbeque", + "beverage", + "cereal", + "chip", + "crisp", + "food", + "frie", + "in", + "no", + "oil", + "plant-based", + "popchip", + "potato", + "potatoe", + "preservative", + "salty", + "snack", + "sunflower", + "vegetarian" + ], + "added_countries_tags": [], + "additives_debug_tags": [], + "additives_n": 2, + "additives_old_n": 2, + "additives_old_tags": [ + "en:e330", + "en:e160c" + ], + "additives_original_tags": [ + "en:e330", + "en:e160c" + ], + "additives_prev_original_tags": [ + "en:e330", + "en:e160c" + ], + "additives_tags": [ + "en:e160c", + "en:e330" + ], + "allergens": "en:milk", + "allergens_from_ingredients": "en:milk, milk", + "allergens_from_user": "(en) en:milk", + "allergens_hierarchy": [ + "en:milk" + ], + "allergens_lc": "en", + "allergens_tags": [ + "en:milk" + ], + "amino_acids_prev_tags": [], + "amino_acids_tags": [], + "brands": "Popchips", + "brands_tags": [ + "popchips" + ], + "carbon_footprint_from_known_ingredients_debug": "en:potato 54% x 0.6 = 32.4 g - ", + "carbon_footprint_percent_of_known_ingredients": 54, + "categories": "Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil", + "categories_hierarchy": [ + "en:plant-based-foods-and-beverages", + "en:plant-based-foods", + "en:snacks", + "en:cereals-and-potatoes", + "en:salty-snacks", + "en:appetizers", + "en:chips-and-fries", + "en:crisps", + "en:potato-crisps", + "en:potato-crisps-in-sunflower-oil" + ], + "categories_lc": "en", + "categories_old": "Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil", + "categories_properties": { + "agribalyse_food_code:en": "4004", + "ciqual_food_code:en": "4004" + }, + "categories_properties_tags": [ + "all-products", + "categories-known", + "agribalyse-food-code-4004", + "agribalyse-food-code-known", + "agribalyse-proxy-food-code-unknown", + "ciqual-food-code-4004", + "ciqual-food-code-known", + "agribalyse-known", + "agribalyse-4004" + ], + "categories_tags": [ + "en:plant-based-foods-and-beverages", + "en:plant-based-foods", + "en:snacks", + "en:cereals-and-potatoes", + "en:salty-snacks", + "en:appetizers", + "en:chips-and-fries", + "en:crisps", + "en:potato-crisps", + "en:potato-crisps-in-sunflower-oil" + ], + "category_properties": { + "ciqual_food_name:en": "Potato crisps", + "ciqual_food_name:fr": "Chips de pommes de terre, standard" + }, + "checkers_tags": [], + "ciqual_food_name_tags": [ + "potato-crisps" + ], + "cities_tags": [], + "code": "5060292302201", + "codes_tags": [ + "code-13", + "5060292302xxx", + "506029230xxxx", + "50602923xxxxx", + "5060292xxxxxx", + "506029xxxxxxx", + "50602xxxxxxxx", + "5060xxxxxxxxx", + "506xxxxxxxxxx", + "50xxxxxxxxxxx", + "5xxxxxxxxxxxx" + ], + "compared_to_category": "en:potato-crisps-in-sunflower-oil", + "complete": 0, + "completeness": 0.8875, + "correctors_tags": [ + "tacite", + "tacite-mass-editor", + "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", + "openfoodfacts-contributors", + "swipe-studio", + "yuka.sY2b0xO6T85zoF3NwEKvllZnctbb-gn-LDr4mHzUyem0FYPXMO5by7b5NKg", + "kiliweb", + "packbot", + "foodless", + "yuka.sY2b0xO6T85zoF3NwEKvlmBZVPXu-gnlBU3miFTQ-NeSIbDaMdUtu4fLGas", + "aleene" + ], + "countries": "France,United Kingdom", + "countries_hierarchy": [ + "en:france", + "en:united-kingdom" + ], + "countries_lc": "en", + "countries_tags": [ + "en:france", + "en:united-kingdom" + ], + "created_t": 1433338177, + "creator": "kyzh", + "data_quality_bugs_tags": [], + "data_quality_errors_tags": [], + "data_quality_info_tags": [ + "en:packaging-data-incomplete", + "en:ingredients-percent-analysis-ok", + "en:carbon-footprint-from-known-ingredients-but-not-from-meat-or-fish", + "en:ecoscore-extended-data-computed", + "en:ecoscore-extended-data-less-precise-than-agribalyse", + "en:food-groups-1-known", + "en:food-groups-2-known", + "en:food-groups-3-unknown" + ], + "data_quality_tags": [ + "en:packaging-data-incomplete", + "en:ingredients-percent-analysis-ok", + "en:carbon-footprint-from-known-ingredients-but-not-from-meat-or-fish", + "en:ecoscore-extended-data-computed", + "en:ecoscore-extended-data-less-precise-than-agribalyse", + "en:food-groups-1-known", + "en:food-groups-2-known", + "en:food-groups-3-unknown", + "en:nutrition-value-very-low-for-category-energy", + "en:nutrition-value-very-low-for-category-fat", + "en:nutrition-value-very-high-for-category-sugars", + "en:vegetarian-label-but-could-not-confirm-for-all-ingredients", + "en:ecoscore-origins-of-ingredients-origins-are-100-percent-unknown", + "en:ecoscore-production-system-no-label" + ], + "data_quality_warnings_tags": [ + "en:nutrition-value-very-low-for-category-energy", + "en:nutrition-value-very-low-for-category-fat", + "en:nutrition-value-very-high-for-category-sugars", + "en:vegetarian-label-but-could-not-confirm-for-all-ingredients", + "en:ecoscore-origins-of-ingredients-origins-are-100-percent-unknown", + "en:ecoscore-production-system-no-label" + ], + "data_sources": "App - yuka, Apps, App - Horizon", + "data_sources_tags": [ + "app-yuka", + "apps", + "app-horizon" + ], + "debug_param_sorted_langs": [ + "en" + ], + "ecoscore_data": { + "adjustments": { + "origins_of_ingredients": { + "aggregated_origins": [ + { + "epi_score": "0", + "origin": "en:unknown", + "percent": 100, + "transportation_score": null + } + ], + "epi_score": 0, + "epi_value": -5, + "origins_from_categories": [ + "en:unknown" + ], + "origins_from_origins_field": [ + "en:unknown" + ], + "transportation_score": 0, + "transportation_scores": { + "ad": 0, + "al": 0, + "at": 0, + "ax": 0, + "ba": 0, + "be": 0, + "bg": 0, + "ch": 0, + "cy": 0, + "cz": 0, + "de": 0, + "dk": 0, + "dz": 0, + "ee": 0, + "eg": 0, + "es": 0, + "fi": 0, + "fo": 0, + "fr": 0, + "gg": 0, + "gi": 0, + "gr": 0, + "hr": 0, + "hu": 0, + "ie": 0, + "il": 0, + "im": 0, + "is": 0, + "it": 0, + "je": 0, + "lb": 0, + "li": 0, + "lt": 0, + "lu": 0, + "lv": 0, + "ly": 0, + "ma": 0, + "mc": 0, + "md": 0, + "me": 0, + "mk": 0, + "mt": 0, + "nl": 0, + "no": 0, + "pl": 0, + "ps": 0, + "pt": 0, + "ro": 0, + "rs": 0, + "se": 0, + "si": 0, + "sj": 0, + "sk": 0, + "sm": 0, + "sy": 0, + "tn": 0, + "tr": 0, + "ua": 0, + "uk": 0, + "us": 0, + "va": 0, + "world": 0, + "xk": 0 + }, + "transportation_value": 0, + "transportation_values": { + "ad": 0, + "al": 0, + "at": 0, + "ax": 0, + "ba": 0, + "be": 0, + "bg": 0, + "ch": 0, + "cy": 0, + "cz": 0, + "de": 0, + "dk": 0, + "dz": 0, + "ee": 0, + "eg": 0, + "es": 0, + "fi": 0, + "fo": 0, + "fr": 0, + "gg": 0, + "gi": 0, + "gr": 0, + "hr": 0, + "hu": 0, + "ie": 0, + "il": 0, + "im": 0, + "is": 0, + "it": 0, + "je": 0, + "lb": 0, + "li": 0, + "lt": 0, + "lu": 0, + "lv": 0, + "ly": 0, + "ma": 0, + "mc": 0, + "md": 0, + "me": 0, + "mk": 0, + "mt": 0, + "nl": 0, + "no": 0, + "pl": 0, + "ps": 0, + "pt": 0, + "ro": 0, + "rs": 0, + "se": 0, + "si": 0, + "sj": 0, + "sk": 0, + "sm": 0, + "sy": 0, + "tn": 0, + "tr": 0, + "ua": 0, + "uk": 0, + "us": 0, + "va": 0, + "world": 0, + "xk": 0 + }, + "value": -5, + "values": { + "ad": -5, + "al": -5, + "at": -5, + "ax": -5, + "ba": -5, + "be": -5, + "bg": -5, + "ch": -5, + "cy": -5, + "cz": -5, + "de": -5, + "dk": -5, + "dz": -5, + "ee": -5, + "eg": -5, + "es": -5, + "fi": -5, + "fo": -5, + "fr": -5, + "gg": -5, + "gi": -5, + "gr": -5, + "hr": -5, + "hu": -5, + "ie": -5, + "il": -5, + "im": -5, + "is": -5, + "it": -5, + "je": -5, + "lb": -5, + "li": -5, + "lt": -5, + "lu": -5, + "lv": -5, + "ly": -5, + "ma": -5, + "mc": -5, + "md": -5, + "me": -5, + "mk": -5, + "mt": -5, + "nl": -5, + "no": -5, + "pl": -5, + "ps": -5, + "pt": -5, + "ro": -5, + "rs": -5, + "se": -5, + "si": -5, + "sj": -5, + "sk": -5, + "sm": -5, + "sy": -5, + "tn": -5, + "tr": -5, + "ua": -5, + "uk": -5, + "us": -5, + "va": -5, + "world": -5, + "xk": -5 + }, + "warning": "origins_are_100_percent_unknown" + }, + "packaging": { + "non_recyclable_and_non_biodegradable_materials": 2, + "packagings": [ + { + "ecoscore_material_score": 0, + "ecoscore_shape_ratio": 1, + "material": "en:plastic", + "non_recyclable_and_non_biodegradable": "maybe", + "shape": "en:packet" + }, + { + "ecoscore_material_score": 0, + "ecoscore_shape_ratio": 1, + "material": "en:plastic", + "non_recyclable_and_non_biodegradable": "maybe", + "shape": "en:packet" + } + ], + "score": -100, + "value": -15 + }, + "production_system": { + "labels": [], + "value": 0, + "warning": "no_label" + }, + "threatened_species": {} + }, + "agribalyse": { + "agribalyse_food_code": "4004", + "co2_agriculture": 0.82655583, + "co2_consumption": 0, + "co2_distribution": 0.019537154, + "co2_packaging": 0.28154442, + "co2_processing": 0.23156851, + "co2_total": 1.543669164, + "co2_transportation": 0.18446325, + "code": "4004", + "dqr": "2.45", + "ef_agriculture": 0.14029442, + "ef_consumption": 0, + "ef_distribution": 0.004831936, + "ef_packaging": 0.02370999, + "ef_processing": 0.038707917, + "ef_total": 0.223317319, + "ef_transportation": 0.015773056, + "is_beverage": 0, + "name_en": "Potato crisps", + "name_fr": "Chips de pommes de terre, standard", + "score": 87, + "version": "3.1" + }, + "grade": "b", + "grades": { + "ad": "b", + "al": "b", + "at": "b", + "ax": "b", + "ba": "b", + "be": "b", + "bg": "b", + "ch": "b", + "cy": "b", + "cz": "b", + "de": "b", + "dk": "b", + "dz": "b", + "ee": "b", + "eg": "b", + "es": "b", + "fi": "b", + "fo": "b", + "fr": "b", + "gg": "b", + "gi": "b", + "gr": "b", + "hr": "b", + "hu": "b", + "ie": "b", + "il": "b", + "im": "b", + "is": "b", + "it": "b", + "je": "b", + "lb": "b", + "li": "b", + "lt": "b", + "lu": "b", + "lv": "b", + "ly": "b", + "ma": "b", + "mc": "b", + "md": "b", + "me": "b", + "mk": "b", + "mt": "b", + "nl": "b", + "no": "b", + "pl": "b", + "ps": "b", + "pt": "b", + "ro": "b", + "rs": "b", + "se": "b", + "si": "b", + "sj": "b", + "sk": "b", + "sm": "b", + "sy": "b", + "tn": "b", + "tr": "b", + "ua": "b", + "uk": "b", + "us": "b", + "va": "b", + "world": "b", + "xk": "b" + }, + "missing": { + "labels": 1, + "origins": 1 + }, + "missing_data_warning": 1, + "previous_data": { + "agribalyse": { + "agribalyse_food_code": "4004", + "co2_agriculture": 1.2992636, + "co2_consumption": 0, + "co2_distribution": 0.029120657, + "co2_packaging": 0.28581962, + "co2_processing": 0.39294234, + "co2_total": 2.2443641, + "co2_transportation": 0.23728203, + "code": "4004", + "dqr": "2.45", + "ef_agriculture": 0.18214682, + "ef_consumption": 0, + "ef_distribution": 0.0098990521, + "ef_packaging": 0.021558384, + "ef_processing": 0.057508389, + "ef_total": 0.29200269, + "ef_transportation": 0.020894187, + "is_beverage": 0, + "name_en": "Potato crisps", + "name_fr": "Chips de pommes de terre, standard", + "score": 78 + }, + "grade": "b", + "score": 63 + }, + "score": 67, + "scores": { + "ad": 67, + "al": 67, + "at": 67, + "ax": 67, + "ba": 67, + "be": 67, + "bg": 67, + "ch": 67, + "cy": 67, + "cz": 67, + "de": 67, + "dk": 67, + "dz": 67, + "ee": 67, + "eg": 67, + "es": 67, + "fi": 67, + "fo": 67, + "fr": 67, + "gg": 67, + "gi": 67, + "gr": 67, + "hr": 67, + "hu": 67, + "ie": 67, + "il": 67, + "im": 67, + "is": 67, + "it": 67, + "je": 67, + "lb": 67, + "li": 67, + "lt": 67, + "lu": 67, + "lv": 67, + "ly": 67, + "ma": 67, + "mc": 67, + "md": 67, + "me": 67, + "mk": 67, + "mt": 67, + "nl": 67, + "no": 67, + "pl": 67, + "ps": 67, + "pt": 67, + "ro": 67, + "rs": 67, + "se": 67, + "si": 67, + "sj": 67, + "sk": 67, + "sm": 67, + "sy": 67, + "tn": 67, + "tr": 67, + "ua": 67, + "uk": 67, + "us": 67, + "va": 67, + "world": 67, + "xk": 67 + }, + "status": "known" + }, + "ecoscore_extended_data": { + "impact": { + "ef_single_score_log_stddev": 0.0664290643574977, + "likeliest_impacts": { + "Climate_change": 0.0835225930657116, + "EF_single_score": 0.0132996566234689 + }, + "likeliest_recipe": { + "en:Oak_smoked_sea_salti_yeast_extract": 0.103505496656251, + "en:e160c": 0.10350549665625, + "en:e330": 0.10350549665625, + "en:flavouring": 0.10350549665625, + "en:garlic_powder": 0.103505496656251, + "en:milk": 1.55847864453775, + "en:onion": 0.15510736429208, + "en:potato": 69.2208020730349, + "en:potato_starch": 10.5320407294931, + "en:rice_flour": 13.8595510001351, + "en:salt": 1.3345917157533, + "en:spice": 0.10350549665625, + "en:sugar": 10.2883618334396, + "en:sunflower_oil": 14.1645835312727, + "en:tomato_powder": 0.10350549665625, + "en:water": 6.24510964041154, + "en:yeast_powder": 0.103505496656251 + }, + "mass_ratio_uncharacterized": 0.0244618467395455, + "uncharacterized_ingredients": { + "impact": [ + "en:yeast-powder", + "en:flavouring", + "en:Oak smoked sea salti yeast extract", + "en:e160c", + "en:e330" + ], + "nutrition": [ + "en:flavouring", + "en:Oak smoked sea salti yeast extract" + ] + }, + "uncharacterized_ingredients_mass_proportion": { + "impact": 0.0244618467395455, + "nutrition": 0.0106506947223728 + }, + "uncharacterized_ingredients_ratio": { + "impact": 0.3125, + "nutrition": 0.125 + }, + "warnings": [ + "Fermentation agents are present in the product (en:yeast-powder). Carbohydrates and sugars mass balance will not be considered to estimate potential recipes", + "The product has a high number of impact uncharacterized ingredients: 31%" + ] + } + }, + "ecoscore_extended_data_version": "4", + "ecoscore_grade": "b", + "ecoscore_score": 67, + "ecoscore_tags": [ + "b" + ], + "editors": [ + "kyzh", + "tacite" + ], + "editors_tags": [ + "kiliweb", + "openfoodfacts-contributors", + "aleene", + "tacite-mass-editor", + "yuka.sY2b0xO6T85zoF3NwEKvlmBZVPXu-gnlBU3miFTQ-NeSIbDaMdUtu4fLGas", + "kyzh", + "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", + "ecoscore-impact-estimator", + "tacite", + "foodless", + "yuka.sY2b0xO6T85zoF3NwEKvllZnctbb-gn-LDr4mHzUyem0FYPXMO5by7b5NKg", + "swipe-studio", + "packbot" + ], + "emb_codes": "", + "emb_codes_20141016": "", + "emb_codes_orig": "", + "emb_codes_tags": [], + "entry_dates_tags": [ + "2015-06-03", + "2015-06", + "2015" + ], + "expiration_date": "11/05/2016", + "food_groups": "en:appetizers", + "food_groups_tags": [ + "en:salty-snacks", + "en:appetizers" + ], + "fruits-vegetables-nuts_100g_estimate": 0, + "generic_name": "", + "generic_name_en": "", + "generic_name_fr": "", + "generic_name_fr_debug_tags": [], + "id": "5060292302201", + "image_front_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", + "image_front_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", + "image_front_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", + "image_ingredients_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg", + "image_ingredients_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg", + "image_ingredients_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg", + "image_nutrition_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg", + "image_nutrition_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg", + "image_nutrition_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg", + "image_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", + "image_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", + "image_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", + "images": { + "1": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338177, + "uploader": "kyzh" + }, + "2": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338194, + "uploader": "kyzh" + }, + "3": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338203, + "uploader": "kyzh" + }, + "4": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338215, + "uploader": "kyzh" + }, + "5": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338229, + "uploader": "kyzh" + }, + "6": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338245, + "uploader": "kyzh" + }, + "7": { + "sizes": { + "100": { + "h": 43, + "w": 100 + }, + "400": { + "h": 171, + "w": 400 + }, + "full": { + "h": 846, + "w": 1974 + } + }, + "uploaded_t": "1508236270", + "uploader": "kiliweb" + }, + "8": { + "sizes": { + "100": { + "h": 100, + "w": 82 + }, + "400": { + "h": 400, + "w": 326 + }, + "full": { + "h": 1140, + "w": 930 + } + }, + "uploaded_t": 1620505759, + "uploader": "kiliweb" + }, + "9": { + "sizes": { + "100": { + "h": 56, + "w": 100 + }, + "400": { + "h": 225, + "w": 400 + }, + "full": { + "h": 569, + "w": 1011 + } + }, + "uploaded_t": 1656075071, + "uploader": "kiliweb" + }, + "front": { + "geometry": "1421x1825-0-95", + "imgid": "1", + "normalize": "false", + "rev": "9", + "sizes": { + "100": { + "h": 100, + "w": 78 + }, + "200": { + "h": 200, + "w": 156 + }, + "400": { + "h": 400, + "w": 311 + }, + "full": { + "h": 1825, + "w": 1421 + } + }, + "white_magic": "true" + }, + "front_en": { + "angle": 0, + "coordinates_image_size": "full", + "geometry": "0x0--1--1", + "imgid": "8", + "normalize": null, + "rev": "23", + "sizes": { + "100": { + "h": 100, + "w": 82 + }, + "200": { + "h": 200, + "w": 163 + }, + "400": { + "h": 400, + "w": 326 + }, + "full": { + "h": 1140, + "w": 930 + } + }, + "white_magic": null, + "x1": "-1", + "x2": "-1", + "y1": "-1", + "y2": "-1" + }, + "ingredients": { + "geometry": "1730x526-125-304", + "imgid": "5", + "normalize": "false", + "ocr": 1, + "orientation": "0", + "rev": "11", + "sizes": { + "100": { + "h": 30, + "w": 100 + }, + "200": { + "h": 61, + "w": 200 + }, + "400": { + "h": 122, + "w": 400 + }, + "full": { + "h": 526, + "w": 1730 + } + }, + "white_magic": "false" + }, + "ingredients_en": { + "geometry": "1730x526-125-304", + "imgid": "5", + "normalize": "false", + "ocr": 1, + "orientation": "0", + "rev": "11", + "sizes": { + "100": { + "h": 30, + "w": 100 + }, + "200": { + "h": 61, + "w": 200 + }, + "400": { + "h": 122, + "w": 400 + }, + "full": { + "h": 526, + "w": 1730 + } + }, + "white_magic": "false" + }, + "nutrition": { + "geometry": "1131x920-150-794", + "imgid": "3", + "normalize": "false", + "ocr": 1, + "orientation": "0", + "rev": "10", + "sizes": { + "100": { + "h": 81, + "w": 100 + }, + "200": { + "h": 163, + "w": 200 + }, + "400": { + "h": 325, + "w": 400 + }, + "full": { + "h": 920, + "w": 1131 + } + }, + "white_magic": "false" + }, + "nutrition_en": { + "angle": 0, + "coordinates_image_size": "full", + "geometry": "0x0--1--1", + "imgid": "9", + "normalize": null, + "rev": "32", + "sizes": { + "100": { + "h": 56, + "w": 100 + }, + "200": { + "h": 113, + "w": 200 + }, + "400": { + "h": 225, + "w": 400 + }, + "full": { + "h": 569, + "w": 1011 + } + }, + "white_magic": null, + "x1": "-1", + "x2": "-1", + "y1": "-1", + "y2": "-1" + } + }, + "informers_tags": [ + "kyzh", + "tacite", + "tacite-mass-editor", + "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", + "openfoodfacts-contributors", + "aleene" + ], + "ingredients": [ + { + "ciqual_food_code": "4003", + "id": "en:potato", + "percent": 54, + "percent_estimate": 54, + "percent_max": 54, + "percent_min": 54, + "processing": "en:dried", + "rank": 1, + "text": "potatoes", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "17440", + "from_palm_oil": "no", + "id": "en:sunflower-oil", + "percent_estimate": 28.75, + "percent_max": 46, + "percent_min": 11.5, + "rank": 2, + "text": "sunflower oil", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "has_sub_ingredients": "yes", + "id": "en:coating", + "percent_estimate": 8.625, + "percent_max": 33.3333333333333, + "percent_min": 0, + "rank": 3, + "text": "seasoning", + "vegan": "maybe", + "vegetarian": "maybe" + }, + { + "ciqual_food_code": "9520", + "id": "en:rice-flour", + "percent_estimate": 4.3125, + "percent_max": 17.25, + "percent_min": 0, + "rank": 4, + "text": "rice flour", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "en:potato-starch", + "percent_estimate": 4.3125, + "percent_max": 11.5, + "percent_min": 0, + "rank": 5, + "text": "potato starch", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "en:sugar", + "percent_estimate": 4.3125, + "percent_max": 8.7, + "percent_min": 0, + "text": "sugar", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "has_sub_ingredients": "yes", + "id": "en:whey-powder", + "percent_estimate": 2.15625, + "percent_max": 8.7, + "percent_min": 0, + "text": "whey powder", + "vegan": "no", + "vegetarian": "maybe" + }, + { + "ciqual_food_code": "11058", + "id": "en:salt", + "percent_estimate": 1.05, + "percent_max": 2.1, + "percent_min": 0, + "text": "salt", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "20034", + "id": "en:onion", + "percent_estimate": 0.553125, + "percent_max": 2.1, + "percent_min": 0, + "processing": "en:powder", + "text": "onion", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "en:yeast-powder", + "percent_estimate": 0.2765625, + "percent_max": 2.1, + "percent_min": 0, + "text": "yeast powder", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "11000", + "id": "en:garlic", + "percent_estimate": 0.13828125, + "percent_max": 2.1, + "percent_min": 0, + "processing": "en:powder", + "text": "garlic", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "20047", + "id": "en:tomato", + "percent_estimate": 0.0691406250000002, + "percent_max": 2.1, + "percent_min": 0, + "processing": "en:powder", + "text": "tomato", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "en:oak-smoked-sea-salti-yeast-extract", + "percent_estimate": 0.0345703124999996, + "percent_max": 2.1, + "percent_min": 0, + "text": "Oak smoked sea salti yeast extract" + }, + { + "id": "en:flavouring", + "percent_estimate": 0.0172851562499998, + "percent_max": 2.1, + "percent_min": 0, + "text": "flavourings", + "vegan": "maybe", + "vegetarian": "maybe" + }, + { + "id": "en:spice", + "percent_estimate": 0.00864257812500036, + "percent_max": 2.1, + "percent_min": 0, + "text": "spices", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "has_sub_ingredients": "yes", + "id": "en:acid", + "percent_estimate": 0.00432128906250018, + "percent_max": 2.1, + "percent_min": 0, + "text": "acid" + }, + { + "has_sub_ingredients": "yes", + "id": "en:colour", + "percent_estimate": 0.00432128906249929, + "percent_max": 2.1, + "percent_min": 0, + "text": "colour" + }, + { + "id": "en:milk", + "percent_estimate": 2.15625, + "percent_max": 8.7, + "percent_min": 0, + "text": "milk", + "vegan": "no", + "vegetarian": "yes" + }, + { + "id": "en:e330", + "percent_estimate": 0.00432128906250018, + "percent_max": 2.1, + "percent_min": 0, + "text": "citric acid", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "en:e160c", + "percent_estimate": 0.00432128906249929, + "percent_max": 2.1, + "percent_min": 0, + "text": "paprika extract", + "vegan": "yes", + "vegetarian": "yes" + } + ], + "ingredients_analysis": { + "en:non-vegan": [ + "en:whey-powder", + "en:milk" + ], + "en:palm-oil-content-unknown": [ + "en:oak-smoked-sea-salti-yeast-extract" + ], + "en:vegan-status-unknown": [ + "en:oak-smoked-sea-salti-yeast-extract" + ], + "en:vegetarian-status-unknown": [ + "en:oak-smoked-sea-salti-yeast-extract" + ] + }, + "ingredients_analysis_tags": [ + "en:palm-oil-free", + "en:non-vegan", + "en:vegetarian" + ], + "ingredients_debug": [ + "54% dried potatoes", + ",", + null, + null, + null, + " sunflower oil", + ",", + null, + null, + null, + " seasoning ", + "(", + "(", + null, + null, + "sugar", + ",", + null, + null, + null, + " whey powder ", + "[", + "[", + null, + null, + "milk]", + ",", + null, + null, + null, + " salt", + ",", + null, + null, + null, + " onion powder", + ",", + null, + null, + null, + " yeast powder", + ",", + null, + null, + null, + " garlic powder", + ",", + null, + null, + null, + " tomato powder", + ",", + null, + null, + null, + " Oak smoked sea salti yeast extract", + ",", + null, + null, + null, + " flavourings", + ",", + null, + null, + null, + " spices", + ",", + null, + null, + null, + " acid", + ":", + ":", + null, + null, + " citric acid", + ",", + null, + null, + null, + " colour", + ":", + ":", + null, + null, + " paprika extract)", + ",", + null, + null, + null, + " rice flour", + ",", + null, + null, + null, + " potato starch." + ], + "ingredients_from_or_that_may_be_from_palm_oil_n": 0, + "ingredients_from_palm_oil_n": 0, + "ingredients_from_palm_oil_tags": [], + "ingredients_hierarchy": [ + "en:potato", + "en:vegetable", + "en:root-vegetable", + "en:tuber", + "en:sunflower-oil", + "en:oil-and-fat", + "en:vegetable-oil-and-fat", + "en:vegetable-oil", + "en:coating", + "en:rice-flour", + "en:flour", + "en:rice", + "en:potato-starch", + "en:starch", + "en:sugar", + "en:added-sugar", + "en:disaccharide", + "en:whey-powder", + "en:dairy", + "en:whey", + "en:salt", + "en:onion", + "en:onion-family-vegetable", + "en:yeast-powder", + "en:yeast", + "en:garlic", + "en:tomato", + "en:fruit-vegetable", + "en:oak-smoked-sea-salti-yeast-extract", + "en:flavouring", + "en:spice", + "en:condiment", + "en:acid", + "en:colour", + "en:milk", + "en:e330", + "en:e160c" + ], + "ingredients_ids_debug": [ + "54-dried-potatoes", + "sunflower-oil", + "seasoning", + "sugar", + "whey-powder", + "milk", + "salt", + "onion-powder", + "yeast-powder", + "garlic-powder", + "tomato-powder", + "oak-smoked-sea-salti-yeast-extract", + "flavourings", + "spices", + "acid", + "citric-acid", + "colour", + "paprika-extract", + "rice-flour", + "potato-starch" + ], + "ingredients_n": 20, + "ingredients_n_tags": [ + "20", + "11-20" + ], + "ingredients_original_tags": [ + "en:potato", + "en:sunflower-oil", + "en:coating", + "en:rice-flour", + "en:potato-starch", + "en:sugar", + "en:whey-powder", + "en:salt", + "en:onion", + "en:yeast-powder", + "en:garlic", + "en:tomato", + "en:oak-smoked-sea-salti-yeast-extract", + "en:flavouring", + "en:spice", + "en:acid", + "en:colour", + "en:milk", + "en:e330", + "en:e160c" + ], + "ingredients_percent_analysis": 1, + "ingredients_tags": [ + "en:potato", + "en:vegetable", + "en:root-vegetable", + "en:tuber", + "en:sunflower-oil", + "en:oil-and-fat", + "en:vegetable-oil-and-fat", + "en:vegetable-oil", + "en:coating", + "en:rice-flour", + "en:flour", + "en:rice", + "en:potato-starch", + "en:starch", + "en:sugar", + "en:added-sugar", + "en:disaccharide", + "en:whey-powder", + "en:dairy", + "en:whey", + "en:salt", + "en:onion", + "en:onion-family-vegetable", + "en:yeast-powder", + "en:yeast", + "en:garlic", + "en:tomato", + "en:fruit-vegetable", + "en:oak-smoked-sea-salti-yeast-extract", + "en:flavouring", + "en:spice", + "en:condiment", + "en:acid", + "en:colour", + "en:milk", + "en:e330", + "en:e160c" + ], + "ingredients_text": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_debug": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_debug_tags": [], + "ingredients_text_en": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_fr": "", + "ingredients_text_fr_debug_tags": [], + "ingredients_text_with_allergens": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_with_allergens_en": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_that_may_be_from_palm_oil_n": 0, + "ingredients_that_may_be_from_palm_oil_tags": [], + "ingredients_with_specified_percent_n": 1, + "ingredients_with_specified_percent_sum": 54, + "ingredients_with_unspecified_percent_n": 15, + "ingredients_with_unspecified_percent_sum": 46, + "ingredients_without_ciqual_codes": [ + "en:e160c", + "en:e330", + "en:flavouring", + "en:milk", + "en:oak-smoked-sea-salti-yeast-extract", + "en:potato-starch", + "en:spice", + "en:sugar", + "en:yeast-powder" + ], + "ingredients_without_ciqual_codes_n": 9, + "interface_version_created": "20120622", + "interface_version_modified": "20190830", + "known_ingredients_n": 36, + "labels": "Vegetarian, No preservatives, No artificial anything", + "labels_hierarchy": [ + "en:vegetarian", + "en:no-preservatives", + "en:No artificial anything" + ], + "labels_lc": "en", + "labels_old": "Vegetarian,No preservatives,No artificial anything", + "labels_tags": [ + "en:vegetarian", + "en:no-preservatives", + "en:no-artificial-anything" + ], + "lang": "en", + "languages": { + "en:english": 5 + }, + "languages_codes": { + "en": 5 + }, + "languages_hierarchy": [ + "en:english" + ], + "languages_tags": [ + "en:english", + "en:1" + ], + "last_edit_dates_tags": [ + "2023-03-24", + "2023-03", + "2023" + ], + "last_editor": "aleene", + "last_image_dates_tags": [ + "2022-06-24", + "2022-06", + "2022" + ], + "last_image_t": 1656075071, + "last_modified_by": "aleene", + "last_modified_t": 1679645675, + "lc": "en", + "link": "", + "main_countries_tags": [], + "manufacturing_places": "European Union", + "manufacturing_places_tags": [ + "european-union" + ], + "max_imgid": "9", + "minerals_prev_tags": [], + "minerals_tags": [], + "misc_tags": [ + "en:nutriscore-computed", + "en:nutrition-fruits-vegetables-nuts-from-category", + "en:nutrition-fruits-vegetables-nuts-from-category-en-potato-crisps-in-sunflower-oil", + "en:nutrition-fruits-vegetables-legumes-from-category", + "en:nutrition-fruits-vegetables-legumes-from-category-en-potato-crisps-in-sunflower-oil", + "en:nutriscore-2021-same-as-2023", + "en:nutriscore-2021-d-2023-d", + "en:packagings-number-of-components-2", + "en:packagings-not-complete", + "en:packagings-not-empty-but-not-complete", + "en:packagings-not-empty", + "en:ecoscore-extended-data-computed", + "en:ecoscore-extended-data-version-4", + "en:ecoscore-missing-data-warning", + "en:ecoscore-missing-data-labels", + "en:ecoscore-missing-data-origins", + "en:ecoscore-computed", + "en:ecoscore-changed" + ], + "no_nutrition_data": "", + "nova_group": 4, + "nova_group_debug": "", + "nova_groups": "4", + "nova_groups_markers": { + "3": [ + [ + "categories", + "en:salty-snacks" + ], + [ + "ingredients", + "en:salt" + ], + [ + "ingredients", + "en:starch" + ], + [ + "ingredients", + "en:sugar" + ], + [ + "ingredients", + "en:vegetable-oil" + ] + ], + "4": [ + [ + "additives", + "en:e160c" + ], + [ + "ingredients", + "en:colour" + ], + [ + "ingredients", + "en:flavouring" + ], + [ + "ingredients", + "en:whey" + ] + ] + }, + "nova_groups_tags": [ + "en:4-ultra-processed-food-and-drink-products" + ], + "nucleotides_prev_tags": [], + "nucleotides_tags": [], + "nutrient_levels": { + "fat": "moderate", + "salt": "high", + "saturated-fat": "low", + "sugars": "moderate" + }, + "nutrient_levels_tags": [ + "en:fat-in-moderate-quantity", + "en:saturated-fat-in-low-quantity", + "en:sugars-in-moderate-quantity", + "en:salt-in-high-quantity" + ], + "nutriments": { + "carbohydrates": 62, + "carbohydrates_100g": 62, + "carbohydrates_serving": 14.3, + "carbohydrates_unit": "g", + "carbohydrates_value": 62, + "carbon-footprint-from-known-ingredients_100g": 32.4, + "carbon-footprint-from-known-ingredients_product": 7.45, + "carbon-footprint-from-known-ingredients_serving": 7.45, + "energy": 1759, + "energy-kcal": 420, + "energy-kcal_100g": 420, + "energy-kcal_serving": 96.6, + "energy-kcal_unit": "kcal", + "energy-kcal_value": 420, + "energy-kcal_value_computed": 413.6, + "energy-kj": 1759, + "energy-kj_100g": 1759, + "energy-kj_serving": 405, + "energy-kj_unit": "kJ", + "energy-kj_value": 1759, + "energy-kj_value_computed": 1737.1, + "energy_100g": 1759, + "energy_serving": 405, + "energy_unit": "kJ", + "energy_value": 1759, + "fat": 15, + "fat_100g": 15, + "fat_serving": 3.45, + "fat_unit": "g", + "fat_value": 15, + "fiber": 3.9, + "fiber_100g": 3.9, + "fiber_serving": 0.897, + "fiber_unit": "g", + "fiber_value": 3.9, + "fruits-vegetables-legumes-estimate-from-ingredients_100g": 0, + "fruits-vegetables-legumes-estimate-from-ingredients_serving": 0, + "fruits-vegetables-nuts-estimate-from-ingredients_100g": 0, + "fruits-vegetables-nuts-estimate-from-ingredients_serving": 0, + "nova-group": 4, + "nova-group_100g": 4, + "nova-group_serving": 4, + "nutrition-score-fr": 12, + "nutrition-score-fr_100g": 12, + "proteins": 5.7, + "proteins_100g": 5.7, + "proteins_serving": 1.31, + "proteins_unit": "g", + "proteins_value": 5.7, + "salt": 2.1, + "salt_100g": 2.1, + "salt_serving": 0.483, + "salt_unit": "g", + "salt_value": 2.1, + "saturated-fat": 1.4, + "saturated-fat_100g": 1.4, + "saturated-fat_serving": 0.322, + "saturated-fat_unit": "g", + "saturated-fat_value": 1.4, + "sodium": 0.84, + "sodium_100g": 0.84, + "sodium_serving": 0.193, + "sodium_unit": "g", + "sodium_value": 0.84, + "sugars": 8.7, + "sugars_100g": 8.7, + "sugars_serving": 2, + "sugars_unit": "g", + "sugars_value": 8.7 + }, + "nutriscore": { + "2021": { + "category_available": 1, + "data": { + "energy": 1759, + "energy_points": 5, + "energy_value": 1759, + "fiber": 3.9, + "fiber_points": 4, + "fiber_value": 3.9, + "fruits_vegetables_nuts_colza_walnut_olive_oils": "0", + "fruits_vegetables_nuts_colza_walnut_olive_oils_points": 0, + "fruits_vegetables_nuts_colza_walnut_olive_oils_value": 0, + "is_beverage": 0, + "is_cheese": 0, + "is_fat": 0, + "is_water": 0, + "negative_points": 16, + "positive_points": 4, + "proteins": 5.7, + "proteins_points": 3, + "proteins_value": 5.7, + "saturated_fat": 1.4, + "saturated_fat_points": 1, + "saturated_fat_value": 1.4, + "sodium": 840, + "sodium_points": 9, + "sodium_value": 840, + "sugars": 8.7, + "sugars_points": 1, + "sugars_value": 8.7 + }, + "grade": "d", + "nutrients_available": 1, + "nutriscore_applicable": 1, + "nutriscore_computed": 1, + "score": 12 + }, + "2023": { + "category_available": 1, + "data": { + "count_proteins": 0, + "count_proteins_reason": "negative_points_more_than_11", + "energy": 1759, + "energy_points": 5, + "fiber": 3.9, + "fiber_points": 1, + "fruits_vegetables_legumes": 0, + "fruits_vegetables_legumes_points": 0, + "is_beverage": 0, + "is_cheese": 0, + "is_fat_oil_nuts_seeds": 0, + "is_red_meat_product": 0, + "is_water": 0, + "negative_nutrients": [ + "energy", + "sugars", + "saturated_fat", + "salt", + "non_nutritive_sweeteners" + ], + "negative_points": 18, + "positive_nutrients": [ + "fruits_vegetables_legumes", + "fiber" + ], + "positive_points": 1, + "proteins": 5.7, + "proteins_points": 2, + "salt": 2.1, + "salt_points": 10, + "saturated_fat": 1.4, + "saturated_fat_points": 1, + "sugars": 8.7, + "sugars_points": 2 + }, + "grade": "d", + "nutrients_available": 1, + "nutriscore_applicable": 1, + "nutriscore_computed": 1, + "score": 17 + } + }, + "nutriscore_2021_tags": [ + "d" + ], + "nutriscore_2023_tags": [ + "d" + ], + "nutriscore_data": { + "energy": 1759, + "energy_points": 5, + "energy_value": 1759, + "fiber": 3.9, + "fiber_points": 4, + "fiber_value": 3.9, + "fruits_vegetables_nuts_colza_walnut_olive_oils": "0", + "fruits_vegetables_nuts_colza_walnut_olive_oils_points": 0, + "fruits_vegetables_nuts_colza_walnut_olive_oils_value": 0, + "grade": "d", + "is_beverage": 0, + "is_cheese": 0, + "is_fat": 0, + "is_water": 0, + "negative_points": 16, + "positive_points": 4, + "proteins": 5.7, + "proteins_points": 3, + "proteins_value": 5.7, + "saturated_fat": 1.4, + "saturated_fat_points": 1, + "saturated_fat_value": 1.4, + "score": 12, + "sodium": 840, + "sodium_points": 9, + "sodium_value": 840, + "sugars": 8.7, + "sugars_points": 1, + "sugars_value": 8.7 + }, + "nutriscore_grade": "d", + "nutriscore_score": 12, + "nutriscore_score_opposite": -12, + "nutriscore_tags": [ + "d" + ], + "nutriscore_version": "2021", + "nutrition_data": "on", + "nutrition_data_per": "100g", + "nutrition_data_prepared": "", + "nutrition_data_prepared_per": "100g", + "nutrition_grade_fr": "d", + "nutrition_grades": "d", + "nutrition_grades_tags": [ + "d" + ], + "nutrition_score_beverage": 0, + "nutrition_score_debug": "", + "obsolete": "", + "obsolete_since_date": "", + "origin": "", + "origin_en": "", + "origins": "", + "origins_hierarchy": [], + "origins_lc": "en", + "origins_old": "", + "origins_tags": [], + "other_nutritional_substances_tags": [], + "packaging": "Plastic,Mixed plastic film-packet", + "packaging_hierarchy": [ + "en:plastic", + "en:Mixed plastic film-packet" + ], + "packaging_lc": "en", + "packaging_materials_tags": [ + "en:plastic" + ], + "packaging_old": "Plastic, Mixed plastic-packet", + "packaging_old_before_taxonomization": "Plastic, en:mixed plastic-packet", + "packaging_recycling_tags": [], + "packaging_shapes_tags": [ + "en:packet" + ], + "packaging_tags": [ + "en:plastic", + "en:mixed-plastic-film-packet" + ], + "packaging_text": "", + "packaging_text_en": "", + "packagings": [ + { + "material": "en:plastic", + "shape": "en:packet" + }, + { + "material": "en:plastic", + "shape": "en:packet" + } + ], + "packagings_complete": 0, + "packagings_materials": { + "all": {}, + "en:plastic": {} + }, + "packagings_n": 2, + "photographers_tags": [ + "kyzh", + "kiliweb" + ], + "pnns_groups_1": "Salty snacks", + "pnns_groups_1_tags": [ + "salty-snacks", + "known" + ], + "pnns_groups_2": "Appetizers", + "pnns_groups_2_tags": [ + "appetizers", + "known" + ], + "popularity_key": 21900000007, + "popularity_tags": [ + "bottom-25-percent-scans-2019", + "bottom-20-percent-scans-2019", + "bottom-15-percent-scans-2019", + "top-90-percent-scans-2019", + "top-10000-gb-scans-2019", + "top-50000-gb-scans-2019", + "top-100000-gb-scans-2019", + "top-country-gb-scans-2019", + "bottom-25-percent-scans-2020", + "top-80-percent-scans-2020", + "top-85-percent-scans-2020", + "top-90-percent-scans-2020", + "top-5000-gb-scans-2020", + "top-10000-gb-scans-2020", + "top-50000-gb-scans-2020", + "top-100000-gb-scans-2020", + "top-country-gb-scans-2020", + "top-100000-scans-2021", + "at-least-5-scans-2021", + "top-75-percent-scans-2021", + "top-80-percent-scans-2021", + "top-85-percent-scans-2021", + "top-90-percent-scans-2021", + "top-5000-gb-scans-2021", + "top-10000-gb-scans-2021", + "top-50000-gb-scans-2021", + "top-100000-gb-scans-2021", + "top-country-gb-scans-2021", + "at-least-5-gb-scans-2021", + "top-5000-ie-scans-2021", + "top-10000-ie-scans-2021", + "top-50000-ie-scans-2021", + "top-100000-ie-scans-2021", + "top-1000-mu-scans-2021", + "top-5000-mu-scans-2021", + "top-10000-mu-scans-2021", + "top-50000-mu-scans-2021", + "top-100000-mu-scans-2021", + "top-100000-scans-2022", + "top-75-percent-scans-2022", + "top-80-percent-scans-2022", + "top-85-percent-scans-2022", + "top-90-percent-scans-2022", + "top-5000-gb-scans-2022", + "top-10000-gb-scans-2022", + "top-50000-gb-scans-2022", + "top-100000-gb-scans-2022", + "top-country-gb-scans-2022", + "top-500-hk-scans-2022", + "top-1000-hk-scans-2022", + "top-5000-hk-scans-2022", + "top-10000-hk-scans-2022", + "top-50000-hk-scans-2022", + "top-100000-hk-scans-2022", + "top-10000-us-scans-2022", + "top-50000-us-scans-2022", + "top-100000-us-scans-2022" + ], + "product_name": "Barbeque Potato Chips", + "product_name_en": "Barbeque Potato Chips", + "product_name_fr": "", + "product_name_fr_debug_tags": [], + "product_quantity": "23", + "purchase_places": "", + "purchase_places_tags": [], + "quantity": "23 g", + "removed_countries_tags": [], + "rev": 33, + "scans_n": 6, + "selected_images": { + "front": { + "display": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg" + }, + "small": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg" + }, + "thumb": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg" + } + }, + "ingredients": { + "display": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg" + }, + "small": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg" + }, + "thumb": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg" + } + }, + "nutrition": { + "display": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg" + }, + "small": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg" + }, + "thumb": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg" + } + } + }, + "serving_quantity": "23", + "serving_size": "23 g", + "sortkey": 1535456524, + "states": "en:to-be-completed, en:nutrition-facts-completed, en:ingredients-completed, en:expiration-date-completed, en:packaging-code-to-be-completed, en:characteristics-to-be-completed, en:origins-to-be-completed, en:categories-completed, en:brands-completed, en:packaging-completed, en:quantity-completed, en:product-name-completed, en:photos-to-be-validated, en:packaging-photo-to-be-selected, en:nutrition-photo-selected, en:ingredients-photo-selected, en:front-photo-selected, en:photos-uploaded", + "states_hierarchy": [ + "en:to-be-completed", + "en:nutrition-facts-completed", + "en:ingredients-completed", + "en:expiration-date-completed", + "en:packaging-code-to-be-completed", + "en:characteristics-to-be-completed", + "en:origins-to-be-completed", + "en:categories-completed", + "en:brands-completed", + "en:packaging-completed", + "en:quantity-completed", + "en:product-name-completed", + "en:photos-to-be-validated", + "en:packaging-photo-to-be-selected", + "en:nutrition-photo-selected", + "en:ingredients-photo-selected", + "en:front-photo-selected", + "en:photos-uploaded" + ], + "states_tags": [ + "en:to-be-completed", + "en:nutrition-facts-completed", + "en:ingredients-completed", + "en:expiration-date-completed", + "en:packaging-code-to-be-completed", + "en:characteristics-to-be-completed", + "en:origins-to-be-completed", + "en:categories-completed", + "en:brands-completed", + "en:packaging-completed", + "en:quantity-completed", + "en:product-name-completed", + "en:photos-to-be-validated", + "en:packaging-photo-to-be-selected", + "en:nutrition-photo-selected", + "en:ingredients-photo-selected", + "en:front-photo-selected", + "en:photos-uploaded" + ], + "stores": "", + "stores_tags": [], + "teams": "swipe-studio", + "teams_tags": [ + "swipe-studio" + ], + "traces": "", + "traces_from_ingredients": "", + "traces_from_user": "(en) ", + "traces_hierarchy": [], + "traces_lc": "en", + "traces_tags": [], + "unique_scans_n": 4, + "unknown_ingredients_n": 1, + "unknown_nutrients_tags": [], + "update_key": "eco20231129", + "vitamins_prev_tags": [], + "vitamins_tags": [], + "weighers_tags": [] + }, + "status": 1, + "status_verbose": "product found" +} diff --git a/test/single_test.js b/test/single_test.js index da0c400..7fcfda4 100644 --- a/test/single_test.js +++ b/test/single_test.js @@ -5,27 +5,47 @@ import json2qsql from "../src/json2qsql.js"; import fs from "fs"; try { - let file = '//bugs/35.qsql';//'//DV/car_racing/2.qsql';//'DV/donuts.json'; + let file = '//experimental/events.json'; + file = '//bugs/35.qsql'; + file = '//DV/car_racing/2.qsql'; + file = '//experimental/donuts.json'; let args = process.argv.slice(2); if( 0 < args.length ) file = args[0]; //console.log(file); const text = fs.readFileSync('./test/'+file) - const input = text.toString(); + let input = text.toString(); + let ofile = './test/'+file; + const dot = ofile.lastIndexOf('.'); + ofile = ofile.substring(0,dot); + let output = null; if( file.endsWith('.json') ) { const obj = JSON.parse(input); - output = json2qsql.introspect(null, obj, 0); - output += '\n\n-- =========================================\n\n'; - console.log(output); + let key = file.substring(0,file.length-'.json'.length); + const sp = file.lastIndexOf('/'); + if( 0 < sp ) + key = key.substring(sp+1); + output = json2qsql.introspect(key, obj, 0); + if( 0 <= ofile.indexOf('/experimental/') ) + fs.writeFileSync(ofile+'.qsql', output); + else { + output += '\n\n-- =========================================\n\n'; + console.log(output); + } input = output; } if( 0 <= file.indexOf('/erd/') ) { output = JSON.stringify(new quicksql(input).toERD(), null, 4); } else output = new parsed(input).getDDL(); - console.log(output); + + if( 0 <= ofile.indexOf('/experimental/') ) + fs.writeFileSync(ofile+'.sql', output); + else + console.log(output); + } catch(e) { console.error(e); }; From 9f77d0fdea02be3c54f6da2b564fc87effbac277 Mon Sep 17 00:00:00 2001 From: Vadim Tropashko Date: Thu, 4 Jan 2024 17:08:54 -0800 Subject: [PATCH 06/22] Fixed tables and data insertion order See modified tests: 2.sql, sales_product_customer.sql --- dist/quick-sql.js | 2086 +++++++++++++------------ dist/quick-sql.umd.cjs | 338 ++-- src/tree.js | 137 +- test/DV/car_racing/2.sql | 75 +- test/experimental/donuts.qsql | 2 +- test/experimental/events.json | 131 -- test/single_test.js | 3 +- test/small_tests.js | 14 +- test/star/sales_product_customers.sql | 64 +- 9 files changed, 1387 insertions(+), 1463 deletions(-) delete mode 100644 test/experimental/events.json diff --git a/dist/quick-sql.js b/dist/quick-sql.js index 9b30aa4..7ed5298 100644 --- a/dist/quick-sql.js +++ b/dist/quick-sql.js @@ -1,43 +1,43 @@ -function z(m) { - return m == null ? m : m.toUpperCase().endsWith("IES") ? m.substring(0, m.length - 3) + "y" : m.toUpperCase().endsWith("ES") || m.toUpperCase().endsWith("S") ? m.substring(0, m.length - 1) : m; +function z(d) { + return d == null ? d : d.toUpperCase().endsWith("IES") ? d.substring(0, d.length - 3) + "y" : d.toUpperCase().endsWith("ES") || d.toUpperCase().endsWith("S") ? d.substring(0, d.length - 1) : d; } -function he(m, d) { +function he(d, h) { let E = '"'; - if (m == null) + if (d == null) return null; let L = !1; - const T = "$#_ "; - if (!m.startsWith(E) && !L) { - const x = m; - if (x.length > 0 && "0" <= x[0] && x[0] <= "9") + const I = "$#_ "; + if (!d.startsWith(E) && !L) { + const k = d; + if (k.length > 0 && "0" <= k[0] && k[0] <= "9") L = !0; else - for (let p in x) { - const b = x[p]; - if (T.indexOf(b) < 0 && (b < "0" || "9" < b && b < "A" || "Z" < b && b < "a" || "z" < b)) { + for (let p in k) { + const b = k[p]; + if (I.indexOf(b) < 0 && (b < "0" || "9" < b && b < "A" || "Z" < b && b < "a" || "z" < b)) { L = !0; break; } } } - return (m.startsWith("_") || m.startsWith("$") || m.startsWith("#")) && (L = !0), L || (E = ""), E + m + E; + return (d.startsWith("_") || d.startsWith("$") || d.startsWith("#")) && (L = !0), L || (E = ""), E + d + E; } -function de(m) { - if (m == null) +function de(d) { + if (d == null) return null; - if (m.indexOf('"') == 0) - return m; - let d = he(m); - return d.indexOf('"') == 0 || (d = d.replace(/ /g, "_")), d; + if (d.indexOf('"') == 0) + return d; + let h = he(d); + return h.indexOf('"') == 0 || (h = h.replace(/ /g, "_")), h; } -function K(m, d, E) { +function K(d, h, E) { let L = !1; - E == null && (E = ""), m.indexOf('"') == 0 && (L = !0, m = m.substring(1, m.length - 1)), d.indexOf('"') == 0 && (L = !0, d = d.substring(1, d.length - 1)), E.indexOf('"') == 0 && (L = !0, E = E.substring(1, E.length - 1)); - let T = m + d + E; - return L ? T = '"' + T + '"' : T = T.toLowerCase(), T; + E == null && (E = ""), d.indexOf('"') == 0 && (L = !0, d = d.substring(1, d.length - 1)), h.indexOf('"') == 0 && (L = !0, h = h.substring(1, h.length - 1)), E.indexOf('"') == 0 && (L = !0, E = E.substring(1, E.length - 1)); + let I = d + h + E; + return L ? I = '"' + I + '"' : I = I.toLowerCase(), I; } var oe = function() { - var m = [ + var d = [ "Sales", "Finance", "Delivery", @@ -50,7 +50,7 @@ var oe = function() { "Specialist", "Evangelist", "Salesman" - ], d = [ + ], h = [ "\u300C\u8CA9\u58F2\u300D", "\u300C\u8CA1\u52D9\u300D", "\u300C\u914D\u9001\u300D", @@ -76,31 +76,31 @@ var oe = function() { "\uC804\uB3C4\uC790", "\uD310\uB9E4\uC6D0" ]; - function L(T, x) { - if (typeof x != "string" || T.substring(0, 2).toLowerCase() == "en") - return x; - x.indexOf("'") == 0 && (x = x.substring(1, x.length - 1)); - for (var p = -1, b = 0; b < m.length; b++) - if (m[b] == x) { + function L(I, k) { + if (typeof k != "string" || I.substring(0, 2).toLowerCase() == "en") + return k; + k.indexOf("'") == 0 && (k = k.substring(1, k.length - 1)); + for (var p = -1, b = 0; b < d.length; b++) + if (d[b] == k) { p = b; break; } - return 0 <= p && T.substring(0, 2).toLowerCase() == "jp" && p < d.length ? "'" + d[p] + "'" : 0 <= p && T.substring(0, 2).toLowerCase() == "kr" && p < E.length ? "'" + E[p] + "'" : x; + return 0 <= p && I.substring(0, 2).toLowerCase() == "jp" && p < h.length ? "'" + h[p] + "'" : 0 <= p && I.substring(0, 2).toLowerCase() == "kr" && p < E.length ? "'" + E[p] + "'" : k; } return L; }(); -function fe(m) { - return m && m.__esModule && Object.prototype.hasOwnProperty.call(m, "default") ? m.default : m; +function fe(d) { + return d && d.__esModule && Object.prototype.hasOwnProperty.call(d, "default") ? d.default : d; } var ie = { exports: {} }; -(function(m, d) { +(function(d, h) { (function() { - var E = 9007199254740992, L = -E, T = "0123456789", x = "abcdefghijklmnopqrstuvwxyz", p = x.toUpperCase(), b = T + "abcdef"; + var E = 9007199254740992, L = -E, I = "0123456789", k = "abcdefghijklmnopqrstuvwxyz", p = k.toUpperCase(), b = I + "abcdef"; function S(e) { this.name = "UnsupportedError", this.message = e || "This feature is not supported on this platform"; } S.prototype = new Error(), S.prototype.constructor = S; - var M = Array.prototype.slice; + var T = Array.prototype.slice; function r(e) { if (!(this instanceof r)) return e || (e = null), e === null ? new r() : new r(e); @@ -110,10 +110,10 @@ var ie = { exports: {} }; for (var a = 0; a < arguments.length; a++) { var n = 0; if (Object.prototype.toString.call(arguments[a]) === "[object String]") - for (var o = 0; o < arguments[a].length; o++) { - for (var c = 0, g = 0; g < arguments[a].length; g++) - c = arguments[a].charCodeAt(g) + (c << 6) + (c << 16) - c; - n += c; + for (var l = 0; l < arguments[a].length; l++) { + for (var s = 0, g = 0; g < arguments[a].length; g++) + s = arguments[a].charCodeAt(g) + (s << 6) + (s << 16) - s; + n += s; } else n = arguments[a]; @@ -139,11 +139,11 @@ var ie = { exports: {} }; if (e) throw new RangeError(a); } - var s = function() { + var o = function() { throw new Error("No Base64 encoder available."); }; (function() { - typeof btoa == "function" ? s = btoa : typeof Buffer == "function" && (s = function(a) { + typeof btoa == "function" ? o = btoa : typeof Buffer == "function" && (o = function(a) { return new Buffer(a).toString("base64"); }); })(), r.prototype.bool = function(e) { @@ -153,8 +153,8 @@ var ie = { exports: {} }; ), this.random() * 100 < e.likelihood; }, r.prototype.falsy = function(e) { e = u(e, { pool: [!1, null, 0, NaN, "", void 0] }); - var a = e.pool, n = this.integer({ min: 0, max: a.length - 1 }), o = a[n]; - return o; + var a = e.pool, n = this.integer({ min: 0, max: a.length - 1 }), l = a[n]; + return l; }, r.prototype.animal = function(e) { if (e = u(e), typeof e.type < "u") return t( @@ -165,21 +165,21 @@ var ie = { exports: {} }; return this.pick(this.get("animals")[this.pick(a)]); }, r.prototype.character = function(e) { e = u(e); - var a = "!@#$%^&*()[]", n, o; - return e.casing === "lower" ? n = x : e.casing === "upper" ? n = p : n = x + p, e.pool ? o = e.pool : (o = "", e.alpha && (o += n), e.numeric && (o += T), e.symbols && (o += a), o || (o = n + T + a)), o.charAt(this.natural({ max: o.length - 1 })); + var a = "!@#$%^&*()[]", n, l; + return e.casing === "lower" ? n = k : e.casing === "upper" ? n = p : n = k + p, e.pool ? l = e.pool : (l = "", e.alpha && (l += n), e.numeric && (l += I), e.symbols && (l += a), l || (l = n + I + a)), l.charAt(this.natural({ max: l.length - 1 })); }, r.prototype.floating = function(e) { e = u(e, { fixed: 4 }), t( e.fixed && e.precision, "Chance: Cannot specify both fixed and precision." ); - var a, n = Math.pow(10, e.fixed), o = E / n, c = -o; + var a, n = Math.pow(10, e.fixed), l = E / n, s = -l; t( - e.min && e.fixed && e.min < c, - "Chance: Min specified is out of range with fixed. Min should be, at least, " + c + e.min && e.fixed && e.min < s, + "Chance: Min specified is out of range with fixed. Min should be, at least, " + s ), t( - e.max && e.fixed && e.max > o, - "Chance: Max specified is out of range with fixed. Max should be, at most, " + o - ), e = u(e, { min: c, max: o }), a = this.integer({ min: e.min * n, max: e.max * n }); + e.max && e.fixed && e.max > l, + "Chance: Max specified is out of range with fixed. Max should be, at most, " + l + ), e = u(e, { min: s, max: l }), a = this.integer({ min: e.min * n, max: e.max * n }); var g = (a / n).toFixed(e.fixed); return parseFloat(g); }, r.prototype.integer = function(e) { @@ -189,9 +189,9 @@ var ie = { exports: {} }; t(!Array.isArray(e.exclude), "Chance: exclude must be an array."); for (var a in e.exclude) t(!Number.isInteger(e.exclude[a]), "Chance: exclude must be numbers."); - var n = e.min + this.natural({ max: e.max - e.min - e.exclude.length }), o = e.exclude.sort(); - for (var c in o) { - if (n < o[c]) + var n = e.min + this.natural({ max: e.max - e.min - e.exclude.length }), l = e.exclude.sort(); + for (var s in l) { + if (n < l[s]) break; n++; } @@ -200,14 +200,14 @@ var ie = { exports: {} }; return this.integer(e); }, r.prototype.prime = function(e) { e = u(e, { min: 0, max: 1e4 }), t(e.min < 0, "Chance: Min cannot be less than zero."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); - var a = k.primes[k.primes.length - 1]; + var a = x.primes[x.primes.length - 1]; if (e.max > a) for (var n = a + 2; n <= e.max; ++n) - this.is_prime(n) && k.primes.push(n); - var o = k.primes.filter(function(c) { - return c >= e.min && c <= e.max; + this.is_prime(n) && x.primes.push(n); + var l = x.primes.filter(function(s) { + return s >= e.min && s <= e.max; }); - return this.pick(o); + return this.pick(l); }, r.prototype.is_prime = function(e) { if (e % 1 || e < 2) return !1; @@ -232,18 +232,18 @@ var ie = { exports: {} }; var a = e.length, n = this.n(this.character, a, e); return n.join(""); }; - function l(e) { + function c(e) { this.c = e; } - l.prototype = { + c.prototype = { substitute: function() { return this.c; } }; - function h(e) { + function m(e) { this.c = e; } - h.prototype = { + m.prototype = { substitute: function() { if (!/[{}\\]/.test(this.c)) throw new Error('Invalid escape sequence: "\\' + this.c + '".'); @@ -256,13 +256,13 @@ var ie = { exports: {} }; y.prototype = { replacers: { "#": function(e) { - return e.character({ pool: T }); + return e.character({ pool: I }); }, A: function(e) { return e.character({ pool: p }); }, a: function(e) { - return e.character({ pool: x }); + return e.character({ pool: k }); } }, substitute: function(e) { @@ -273,17 +273,17 @@ var ie = { exports: {} }; } }; function P(e) { - for (var a = [], n = "identity", o = 0; o < e.length; o++) { - var c = e[o]; + for (var a = [], n = "identity", l = 0; l < e.length; l++) { + var s = e[l]; switch (n) { case "escape": - a.push(new h(c)), n = "identity"; + a.push(new m(s)), n = "identity"; break; case "identity": - c === "{" ? n = "replace" : c === "\\" ? n = "escape" : a.push(new l(c)); + s === "{" ? n = "replace" : s === "\\" ? n = "escape" : a.push(new c(s)); break; case "replace": - c === "}" ? n = "identity" : a.push(new y(c)); + s === "}" ? n = "identity" : a.push(new y(s)); break; } } @@ -313,25 +313,25 @@ var ie = { exports: {} }; typeof e != "function", "Chance: The first argument must be a function." ); - var o = function(A, H) { + var l = function(A, H) { return A.indexOf(H) !== -1; }; - n && (o = n.comparator || o); - for (var c = [], g = 0, B, f = a * 50, v = M.call(arguments, 2); c.length < a; ) { + n && (l = n.comparator || l); + for (var s = [], g = 0, B, f = a * 50, v = T.call(arguments, 2); s.length < a; ) { var C = JSON.parse(JSON.stringify(v)); - if (B = e.apply(this, C), o(c, B) || (c.push(B), g = 0), ++g > f) + if (B = e.apply(this, C), l(s, B) || (s.push(B), g = 0), ++g > f) throw new RangeError("Chance: num is likely too large for sample set"); } - return c; + return s; }, r.prototype.n = function(e, a) { t( typeof e != "function", "Chance: The first argument must be a function." ), typeof a > "u" && (a = 1); - var n = a, o = [], c = M.call(arguments, 2); + var n = a, l = [], s = T.call(arguments, 2); for (n = Math.max(0, n), null; n--; null) - o.push(e.apply(this, c)); - return o; + l.push(e.apply(this, s)); + return l; }, r.prototype.pad = function(e, a, n) { return n = n || "0", e = e + "", e.length >= a ? e : new Array(a - e.length + 1).join(n) + e; }, r.prototype.pick = function(e, a) { @@ -351,28 +351,28 @@ var ie = { exports: {} }; throw new RangeError("Chance: Count must be a positive number"); if (!a || a === 1) return [this.pickone(e)]; - var n = e.slice(0), o = n.length; + var n = e.slice(0), l = n.length; return this.n(function() { - var c = this.natural({ max: --o }), g = n[c]; - return n[c] = n[o], g; - }, Math.min(o, a)); + var s = this.natural({ max: --l }), g = n[s]; + return n[s] = n[l], g; + }, Math.min(l, a)); }, r.prototype.shuffle = function(e) { - for (var a = [], n = 0, o = Number(e.length), c = i(o), g = o - 1, B, f = 0; f < o; f++) - B = this.natural({ max: g }), n = c[B], a[f] = e[n], c[B] = c[g], g -= 1; + for (var a = [], n = 0, l = Number(e.length), s = i(l), g = l - 1, B, f = 0; f < l; f++) + B = this.natural({ max: g }), n = s[B], a[f] = e[n], s[B] = s[g], g -= 1; return a; }, r.prototype.weighted = function(e, a, n) { if (e.length !== a.length) throw new RangeError("Chance: Length of array and weights must match"); - for (var o = 0, c, g = 0; g < a.length; ++g) { - if (c = a[g], isNaN(c)) + for (var l = 0, s, g = 0; g < a.length; ++g) { + if (s = a[g], isNaN(s)) throw new RangeError("Chance: All weights must be numbers"); - c > 0 && (o += c); + s > 0 && (l += s); } - if (o === 0) + if (l === 0) throw new RangeError("Chance: No valid entries in array weights"); - var B = this.random() * o, f = 0, v = -1, C; + var B = this.random() * l, f = 0, v = -1, C; for (g = 0; g < a.length; ++g) { - if (c = a[g], f += c, c > 0) { + if (s = a[g], f += s, s > 0) { if (B <= f) { C = g; break; @@ -385,17 +385,17 @@ var ie = { exports: {} }; return n = typeof n > "u" ? !1 : n, n && (e.splice(C, 1), a.splice(C, 1)), A; }, r.prototype.paragraph = function(e) { e = u(e); - var a = e.sentences || this.natural({ min: 3, max: 7 }), n = this.n(this.sentence, a), o = e.linebreak === !0 ? ` + var a = e.sentences || this.natural({ min: 3, max: 7 }), n = this.n(this.sentence, a), l = e.linebreak === !0 ? ` ` : " "; - return n.join(o); + return n.join(l); }, r.prototype.sentence = function(e) { e = u(e); - var a = e.words || this.natural({ min: 12, max: 18 }), n = e.punctuation, o, c = this.n(this.word, a); - return o = c.join(" "), o = this.capitalize(o), n !== !1 && !/^[.?;!:]$/.test(n) && (n = "."), n && (o += n), o; + var a = e.words || this.natural({ min: 12, max: 18 }), n = e.punctuation, l, s = this.n(this.word, a); + return l = s.join(" "), l = this.capitalize(l), n !== !1 && !/^[.?;!:]$/.test(n) && (n = "."), n && (l += n), l; }, r.prototype.syllable = function(e) { e = u(e); - for (var a = e.length || this.natural({ min: 2, max: 3 }), n = "bcdfghjklmnprstvwz", o = "aeiou", c = n + o, g = "", B, f = 0; f < a; f++) - f === 0 ? B = this.character({ pool: c }) : n.indexOf(B) === -1 ? B = this.character({ pool: n }) : B = this.character({ pool: o }), g += B; + for (var a = e.length || this.natural({ min: 2, max: 3 }), n = "bcdfghjklmnprstvwz", l = "aeiou", s = n + l, g = "", B, f = 0; f < a; f++) + f === 0 ? B = this.character({ pool: s }) : n.indexOf(B) === -1 ? B = this.character({ pool: n }) : B = this.character({ pool: l }), g += B; return e.capitalize && (g = this.capitalize(g)), g; }, r.prototype.word = function(e) { e = u(e), t( @@ -409,7 +409,7 @@ var ie = { exports: {} }; while (n.length < e.length); n = n.substring(0, e.length); } else - for (var o = 0; o < a; o++) + for (var l = 0; l < a; l++) n += this.syllable(); return e.capitalize && (n = this.capitalize(n)), n; }, r.prototype.age = function(e) { @@ -437,23 +437,23 @@ var ie = { exports: {} }; } return this.natural(a); }, r.prototype.birthday = function(e) { - var a = this.age(e), n = /* @__PURE__ */ new Date(), o = n.getFullYear(); + var a = this.age(e), n = /* @__PURE__ */ new Date(), l = n.getFullYear(); if (e && e.type) { - var c = /* @__PURE__ */ new Date(), g = /* @__PURE__ */ new Date(); - c.setFullYear(o - a - 1), g.setFullYear(o - a), e = u(e, { - min: c, + var s = /* @__PURE__ */ new Date(), g = /* @__PURE__ */ new Date(); + s.setFullYear(l - a - 1), g.setFullYear(l - a), e = u(e, { + min: s, max: g }); } else if (e && (e.minAge !== void 0 || e.maxAge !== void 0)) { t(e.minAge < 0, "Chance: MinAge cannot be less than zero."), t(e.minAge > e.maxAge, "Chance: MinAge cannot be greater than MaxAge."); - var B = e.minAge !== void 0 ? e.minAge : 0, f = e.maxAge !== void 0 ? e.maxAge : 100, v = new Date(o - f - 1, n.getMonth(), n.getDate()), C = new Date(o - B, n.getMonth(), n.getDate()); + var B = e.minAge !== void 0 ? e.minAge : 0, f = e.maxAge !== void 0 ? e.maxAge : 100, v = new Date(l - f - 1, n.getMonth(), n.getDate()), C = new Date(l - B, n.getMonth(), n.getDate()); v.setDate(v.getDate() + 1), C.setDate(C.getDate() + 1), C.setMilliseconds(C.getMilliseconds() - 1), e = u(e, { min: v, max: C }); } else e = u(e, { - year: o - a + year: l - a }); return this.date(e); }, r.prototype.cpf = function(e) { @@ -462,20 +462,20 @@ var ie = { exports: {} }; }); var a = this.n(this.natural, 9, { max: 9 }), n = a[8] * 2 + a[7] * 3 + a[6] * 4 + a[5] * 5 + a[4] * 6 + a[3] * 7 + a[2] * 8 + a[1] * 9 + a[0] * 10; n = 11 - n % 11, n >= 10 && (n = 0); - var o = n * 2 + a[8] * 3 + a[7] * 4 + a[6] * 5 + a[5] * 6 + a[4] * 7 + a[3] * 8 + a[2] * 9 + a[1] * 10 + a[0] * 11; - o = 11 - o % 11, o >= 10 && (o = 0); - var c = "" + a[0] + a[1] + a[2] + "." + a[3] + a[4] + a[5] + "." + a[6] + a[7] + a[8] + "-" + n + o; - return e.formatted ? c : c.replace(/\D/g, ""); + var l = n * 2 + a[8] * 3 + a[7] * 4 + a[6] * 5 + a[5] * 6 + a[4] * 7 + a[3] * 8 + a[2] * 9 + a[1] * 10 + a[0] * 11; + l = 11 - l % 11, l >= 10 && (l = 0); + var s = "" + a[0] + a[1] + a[2] + "." + a[3] + a[4] + a[5] + "." + a[6] + a[7] + a[8] + "-" + n + l; + return e.formatted ? s : s.replace(/\D/g, ""); }, r.prototype.cnpj = function(e) { e = u(e, { formatted: !0 }); var a = this.n(this.natural, 12, { max: 12 }), n = a[11] * 2 + a[10] * 3 + a[9] * 4 + a[8] * 5 + a[7] * 6 + a[6] * 7 + a[5] * 8 + a[4] * 9 + a[3] * 2 + a[2] * 3 + a[1] * 4 + a[0] * 5; n = 11 - n % 11, n < 2 && (n = 0); - var o = n * 2 + a[11] * 3 + a[10] * 4 + a[9] * 5 + a[8] * 6 + a[7] * 7 + a[6] * 8 + a[5] * 9 + a[4] * 2 + a[3] * 3 + a[2] * 4 + a[1] * 5 + a[0] * 6; - o = 11 - o % 11, o < 2 && (o = 0); - var c = "" + a[0] + a[1] + "." + a[2] + a[3] + a[4] + "." + a[5] + a[6] + a[7] + "/" + a[8] + a[9] + a[10] + a[11] + "-" + n + o; - return e.formatted ? c : c.replace(/\D/g, ""); + var l = n * 2 + a[11] * 3 + a[10] * 4 + a[9] * 5 + a[8] * 6 + a[7] * 7 + a[6] * 8 + a[5] * 9 + a[4] * 2 + a[3] * 3 + a[2] * 4 + a[1] * 5 + a[0] * 6; + l = 11 - l % 11, l < 2 && (l = 0); + var s = "" + a[0] + a[1] + "." + a[2] + a[3] + a[4] + "." + a[5] + a[6] + a[7] + "/" + a[8] + a[9] + a[10] + a[11] + "-" + n + l; + return e.formatted ? s : s.replace(/\D/g, ""); }, r.prototype.first = function(e) { return e = u(e, { gender: this.gender(), nationality: "en" }), this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()]); }, r.prototype.profession = function(e) { @@ -487,65 +487,65 @@ var ie = { exports: {} }; }, r.prototype.last = function(e) { if (e = u(e, { nationality: "*" }), e.nationality === "*") { var a = [], n = this.get("lastNames"); - return Object.keys(n).forEach(function(o) { - a = a.concat(n[o]); + return Object.keys(n).forEach(function(l) { + a = a.concat(n[l]); }), this.pick(a); } else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()]); }, r.prototype.israelId = function() { for (var e = this.string({ pool: "0123456789", length: 8 }), a = 0, n = 0; n < e.length; n++) { - var o = e[n] * (n / 2 === parseInt(n / 2) ? 1 : 2); - o = this.pad(o, 2).toString(), o = parseInt(o[0]) + parseInt(o[1]), a = a + o; + var l = e[n] * (n / 2 === parseInt(n / 2) ? 1 : 2); + l = this.pad(l, 2).toString(), l = parseInt(l[0]) + parseInt(l[1]), a = a + l; } return e = e + (10 - parseInt(a.toString().slice(-1))).toString().slice(-1), e; }, r.prototype.mrz = function(e) { - var a = function(c) { + var a = function(s) { var g = " 89, "Chance: Min specified is out of range. Should be between 0 - 89"), t(e.max < 0 || e.max > 89, "Chance: Max specified is out of range. Should be between 0 - 89"), t(e.fixed > 4, "Chance: Fixed specified should be below or equal to 4")), c) { + var s = e.format.toLowerCase(); + switch ((s === a || s === n) && (t(e.min < 0 || e.min > 89, "Chance: Min specified is out of range. Should be between 0 - 89"), t(e.max < 0 || e.max > 89, "Chance: Max specified is out of range. Should be between 0 - 89"), t(e.fixed > 4, "Chance: Fixed specified should be below or equal to 4")), s) { case a: return this.integer({ min: e.min, max: e.max }) + "\xB0" + this.floating({ min: 0, max: 59, fixed: e.fixed }); case n: return this.integer({ min: e.min, max: e.max }) + "\xB0" + this.integer({ min: 0, max: 59 }) + "\u2019" + this.floating({ min: 0, max: 59, fixed: e.fixed }) + "\u201D"; - case o: + case l: default: return this.floating({ min: e.min, max: e.max, fixed: e.fixed }); } }, r.prototype.longitude = function(e) { - var [a, n, o] = ["ddm", "dms", "dd"]; + var [a, n, l] = ["ddm", "dms", "dd"]; e = u( e, - e && e.format && [a, n].includes(e.format.toLowerCase()) ? { min: 0, max: 179, fixed: 4 } : { fixed: 5, min: -180, max: 180, format: o } + e && e.format && [a, n].includes(e.format.toLowerCase()) ? { min: 0, max: 179, fixed: 4 } : { fixed: 5, min: -180, max: 180, format: l } ); - var c = e.format.toLowerCase(); - switch ((c === a || c === n) && (t(e.min < 0 || e.min > 179, "Chance: Min specified is out of range. Should be between 0 - 179"), t(e.max < 0 || e.max > 179, "Chance: Max specified is out of range. Should be between 0 - 179"), t(e.fixed > 4, "Chance: Fixed specified should be below or equal to 4")), c) { + var s = e.format.toLowerCase(); + switch ((s === a || s === n) && (t(e.min < 0 || e.min > 179, "Chance: Min specified is out of range. Should be between 0 - 179"), t(e.max < 0 || e.max > 179, "Chance: Max specified is out of range. Should be between 0 - 179"), t(e.fixed > 4, "Chance: Fixed specified should be below or equal to 4")), s) { case a: return this.integer({ min: e.min, max: e.max }) + "\xB0" + this.floating({ min: 0, max: 59.9999, fixed: e.fixed }); case n: return this.integer({ min: e.min, max: e.max }) + "\xB0" + this.integer({ min: 0, max: 59 }) + "\u2019" + this.floating({ min: 0, max: 59.9999, fixed: e.fixed }) + "\u201D"; - case o: + case l: default: return this.floating({ min: e.min, max: e.max, fixed: e.fixed }); } }, r.prototype.phone = function(e) { - var a = this, n, o = function(H) { - var F = []; + var a = this, n, l = function(H) { + var _ = []; return H.sections.forEach(function(W) { - F.push(a.string({ pool: "0123456789", length: W })); - }), H.area + F.join(" "); + _.push(a.string({ pool: "0123456789", length: W })); + }), H.area + _.join(" "); }; e = u(e, { formatted: !0, @@ -834,10 +834,10 @@ var ie = { exports: {} }; mobile: !1, exampleNumber: !1 }), e.formatted || (e.parens = !1); - var c; + var s; switch (e.country) { case "fr": - e.mobile ? (n = this.pick(["06", "07"]) + a.string({ pool: "0123456789", length: 8 }), c = e.formatted ? n.match(/../g).join(" ") : n) : (n = this.pick([ + e.mobile ? (n = this.pick(["06", "07"]) + a.string({ pool: "0123456789", length: 8 }), s = e.formatted ? n.match(/../g).join(" ") : n) : (n = this.pick([ // Valid zone and département codes. "01" + this.pick(["30", "34", "39", "40", "41", "42", "43", "44", "45", "46", "47", "48", "49", "53", "55", "56", "58", "60", "64", "69", "70", "72", "73", "74", "75", "76", "77", "78", "79", "80", "81", "82", "83"]) + a.string({ pool: "0123456789", length: 6 }), "02" + this.pick(["14", "18", "22", "23", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37", "38", "40", "41", "43", "44", "45", "46", "47", "48", "49", "50", "51", "52", "53", "54", "56", "57", "61", "62", "69", "72", "76", "77", "78", "85", "90", "96", "97", "98", "99"]) + a.string({ pool: "0123456789", length: 6 }), @@ -845,13 +845,13 @@ var ie = { exports: {} }; "04" + this.pick(["11", "13", "15", "20", "22", "26", "27", "30", "32", "34", "37", "42", "43", "44", "50", "56", "57", "63", "66", "67", "68", "69", "70", "71", "72", "73", "74", "75", "76", "77", "78", "79", "80", "81", "82", "83", "84", "85", "86", "88", "89", "90", "91", "92", "93", "94", "95", "97", "98"]) + a.string({ pool: "0123456789", length: 6 }), "05" + this.pick(["08", "16", "17", "19", "24", "31", "32", "33", "34", "35", "40", "45", "46", "47", "49", "53", "55", "56", "57", "58", "59", "61", "62", "63", "64", "65", "67", "79", "81", "82", "86", "87", "90", "94"]) + a.string({ pool: "0123456789", length: 6 }), "09" + a.string({ pool: "0123456789", length: 8 }) - ]), c = e.formatted ? n.match(/../g).join(" ") : n); + ]), s = e.formatted ? n.match(/../g).join(" ") : n); break; case "uk": e.mobile ? (n = this.pick([ { area: "07" + this.pick(["4", "5", "7", "8", "9"]), sections: [2, 6] }, { area: "07624 ", sections: [6] } - ]), c = e.formatted ? o(n) : o(n).replace(" ", "")) : (n = this.pick([ + ]), s = e.formatted ? l(n) : l(n).replace(" ", "")) : (n = this.pick([ //valid area codes of major cities/counties followed by random numbers in required format. { area: "01" + this.character({ pool: "234569" }) + "1 ", sections: [3, 4] }, { area: "020 " + this.character({ pool: "378" }), sections: [3, 4] }, @@ -866,7 +866,7 @@ var ie = { exports: {} }; { area: "017" + this.pick(["26", "44", "50", "68"]) + " ", sections: [6] }, { area: "018" + this.pick(["27", "37", "84", "97"]) + " ", sections: [6] }, { area: "019" + this.pick(["00", "05", "35", "46", "49", "63", "95"]) + " ", sections: [6] } - ]), c = e.formatted ? o(n) : o(n).replace(" ", "", "g")); + ]), s = e.formatted ? l(n) : l(n).replace(" ", "", "g")); break; case "za": e.mobile ? (n = this.pick([ @@ -876,32 +876,32 @@ var ie = { exports: {} }; "071" + this.pick(["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"]) + a.string({ pool: "0123456789", length: 6 }), "07" + this.pick(["2", "3", "4", "6", "7", "8", "9"]) + a.string({ pool: "0123456789", length: 7 }), "08" + this.pick(["0", "1", "2", "3", "4", "5"]) + a.string({ pool: "0123456789", length: 7 }) - ]), c = e.formatted || n) : (n = this.pick([ + ]), s = e.formatted || n) : (n = this.pick([ "01" + this.pick(["0", "1", "2", "3", "4", "5", "6", "7", "8"]) + a.string({ pool: "0123456789", length: 7 }), "02" + this.pick(["1", "2", "3", "4", "7", "8"]) + a.string({ pool: "0123456789", length: 7 }), "03" + this.pick(["1", "2", "3", "5", "6", "9"]) + a.string({ pool: "0123456789", length: 7 }), "04" + this.pick(["1", "2", "3", "4", "5", "6", "7", "8", "9"]) + a.string({ pool: "0123456789", length: 7 }), "05" + this.pick(["1", "3", "4", "6", "7", "8"]) + a.string({ pool: "0123456789", length: 7 }) - ]), c = e.formatted || n); + ]), s = e.formatted || n); break; case "us": var g = this.areacode(e).toString(), B = this.natural({ min: 2, max: 9 }).toString() + this.natural({ min: 0, max: 9 }).toString() + this.natural({ min: 0, max: 9 }).toString(), f = this.natural({ min: 1e3, max: 9999 }).toString(); - c = e.formatted ? g + " " + B + "-" + f : g + B + f; + s = e.formatted ? g + " " + B + "-" + f : g + B + f; break; case "br": var v = this.pick(["11", "12", "13", "14", "15", "16", "17", "18", "19", "21", "22", "24", "27", "28", "31", "32", "33", "34", "35", "37", "38", "41", "42", "43", "44", "45", "46", "47", "48", "49", "51", "53", "54", "55", "61", "62", "63", "64", "65", "66", "67", "68", "69", "71", "73", "74", "75", "77", "79", "81", "82", "83", "84", "85", "86", "87", "88", "89", "91", "92", "93", "94", "95", "96", "97", "98", "99"]), C; e.mobile ? C = "9" + a.string({ pool: "0123456789", length: 4 }) : C = this.natural({ min: 2e3, max: 5999 }).toString(); var A = a.string({ pool: "0123456789", length: 4 }); - c = e.formatted ? "(" + v + ") " + C + "-" + A : v + C + A; + s = e.formatted ? "(" + v + ") " + C + "-" + A : v + C + A; break; } - return c; + return s; }, r.prototype.postal = function() { var e = this.character({ pool: "XVTSRPNKLMHJGECBA" }), a = e + this.natural({ max: 9 }) + this.character({ alpha: !0, casing: "upper" }), n = this.natural({ max: 9 }) + this.character({ alpha: !0, casing: "upper" }) + this.natural({ max: 9 }); return a + " " + n; }, r.prototype.postcode = function() { - var e = this.pick(this.get("postcodeAreas")).code, a = this.natural({ max: 9 }), n = this.bool() ? this.character({ alpha: !0, casing: "upper" }) : "", o = e + a + n, c = this.natural({ max: 9 }), g = this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }), B = c + g; - return o + " " + B; + var e = this.pick(this.get("postcodeAreas")).code, a = this.natural({ max: 9 }), n = this.bool() ? this.character({ alpha: !0, casing: "upper" }) : "", l = e + a + n, s = this.natural({ max: 9 }), g = this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }), B = s + g; + return l + " " + B; }, r.prototype.counties = function(e) { return e = u(e, { country: "uk" }), this.get("counties")[e.country.toLowerCase()]; }, r.prototype.county = function(e) { @@ -917,8 +917,8 @@ var ie = { exports: {} }; var a; switch (e.country.toLowerCase()) { case "us": - var n = this.get("us_states_and_dc"), o = this.get("territories"), c = this.get("armed_forces"); - a = [], e.us_states_and_dc && (a = a.concat(n)), e.territories && (a = a.concat(o)), e.armed_forces && (a = a.concat(c)); + var n = this.get("us_states_and_dc"), l = this.get("territories"), s = this.get("armed_forces"); + a = [], e.us_states_and_dc && (a = a.concat(n)), e.territories && (a = a.concat(l)), e.armed_forces && (a = a.concat(s)); break; case "it": case "mx": @@ -957,8 +957,8 @@ var ie = { exports: {} }; american: !0, string: !1 }); - var o = typeof e.min < "u" ? e.min.getTime() : 1, c = typeof e.max < "u" ? e.max.getTime() : 864e13; - n = new Date(this.integer({ min: o, max: c })); + var l = typeof e.min < "u" ? e.min.getTime() : 1, s = typeof e.max < "u" ? e.max.getTime() : 864e13; + n = new Date(this.integer({ min: l, max: s })); } else { var g = this.month({ raw: !0 }), B = g.days; e && e.month && (B = this.get("months")[(e.month % 12 + 12) % 12].days), e = u(e, { @@ -1005,17 +1005,17 @@ var ie = { exports: {} }; return e = u(e, { min: (/* @__PURE__ */ new Date()).getFullYear() }), e.max = typeof e.max < "u" ? e.max : e.min + 100, this.natural(e).toString(); }, r.prototype.cc = function(e) { e = u(e); - var a, n, o; - return a = e.type ? this.cc_type({ name: e.type, raw: !0 }) : this.cc_type({ raw: !0 }), n = a.prefix.split(""), o = a.length - a.prefix.length - 1, n = n.concat(this.n(this.integer, o, { min: 0, max: 9 })), n.push(this.luhn_calculate(n.join(""))), n.join(""); + var a, n, l; + return a = e.type ? this.cc_type({ name: e.type, raw: !0 }) : this.cc_type({ raw: !0 }), n = a.prefix.split(""), l = a.length - a.prefix.length - 1, n = n.concat(this.n(this.integer, l, { min: 0, max: 9 })), n.push(this.luhn_calculate(n.join(""))), n.join(""); }, r.prototype.cc_types = function() { return this.get("cc_types"); }, r.prototype.cc_type = function(e) { e = u(e); var a = this.cc_types(), n = null; if (e.name) { - for (var o = 0; o < a.length; o++) - if (a[o].name === e.name || a[o].short_name === e.name) { - n = a[o]; + for (var l = 0; l < a.length; l++) + if (a[l].name === e.name || a[l].short_name === e.name) { + n = a[l]; break; } if (n === null) @@ -1033,9 +1033,9 @@ var ie = { exports: {} }; return this.pick(this.timezones()); }, r.prototype.currency_pair = function(e) { var a = this.unique(this.currency, 2, { - comparator: function(n, o) { - return n.reduce(function(c, g) { - return c || g.code === o.code; + comparator: function(n, l) { + return n.reduce(function(s, g) { + return s || g.code === l.code; }, !1); } }); @@ -1052,11 +1052,11 @@ var ie = { exports: {} }; return a.year = this.exp_year(), a.year === (/* @__PURE__ */ new Date()).getFullYear().toString() ? a.month = this.exp_month({ future: !0 }) : a.month = this.exp_month(), e.raw ? a : a.month + "/" + a.year; }, r.prototype.exp_month = function(e) { e = u(e); - var a, n, o = (/* @__PURE__ */ new Date()).getMonth() + 1; - if (e.future && o !== 12) + var a, n, l = (/* @__PURE__ */ new Date()).getMonth() + 1; + if (e.future && l !== 12) do a = this.month({ raw: !0 }).numeric, n = parseInt(a, 10); - while (n <= o); + while (n <= l); else a = this.month({ raw: !0 }).numeric; return a; @@ -1076,37 +1076,37 @@ var ie = { exports: {} }; return e = this.pad(e, 7) + this.pad(this.pick(this.provinces({ country: "it" })).code, 3), e + this.luhn_calculate(e); }, r.prototype.cf = function(e) { e = e || {}; - var a = e.gender ? e.gender : this.gender(), n = e.first ? e.first : this.first({ gender: a, nationality: "it" }), o = e.last ? e.last : this.last({ nationality: "it" }), c = e.birthday ? e.birthday : this.birthday(), g = e.city ? e.city : this.pickone(["A", "B", "C", "D", "E", "F", "G", "H", "I", "L", "M", "Z"]) + this.pad(this.natural({ max: 999 }), 3), B = [], f = function(A, H) { - var F, W = []; - return A.length < 3 ? W = A.split("").concat("XXX".split("")).splice(0, 3) : (F = A.toUpperCase().split("").map(function(J) { + var a = e.gender ? e.gender : this.gender(), n = e.first ? e.first : this.first({ gender: a, nationality: "it" }), l = e.last ? e.last : this.last({ nationality: "it" }), s = e.birthday ? e.birthday : this.birthday(), g = e.city ? e.city : this.pickone(["A", "B", "C", "D", "E", "F", "G", "H", "I", "L", "M", "Z"]) + this.pad(this.natural({ max: 999 }), 3), B = [], f = function(A, H) { + var _, W = []; + return A.length < 3 ? W = A.split("").concat("XXX".split("")).splice(0, 3) : (_ = A.toUpperCase().split("").map(function(J) { return "BCDFGHJKLMNPRSTVWZ".indexOf(J) !== -1 ? J : void 0; - }).join(""), F.length > 3 && (H ? F = F.substr(0, 3) : F = F[0] + F.substr(2, 2)), F.length < 3 && (W = F, F = A.toUpperCase().split("").map(function(J) { + }).join(""), _.length > 3 && (H ? _ = _.substr(0, 3) : _ = _[0] + _.substr(2, 2)), _.length < 3 && (W = _, _ = A.toUpperCase().split("").map(function(J) { return "AEIOU".indexOf(J) !== -1 ? J : void 0; - }).join("").substr(0, 3 - W.length)), W = W + F), W; - }, v = function(A, H, F) { + }).join("").substr(0, 3 - W.length)), W = W + _), W; + }, v = function(A, H, _) { var W = ["A", "B", "C", "D", "E", "H", "L", "M", "P", "R", "S", "T"]; - return A.getFullYear().toString().substr(2) + W[A.getMonth()] + F.pad(A.getDate() + (H.toLowerCase() === "female" ? 40 : 0), 2); + return A.getFullYear().toString().substr(2) + W[A.getMonth()] + _.pad(A.getDate() + (H.toLowerCase() === "female" ? 40 : 0), 2); }, C = function(A) { - for (var H = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ", F = "ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ", W = "ABCDEFGHIJKLMNOPQRSTUVWXYZ", J = "BAKPLCQDREVOSFTGUHMINJWZYX", V = 0, U = 0; U < 15; U++) - U % 2 !== 0 ? V += W.indexOf(F[H.indexOf(A[U])]) : V += J.indexOf(F[H.indexOf(A[U])]); + for (var H = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ", _ = "ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ", W = "ABCDEFGHIJKLMNOPQRSTUVWXYZ", J = "BAKPLCQDREVOSFTGUHMINJWZYX", V = 0, U = 0; U < 15; U++) + U % 2 !== 0 ? V += W.indexOf(_[H.indexOf(A[U])]) : V += J.indexOf(_[H.indexOf(A[U])]); return W[V % 26]; }; - return B = B.concat(f(o, !0), f(n), v(c, a, this), g.toUpperCase().split("")).join(""), B += C(B.toUpperCase()), B.toUpperCase(); + return B = B.concat(f(l, !0), f(n), v(s, a, this), g.toUpperCase().split("")).join(""), B += C(B.toUpperCase()), B.toUpperCase(); }, r.prototype.pl_pesel = function() { for (var e = this.natural({ min: 1, max: 9999999999 }), a = this.pad(e, 10).split(""), n = 0; n < a.length; n++) a[n] = parseInt(a[n]); - var o = (1 * a[0] + 3 * a[1] + 7 * a[2] + 9 * a[3] + 1 * a[4] + 3 * a[5] + 7 * a[6] + 9 * a[7] + 1 * a[8] + 3 * a[9]) % 10; - return o !== 0 && (o = 10 - o), a.join("") + o; + var l = (1 * a[0] + 3 * a[1] + 7 * a[2] + 9 * a[3] + 1 * a[4] + 3 * a[5] + 7 * a[6] + 9 * a[7] + 1 * a[8] + 3 * a[9]) % 10; + return l !== 0 && (l = 10 - l), a.join("") + l; }, r.prototype.pl_nip = function() { for (var e = this.natural({ min: 1, max: 999999999 }), a = this.pad(e, 9).split(""), n = 0; n < a.length; n++) a[n] = parseInt(a[n]); - var o = (6 * a[0] + 5 * a[1] + 7 * a[2] + 2 * a[3] + 3 * a[4] + 4 * a[5] + 5 * a[6] + 6 * a[7] + 7 * a[8]) % 11; - return o === 10 ? this.pl_nip() : a.join("") + o; + var l = (6 * a[0] + 5 * a[1] + 7 * a[2] + 2 * a[3] + 3 * a[4] + 4 * a[5] + 5 * a[6] + 6 * a[7] + 7 * a[8]) % 11; + return l === 10 ? this.pl_nip() : a.join("") + l; }, r.prototype.pl_regon = function() { for (var e = this.natural({ min: 1, max: 99999999 }), a = this.pad(e, 8).split(""), n = 0; n < a.length; n++) a[n] = parseInt(a[n]); - var o = (8 * a[0] + 9 * a[1] + 2 * a[2] + 3 * a[3] + 4 * a[4] + 5 * a[5] + 6 * a[6] + 7 * a[7]) % 11; - return o === 10 && (o = 0), a.join("") + o; + var l = (8 * a[0] + 9 * a[1] + 2 * a[2] + 3 * a[3] + 4 * a[4] + 5 * a[5] + 6 * a[6] + 7 * a[7]) % 11; + return l === 10 && (l = 0), a.join("") + l; }, r.prototype.note = function(e) { e = u(e, { notes: "flatKey" }); var a = { @@ -1137,29 +1137,29 @@ var ie = { exports: {} }; }, r.prototype.coin = function() { return this.bool() ? "heads" : "tails"; }; - function I(e) { + function M(e) { return function() { return this.natural(e); }; } - r.prototype.d4 = I({ min: 1, max: 4 }), r.prototype.d6 = I({ min: 1, max: 6 }), r.prototype.d8 = I({ min: 1, max: 8 }), r.prototype.d10 = I({ min: 1, max: 10 }), r.prototype.d12 = I({ min: 1, max: 12 }), r.prototype.d20 = I({ min: 1, max: 20 }), r.prototype.d30 = I({ min: 1, max: 30 }), r.prototype.d100 = I({ min: 1, max: 100 }), r.prototype.rpg = function(e, a) { + r.prototype.d4 = M({ min: 1, max: 4 }), r.prototype.d6 = M({ min: 1, max: 6 }), r.prototype.d8 = M({ min: 1, max: 8 }), r.prototype.d10 = M({ min: 1, max: 10 }), r.prototype.d12 = M({ min: 1, max: 12 }), r.prototype.d20 = M({ min: 1, max: 20 }), r.prototype.d30 = M({ min: 1, max: 30 }), r.prototype.d100 = M({ min: 1, max: 100 }), r.prototype.rpg = function(e, a) { if (a = u(a), e) { - var n = e.toLowerCase().split("d"), o = []; + var n = e.toLowerCase().split("d"), l = []; if (n.length !== 2 || !parseInt(n[0], 10) || !parseInt(n[1], 10)) throw new Error("Chance: Invalid format provided. Please provide #d# where the first # is the number of dice to roll, the second # is the max of each die"); - for (var c = n[0]; c > 0; c--) - o[c - 1] = this.natural({ min: 1, max: n[1] }); - return typeof a.sum < "u" && a.sum ? o.reduce(function(g, B) { + for (var s = n[0]; s > 0; s--) + l[s - 1] = this.natural({ min: 1, max: n[1] }); + return typeof a.sum < "u" && a.sum ? l.reduce(function(g, B) { return g + B; - }) : o; + }) : l; } else throw new RangeError("Chance: A type of die roll must be included"); }, r.prototype.guid = function(e) { e = u(e, { version: 5 }); - var a = "abcdef1234567890", n = "ab89", o = this.string({ pool: a, length: 8 }) + "-" + this.string({ pool: a, length: 4 }) + "-" + // The Version + var a = "abcdef1234567890", n = "ab89", l = this.string({ pool: a, length: 8 }) + "-" + this.string({ pool: a, length: 4 }) + "-" + // The Version e.version + this.string({ pool: a, length: 3 }) + "-" + // The Variant this.string({ pool: n, length: 1 }) + this.string({ pool: a, length: 3 }) + "-" + this.string({ pool: a, length: 12 }); - return o; + return l; }, r.prototype.hash = function(e) { e = u(e, { length: 40, casing: "lower" }); var a = e.casing === "upper" ? b.toUpperCase() : b; @@ -1168,8 +1168,8 @@ var ie = { exports: {} }; var a = e.toString(), n = +a.substring(a.length - 1); return n === this.luhn_calculate(+a.substring(0, a.length - 1)); }, r.prototype.luhn_calculate = function(e) { - for (var a = e.toString().split("").reverse(), n = 0, o, c = 0, g = a.length; g > c; ++c) - o = +a[c], c % 2 === 0 && (o *= 2, o > 9 && (o -= 9)), n += o; + for (var a = e.toString().split("").reverse(), n = 0, l, s = 0, g = a.length; g > s; ++s) + l = +a[s], s % 2 === 0 && (l *= 2, l > 9 && (l -= 9)), n += l; return n * 9 % 10; }, r.prototype.md5 = function(e) { var a = { str: "", key: null, raw: !1 }; @@ -1187,36 +1187,36 @@ var ie = { exports: {} }; throw new Error("A parameter is required to return an md5 hash."); return this.bimd5.md5(a.str, a.key, a.raw); }, r.prototype.file = function(e) { - var a = e || {}, n = "fileExtension", o = Object.keys(this.get("fileExtension")), c, g; - if (c = this.word({ length: a.length }), a.extension) - return g = a.extension, c + "." + g; + var a = e || {}, n = "fileExtension", l = Object.keys(this.get("fileExtension")), s, g; + if (s = this.word({ length: a.length }), a.extension) + return g = a.extension, s + "." + g; if (a.extensions) { if (Array.isArray(a.extensions)) - return g = this.pickone(a.extensions), c + "." + g; + return g = this.pickone(a.extensions), s + "." + g; if (a.extensions.constructor === Object) { var B = a.extensions, f = Object.keys(B); - return g = this.pickone(B[this.pickone(f)]), c + "." + g; + return g = this.pickone(B[this.pickone(f)]), s + "." + g; } throw new Error("Chance: Extensions must be an Array or Object"); } if (a.fileType) { var v = a.fileType; - if (o.indexOf(v) !== -1) - return g = this.pickone(this.get(n)[v]), c + "." + g; + if (l.indexOf(v) !== -1) + return g = this.pickone(this.get(n)[v]), s + "." + g; throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'"); } - return g = this.pickone(this.get(n)[this.pickone(o)]), c + "." + g; + return g = this.pickone(this.get(n)[this.pickone(l)]), s + "." + g; }, r.prototype.fileWithContent = function(e) { var a = e || {}, n = "fileName" in a ? a.fileName : this.file().split(".")[0]; if (n += "." + ("fileExtension" in a ? a.fileExtension : this.file().split(".")[1]), typeof a.fileSize != "number") throw new Error("File size must be an integer"); - var o = { + var l = { fileData: this.buffer({ length: a.fileSize }), fileName: n }; - return o; + return l; }; - var k = { + var x = { firstNames: { male: { en: ["James", "John", "Robert", "Michael", "William", "David", "Richard", "Joseph", "Charles", "Thomas", "Christopher", "Daniel", "Matthew", "George", "Donald", "Anthony", "Paul", "Mark", "Edward", "Steven", "Kenneth", "Andrew", "Brian", "Joshua", "Kevin", "Ronald", "Timothy", "Jason", "Jeffrey", "Frank", "Gary", "Ryan", "Nicholas", "Eric", "Stephen", "Jacob", "Larry", "Jonathan", "Scott", "Raymond", "Justin", "Brandon", "Gregory", "Samuel", "Benjamin", "Patrick", "Jack", "Henry", "Walter", "Dennis", "Jerry", "Alexander", "Peter", "Tyler", "Douglas", "Harold", "Aaron", "Jose", "Adam", "Arthur", "Zachary", "Carl", "Nathan", "Albert", "Kyle", "Lawrence", "Joe", "Willie", "Gerald", "Roger", "Keith", "Jeremy", "Terry", "Harry", "Ralph", "Sean", "Jesse", "Roy", "Louis", "Billy", "Austin", "Bruce", "Eugene", "Christian", "Bryan", "Wayne", "Russell", "Howard", "Fred", "Ethan", "Jordan", "Philip", "Alan", "Juan", "Randy", "Vincent", "Bobby", "Dylan", "Johnny", "Phillip", "Victor", "Clarence", "Ernest", "Martin", "Craig", "Stanley", "Shawn", "Travis", "Bradley", "Leonard", "Earl", "Gabriel", "Jimmy", "Francis", "Todd", "Noah", "Danny", "Dale", "Cody", "Carlos", "Allen", "Frederick", "Logan", "Curtis", "Alex", "Joel", "Luis", "Norman", "Marvin", "Glenn", "Tony", "Nathaniel", "Rodney", "Melvin", "Alfred", "Steve", "Cameron", "Chad", "Edwin", "Caleb", "Evan", "Antonio", "Lee", "Herbert", "Jeffery", "Isaac", "Derek", "Ricky", "Marcus", "Theodore", "Elijah", "Luke", "Jesus", "Eddie", "Troy", "Mike", "Dustin", "Ray", "Adrian", "Bernard", "Leroy", "Angel", "Randall", "Wesley", "Ian", "Jared", "Mason", "Hunter", "Calvin", "Oscar", "Clifford", "Jay", "Shane", "Ronnie", "Barry", "Lucas", "Corey", "Manuel", "Leo", "Tommy", "Warren", "Jackson", "Isaiah", "Connor", "Don", "Dean", "Jon", "Julian", "Miguel", "Bill", "Lloyd", "Charlie", "Mitchell", "Leon", "Jerome", "Darrell", "Jeremiah", "Alvin", "Brett", "Seth", "Floyd", "Jim", "Blake", "Micheal", "Gordon", "Trevor", "Lewis", "Erik", "Edgar", "Vernon", "Devin", "Gavin", "Jayden", "Chris", "Clyde", "Tom", "Derrick", "Mario", "Brent", "Marc", "Herman", "Chase", "Dominic", "Ricardo", "Franklin", "Maurice", "Max", "Aiden", "Owen", "Lester", "Gilbert", "Elmer", "Gene", "Francisco", "Glen", "Cory", "Garrett", "Clayton", "Sam", "Jorge", "Chester", "Alejandro", "Jeff", "Harvey", "Milton", "Cole", "Ivan", "Andre", "Duane", "Landon"], @@ -7027,26 +7027,26 @@ var ie = { exports: {} }; "sadness", "fear" ] - }, N = Object.prototype.hasOwnProperty, w = Object.keys || function(e) { + }, D = Object.prototype.hasOwnProperty, N = Object.keys || function(e) { var a = []; for (var n in e) - N.call(e, n) && a.push(n); + D.call(e, n) && a.push(n); return a; }; - function D(e, a) { - for (var n = w(e), o, c = 0, g = n.length; c < g; c++) - o = n[c], a[o] = e[o] || a[o]; - } function R(e, a) { - for (var n = 0, o = e.length; n < o; n++) + for (var n = N(e), l, s = 0, g = n.length; s < g; s++) + l = n[s], a[l] = e[l] || a[l]; + } + function G(e, a) { + for (var n = 0, l = e.length; n < l; n++) a[n] = e[n]; } - function _(e, a) { - var n = Array.isArray(e), o = a || (n ? new Array(e.length) : {}); - return n ? R(e, o) : D(e, o), o; + function F(e, a) { + var n = Array.isArray(e), l = a || (n ? new Array(e.length) : {}); + return n ? G(e, l) : R(e, l), l; } r.prototype.get = function(e) { - return _(k[e]); + return F(x[e]); }, r.prototype.mac_address = function(e) { e = u(e), e.separator || (e.separator = e.networkVersion ? "." : ":"); var a = "ABCDEF1234567890", n = ""; @@ -7063,11 +7063,11 @@ var ie = { exports: {} }; "Chance: Standard deviation (dev) must be a number" ), e.pool.length > 0) return this.normal_pool(e); - var a, n, o, c, g = e.mean, B = e.dev; + var a, n, l, s, g = e.mean, B = e.dev; do - n = this.random() * 2 - 1, o = this.random() * 2 - 1, a = n * n + o * o; + n = this.random() * 2 - 1, l = this.random() * 2 - 1, a = n * n + l * l; while (a >= 1); - return c = n * Math.sqrt(-2 * Math.log(a) / a), B * c + g; + return s = n * Math.sqrt(-2 * Math.log(a) / a), B * s + g; }, r.prototype.normal_pool = function(e) { var a = 0; do { @@ -7095,7 +7095,7 @@ var ie = { exports: {} }; } return a + this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }); }, r.prototype.set = function(e, a) { - typeof e == "string" ? k[e] = a : k = _(e, k); + typeof e == "string" ? x[e] = a : x = F(e, x); }, r.prototype.tv = function(e) { return this.radio(e); }, r.prototype.cnpj = function() { @@ -7108,7 +7108,7 @@ var ie = { exports: {} }; }, r.prototype.mersenne_twister = function(e) { return new O(e); }, r.prototype.blueimp_md5 = function() { - return new G(); + return new w(); }; var O = function(e) { e === void 0 && (e = Math.floor(Math.random() * Math.pow(10, 13))), this.N = 624, this.M = 397, this.MATRIX_A = 2567483615, this.UPPER_MASK = 2147483648, this.LOWER_MASK = 2147483647, this.mt = new Array(this.N), this.mti = this.N + 1, this.init_genrand(e); @@ -7117,10 +7117,10 @@ var ie = { exports: {} }; for (this.mt[0] = e >>> 0, this.mti = 1; this.mti < this.N; this.mti++) e = this.mt[this.mti - 1] ^ this.mt[this.mti - 1] >>> 30, this.mt[this.mti] = (((e & 4294901760) >>> 16) * 1812433253 << 16) + (e & 65535) * 1812433253 + this.mti, this.mt[this.mti] >>>= 0; }, O.prototype.init_by_array = function(e, a) { - var n = 1, o = 0, c, g; - for (this.init_genrand(19650218), c = this.N > a ? this.N : a; c; c--) - g = this.mt[n - 1] ^ this.mt[n - 1] >>> 30, this.mt[n] = (this.mt[n] ^ (((g & 4294901760) >>> 16) * 1664525 << 16) + (g & 65535) * 1664525) + e[o] + o, this.mt[n] >>>= 0, n++, o++, n >= this.N && (this.mt[0] = this.mt[this.N - 1], n = 1), o >= a && (o = 0); - for (c = this.N - 1; c; c--) + var n = 1, l = 0, s, g; + for (this.init_genrand(19650218), s = this.N > a ? this.N : a; s; s--) + g = this.mt[n - 1] ^ this.mt[n - 1] >>> 30, this.mt[n] = (this.mt[n] ^ (((g & 4294901760) >>> 16) * 1664525 << 16) + (g & 65535) * 1664525) + e[l] + l, this.mt[n] >>>= 0, n++, l++, n >= this.N && (this.mt[0] = this.mt[this.N - 1], n = 1), l >= a && (l = 0); + for (s = this.N - 1; s; s--) g = this.mt[n - 1] ^ this.mt[n - 1] >>> 30, this.mt[n] = (this.mt[n] ^ (((g & 4294901760) >>> 16) * 1566083941 << 16) + (g & 65535) * 1566083941) - n, this.mt[n] >>>= 0, n++, n >= this.N && (this.mt[0] = this.mt[this.N - 1], n = 1); this.mt[0] = 2147483648; }, O.prototype.genrand_int32 = function() { @@ -7146,84 +7146,84 @@ var ie = { exports: {} }; var e = this.genrand_int32() >>> 5, a = this.genrand_int32() >>> 6; return (e * 67108864 + a) * (1 / 9007199254740992); }; - var G = function() { + var w = function() { }; - G.prototype.VERSION = "1.0.1", G.prototype.safe_add = function(a, n) { - var o = (a & 65535) + (n & 65535), c = (a >> 16) + (n >> 16) + (o >> 16); - return c << 16 | o & 65535; - }, G.prototype.bit_roll = function(e, a) { + w.prototype.VERSION = "1.0.1", w.prototype.safe_add = function(a, n) { + var l = (a & 65535) + (n & 65535), s = (a >> 16) + (n >> 16) + (l >> 16); + return s << 16 | l & 65535; + }, w.prototype.bit_roll = function(e, a) { return e << a | e >>> 32 - a; - }, G.prototype.md5_cmn = function(e, a, n, o, c, g) { - return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a, e), this.safe_add(o, g)), c), n); - }, G.prototype.md5_ff = function(e, a, n, o, c, g, B) { - return this.md5_cmn(a & n | ~a & o, e, a, c, g, B); - }, G.prototype.md5_gg = function(e, a, n, o, c, g, B) { - return this.md5_cmn(a & o | n & ~o, e, a, c, g, B); - }, G.prototype.md5_hh = function(e, a, n, o, c, g, B) { - return this.md5_cmn(a ^ n ^ o, e, a, c, g, B); - }, G.prototype.md5_ii = function(e, a, n, o, c, g, B) { - return this.md5_cmn(n ^ (a | ~o), e, a, c, g, B); - }, G.prototype.binl_md5 = function(e, a) { + }, w.prototype.md5_cmn = function(e, a, n, l, s, g) { + return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a, e), this.safe_add(l, g)), s), n); + }, w.prototype.md5_ff = function(e, a, n, l, s, g, B) { + return this.md5_cmn(a & n | ~a & l, e, a, s, g, B); + }, w.prototype.md5_gg = function(e, a, n, l, s, g, B) { + return this.md5_cmn(a & l | n & ~l, e, a, s, g, B); + }, w.prototype.md5_hh = function(e, a, n, l, s, g, B) { + return this.md5_cmn(a ^ n ^ l, e, a, s, g, B); + }, w.prototype.md5_ii = function(e, a, n, l, s, g, B) { + return this.md5_cmn(n ^ (a | ~l), e, a, s, g, B); + }, w.prototype.binl_md5 = function(e, a) { e[a >> 5] |= 128 << a % 32, e[(a + 64 >>> 9 << 4) + 14] = a; - var n, o, c, g, B, f = 1732584193, v = -271733879, C = -1732584194, A = 271733878; + var n, l, s, g, B, f = 1732584193, v = -271733879, C = -1732584194, A = 271733878; for (n = 0; n < e.length; n += 16) - o = f, c = v, g = C, B = A, f = this.md5_ff(f, v, C, A, e[n], 7, -680876936), A = this.md5_ff(A, f, v, C, e[n + 1], 12, -389564586), C = this.md5_ff(C, A, f, v, e[n + 2], 17, 606105819), v = this.md5_ff(v, C, A, f, e[n + 3], 22, -1044525330), f = this.md5_ff(f, v, C, A, e[n + 4], 7, -176418897), A = this.md5_ff(A, f, v, C, e[n + 5], 12, 1200080426), C = this.md5_ff(C, A, f, v, e[n + 6], 17, -1473231341), v = this.md5_ff(v, C, A, f, e[n + 7], 22, -45705983), f = this.md5_ff(f, v, C, A, e[n + 8], 7, 1770035416), A = this.md5_ff(A, f, v, C, e[n + 9], 12, -1958414417), C = this.md5_ff(C, A, f, v, e[n + 10], 17, -42063), v = this.md5_ff(v, C, A, f, e[n + 11], 22, -1990404162), f = this.md5_ff(f, v, C, A, e[n + 12], 7, 1804603682), A = this.md5_ff(A, f, v, C, e[n + 13], 12, -40341101), C = this.md5_ff(C, A, f, v, e[n + 14], 17, -1502002290), v = this.md5_ff(v, C, A, f, e[n + 15], 22, 1236535329), f = this.md5_gg(f, v, C, A, e[n + 1], 5, -165796510), A = this.md5_gg(A, f, v, C, e[n + 6], 9, -1069501632), C = this.md5_gg(C, A, f, v, e[n + 11], 14, 643717713), v = this.md5_gg(v, C, A, f, e[n], 20, -373897302), f = this.md5_gg(f, v, C, A, e[n + 5], 5, -701558691), A = this.md5_gg(A, f, v, C, e[n + 10], 9, 38016083), C = this.md5_gg(C, A, f, v, e[n + 15], 14, -660478335), v = this.md5_gg(v, C, A, f, e[n + 4], 20, -405537848), f = this.md5_gg(f, v, C, A, e[n + 9], 5, 568446438), A = this.md5_gg(A, f, v, C, e[n + 14], 9, -1019803690), C = this.md5_gg(C, A, f, v, e[n + 3], 14, -187363961), v = this.md5_gg(v, C, A, f, e[n + 8], 20, 1163531501), f = this.md5_gg(f, v, C, A, e[n + 13], 5, -1444681467), A = this.md5_gg(A, f, v, C, e[n + 2], 9, -51403784), C = this.md5_gg(C, A, f, v, e[n + 7], 14, 1735328473), v = this.md5_gg(v, C, A, f, e[n + 12], 20, -1926607734), f = this.md5_hh(f, v, C, A, e[n + 5], 4, -378558), A = this.md5_hh(A, f, v, C, e[n + 8], 11, -2022574463), C = this.md5_hh(C, A, f, v, e[n + 11], 16, 1839030562), v = this.md5_hh(v, C, A, f, e[n + 14], 23, -35309556), f = this.md5_hh(f, v, C, A, e[n + 1], 4, -1530992060), A = this.md5_hh(A, f, v, C, e[n + 4], 11, 1272893353), C = this.md5_hh(C, A, f, v, e[n + 7], 16, -155497632), v = this.md5_hh(v, C, A, f, e[n + 10], 23, -1094730640), f = this.md5_hh(f, v, C, A, e[n + 13], 4, 681279174), A = this.md5_hh(A, f, v, C, e[n], 11, -358537222), C = this.md5_hh(C, A, f, v, e[n + 3], 16, -722521979), v = this.md5_hh(v, C, A, f, e[n + 6], 23, 76029189), f = this.md5_hh(f, v, C, A, e[n + 9], 4, -640364487), A = this.md5_hh(A, f, v, C, e[n + 12], 11, -421815835), C = this.md5_hh(C, A, f, v, e[n + 15], 16, 530742520), v = this.md5_hh(v, C, A, f, e[n + 2], 23, -995338651), f = this.md5_ii(f, v, C, A, e[n], 6, -198630844), A = this.md5_ii(A, f, v, C, e[n + 7], 10, 1126891415), C = this.md5_ii(C, A, f, v, e[n + 14], 15, -1416354905), v = this.md5_ii(v, C, A, f, e[n + 5], 21, -57434055), f = this.md5_ii(f, v, C, A, e[n + 12], 6, 1700485571), A = this.md5_ii(A, f, v, C, e[n + 3], 10, -1894986606), C = this.md5_ii(C, A, f, v, e[n + 10], 15, -1051523), v = this.md5_ii(v, C, A, f, e[n + 1], 21, -2054922799), f = this.md5_ii(f, v, C, A, e[n + 8], 6, 1873313359), A = this.md5_ii(A, f, v, C, e[n + 15], 10, -30611744), C = this.md5_ii(C, A, f, v, e[n + 6], 15, -1560198380), v = this.md5_ii(v, C, A, f, e[n + 13], 21, 1309151649), f = this.md5_ii(f, v, C, A, e[n + 4], 6, -145523070), A = this.md5_ii(A, f, v, C, e[n + 11], 10, -1120210379), C = this.md5_ii(C, A, f, v, e[n + 2], 15, 718787259), v = this.md5_ii(v, C, A, f, e[n + 9], 21, -343485551), f = this.safe_add(f, o), v = this.safe_add(v, c), C = this.safe_add(C, g), A = this.safe_add(A, B); + l = f, s = v, g = C, B = A, f = this.md5_ff(f, v, C, A, e[n], 7, -680876936), A = this.md5_ff(A, f, v, C, e[n + 1], 12, -389564586), C = this.md5_ff(C, A, f, v, e[n + 2], 17, 606105819), v = this.md5_ff(v, C, A, f, e[n + 3], 22, -1044525330), f = this.md5_ff(f, v, C, A, e[n + 4], 7, -176418897), A = this.md5_ff(A, f, v, C, e[n + 5], 12, 1200080426), C = this.md5_ff(C, A, f, v, e[n + 6], 17, -1473231341), v = this.md5_ff(v, C, A, f, e[n + 7], 22, -45705983), f = this.md5_ff(f, v, C, A, e[n + 8], 7, 1770035416), A = this.md5_ff(A, f, v, C, e[n + 9], 12, -1958414417), C = this.md5_ff(C, A, f, v, e[n + 10], 17, -42063), v = this.md5_ff(v, C, A, f, e[n + 11], 22, -1990404162), f = this.md5_ff(f, v, C, A, e[n + 12], 7, 1804603682), A = this.md5_ff(A, f, v, C, e[n + 13], 12, -40341101), C = this.md5_ff(C, A, f, v, e[n + 14], 17, -1502002290), v = this.md5_ff(v, C, A, f, e[n + 15], 22, 1236535329), f = this.md5_gg(f, v, C, A, e[n + 1], 5, -165796510), A = this.md5_gg(A, f, v, C, e[n + 6], 9, -1069501632), C = this.md5_gg(C, A, f, v, e[n + 11], 14, 643717713), v = this.md5_gg(v, C, A, f, e[n], 20, -373897302), f = this.md5_gg(f, v, C, A, e[n + 5], 5, -701558691), A = this.md5_gg(A, f, v, C, e[n + 10], 9, 38016083), C = this.md5_gg(C, A, f, v, e[n + 15], 14, -660478335), v = this.md5_gg(v, C, A, f, e[n + 4], 20, -405537848), f = this.md5_gg(f, v, C, A, e[n + 9], 5, 568446438), A = this.md5_gg(A, f, v, C, e[n + 14], 9, -1019803690), C = this.md5_gg(C, A, f, v, e[n + 3], 14, -187363961), v = this.md5_gg(v, C, A, f, e[n + 8], 20, 1163531501), f = this.md5_gg(f, v, C, A, e[n + 13], 5, -1444681467), A = this.md5_gg(A, f, v, C, e[n + 2], 9, -51403784), C = this.md5_gg(C, A, f, v, e[n + 7], 14, 1735328473), v = this.md5_gg(v, C, A, f, e[n + 12], 20, -1926607734), f = this.md5_hh(f, v, C, A, e[n + 5], 4, -378558), A = this.md5_hh(A, f, v, C, e[n + 8], 11, -2022574463), C = this.md5_hh(C, A, f, v, e[n + 11], 16, 1839030562), v = this.md5_hh(v, C, A, f, e[n + 14], 23, -35309556), f = this.md5_hh(f, v, C, A, e[n + 1], 4, -1530992060), A = this.md5_hh(A, f, v, C, e[n + 4], 11, 1272893353), C = this.md5_hh(C, A, f, v, e[n + 7], 16, -155497632), v = this.md5_hh(v, C, A, f, e[n + 10], 23, -1094730640), f = this.md5_hh(f, v, C, A, e[n + 13], 4, 681279174), A = this.md5_hh(A, f, v, C, e[n], 11, -358537222), C = this.md5_hh(C, A, f, v, e[n + 3], 16, -722521979), v = this.md5_hh(v, C, A, f, e[n + 6], 23, 76029189), f = this.md5_hh(f, v, C, A, e[n + 9], 4, -640364487), A = this.md5_hh(A, f, v, C, e[n + 12], 11, -421815835), C = this.md5_hh(C, A, f, v, e[n + 15], 16, 530742520), v = this.md5_hh(v, C, A, f, e[n + 2], 23, -995338651), f = this.md5_ii(f, v, C, A, e[n], 6, -198630844), A = this.md5_ii(A, f, v, C, e[n + 7], 10, 1126891415), C = this.md5_ii(C, A, f, v, e[n + 14], 15, -1416354905), v = this.md5_ii(v, C, A, f, e[n + 5], 21, -57434055), f = this.md5_ii(f, v, C, A, e[n + 12], 6, 1700485571), A = this.md5_ii(A, f, v, C, e[n + 3], 10, -1894986606), C = this.md5_ii(C, A, f, v, e[n + 10], 15, -1051523), v = this.md5_ii(v, C, A, f, e[n + 1], 21, -2054922799), f = this.md5_ii(f, v, C, A, e[n + 8], 6, 1873313359), A = this.md5_ii(A, f, v, C, e[n + 15], 10, -30611744), C = this.md5_ii(C, A, f, v, e[n + 6], 15, -1560198380), v = this.md5_ii(v, C, A, f, e[n + 13], 21, 1309151649), f = this.md5_ii(f, v, C, A, e[n + 4], 6, -145523070), A = this.md5_ii(A, f, v, C, e[n + 11], 10, -1120210379), C = this.md5_ii(C, A, f, v, e[n + 2], 15, 718787259), v = this.md5_ii(v, C, A, f, e[n + 9], 21, -343485551), f = this.safe_add(f, l), v = this.safe_add(v, s), C = this.safe_add(C, g), A = this.safe_add(A, B); return [f, v, C, A]; - }, G.prototype.binl2rstr = function(e) { + }, w.prototype.binl2rstr = function(e) { var a, n = ""; for (a = 0; a < e.length * 32; a += 8) n += String.fromCharCode(e[a >> 5] >>> a % 32 & 255); return n; - }, G.prototype.rstr2binl = function(e) { + }, w.prototype.rstr2binl = function(e) { var a, n = []; for (n[(e.length >> 2) - 1] = void 0, a = 0; a < n.length; a += 1) n[a] = 0; for (a = 0; a < e.length * 8; a += 8) n[a >> 5] |= (e.charCodeAt(a / 8) & 255) << a % 32; return n; - }, G.prototype.rstr_md5 = function(e) { + }, w.prototype.rstr_md5 = function(e) { return this.binl2rstr(this.binl_md5(this.rstr2binl(e), e.length * 8)); - }, G.prototype.rstr_hmac_md5 = function(e, a) { - var n, o = this.rstr2binl(e), c = [], g = [], B; - for (c[15] = g[15] = void 0, o.length > 16 && (o = this.binl_md5(o, e.length * 8)), n = 0; n < 16; n += 1) - c[n] = o[n] ^ 909522486, g[n] = o[n] ^ 1549556828; - return B = this.binl_md5(c.concat(this.rstr2binl(a)), 512 + a.length * 8), this.binl2rstr(this.binl_md5(g.concat(B), 512 + 128)); - }, G.prototype.rstr2hex = function(e) { - var a = "0123456789abcdef", n = "", o, c; - for (c = 0; c < e.length; c += 1) - o = e.charCodeAt(c), n += a.charAt(o >>> 4 & 15) + a.charAt(o & 15); + }, w.prototype.rstr_hmac_md5 = function(e, a) { + var n, l = this.rstr2binl(e), s = [], g = [], B; + for (s[15] = g[15] = void 0, l.length > 16 && (l = this.binl_md5(l, e.length * 8)), n = 0; n < 16; n += 1) + s[n] = l[n] ^ 909522486, g[n] = l[n] ^ 1549556828; + return B = this.binl_md5(s.concat(this.rstr2binl(a)), 512 + a.length * 8), this.binl2rstr(this.binl_md5(g.concat(B), 512 + 128)); + }, w.prototype.rstr2hex = function(e) { + var a = "0123456789abcdef", n = "", l, s; + for (s = 0; s < e.length; s += 1) + l = e.charCodeAt(s), n += a.charAt(l >>> 4 & 15) + a.charAt(l & 15); return n; - }, G.prototype.str2rstr_utf8 = function(e) { + }, w.prototype.str2rstr_utf8 = function(e) { return unescape(encodeURIComponent(e)); - }, G.prototype.raw_md5 = function(e) { + }, w.prototype.raw_md5 = function(e) { return this.rstr_md5(this.str2rstr_utf8(e)); - }, G.prototype.hex_md5 = function(e) { + }, w.prototype.hex_md5 = function(e) { return this.rstr2hex(this.raw_md5(e)); - }, G.prototype.raw_hmac_md5 = function(e, a) { + }, w.prototype.raw_hmac_md5 = function(e, a) { return this.rstr_hmac_md5(this.str2rstr_utf8(e), this.str2rstr_utf8(a)); - }, G.prototype.hex_hmac_md5 = function(e, a) { + }, w.prototype.hex_hmac_md5 = function(e, a) { return this.rstr2hex(this.raw_hmac_md5(e, a)); - }, G.prototype.md5 = function(e, a, n) { + }, w.prototype.md5 = function(e, a, n) { return a ? n ? this.raw_hmac_md5(a, e) : this.hex_hmac_md5(a, e) : n ? this.raw_md5(e) : this.hex_md5(e); - }, m.exports && (d = m.exports = r), d.Chance = r, typeof importScripts < "u" && (chance = new r(), self.Chance = r), typeof window == "object" && typeof window.document == "object" && (window.Chance = r, window.chance = new r()); + }, d.exports && (h = d.exports = r), h.Chance = r, typeof importScripts < "u" && (chance = new r(), self.Chance = r), typeof window == "object" && typeof window.document == "object" && (window.Chance = r, window.chance = new r()); })(); })(ie, ie.exports); var be = ie.exports; const pe = /* @__PURE__ */ fe(be); var Y = new pe(), le = function() { - function m(d, E, L, T) { - let x = L.toUpperCase(), p = d.toUpperCase(), b = E.toUpperCase(); - if (T != null && 0 < T.length) { - let i = 0, t = T.length; + function d(h, E, L, I) { + let k = L.toUpperCase(), p = h.toUpperCase(), b = E.toUpperCase(); + if (I != null && 0 < I.length) { + let i = 0, t = I.length; var S = "'"; - (x.startsWith("INTEGER") || x.startsWith("NUMBER") || x.startsWith("DATE")) && (S = ""); - let s = T[Math.floor(Math.random() * (t - i)) + i]; - return s.toLowerCase && s.toLowerCase() == "null" && (S = ""), S + s + S; + (k.startsWith("INTEGER") || k.startsWith("NUMBER") || k.startsWith("DATE")) && (S = ""); + let o = I[Math.floor(Math.random() * (t - i)) + i]; + return o.toLowerCase && o.toLowerCase() == "null" && (S = ""), S + o + S; } if (b == "NAME" && 0 <= p.indexOf("DEPARTMENT")) { - var M = ["Sales", "Finance", "Delivery", "Manufacturing"]; - let i = 0, t = M.length; - return "'" + M[Math.floor(Math.random() * (t - i)) + i] + "'"; + var T = ["Sales", "Finance", "Delivery", "Manufacturing"]; + let i = 0, t = T.length; + return "'" + T[Math.floor(Math.random() * (t - i)) + i] + "'"; } if (Y[b.toLowerCase()] != null && b.indexOf("NAME") < 0) return "'" + Y[b.toLowerCase()]() + "'"; @@ -7244,37 +7244,37 @@ var Y = new pe(), le = function() { let i = 0, t = r.length; return "'" + r[Math.floor(Math.random() * (t - i)) + i] + "'"; } - if (x.startsWith("INTEGER") || x.startsWith("NUMBER")) { + if (k.startsWith("INTEGER") || k.startsWith("NUMBER")) { let i = 0, t = 100; return Math.floor(Math.random() * (t - i)) + i; } - if (x.startsWith("DATE") || x.startsWith("TIMESTAMP")) { + if (k.startsWith("DATE") || k.startsWith("TIMESTAMP")) { let i = 0, t = 100; var u = Math.floor(Math.random() * (t - i)) + i; return "sysdate-" + u; } return "'N/A'"; } - return m; + return d; }(), $ = function() { - function m(d, E) { - for (var L = [], T = "", x = 0; x < d.length; x++) { - for (var p = d.charAt(x), b = L.length, S = 0; S < E.length; S++) { - var M = E.charAt(S); - if (p == M) { - 0 < T.length && L.push(T), L.push(p), T = ""; + function d(h, E) { + for (var L = [], I = "", k = 0; k < h.length; k++) { + for (var p = h.charAt(k), b = L.length, S = 0; S < E.length; S++) { + var T = E.charAt(S); + if (p == T) { + 0 < I.length && L.push(I), L.push(p), I = ""; continue; } } - b == L.length && (T = T + p); + b == L.length && (I = I + p); } - return 0 < T.length && L.push(T), L; + return 0 < I.length && L.push(I), L; } - return m; + return d; }(), Z = function() { - function m(T, x, p, b, S, M) { - this.type = b, this.value = T, this.begin = x, this.end = p, this.line = S, this.col = M, this.toString = function() { - return "{type:" + b + ",value:" + T + "}"; + function d(I, k, p, b, S, T) { + this.type = b, this.value = I, this.begin = k, this.end = p, this.line = S, this.col = T, this.toString = function() { + return "{type:" + b + ",value:" + I + "}"; }, this.isStandardLiteral = function() { if (this.value.length < 2 || !(this.value.charAt(0) == "'" || this.value.charAt(0) == "n" || this.value.charAt(0) == "N")) return !1; @@ -7310,116 +7310,116 @@ var Y = new pe(), le = function() { return u == "<" ? ">" : u == "[" ? "]" : u == "{" ? "}" : u == "(" ? ")" : u; } } - function d(T, x, p) { - for (var b = [], S = `(){}[]^-|!*+.><='",;:%@?/\\#~` + p, M = ` + function h(I, k, p) { + for (var b = [], S = `(){}[]^-|!*+.><='",;:%@?/\\#~` + p, T = ` \r `, r = $( - T, + I, //".*-+/|><=()\'\", \n\r\t" - S + M - ), u = 0, i = 0, t = 0, s = 0; s < r.length; s++) { - var l = r[s], h = null; - if (b.length > 0 && (h = b[b.length - 1]), l == ` -` ? (i++, t = 0) : s > 0 && r[s - 1] !== ` -` ? t = t + r[s - 1].length : t = 0, u += l.length, h != null && h.type == "comment" && (h.value.lastIndexOf("*/") != h.value.length - 2 || h.value == "/*/")) { - l == "*" || l == "/" ? h.value = h.value + l : h.value = "/* ... ", h.end = u, h != null && h.type == "comment" && h.value.lastIndexOf("*/") == h.value.length - 2 && h.value != "/*/" && (h.value = T.substring(h.begin, h.end)); + S + T + ), u = 0, i = 0, t = 0, o = 0; o < r.length; o++) { + var c = r[o], m = null; + if (b.length > 0 && (m = b[b.length - 1]), c == ` +` ? (i++, t = 0) : o > 0 && r[o - 1] !== ` +` ? t = t + r[o - 1].length : t = 0, u += c.length, m != null && m.type == "comment" && (m.value.lastIndexOf("*/") != m.value.length - 2 || m.value == "/*/")) { + c == "*" || c == "/" ? m.value = m.value + c : m.value = "/* ... ", m.end = u, m != null && m.type == "comment" && m.value.lastIndexOf("*/") == m.value.length - 2 && m.value != "/*/" && (m.value = I.substring(m.begin, m.end)); continue; } - if (h != null && (h.type == "line-comment" || h.type == "dbtools-command") && l != ` + if (m != null && (m.type == "line-comment" || m.type == "dbtools-command") && c != ` `) { - h.value = h.value + l; + m.value = m.value + c; continue; } - if (h != null && (h.type == "line-comment" || h.type == "dbtools-command") && l == ` -` && (h.end = h.begin + h.value.length), h != null && h.type == "quoted-string" && !(h.isStandardLiteral() || h.isAltLiteral())) { - h.value = h.value + l, h.end = h.begin + h.value.length; + if (m != null && (m.type == "line-comment" || m.type == "dbtools-command") && c == ` +` && (m.end = m.begin + m.value.length), m != null && m.type == "quoted-string" && !(m.isStandardLiteral() || m.isAltLiteral())) { + m.value = m.value + c, m.end = m.begin + m.value.length; continue; } - if (!(h != null && h.type == "dquoted-string" && l != '"' && !(h.value.endsWith('"') && h.value.length > 1))) { - if (h != null && h.type == "dquoted-string" && l == '"') { - h.end = u, h.value = T.substring(h.begin, h.end); + if (!(m != null && m.type == "dquoted-string" && c != '"' && !(m.value.endsWith('"') && m.value.length > 1))) { + if (m != null && m.type == "dquoted-string" && c == '"') { + m.end = u, m.value = I.substring(m.begin, m.end); continue; } - if (!(h != null && h.type == "bquoted-string" && l != "`" && !(h.value.endsWith("`") && h.value.length > 1))) { - if (h != null && h.type == "bquoted-string" && l == "`") { - h.end = u, h.value = T.substring(h.begin, h.end); + if (!(m != null && m.type == "bquoted-string" && c != "`" && !(m.value.endsWith("`") && m.value.length > 1))) { + if (m != null && m.type == "bquoted-string" && c == "`") { + m.end = u, m.value = I.substring(m.begin, m.end); continue; } - if (l == "*" && h != null && h.value == "/") { - h.value = h.value + l, h.end = h.begin + h.value.length, h.type = "comment"; + if (c == "*" && m != null && m.value == "/") { + m.value = m.value + c, m.end = m.begin + m.value.length, m.type = "comment"; continue; } - if (l == "-" && h != null && h.value == "-") { - h.value = h.value + l, h.type = "line-comment"; + if (c == "-" && m != null && m.value == "-") { + m.value = m.value + c, m.type = "line-comment"; continue; } - if ((l.toUpperCase() == "REM" || l.toUpperCase() == "REMA" || l.toUpperCase() == "REMAR" || l.toUpperCase() == "REMARK" || l.toUpperCase() == "PRO" || l.toUpperCase() == "PROM" || l.toUpperCase() == "PROMP" || l.toUpperCase() == "PROMPT") && (h == null || h.value == ` -` || h.value == "\r")) { - b.push(new m(l, u - l.length, -9, "line-comment", i, t)); + if ((c.toUpperCase() == "REM" || c.toUpperCase() == "REMA" || c.toUpperCase() == "REMAR" || c.toUpperCase() == "REMARK" || c.toUpperCase() == "PRO" || c.toUpperCase() == "PROM" || c.toUpperCase() == "PROMP" || c.toUpperCase() == "PROMPT") && (m == null || m.value == ` +` || m.value == "\r")) { + b.push(new d(c, u - c.length, -9, "line-comment", i, t)); continue; } - if (l.toUpperCase() == "SODA" && (h == null || h.value == ` -` || h.value == "\r")) { - b.push(new m(l, u - l.length, -9, "dbtools-command", i, t)); + if (c.toUpperCase() == "SODA" && (m == null || m.value == ` +` || m.value == "\r")) { + b.push(new d(c, u - c.length, -9, "dbtools-command", i, t)); continue; } - if (h != null && h.type == "identifier" && h.end == -11 && h.value.indexOf("@") == 0 && !(l == ` -` || l == "\r")) { - h.value = h.value + l; + if (m != null && m.type == "identifier" && m.end == -11 && m.value.indexOf("@") == 0 && !(c == ` +` || c == "\r")) { + m.value = m.value + c; continue; } - if (h != null && h.type == "identifier" && h.end == -11 && h.value.indexOf("@") == 0 && (l == ` -` || l == "\r")) { - h.end = u - 1, b.push(new m(l, u - 1, u, "ws", i, t)); + if (m != null && m.type == "identifier" && m.end == -11 && m.value.indexOf("@") == 0 && (c == ` +` || c == "\r")) { + m.end = u - 1, b.push(new d(c, u - 1, u, "ws", i, t)); continue; } - if (x && l == "'") { - h != null && (h.value.toUpperCase() == "Q" || h.value.toUpperCase() == "N" || h.value.toUpperCase() == "U" || h.value.toUpperCase() == "NQ") ? (h.value += l, h.type = "quoted-string") : b.push(new m(l, u - 1, -10, "quoted-string", i, t)); + if (k && c == "'") { + m != null && (m.value.toUpperCase() == "Q" || m.value.toUpperCase() == "N" || m.value.toUpperCase() == "U" || m.value.toUpperCase() == "NQ") ? (m.value += c, m.type = "quoted-string") : b.push(new d(c, u - 1, -10, "quoted-string", i, t)); continue; } - if (x && l == '"') { - b.push(new m(l, u - 1, -11, "dquoted-string", i, t)); + if (k && c == '"') { + b.push(new d(c, u - 1, -11, "dquoted-string", i, t)); continue; } - if (l == "`" && 0 <= S.indexOf("`")) { - b.push(new m(l, u - 1, -11, "bquoted-string", i, t)); + if (c == "`" && 0 <= S.indexOf("`")) { + b.push(new d(c, u - 1, -11, "bquoted-string", i, t)); continue; } - if (l.length == 1 && 0 <= S.indexOf(l)) { - b.push(new m(l, u - 1, u, "operation", i, t)); + if (c.length == 1 && 0 <= S.indexOf(c)) { + b.push(new d(c, u - 1, u, "operation", i, t)); continue; } - if (l.length == 1 && 0 <= M.indexOf(l)) { - b.push(new m(l, u - 1, u, "ws", i, t)); + if (c.length == 1 && 0 <= T.indexOf(c)) { + b.push(new d(c, u - 1, u, "ws", i, t)); continue; } - if ("0" <= l.charAt(0) && l.charAt(0) <= "9") { - E(l, b, u - l.length, i) || (l.charAt(l.length - 1) == "K" || l.charAt(l.length - 1) == "k" || l.charAt(l.length - 1) == "M" || l.charAt(l.length - 1) == "m" || l.charAt(l.length - 1) == "G" || l.charAt(l.length - 1) == "g" || l.charAt(l.length - 1) == "T" || l.charAt(l.length - 1) == "t" || l.charAt(l.length - 1) == "P" || l.charAt(l.length - 1) == "p" || l.charAt(l.length - 1) == "E" || l.charAt(l.length - 1) == "e" ? (b.push(new m(l.substring(0, l.length - 1), u - l.length, u - 1, "constant.numeric", i, t)), b.push(new m(l.substring(l.length - 1), u - 1, u, "constant.numeric", i, t))) : b.push(new m(l, u - l.length, u, "constant.numeric", i, t))); + if ("0" <= c.charAt(0) && c.charAt(0) <= "9") { + E(c, b, u - c.length, i) || (c.charAt(c.length - 1) == "K" || c.charAt(c.length - 1) == "k" || c.charAt(c.length - 1) == "M" || c.charAt(c.length - 1) == "m" || c.charAt(c.length - 1) == "G" || c.charAt(c.length - 1) == "g" || c.charAt(c.length - 1) == "T" || c.charAt(c.length - 1) == "t" || c.charAt(c.length - 1) == "P" || c.charAt(c.length - 1) == "p" || c.charAt(c.length - 1) == "E" || c.charAt(c.length - 1) == "e" ? (b.push(new d(c.substring(0, c.length - 1), u - c.length, u - 1, "constant.numeric", i, t)), b.push(new d(c.substring(c.length - 1), u - 1, u, "constant.numeric", i, t))) : b.push(new d(c, u - c.length, u, "constant.numeric", i, t))); continue; } var y = "identifier"; - s + 1 < r.length && r[s + 1], b.push(new m(l, u - l.length, u, y, i, t)); + o + 1 < r.length && r[o + 1], b.push(new d(c, u - c.length, u, y, i, t)); } } } if (b.length > 0) { - var h = b[b.length - 1]; - h.end = T.length; + var m = b[b.length - 1]; + m.end = I.length; } return b; } - function E(T, x, p, b) { - if (0 > T.indexOf("e") && 0 > T.indexOf("f") && 0 > T.indexOf("d")) + function E(I, k, p, b) { + if (0 > I.indexOf("e") && 0 > I.indexOf("f") && 0 > I.indexOf("d")) return !1; - 0 <= T.indexOf("e"), 0 <= T.indexOf("e"), !(0 <= T.indexOf("e")) && 0 <= T.indexOf("f"); - for (var S = $(T, "efd"), M = 0; M < S.length; M++) { - var r = S[M]; - p += r.length, "0" <= r.charAt(0) && r.charAt(0) <= "9" ? x.push(new m(r, p - r.length, p, "constant.numeric", b)) : x.push(new m(r, p - r.length, p, "identifier", b)); + 0 <= I.indexOf("e"), 0 <= I.indexOf("e"), !(0 <= I.indexOf("e")) && 0 <= I.indexOf("f"); + for (var S = $(I, "efd"), T = 0; T < S.length; T++) { + var r = S[T]; + p += r.length, "0" <= r.charAt(0) && r.charAt(0) <= "9" ? k.push(new d(r, p - r.length, p, "constant.numeric", b)) : k.push(new d(r, p - r.length, p, "identifier", b)); } return !0; } - function L(T, x, p, b) { - for (var S = [], M = d(T, p, b), r = null, u = 0; u < M.length; u++) { - var i = M[u]; + function L(I, k, p, b) { + for (var S = [], T = h(I, p, b), r = null, u = 0; u < T.length; u++) { + var i = T[u]; if (i.type == "quoted-string") { if (r != null && r.type == "quoted-string") { r.value = r.value + i.value, r.end = i.end; @@ -7444,14 +7444,14 @@ var Y = new pe(), le = function() { || token.value.equals("$ELSE") || token.value.equals("$THEN") ||*/ - i.value.indexOf("$$") == 0 && (i.value = "$$VAR"), (x || i.type != "ws" && i.type != "comment" && i.type != "line-comment") && S.push(i), r = i; + i.value.indexOf("$$") == 0 && (i.value = "$$VAR"), (k || i.type != "ws" && i.type != "comment" && i.type != "line-comment") && S.push(i), r = i; } return S; } return L; }(); -function ge(m) { - const d = { +function ge(d) { + const h = { ACCESS: "N", ADD: "N", ALL: "Y", @@ -7562,13 +7562,13 @@ function ge(m) { WHERE: "Y", WITH: "Y" }; - let E = m.toUpperCase(); - return d[E] != null ? "the_" + m : m; + let E = d.toUpperCase(); + return h[E] != null ? "the_" + d : d; } let se = function() { - let m, d = " ", E = ["string", "varchar2", "varchar", "vc", "char"]; + let d, h = " ", E = ["string", "varchar2", "varchar", "vc", "char"]; var L = ["yn", "boolean", "bool"]; - function T(S, M, r) { + function I(S, T, r) { this.line = S, this.parent = r, this.children = [], r != null && r.children.push(this), this.fks = null, this.descendants = function() { var i = []; i.push(this); @@ -7577,27 +7577,27 @@ let se = function() { return i; }, this.maxChildNameLen = function() { var i = 2, t = this.trimmedContent().toUpperCase(); - if ((m.optionEQvalue("rowkey", !0) || 0 < t.indexOf("/ROWKEY")) && (i = 7), (m.optionEQvalue("Row Version Number", "yes") || 0 < t.indexOf("/ROWVERSION")) && (i = 11), m.optionEQvalue("Audit Columns", "yes") || 0 < t.indexOf("/AUDITCOLS") || 0 < t.indexOf("/AUDIT COL")) { - let P = m.getOptionValue("createdcol").length; - i < P && (i = P), P = m.getOptionValue("createdbycol").length, i < P && (i = P), P = m.getOptionValue("updatedcol").length, i < P && (i = P), P = m.getOptionValue("updatedbycol").length, i < P && (i = P); + if ((d.optionEQvalue("rowkey", !0) || 0 < t.indexOf("/ROWKEY")) && (i = 7), (d.optionEQvalue("Row Version Number", "yes") || 0 < t.indexOf("/ROWVERSION")) && (i = 11), d.optionEQvalue("Audit Columns", "yes") || 0 < t.indexOf("/AUDITCOLS") || 0 < t.indexOf("/AUDIT COL")) { + let P = d.getOptionValue("createdcol").length; + i < P && (i = P), P = d.getOptionValue("createdbycol").length, i < P && (i = P), P = d.getOptionValue("updatedcol").length, i < P && (i = P), P = d.getOptionValue("updatedbycol").length, i < P && (i = P); } if (this.fks != null) - for (var s in this.fks) { - var l = s.length; - let P = m.find(s); - P != null && P.isMany2One() && (l += 3), i < l && (i = l); + for (var o in this.fks) { + var c = o.length; + let P = d.find(o); + P != null && P.isMany2One() && (c += 3), i < c && (i = c); } - for (var h = 0; h < this.children.length; h++) { - let P = this.children[h]; + for (var m = 0; m < this.children.length; m++) { + let P = this.children[m]; if (0 < P.children.length) continue; - let I = P.parseName().length; - 0 < P.indexOf("file") && (I += 9), i < I && (i = I); + let M = P.parseName().length; + 0 < P.indexOf("file") && (M += 9), i < M && (i = M); } - var y = m.additionalColumns(); + var y = d.additionalColumns(); for (let P in y) { - let I = P.length; - i < I && (i = I); + let M = P.length; + i < M && (i = M); } return i; }; @@ -7605,43 +7605,43 @@ let se = function() { let t = i; return t = t.replace(/ timestamp with local time zone/gi, " tswltz"), t = t.replace(/ timestamp with time zone/gi, " tswtz"), t = t.replace(/ timestamp/gi, " ts"), t; } - this.content = u(M), this.comment, this.indexOf = function(i, t) { - for (let s = 0; s < this.src.length; s++) { - if (t && this.src[s].value.indexOf(i) == 0) - return s; - if (i == this.src[s].value) - return s; + this.content = u(T), this.comment, this.indexOf = function(i, t) { + for (let o = 0; o < this.src.length; o++) { + if (t && this.src[o].value.indexOf(i) == 0) + return o; + if (i == this.src[o].value) + return o; } return -1; }, this.trimmedContent = function() { - var i = this.content.trim(), t = i.indexOf("["), s = i.indexOf("]"); - return this.comment == null && 0 < t && (this.comment = i.substr(t + 1, s - t - 1)), 0 < t && (i = i.substr(0, t) + i.substr(s + 2)), t = i.indexOf("--"), this.comment == null && 0 < t && (this.comment = i.substr(t + 2)), 0 < t && (i = i.substr(0, t)), i.trim(); + var i = this.content.trim(), t = i.indexOf("["), o = i.indexOf("]"); + return this.comment == null && 0 < t && (this.comment = i.substr(t + 1, o - t - 1)), 0 < t && (i = i.substr(0, t) + i.substr(o + 2)), t = i.indexOf("--"), this.comment == null && 0 < t && (this.comment = i.substr(t + 2)), 0 < t && (i = i.substr(0, t)), i.trim(); }, this.src = Z(this.content.toLowerCase(), !1, !0, ""), this.parseName = function() { let i = this.trimmedContent(); - i = i.replace(/\t/, d); - const t = i.indexOf('"'), s = i.indexOf('"', t + 1); - if (0 <= t && t < s) - return i.substring(t, s + 1); + i = i.replace(/\t/, h); + const t = i.indexOf('"'), o = i.indexOf('"', t + 1); + if (0 <= t && t < o) + return i.substring(t, o + 1); (i.indexOf(">") == 0 || i.indexOf("<") == 0) && (i = i.substring(1).trim()); - const l = i.toLowerCase(); - if (l.indexOf("view ") == 0) { - var h = i.split(" "); - return h[1]; + const c = i.toLowerCase(); + if (c.indexOf("view ") == 0) { + var m = i.split(" "); + return m[1]; } i = p(i, " d"); var y = i.indexOf("/"); 0 < y && (i = i.substring(0, y)), i = i.trim(), i = p(i, " integer"), i = p(i, " number"), i = p(i, " int"), i = p(i, " num"), i = p(i, " clob"), i = p(i, " blob"), i = p(i, " json"), i = p(i, " file"), i = p(i, " date"), i = p(i, " tstz"), i = p(i, " tswtz"), i = p(i, " tswltz"), i = p(i, " ts"), i = i.replace(/ vc\d+k/g, ""), i = i.replace(/ vc\(\d+\)/g, ""), i = i.replace(/ vc\d+/g, ""); - for (let I in E) { - let k = l.indexOf(" " + E[I]); - if (0 < k) { - i = i.substring(0, k) + i.substring(k + E[I].length + 1); + for (let M in E) { + let x = c.indexOf(" " + E[M]); + if (0 < x) { + i = i.substring(0, x) + i.substring(x + E[M].length + 1); break; } } - for (let I in L) { - let k = l.indexOf(" " + L[I]); - if (0 < k) { - i = i.substring(0, k) + i.substring(k + L[I].length + 1); + for (let M in L) { + let x = c.indexOf(" " + L[M]); + if (0 < x) { + i = i.substring(0, x) + i.substring(x + L[M].length + 1); break; } } @@ -7658,70 +7658,70 @@ let se = function() { return "dv"; if (this.parent == null) return "table"; - var s = m.semantics(), l = 4e3; - (t[0].value.startsWith("name") || t[0].value.startsWith("email")) && (l = 255); - const h = this.indexOf("vc", !0); - if (0 < h) { - t[h].begin, t[h].end; - let w = t[h].value.substring(2); - w == "" && this.indexOf("(") == h + 1 && (w = t[h + 2].value), w != "" && (l = parseInt(w)), t[h].value.endsWith("k") && (l < 32 ? l = l * 1024 : l = l * 1024 - 1); + var o = d.semantics(), c = 4e3; + (t[0].value.startsWith("name") || t[0].value.startsWith("email")) && (c = 255); + const m = this.indexOf("vc", !0); + if (0 < m) { + t[m].begin, t[m].end; + let N = t[m].value.substring(2); + N == "" && this.indexOf("(") == m + 1 && (N = t[m + 2].value), N != "" && (c = parseInt(N)), t[m].value.endsWith("k") && (c < 32 ? c = c * 1024 : c = c * 1024 - 1); } - var y = "varchar2(" + l + s + ")"; - i == "plsql" && (y = "varchar2"), 0 < this.indexOf("int", !0) && (y = "integer"), t[0].value.endsWith("_id") && h < 0 && this.indexOf("date") < 0 && (y = "number"), t[0].value.endsWith("id") && h < 0 && this.indexOf("/") + 1 == this.indexOf("pk") && (y = "number"); + var y = "varchar2(" + c + o + ")"; + i == "plsql" && (y = "varchar2"), 0 < this.indexOf("int", !0) && (y = "integer"), t[0].value.endsWith("_id") && m < 0 && this.indexOf("date") < 0 && (y = "number"), t[0].value.endsWith("id") && m < 0 && this.indexOf("/") + 1 == this.indexOf("pk") && (y = "number"); const P = K(r.parseName(), "_", this.parseName()); - (t[0].value.endsWith("_yn") || t[0].value.startsWith("is_")) && (y = "varchar2(1 char) constraint " + K(m.objPrefix(), P) + ` -`, y += d + d + " ".repeat(r.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"); - for (let w in L) - if (0 < this.indexOf(L[w])) { - y = "varchar2(1 char) constraint " + K(m.objPrefix(), P) + ` -`, y += d + d + " ".repeat(r.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"; + (t[0].value.endsWith("_yn") || t[0].value.startsWith("is_")) && (y = "varchar2(1 char) constraint " + K(d.objPrefix(), P) + ` +`, y += h + h + " ".repeat(r.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"); + for (let N in L) + if (0 < this.indexOf(L[N])) { + y = "varchar2(1 char) constraint " + K(d.objPrefix(), P) + ` +`, y += h + h + " ".repeat(r.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"; break; } this.indexOf("phone_number") == 0 && (y = "number"); - let I = this.indexOf("num", !0); - 0 < I && (y = "number"); - let k = this.indexOf(")"); - if (0 < I && 0 < k && (y += this.content.toLowerCase().substring(t[I + 1].begin, t[k].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value.startsWith("created") || t[0].value.startsWith("updated")) && (y = m.getOptionValue("Date Data Type").toLowerCase()), h < 0 && (0 < this.indexOf("clob") && (y = "clob"), (0 < this.indexOf("blob") || 0 < this.indexOf("file")) && (y = "blob"), 0 < this.indexOf("json") && (y = "clob check (" + this.parseName() + " is json)")), 0 < this.indexOf("tswltz") ? y = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : 0 < this.indexOf("tswtz") || 0 < this.indexOf("tstz") ? y = "TIMESTAMP WITH TIME ZONE".toLowerCase() : 0 < this.indexOf("ts") && (y = "TIMESTAMP".toLowerCase()), i) { + let M = this.indexOf("num", !0); + 0 < M && (y = "number"); + let x = this.indexOf(")"); + if (0 < M && 0 < x && (y += this.content.toLowerCase().substring(t[M + 1].begin, t[x].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value.startsWith("created") || t[0].value.startsWith("updated")) && (y = d.getOptionValue("Date Data Type").toLowerCase()), m < 0 && (0 < this.indexOf("clob") && (y = "clob"), (0 < this.indexOf("blob") || 0 < this.indexOf("file")) && (y = "blob"), 0 < this.indexOf("json") && (y = "clob check (" + this.parseName() + " is json)")), 0 < this.indexOf("tswltz") ? y = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : 0 < this.indexOf("tswtz") || 0 < this.indexOf("tstz") ? y = "TIMESTAMP WITH TIME ZONE".toLowerCase() : 0 < this.indexOf("ts") && (y = "TIMESTAMP".toLowerCase()), i) { if (0 < this.indexOf("fk") || 0 < this.indexOf("reference")) { - const w = this.refId(); - let D = "number", R = m.find(w); - return R != null && R.getExplicitPkNode() != null && (D = R.getExplicitPkNode().parseType((_) => !0)), D; + const N = this.refId(); + let R = "number", G = d.find(N); + return G != null && G.getExplicitPkNode() != null && (R = G.getExplicitPkNode().parseType((F) => !0)), R; } return y; } 0 < this.indexOf("unique") && (y += ` -`, y += d + d + " ".repeat(r.maxChildNameLen()) + "constraint " + P + "_unq unique"); - var N = "'"; - if ((y.startsWith("integer") || y.startsWith("number") || y.startsWith("date")) && (N = ""), 0 < this.indexOf("default")) { - const w = t[this.indexOf("default") + 1].value; - y += " default on null " + N + w + N; +`, y += h + h + " ".repeat(r.maxChildNameLen()) + "constraint " + P + "_unq unique"); + var D = "'"; + if ((y.startsWith("integer") || y.startsWith("number") || y.startsWith("date")) && (D = ""), 0 < this.indexOf("default")) { + const N = t[this.indexOf("default") + 1].value; + y += " default on null " + D + N + D; } - if ((0 < this.indexOf("nn") || this.indexOf("not") + 1 == this.indexOf("null")) && this.indexOf("pk") < 0 && (y += " not null"), (0 < this.indexOf("hidden") || 0 < this.indexOf("invincible")) && (y += " invisible"), y += this.genConstraint(N), 0 < this.indexOf("between")) { - const w = this.indexOf("between"), D = t[w + 1].value + " and " + t[w + 3].value; + if ((0 < this.indexOf("nn") || this.indexOf("not") + 1 == this.indexOf("null")) && this.indexOf("pk") < 0 && (y += " not null"), (0 < this.indexOf("hidden") || 0 < this.indexOf("invincible")) && (y += " invisible"), y += this.genConstraint(D), 0 < this.indexOf("between")) { + const N = this.indexOf("between"), R = t[N + 1].value + " and " + t[N + 3].value; y += " constraint " + K(P, "_bet") + ` -`, y += " check (" + this.parseName() + " between " + D + ")"; +`, y += " check (" + this.parseName() + " between " + R + ")"; } if (0 < this.indexOf("pk")) { - let w = " not null"; - y.startsWith("number") && m.optionEQvalue("pk", "identityDataType") && (w = " GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), y.startsWith("number") && m.optionEQvalue("pk", "seq") && (w = " default on null " + (m.objPrefix() + this.parent.parseName()) + "_seq.NEXTVAL ".toLowerCase()), y.startsWith("number") && m.optionEQvalue("pk", "guid") && (w = " default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), y += w + ` -`, y += d + d + " ".repeat(r.maxChildNameLen()) + "constraint " + K(m.objPrefix(), P, "_pk") + " primary key"; + let N = " not null"; + y.startsWith("number") && d.optionEQvalue("pk", "identityDataType") && (N = " GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), y.startsWith("number") && d.optionEQvalue("pk", "seq") && (N = " default on null " + (d.objPrefix() + this.parent.parseName()) + "_seq.NEXTVAL ".toLowerCase()), y.startsWith("number") && d.optionEQvalue("pk", "guid") && (N = " default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), y += N + ` +`, y += h + h + " ".repeat(r.maxChildNameLen()) + "constraint " + K(d.objPrefix(), P, "_pk") + " primary key"; } return y; }, this.genConstraint = function(i) { let t = ""; if (0 < this.indexOf("check")) { - let s = ""; - r != null && (s = r.parseName() + "_"); - const l = K(s, this.parseName()), h = this.trimmedContent().toLowerCase(), y = h.indexOf("/check"); - let P = h.lastIndexOf("/"); - P == y && (P = h.length); - let I = this.trimmedContent().substr(y + 6, P - y - 6).trim(); - const k = Z(I, !1, !0, ""); - let N = d; - r != null && (N = " ".repeat(r.maxChildNameLen())), this.children != null && 0 < this.children.length ? (k[0].value != "(" && (I = "( " + I + ")"), t += d + "constraint " + K(m.objPrefix(), l, "_ck"), t += " check " + I + `, -`) : k[0].value == "(" && k[k.length - 1].value == ")" ? (t += " constraint " + K(m.objPrefix(), l, "_ck") + ` -`, t += d + d + N + "check " + I) : (0 < I.indexOf(", ") ? I = I.replace(/, /g, i + "," + i) : 0 < I.indexOf(",") ? I = I.replace(/,/g, i + "," + i) : I = I.replace(/ /g, i + "," + i), t += " constraint " + K(m.objPrefix(), l, "_ck") + ` -`, t += d + d + N + "check (" + this.parseName() + " in (" + i + I + i + "))", t = t.replace(/''/gm, "'")); + let o = ""; + r != null && (o = r.parseName() + "_"); + const c = K(o, this.parseName()), m = this.trimmedContent().toLowerCase(), y = m.indexOf("/check"); + let P = m.lastIndexOf("/"); + P == y && (P = m.length); + let M = this.trimmedContent().substr(y + 6, P - y - 6).trim(); + const x = Z(M, !1, !0, ""); + let D = h; + r != null && (D = " ".repeat(r.maxChildNameLen())), this.children != null && 0 < this.children.length ? (x[0].value != "(" && (M = "( " + M + ")"), t += h + "constraint " + K(d.objPrefix(), c, "_ck"), t += " check " + M + `, +`) : x[0].value == "(" && x[x.length - 1].value == ")" ? (t += " constraint " + K(d.objPrefix(), c, "_ck") + ` +`, t += h + h + D + "check " + M) : (0 < M.indexOf(", ") ? M = M.replace(/, /g, i + "," + i) : 0 < M.indexOf(",") ? M = M.replace(/,/g, i + "," + i) : M = M.replace(/ /g, i + "," + i), t += " constraint " + K(d.objPrefix(), c, "_ck") + ` +`, t += h + h + D + "check (" + this.parseName() + " in (" + i + M + i + "))", t = t.replace(/''/gm, "'")); } return t; }, this.isMany2One = function() { @@ -7729,8 +7729,8 @@ let se = function() { return t == 0; }, this.getExplicitPkNode = function() { for (var i = 0; i < this.children.length; i++) { - var t = this.children[i], s = t.trimmedContent().toLowerCase(); - if (0 < s.indexOf("/pk")) + var t = this.children[i], o = t.trimmedContent().toLowerCase(); + if (0 < o.indexOf("/pk")) return t; } return null; @@ -7739,33 +7739,33 @@ let se = function() { i = i.replace(/\/cascade/g, ""); var t = i.indexOf(" id "); if (t < 0 && t == i.length - 3 && (t = i.indexOf(" id")), t < 0 && (t = i.indexOf(" id"), t != i.length - 3 && (t = -1)), t < 0 && (t = i.indexOf("_id "), t != i.length - 4 && (t = -1)), t < 0 && (t = i.indexOf("_id"), t != i.length - 3 && (t = -1)), t < 0 && (t = i.indexOf("Id "), t != i.length - 3 && (t = -1)), 0 < t) { - let s = i.substr(0, t) + "s"; - if (m.find(s) != null || (s = i.substr(0, t), m.find(s) != null)) - return s; + let o = i.substr(0, t) + "s"; + if (d.find(o) != null || (o = i.substr(0, t), d.find(o) != null)) + return o; } return t = i.indexOf("/fk"), 0 < t ? (i = i.substr(t + 3).trim(), t = i.indexOf("/"), 0 < t && (i = i.substring(0, t).trim()), i.replace(" ", "_")) : (t = i.indexOf("/reference"), 0 < t ? (i = i.substr(t + 10).trim(), i.indexOf("s") == 0 && (i = i.substring(1).trim()), t = i.indexOf("/"), 0 < t && (i = i.substring(0, t).trim()), i.replace(" ", "_")) : null); }, this.parseValues = function() { - var i = this.trimmedContent().toUpperCase(), t, s, l; + var i = this.trimmedContent().toUpperCase(), t, o, c; if (0 <= i.indexOf("/CHECK") || 0 <= i.indexOf("/VALUES")) { - var h = "/CHECK"; - return t = i.indexOf(h), t < 0 && (h = "/VALUES", t = i.indexOf(h)), s = i.lastIndexOf("/"), s == t && (s = i.length), l = i.substr(t + h.length, s - t - h.length).trim(), 0 < l.indexOf(",") ? (l = l.replace(/ /g, ""), l.split(",")) : l.split(" "); + var m = "/CHECK"; + return t = i.indexOf(m), t < 0 && (m = "/VALUES", t = i.indexOf(m)), o = i.lastIndexOf("/"), o == t && (o = i.length), c = i.substr(t + m.length, o - t - m.length).trim(), 0 < c.indexOf(",") ? (c = c.replace(/ /g, ""), c.split(",")) : c.split(" "); } if (0 <= i.indexOf("/BETWEEN")) { - t = i.indexOf("/BETWEEN"), s = i.lastIndexOf("/"), s == t && (s = i.length), l = i.substr(t + 8, s - t - 8).trim(), l = l.replace(" AND ", " "); - for (var y = [], P = parseInt(l.split(" ")[0]); P <= parseInt(l.split(" ")[1]); P++) + t = i.indexOf("/BETWEEN"), o = i.lastIndexOf("/"), o == t && (o = i.length), c = i.substr(t + 8, o - t - 8).trim(), c = c.replace(" AND ", " "); + for (var y = [], P = parseInt(c.split(" ")[0]); P <= parseInt(c.split(" ")[1]); P++) y.push(P); return y; } return null; }, this.apparentDepth = function() { let i = this.content.split(/ |\t/), t = 0; - for (var s = 0; s < i.length; s++) { - var l = i[s]; - if (l == " ") { + for (var o = 0; o < i.length; o++) { + var c = i[o]; + if (c == " ") { t += this.tab; continue; } - if (l == "") { + if (c == "") { t++; continue; } @@ -7779,9 +7779,9 @@ let se = function() { }, this.getGenIdColName = function() { if (this.parseType() != "table" || this.getExplicitPkNode() != null) return null; - if (m.optionEQvalue("Auto Primary Key", "yes")) { + if (d.optionEQvalue("Auto Primary Key", "yes")) { let t = ""; - return this.colprefix != null && (t = this.colprefix + "_"), m.optionEQvalue("prefixPKwithTname", "yes") && (t = z(this.parseName()) + "_"), t + "id"; + return this.colprefix != null && (t = this.colprefix + "_"), d.optionEQvalue("prefixPKwithTname", "yes") && (t = z(this.parseName()) + "_"), t + "id"; } return null; }, this.getPkName = function() { @@ -7791,289 +7791,293 @@ let se = function() { return t == null ? null : t.parseName(); } return i; - }, this.toDDL = function() { - if (this.parseType() == "view" || this.parseType() == "dv") - return ""; + }, this.singleDDL = function() { if (this.children.length == 0 && 0 < this.apparentDepth()) { - let n = d; - return this.parent != null && (n += " ".repeat(this.parent.maxChildNameLen() - this.parseName().length)), this.parseName() + n + this.parseType(); + let a = h; + return this.parent != null && (a += " ".repeat(this.parent.maxChildNameLen() - this.parseName().length)), this.parseName() + a + this.parseType(); } if (this.fks == null && (this.fks = []), !this.isMany2One()) { this.parent != null && this.parseType() == "table" && (this.fks[z(this.parent.parseName()) + "_id"] = this.parent.parseName()); - for (let n = 0; n < this.children.length; n++) - this.children[n].refId() != null && (this.fks[this.children[n].parseName()] = this.children[n].refId()); + for (let a = 0; a < this.children.length; a++) + this.children[a].refId() != null && (this.fks[this.children[a].parseName()] = this.children[a].refId()); } const i = this.trimmedContent().toUpperCase(); var t = i.indexOf("/COLPREFIX "); if (0 < t) { - let o = i.substr(t + 11).split(" "); - this.colprefix = o[0]; + let n = i.substr(t + 11).split(" "); + this.colprefix = n[0]; } - var s = [], l = ""; - const h = m.objPrefix() + this.parseName(); - m.optionEQvalue("pk", "SEQ") && m.optionEQvalue("genpk", !0) && (l = l + "create sequence " + h + `_seq; + var o = ""; + const c = d.objPrefix() + this.parseName(); + d.optionEQvalue("pk", "SEQ") && d.optionEQvalue("genpk", !0) && (o = o + "create sequence " + c + `_seq; -`), l = l + "create table " + h + ` ( +`), o = o + "create table " + c + ` ( `; - var y = d + " ".repeat(this.maxChildNameLen() - 2); - let P = this.getGenIdColName(); - if (P != null) { - let n = "not null"; - m.optionEQvalue("pk", "identityDataType") && (n = "GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), m.optionEQvalue("pk", "seq") && (n = "default on null " + h + "_seq.NEXTVAL ".toLowerCase()), m.optionEQvalue("pk", "guid") && (n = "default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), l += d + P + y + "number " + n + ` + var m = h + " ".repeat(this.maxChildNameLen() - 2); + let y = this.getGenIdColName(); + if (y != null) { + let a = "not null"; + d.optionEQvalue("pk", "identityDataType") && (a = "GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), d.optionEQvalue("pk", "seq") && (a = "default on null " + c + "_seq.NEXTVAL ".toLowerCase()), d.optionEQvalue("pk", "guid") && (a = "default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), o += h + y + m + "number " + a + ` `; - const o = K(m.objPrefix("no schema") + this.parseName(), "_", P); - l += d + d + " ".repeat(this.maxChildNameLen()) + "constraint " + K(o, "_pk") + ` primary key, + const n = K(d.objPrefix("no schema") + this.parseName(), "_", y); + o += h + h + " ".repeat(this.maxChildNameLen()) + "constraint " + K(n, "_pk") + ` primary key, `; } else { - let n = this.getExplicitPkNode(); - if (n != null) { - let o = d + " ".repeat(this.maxChildNameLen() - n.parseName().length); - l += d + n.parseName() + o + n.parseType() + `, + let a = this.getExplicitPkNode(); + if (a != null) { + let n = h + " ".repeat(this.maxChildNameLen() - a.parseName().length); + o += h + a.parseName() + n + a.parseType() + `, `; } } - for (let n in this.fks) { - let o = this.fks[n], c = "number", g = m.find(o), B = ""; - g != null && g.getExplicitPkNode() != null ? c = g.getExplicitPkNode().parseType((C) => !0) : g == null && (g = m.find(n), g.isMany2One() & !n.endsWith("_id") && (o = n, n = z(n), B = "_id")), y = d + " ".repeat(this.maxChildNameLen() - n.length), l += d + n + B + y + c + ` -`, l += d + d + " ".repeat(this.maxChildNameLen()) + "constraint " + h + "_" + n + `_fk + for (let a in this.fks) { + let n = this.fks[a], l = "number", s = d.find(n), g = ""; + s != null && s.getExplicitPkNode() != null ? l = s.getExplicitPkNode().parseType((v) => !0) : s == null && (s = d.find(a), s.isMany2One() & !a.endsWith("_id") && (n = a, a = z(a), g = "_id")), m = h + " ".repeat(this.maxChildNameLen() - a.length), o += h + a + g + m + l + ` +`, o += h + h + " ".repeat(this.maxChildNameLen()) + "constraint " + c + "_" + a + `_fk `; + let B = ""; + 0 <= i.indexOf("/CASCADE") && (B = " on delete cascade"); let f = ""; - 0 <= i.indexOf("/CASCADE") && (f = " on delete cascade"); - let v = ""; - for (let C in this.children) { - let A = this.children[C]; - if (n == A.parseName()) { - let H = A.trimmedContent().toUpperCase(); - (0 <= H.indexOf("/NN") || 0 <= H.indexOf("/NOTNULL")) && (v = " NOT NULL".toLowerCase()), 0 <= H.indexOf("/CASCADE") && (f = " on delete cascade"); + for (let v in this.children) { + let C = this.children[v]; + if (a == C.parseName()) { + let A = C.trimmedContent().toUpperCase(); + (0 <= A.indexOf("/NN") || 0 <= A.indexOf("/NOTNULL")) && (f = " NOT NULL".toLowerCase()), 0 <= A.indexOf("/CASCADE") && (B = " on delete cascade"); break; } } - l += d + d + " ".repeat(this.maxChildNameLen()) + "references " + m.objPrefix() + o + f + v + `, + o += h + h + " ".repeat(this.maxChildNameLen()) + "references " + d.objPrefix() + n + B + f + `, `; } - if (m.optionEQvalue("rowkey", !0) || 0 < i.indexOf("/ROWKEY")) { - let n = d + " ".repeat(this.maxChildNameLen() - 7); - l += d + "row_key" + n + `varchar2(30 char) -`, l += d + d + " ".repeat(this.maxChildNameLen()) + "constraint " + h + `_row_key_unq unique not null, + if (d.optionEQvalue("rowkey", !0) || 0 < i.indexOf("/ROWKEY")) { + let a = h + " ".repeat(this.maxChildNameLen() - 7); + o += h + "row_key" + a + `varchar2(30 char) +`, o += h + h + " ".repeat(this.maxChildNameLen()) + "constraint " + c + `_row_key_unq unique not null, `; } - for (let n = 0; n < this.children.length; n++) { - let o = this.children[n]; - if (!(P != null && o.parseName() == "id")) { - if (0 < o.children.length) { - s.push(o); + for (let a = 0; a < this.children.length; a++) { + let n = this.children[a]; + if (!(y != null && n.parseName() == "id") && !(0 < n.children.length) && n.refId() == null) { + if (n == this.getExplicitPkNode()) continue; - } - if (o.refId() == null) { - if (o == this.getExplicitPkNode()) - continue; - if (l += d + o.toDDL([]) + `, -`, 0 < o.indexOf("file")) { - const c = o.parseName().toUpperCase(); - let g = c + "_FILENAME", B = d + " ".repeat(this.maxChildNameLen() - g.length); - l += d + g.toLowerCase() + B + "varchar2(255" + m.semantics() + `), -`, g = c + "_MIMETYPE", B = d + " ".repeat(this.maxChildNameLen() - g.length), l += d + g.toLowerCase() + B + "varchar2(255" + m.semantics() + `), -`, g = c + "_CHARSET", B = d + " ".repeat(this.maxChildNameLen() - g.length), l += d + g.toLowerCase() + B + "varchar2(255" + m.semantics() + `), -`, g = c + "_LASTUPD", B = d + " ".repeat(this.maxChildNameLen() - g.length), l += d + g.toLowerCase() + B + m.getOptionValue("Date Data Type").toLowerCase() + `, + if (o += h + n.singleDDL() + `, +`, 0 < n.indexOf("file")) { + const l = n.parseName().toUpperCase(); + let s = l + "_FILENAME", g = h + " ".repeat(this.maxChildNameLen() - s.length); + o += h + s.toLowerCase() + g + "varchar2(255" + d.semantics() + `), +`, s = l + "_MIMETYPE", g = h + " ".repeat(this.maxChildNameLen() - s.length), o += h + s.toLowerCase() + g + "varchar2(255" + d.semantics() + `), +`, s = l + "_CHARSET", g = h + " ".repeat(this.maxChildNameLen() - s.length), o += h + s.toLowerCase() + g + "varchar2(255" + d.semantics() + `), +`, s = l + "_LASTUPD", g = h + " ".repeat(this.maxChildNameLen() - s.length), o += h + s.toLowerCase() + g + d.getOptionValue("Date Data Type").toLowerCase() + `, `; - } } } } - if (m.optionEQvalue("rowVersion", "yes") || 0 < i.indexOf("/ROWVERSION")) { - let n = d + " ".repeat(this.maxChildNameLen() - 11); - l += d + "row_version" + n + `integer not null, + if (d.optionEQvalue("rowVersion", "yes") || 0 < i.indexOf("/ROWVERSION")) { + let a = h + " ".repeat(this.maxChildNameLen() - 11); + o += h + "row_version" + a + `integer not null, `; } - if (m.optionEQvalue("Audit Columns", "yes") || 0 < i.indexOf("/AUDITCOLS") || 0 < i.indexOf("/AUDIT COL")) { - let n = m.getOptionValue("createdcol"), o = d + " ".repeat(this.maxChildNameLen() - n.length); - l += d + n + o + m.getOptionValue("Date Data Type").toLowerCase() + ` not null, + if (d.optionEQvalue("Audit Columns", "yes") || 0 < i.indexOf("/AUDITCOLS") || 0 < i.indexOf("/AUDIT COL")) { + let a = d.getOptionValue("createdcol"), n = h + " ".repeat(this.maxChildNameLen() - a.length); + o += h + a + n + d.getOptionValue("Date Data Type").toLowerCase() + ` not null, `; - let c = m.getOptionValue("createdbycol"); - o = d + " ".repeat(this.maxChildNameLen() - c.length), l += d + c + o + "varchar2(255" + m.semantics() + `) not null, + let l = d.getOptionValue("createdbycol"); + n = h + " ".repeat(this.maxChildNameLen() - l.length), o += h + l + n + "varchar2(255" + d.semantics() + `) not null, `; - let g = m.getOptionValue("updatedcol"); - o = d + " ".repeat(this.maxChildNameLen() - g.length), l += d + g + o + m.getOptionValue("Date Data Type").toLowerCase() + ` not null, + let s = d.getOptionValue("updatedcol"); + n = h + " ".repeat(this.maxChildNameLen() - s.length), o += h + s + n + d.getOptionValue("Date Data Type").toLowerCase() + ` not null, `; - let B = m.getOptionValue("updatedbycol"); - o = d + " ".repeat(this.maxChildNameLen() - B.length), l += d + B + o + "varchar2(255" + m.semantics() + `) not null, + let g = d.getOptionValue("updatedbycol"); + n = h + " ".repeat(this.maxChildNameLen() - g.length), o += h + g + n + "varchar2(255" + d.semantics() + `) not null, `; } - var I = m.additionalColumns(); - for (let n in I) { - var k = I[n]; - y = d + " ".repeat(this.maxChildNameLen() - n.length), l += d + n.toUpperCase() + y + k + ` not null, + var P = d.additionalColumns(); + for (let a in P) { + var M = P[a]; + m = h + " ".repeat(this.maxChildNameLen() - a.length), o += h + a.toUpperCase() + m + M + ` not null, `; } - l += this.genConstraint(), l.lastIndexOf(`, -`) == l.length - 2 && (l = l.substr(0, l.length - 2) + ` -`), l += ")" + (m.optionEQvalue("compress", "yes") || 0 < i.indexOf("/COMPRESS") ? " compress" : "") + `; + o += this.genConstraint(), o.lastIndexOf(`, +`) == o.length - 2 && (o = o.substr(0, o.length - 2) + ` +`), o += ")" + (d.optionEQvalue("compress", "yes") || 0 < i.indexOf("/COMPRESS") ? " compress" : "") + `; `; - const N = i.indexOf("/AUDIT"), w = i.indexOf("/AUDITCOLS"), D = i.indexOf("/AUDIT COL"); - 0 < N && w < 0 && D < 0 && (l += "audit all on " + h + `; + const x = i.indexOf("/AUDIT"), D = i.indexOf("/AUDITCOLS"), N = i.indexOf("/AUDIT COL"); + 0 < x && D < 0 && N < 0 && (o += "audit all on " + c + `; `); let R = 1; - for (let n in this.fks) + for (let a in this.fks) if (!this.isMany2One()) { - var _ = this.fks[n], O = _, G = n; - G == null && (G = z(O) + "_id"), R == 1 && (l += `-- table index -`), l += "create index " + h + "_i" + R++ + " on " + h + " (" + G + `); + var G = this.fks[a], F = G, O = a; + O == null && (O = z(F) + "_id"), R == 1 && (o += `-- table index +`), o += "create index " + c + "_i" + R++ + " on " + c + " (" + O + `); `; } - let e = i.indexOf("/UNIQUE "); - if (0 < e) { - let n = i.substr(e + 8), o = n.indexOf("/"); - 0 < o && (n = n.substring(0, o).trim()), l += "alter table " + h + " add constraint " + h + "_uk unique (" + n + `); + let w = i.indexOf("/UNIQUE "); + if (0 < w) { + let a = i.substr(w + 8), n = a.indexOf("/"); + 0 < n && (a = a.substring(0, n).trim()), o += "alter table " + c + " add constraint " + c + "_uk unique (" + a + `); `; } - for (let n = 0; n < this.children.length; n++) { - var a = this.children[n]; - let o = a.trimmedContent().toUpperCase(); - (0 <= o.indexOf("/IDX") || 0 <= o.indexOf("/INDEX")) && (R == 1 && (l += `-- table index -`), l += "create index " + h + "_i" + R++ + " on " + h + " (" + a.parseName() + `); + for (let a = 0; a < this.children.length; a++) { + var e = this.children[a]; + let n = e.trimmedContent().toUpperCase(); + (0 <= n.indexOf("/IDX") || 0 <= n.indexOf("/INDEX")) && (R == 1 && (o += `-- table index +`), o += "create index " + c + "_i" + R++ + " on " + c + " (" + e.parseName() + `); `); } - this.comment != null && (l += "comment on table " + h + " is '" + this.comment + `'; + this.comment != null && (o += "comment on table " + c + " is '" + this.comment + `'; `); - for (let n = 0; n < this.children.length; n++) { - let o = this.children[n]; - o.comment != null && o.children.length == 0 && (l += "comment on column " + h + "." + o.parseName() + " is '" + o.comment + `'; + for (let a = 0; a < this.children.length; a++) { + let n = this.children[a]; + n.comment != null && n.children.length == 0 && (o += "comment on column " + c + "." + n.parseName() + " is '" + n.comment + `'; `); } - l += ` -`; - for (let n = 0; n < s.length; n++) - l += s[n].toDDL(); - return l; + return o += ` +`, o; + }, this.toDDL = function() { + if (this.parseType() == "view" || this.parseType() == "dv") + return ""; + var i = this.orderedTableNodes(); + let t = ""; + for (let o = 0; o < i.length; o++) + t += i[o].singleDDL(); + return t; + }, this.orderedTableNodes = function() { + var i = [this]; + for (let o = 1; o < this.descendants().length; o++) { + var t = this.descendants()[o]; + t.children.length != 0 && (t.isMany2One() ? i.unshift(t) : i.push(t)); + } + return i; }, this.generateDrop = function() { - let i = m.objPrefix() + this.parseName(), t = ""; + let i = d.objPrefix() + this.parseName(), t = ""; return this.parseType() == "view" && (t = "drop view " + i + `; `), this.parseType() == "table" && (t = "drop table " + i + ` cascade constraints; -`, m.optionEQvalue("api", "yes") && (t += "drop package " + i + `_api; -`), m.optionEQvalue("pk", "SEQ") && (t += "drop sequence " + i + `_seq; +`, d.optionEQvalue("api", "yes") && (t += "drop package " + i + `_api; +`), d.optionEQvalue("pk", "SEQ") && (t += "drop sequence " + i + `_seq; `)), t.toLowerCase(); }, this.generateView = function() { if (this.parseType() != "view" && this.parseType() != "dv") return ""; - if (m.optionEQvalue("Duality View", "yes") || this.parseType() == "dv") + if (d.optionEQvalue("Duality View", "yes") || this.parseType() == "dv") try { return this.generateDualityView(); - } catch (c) { - if (c.message == this.one2many2oneUnsupoported) + } catch (s) { + if (s.message == this.one2many2oneUnsupoported) return ""; - throw c; + throw s; } - let i = m.objPrefix() + this.parseName(); - var s = this.trimmedContent().split(" "), l = "create or replace view " + i + ` as + let i = d.objPrefix() + this.parseName(); + var o = this.trimmedContent().split(" "), c = "create or replace view " + i + ` as `; - l += `select + c += `select `; - for (var h = 0, y = 2; y < s.length; y++) { - let c = m.find(s[y]); - if (c == null) + for (var m = 0, y = 2; y < o.length; y++) { + let s = d.find(o[y]); + if (s == null) return ""; - var P = (s[y] + ".id").length; - h < P && (h = P); - for (var I = 0; I < c.children.length; I++) { - var k = c.children[I]; - P = (s[y] + "." + k.parseName()).length, h < P && (h = P); + var P = (o[y] + ".id").length; + m < P && (m = P); + for (var M = 0; M < s.children.length; M++) { + var x = s.children[M]; + P = (o[y] + "." + x.parseName()).length, m < P && (m = P); } } - var N = {}; - for (let c = 2; c < s.length; c++) { - let g = m.find(s[c]); + var D = {}; + for (let s = 2; s < o.length; s++) { + let g = d.find(o[s]); if (g != null) for (let B = 0; B < g.children.length; B++) { - var w = g.children[B].parseName(), D = N[w]; - D == null && (D = 0), N[w] = D + 1; + var N = g.children[B].parseName(), R = D[N]; + R == null && (R = 0), D[N] = R + 1; } } - for (let c = 2; c < s.length; c++) { - let g = m.find(s[c]); + for (let s = 2; s < o.length; s++) { + let g = d.find(o[s]); if (g == null) continue; - let B = " ".repeat(h - (s[c] + ".id").length); - l += d + s[c] + ".id" + d + B + z(s[c]) + `_id, + let B = " ".repeat(m - (o[s] + ".id").length); + c += h + o[s] + ".id" + h + B + z(o[s]) + `_id, `; for (let v = 0; v < g.children.length; v++) { let C = g.children[v]; if (C.children.length == 0) { - B = " ".repeat(h - (s[c] + "." + C.parseName()).length); - var R = ""; - 1 < N[C.parseName()] && (R = z(s[c]) + "_"), l += d + s[c] + "." + C.parseName() + d + B + R + C.parseName() + `, + B = " ".repeat(m - (o[s] + "." + C.parseName()).length); + var G = ""; + 1 < D[C.parseName()] && (G = z(o[s]) + "_"), c += h + o[s] + "." + C.parseName() + h + B + G + C.parseName() + `, `; } } let f = g.trimmedContent().toUpperCase(); - if (m.optionEQvalue("rowVersion", "yes") || 0 < f.indexOf("/ROWVERSION")) { - let v = d + " ".repeat(g.maxChildNameLen() - 11); - l += d + s[c] + ".row_version" + z(v + s[c]) + `_row_version, + if (d.optionEQvalue("rowVersion", "yes") || 0 < f.indexOf("/ROWVERSION")) { + let v = h + " ".repeat(g.maxChildNameLen() - 11); + c += h + o[s] + ".row_version" + z(v + o[s]) + `_row_version, `; } - if (m.optionEQvalue("rowkey", "yes") || 0 < f.indexOf("/ROWKEY")) { - let v = d + " ".repeat(g.maxChildNameLen() - 7); - l += d + s[c] + ".ROW_KEY" + z(v + s[c]) + `_ROW_KEY, + if (d.optionEQvalue("rowkey", "yes") || 0 < f.indexOf("/ROWKEY")) { + let v = h + " ".repeat(g.maxChildNameLen() - 7); + c += h + o[s] + ".ROW_KEY" + z(v + o[s]) + `_ROW_KEY, `; } - if (m.optionEQvalue("Audit Columns", "yes") || 0 < f.indexOf("/AUDITCOLS") || 0 < f.indexOf("/AUDIT COL")) { - let v = m.getOptionValue("createdcol"), C = d + " ".repeat(g.maxChildNameLen() - v.length); - l += d + s[c] + "." + v + z(C + s[c]) + "_" + v + `, + if (d.optionEQvalue("Audit Columns", "yes") || 0 < f.indexOf("/AUDITCOLS") || 0 < f.indexOf("/AUDIT COL")) { + let v = d.getOptionValue("createdcol"), C = h + " ".repeat(g.maxChildNameLen() - v.length); + c += h + o[s] + "." + v + z(C + o[s]) + "_" + v + `, `; - let A = m.getOptionValue("createdbycol"); - C = d + " ".repeat(g.maxChildNameLen() - A.length), l += d + s[c] + "." + A + z(C + s[c]) + "_" + A + `, + let A = d.getOptionValue("createdbycol"); + C = h + " ".repeat(g.maxChildNameLen() - A.length), c += h + o[s] + "." + A + z(C + o[s]) + "_" + A + `, `; - let H = m.getOptionValue("updatedcol"); - C = d + " ".repeat(g.maxChildNameLen() - H.length), l += d + s[c] + "." + H + z(C + s[c]) + "_" + H + `, + let H = d.getOptionValue("updatedcol"); + C = h + " ".repeat(g.maxChildNameLen() - H.length), c += h + o[s] + "." + H + z(C + o[s]) + "_" + H + `, `; - let F = m.getOptionValue("updatedbycol"); - C = d + " ".repeat(g.maxChildNameLen() - F.length), l += d + s[c] + "." + F + z(C + s[c]) + "_" + F + `, + let _ = d.getOptionValue("updatedbycol"); + C = h + " ".repeat(g.maxChildNameLen() - _.length), c += h + o[s] + "." + _ + z(C + o[s]) + "_" + _ + `, `; } } - l.lastIndexOf(`, -`) == l.length - 2 && (l = l.substr(0, l.length - 2) + ` -`), l += `from + c.lastIndexOf(`, +`) == c.length - 2 && (c = c.substr(0, c.length - 2) + ` +`), c += `from `; - for (let c = 2; c < s.length; c++) { - let g = " ".repeat(h - s[c].length); - var _ = s[c]; - m.objPrefix() != null && m.objPrefix() != "" && (_ = m.objPrefix() + s[c] + g + s[c]), l += d + _ + `, + for (let s = 2; s < o.length; s++) { + let g = " ".repeat(m - o[s].length); + var F = o[s]; + d.objPrefix() != null && d.objPrefix() != "" && (F = d.objPrefix() + o[s] + g + o[s]), c += h + F + `, `; } - l.lastIndexOf(`, -`) == l.length - 2 && (l = l.substr(0, l.length - 2) + ` -`), l += `where + c.lastIndexOf(`, +`) == c.length - 2 && (c = c.substr(0, c.length - 2) + ` +`), c += `where `; - for (let c = 2; c < s.length; c++) - for (let g = 2; g < s.length; g++) - if (g != c) { - var O = s[c], G = s[g], e = m.find(O); + for (let s = 2; s < o.length; s++) + for (let g = 2; g < o.length; g++) + if (g != s) { + var O = o[s], w = o[g], e = d.find(O); if (e != null) { - var a = m.find(G); + var a = d.find(w); if (a != null) for (var n in e.fks) { - var o = e.fks[n]; - o == G && (l += d + O + "." + z(o) + "_id(+) = " + G + `.id and + var l = e.fks[n]; + l == w && (c += h + O + "." + z(l) + "_id(+) = " + w + `.id and `); } } } - return l = p(l, `where -`), l.lastIndexOf(" and") == l.length - 4 && (l = l.substring(0, l.length - 4) + ` -`), l += `/ -`, l.toLowerCase(); + return c = p(c, `where +`), c.lastIndexOf(" and") == c.length - 4 && (c = c.substring(0, c.length - 4) + ` +`), c += `/ +`, c.toLowerCase(); }, this.restEnable = function() { if (this.parseType() != "table" || this.trimmedContent().toUpperCase().indexOf("/REST") < 0) return ""; - let s = this.parseName(); - const l = s.indexOf('"') == 0; - let h = m.objPrefix() + s; - return l ? h = m.objPrefix() + s.substring(1, s.length - 1) : h = (m.objPrefix() + s).toUpperCase(), `begin -` + d + "ords.enable_object(p_enabled=>TRUE, p_object=>'" + h + `'); + let o = this.parseName(); + const c = o.indexOf('"') == 0; + let m = d.objPrefix() + o; + return c ? m = d.objPrefix() + o.substring(1, o.length - 1) : m = (d.objPrefix() + o).toUpperCase(), `begin +` + h + "ords.enable_object(p_enabled=>TRUE, p_object=>'" + m + `'); end; / `; @@ -8081,16 +8085,16 @@ end; if (this.parseType() != "table") return ""; let i = ""; - m.optionEQvalue("editionable", "yes") && (i = " editionable"); - let t = m.objPrefix() + this.parseName(); - var s = "create or replace" + i + " trigger " + t.toLowerCase() + `_BIU + d.optionEQvalue("editionable", "yes") && (i = " editionable"); + let t = d.objPrefix() + this.parseName(); + var o = "create or replace" + i + " trigger " + t.toLowerCase() + `_BIU `.toLowerCase(); - s += ` before insert or update -`, s += " on " + t.toLowerCase() + ` -`, s += ` for each row + o += ` before insert or update +`, o += " on " + t.toLowerCase() + ` +`, o += ` for each row `; - let l = this.trimmedContent().toUpperCase(); - (m.optionEQvalue("Rowkey", "yes") || 0 < l.indexOf("/ROWKEY")) && (s += `declare + let c = this.trimmedContent().toUpperCase(); + (d.optionEQvalue("Rowkey", "yes") || 0 < c.indexOf("/ROWKEY")) && (o += `declare function compress_int (n in integer ) return varchar2 as ret varchar2(30); @@ -8113,119 +8117,119 @@ end; if length(ret) < 5 then ret := lpad(ret, 4, 'A'); end if ; return upper(ret); end compress_int; -`), s += `begin +`), o += `begin `; - var h = !1, y = "user"; - m.optionEQvalue("apex", "yes") && (y = "coalesce(sys_context('APEX$SESSION','APP_USER'),user)"), (m.optionEQvalue("rowkey", "yes") || 0 < l.indexOf("/ROWKEY")) && (s += ` if inserting then -`, s += ` :new.row_key := compress_int(row_key_seq.nextval); -`, s += ` end if; -`, h = !0); + var m = !1, y = "user"; + d.optionEQvalue("apex", "yes") && (y = "coalesce(sys_context('APEX$SESSION','APP_USER'),user)"), (d.optionEQvalue("rowkey", "yes") || 0 < c.indexOf("/ROWKEY")) && (o += ` if inserting then +`, o += ` :new.row_key := compress_int(row_key_seq.nextval); +`, o += ` end if; +`, m = !0); for (var P = 0; P < this.children.length; P++) { - var I = this.children[P]; - let D = null; - 0 < I.content.indexOf("/lower") ? D = "LOWER".toLowerCase() : 0 < I.content.indexOf("/upper") && (D = "UPPER".toLowerCase()), D != null && (s += " :new." + I.parseName().toLowerCase() + " := " + D + "(:new." + I.parseName().toLowerCase() + `); -`, h = !0); + var M = this.children[P]; + let R = null; + 0 < M.content.indexOf("/lower") ? R = "LOWER".toLowerCase() : 0 < M.content.indexOf("/upper") && (R = "UPPER".toLowerCase()), R != null && (o += " :new." + M.parseName().toLowerCase() + " := " + R + "(:new." + M.parseName().toLowerCase() + `); +`, m = !0); } - (m.optionEQvalue("Row Version Number", "yes") || 0 < l.indexOf("/ROWVERSION")) && (s += ` if inserting then -`, s += ` :new.row_version := 1; -`, s += ` elsif updating then -`, s += ` :new.row_version := NVL(:old.row_version, 0) + 1; -`, s += ` end if; -`, h = !0), (m.optionEQvalue("Audit Columns", "yes") || 0 < l.indexOf("/AUDITCOLS") || 0 < l.indexOf("/AUDIT COL")) && (s += ` if inserting then -`, s += " :new." + m.getOptionValue("createdcol") + ` := SYSDATE; -`.toLowerCase(), s += " :new." + m.getOptionValue("createdbycol") + " := " + y + `; -`.toLowerCase(), s += ` end if; -`, s += " :new." + m.getOptionValue("updatedcol") + ` := SYSDATE; -`.toLowerCase(), s += " :new." + m.getOptionValue("updatedbycol") + " := " + y + `; -`.toLowerCase(), h = !0); - var k = m.additionalColumns(); - for (var N in k) { - var w = k[N]; - s += " if :new." + N + ` is null then -`, w.startsWith("INT") ? s += " " + N + ` := 0; -` : s += " " + N + ` := 'N/A'; -`, s += ` end if; -`, h = !0; + (d.optionEQvalue("Row Version Number", "yes") || 0 < c.indexOf("/ROWVERSION")) && (o += ` if inserting then +`, o += ` :new.row_version := 1; +`, o += ` elsif updating then +`, o += ` :new.row_version := NVL(:old.row_version, 0) + 1; +`, o += ` end if; +`, m = !0), (d.optionEQvalue("Audit Columns", "yes") || 0 < c.indexOf("/AUDITCOLS") || 0 < c.indexOf("/AUDIT COL")) && (o += ` if inserting then +`, o += " :new." + d.getOptionValue("createdcol") + ` := SYSDATE; +`.toLowerCase(), o += " :new." + d.getOptionValue("createdbycol") + " := " + y + `; +`.toLowerCase(), o += ` end if; +`, o += " :new." + d.getOptionValue("updatedcol") + ` := SYSDATE; +`.toLowerCase(), o += " :new." + d.getOptionValue("updatedbycol") + " := " + y + `; +`.toLowerCase(), m = !0); + var x = d.additionalColumns(); + for (var D in x) { + var N = x[D]; + o += " if :new." + D + ` is null then +`, N.startsWith("INT") ? o += " " + D + ` := 0; +` : o += " " + D + ` := 'N/A'; +`, o += ` end if; +`, m = !0; } - return h ? (s += "end " + t.toLowerCase() + `_BIU; + return m ? (o += "end " + t.toLowerCase() + `_BIU; / -`.toLowerCase(), s) : ""; +`.toLowerCase(), o) : ""; }, this.procDecl = function(i) { let t = ""; i != "get" && (t = " default null"); - let s = "out"; - i != "get" && (s = " in"); - let l = d + "procedure " + i + `_row ( + let o = "out"; + i != "get" && (o = " in"); + let c = h + "procedure " + i + `_row ( `; - l += d + d + "p_id in number" + t; - for (var h in this.fks) { - let P = this.fks[h], I = "number", k = m.find(P); - k != null && k.getExplicitPkNode() != null && (I = k.getExplicitPkNode().parseType((N) => !0)), l += `, -`, l += d + d + "P_" + h + " " + s + " " + I + t; + c += h + h + "p_id in number" + t; + for (var m in this.fks) { + let P = this.fks[m], M = "number", x = d.find(P); + x != null && x.getExplicitPkNode() != null && (M = x.getExplicitPkNode().parseType((D) => !0)), c += `, +`, c += h + h + "P_" + m + " " + o + " " + M + t; } for (let P = 0; P < this.children.length; P++) { var y = this.children[P]; - y.refId() == null && y.children.length == 0 && (l += `, -`, l += d + d + "P_" + y.parseName() + " " + s + " " + y.parseType("plsql") + t); + y.refId() == null && y.children.length == 0 && (c += `, +`, c += h + h + "P_" + y.parseName() + " " + o + " " + y.parseType("plsql") + t); } - return l += ` - )`, l; + return c += ` + )`, c; }, this.procBody = function(i) { - let t = m.objPrefix() + this.parseName(), s = d + `is + let t = d.objPrefix() + this.parseName(), o = h + `is `; - s += d + `begin + o += h + `begin `; - let l = d + d + "for c1 in (select * from " + t + ` where id = p_id) loop + let c = h + h + "for c1 in (select * from " + t + ` where id = p_id) loop `; - i == "insert" && (l = d + d + "insert into " + t + ` ( -`, l += d + d + d + "id"), i == "update" && (l = d + d + "update " + t + ` set -`, l += d + d + d + "id = p_id"), s += l; - for (let I in this.fks) { - let k = this.fks[I], N = m.find(k); - N != null && N.getExplicitPkNode() != null && N.getExplicitPkNode().parseType((D) => !0), (i == "insert" || i == "update") && (s += `, + i == "insert" && (c = h + h + "insert into " + t + ` ( +`, c += h + h + h + "id"), i == "update" && (c = h + h + "update " + t + ` set +`, c += h + h + h + "id = p_id"), o += c; + for (let M in this.fks) { + let x = this.fks[M], D = d.find(x); + D != null && D.getExplicitPkNode() != null && D.getExplicitPkNode().parseType((R) => !0), (i == "insert" || i == "update") && (o += `, `); - let w = d + d + d + "P_" + I + " := c1." + I + `; + let N = h + h + h + "P_" + M + " := c1." + M + `; `; - i == "insert" && (w = d + d + d + I), i == "update" && (w = d + d + d + I + " = P_" + I + ` -`), s += w; + i == "insert" && (N = h + h + h + M), i == "update" && (N = h + h + h + M + " = P_" + M + ` +`), o += N; } - for (var h = 0; h < this.children.length; h++) { - var y = this.children[h]; + for (var m = 0; m < this.children.length; m++) { + var y = this.children[m]; if (y.refId() != null || y.children.length != 0) continue; - (i == "insert" || i == "update") && (s += `, + (i == "insert" || i == "update") && (o += `, `); - let I = d + d + d + "P_" + y.parseName().toLowerCase() + " := c1." + y.parseName().toLowerCase() + `; + let M = h + h + h + "P_" + y.parseName().toLowerCase() + " := c1." + y.parseName().toLowerCase() + `; `; - i == "insert" && (I = d + d + d + y.parseName().toLowerCase()), i == "update" && (I = d + d + d + y.parseName().toLowerCase() + " = P_" + y.parseName().toLowerCase() + ` -`), s += I; + i == "insert" && (M = h + h + h + y.parseName().toLowerCase()), i == "update" && (M = h + h + h + y.parseName().toLowerCase() + " = P_" + y.parseName().toLowerCase() + ` +`), o += M; } if (i == "insert") { - s += ` -` + d + d + `) values ( -`, s += d + d + d + "p_id"; - for (let I in this.fks) - s += `, -`, s += d + d + d + "p_" + I; - for (let I = 0; I < this.children.length; I++) { - let k = this.children[I]; - k.refId() == null && k.children.length == 0 && (s += `, -`, s += d + d + d + "p_" + k.parseName()); + o += ` +` + h + h + `) values ( +`, o += h + h + h + "p_id"; + for (let M in this.fks) + o += `, +`, o += h + h + h + "p_" + M; + for (let M = 0; M < this.children.length; M++) { + let x = this.children[M]; + x.refId() == null && x.children.length == 0 && (o += `, +`, o += h + h + h + "p_" + x.parseName()); } } let P = ` end loop; `; return i == "insert" && (P = ` -` + d + d + ");"), i == "update" && (P = d + d + "where id = p_id;"), s += P, s += ` -` + d + "end " + i + `_row; - `, s += ` - `, s; +` + h + h + ");"), i == "update" && (P = h + h + "where id = p_id;"), o += P, o += ` +` + h + "end " + i + `_row; + `, o += ` + `, o; }, this.generateTAPI = function() { if (this.children.length == 0) return ""; - let i = m.objPrefix() + this.parseName(); + let i = d.objPrefix() + this.parseName(); var t = "create or replace package " + i.toLowerCase() + `_API is @@ -8259,224 +8263,234 @@ is `, t += `/ `, t.toLowerCase(); }, this.rows = 0, this.generateData = function(i, t) { - let s = ""; - if (m.optionEQvalue("inserts", !1)) - return s; - let l = m.objPrefix() + this.parseName(), h = this.trimmedContent().toLowerCase(), y = h.indexOf("/insert "), P = 0; - if (0 < y) { - h = h.substr(y + 8); - let k = h.split(" "); - if (this.rows = parseInt(k[0]), 0 < this.rows) { - for (m.getOptionValue("datalimit") < this.rows && (this.rows = m.getOptionValue("datalimit")), P = 0; P < this.rows; P++) { + if (d.optionEQvalue("inserts", !1)) + return ""; + const o = this.inserts4tbl(i, t), c = this.orderedTableNodes(); + let m = ""; + for (let y = 0; y < c.length; y++) { + const P = o[c[y].parseName()]; + P != null && (m += P); + } + return m; + }, this.inserts4tbl = function(i, t) { + let o = {}; + if (d.optionEQvalue("inserts", !1)) + return ""; + let c = d.objPrefix() + this.parseName(), m = "", y = this.trimmedContent().toLowerCase(), P = y.indexOf("/insert "), M = 0; + if (0 < P) { + y = y.substr(P + 8); + let D = y.split(" "); + if (this.rows = parseInt(D[0]), 0 < this.rows) { + for (d.getOptionValue("datalimit") < this.rows && (this.rows = d.getOptionValue("datalimit")), M = 0; M < this.rows; M++) { let N = i; - i != null && Array.isArray(i) && (N = i[P]), s += "insert into " + l + ` ( + i != null && Array.isArray(i) && (N = i[M]), m += "insert into " + c + ` ( `; - let w = this.getGenIdColName(); - if (w != null) - s += d + w + `, + let R = this.getGenIdColName(); + if (R != null) + m += h + R + `, `; else { - let D = this.getExplicitPkNode(); - D != null && (s += d + D.parseName() + `, + let G = this.getExplicitPkNode(); + G != null && (m += h + G.parseName() + `, `); } - for (let D in this.fks) { - let R = this.fks[D], _ = m.find(R), O = ""; - _ == null && (_ = m.find(D), _.isMany2One() & !D.endsWith("_id") && (R = D, D = z(D), O = "_id")), s += d + D + O + `, + for (let G in this.fks) { + let F = this.fks[G], O = d.find(F), w = ""; + O == null && (O = d.find(G), O.isMany2One() & !G.endsWith("_id") && (F = G, G = z(G), w = "_id")), m += h + G + w + `, `; } - for (let D = 0; D < this.children.length; D++) { - let R = this.children[D]; - if (!(w != null && R.parseName() == "id") && R.refId() == null) { - if (R == this.getExplicitPkNode()) + for (let G = 0; G < this.children.length; G++) { + let F = this.children[G]; + if (!(R != null && F.parseName() == "id") && F.refId() == null) { + if (F == this.getExplicitPkNode()) continue; - R.children.length == 0 && (s += d + R.parseName() + `, + F.children.length == 0 && (m += h + F.parseName() + `, `); } } - if (s.lastIndexOf(`, -`) == s.length - 2 && (s = s.substr(0, s.length - 2) + ` -`), s += `) values ( -`, w != null) - s += d + (P + 1) + `, + if (m.lastIndexOf(`, +`) == m.length - 2 && (m = m.substr(0, m.length - 2) + ` +`), m += `) values ( +`, R != null) + m += h + (M + 1) + `, `; else { - let D = this.getExplicitPkNode(); - if (D != null) { - const R = D.parseName(); - let _ = b(m.data, null, R, this.parseName()), O = -1; - N != null && (O = N[R]), _ != null && _[P] != null && (O = _[P]), s += d + (O ?? P + 1) + `, + let G = this.getExplicitPkNode(); + if (G != null) { + const F = G.parseName(); + let O = b(d.data, null, F, this.parseName()), w = -1; + N != null && (w = N[F]), O != null && O[M] != null && (w = O[M]), m += h + (w ?? M + 1) + `, `; } } - for (let D in this.fks) { - let R = this.fks[D], _ = m.find(R), O = []; - for (let G = 1; G <= _.rows; G++) - O.push(G); - if (t != null && _ != null) { - const G = _.getPkName(); - if (G == null) + for (let G in this.fks) { + let F = this.fks[G], O = d.find(F), w = []; + for (let e = 1; e <= O.rows; e++) + w.push(e); + if (t != null && O != null) { + const e = O.getPkName(); + if (e == null) continue; - let e = t[G]; - e != null && (O = [], O[0] = e); + let a = t[e]; + a != null && (w = [], w[0] = a); } if (N != null) { - let G = N[R]; - if (G != null) { - const e = _.getPkName(); - if (e == null) + let e = N[F]; + if (e != null) { + const a = O.getPkName(); + if (a == null) continue; - let a = G[e]; - a != null && (O = [], O[0] = a); + let n = e[a]; + n != null && (w = [], w[0] = n); } } - s += d + oe(m.getOptionValue("Data Language"), le(l, z(R) + "_id", "INTEGER", O)) + `, + m += h + oe(d.getOptionValue("Data Language"), le(c, z(F) + "_id", "INTEGER", w)) + `, `; } - for (let D = 0; D < this.children.length; D++) { - let R = this.children[D]; - if (!(w != null && R.parseName() == "id") && R.refId() == null) { - if (R == this.getExplicitPkNode()) + for (let G = 0; G < this.children.length; G++) { + let F = this.children[G]; + if (!(R != null && F.parseName() == "id") && F.refId() == null) { + if (F == this.getExplicitPkNode()) continue; - if (R.children.length == 0) { - let _ = R.parseValues(), O = R.parseName(); + if (F.children.length == 0) { + let O = F.parseValues(), w = F.parseName(); if (N != null) { - let a = N[O]; - a != null && (_ = [], _[0] = a); + let n = N[w]; + n != null && (O = [], O[0] = n); } - let G = b(m.data, null, O, this.parseName()); - G != null && G[P] != null && (_ = [], _[0] = G[P]); - let e = le(l, O, R.parseType(), _); - s += d + oe(m.getOptionValue("Data Language"), e) + `, + let e = b(d.data, null, w, this.parseName()); + e != null && e[M] != null && (O = [], O[0] = e[M]); + let a = le(c, w, F.parseType(), O); + m += h + oe(d.getOptionValue("Data Language"), a) + `, `; } } } - s.lastIndexOf(`, -`) == s.length - 2 && (s = s.substr(0, s.length - 2) + ` -`), s += `); + m.lastIndexOf(`, +`) == m.length - 2 && (m = m.substr(0, m.length - 2) + ` +`), m += `); `; } - s += ` + m += ` `; } } - s != "" && (s += `commit; + m != "" && (m += `commit; `); - let I = this.getGenIdColName(); - I != null && 1 < P && !m.optionEQvalue("pk", "guid") && (s += "alter table " + l + ` -modify ` + I + " generated always as identity restart start with " + (P + 1) + `; + let x = this.getGenIdColName(); + x != null && 1 < M && !d.optionEQvalue("pk", "guid") && (m += "alter table " + c + ` +modify ` + x + " generated always as identity restart start with " + (M + 1) + `; -`); - for (let k = 0; k < this.children.length; k++) { - const N = this.children[k]; +`), o[c] = m; + for (let D = 0; D < this.children.length; D++) { + const N = this.children[D]; if (0 < N.children.length) { - const w = i; - let D = null; - i != null && (D = i[N.parseName()]), s += N.generateData(D, w); + const R = i; + let G = null; + i != null && (G = i[N.parseName()]), o = { ...o, ...N.inserts4tbl(G, R) }; } } - return s; + return o; }, this.isArray = function() { return !this.isMany2One() && this.parent != null; }, this.hasNonArrayChildId = function(i) { if (!i.endsWith("_id")) return !1; var t = i.slice(0, -3); - return this.children.some((s) => s.children.length > 0 && s.parseName() == t && !s.isArray()); + return this.children.some((o) => o.children.length > 0 && o.parseName() == t && !o.isArray()); }, this.generateSelectJsonBottomUp = function(i) { throw new Error("generateSelectJsonBottomUp() not implemented yet"); }, this.one2many2oneUnsupoported = "one to many to one is not supported", this.generateSelectJsonTopDown = function(i) { var t = this.parseName(); - let s = ""; - this.getExplicitPkNode == null && (s += i + "'" + this.getGenIdColName() + "' : " + t + "." + this.getGenIdColName() + `, + let o = ""; + this.getExplicitPkNode == null && (o += i + "'" + this.getGenIdColName() + "' : " + t + "." + this.getGenIdColName() + `, `); - for (var l = 0; l < this.children.length; l++) { - var h = this.children[l], y = h.parseName(); - if (h.children.length == 0) { + for (var c = 0; c < this.children.length; c++) { + var m = this.children[c], y = m.parseName(); + if (m.children.length == 0) { if (this.hasNonArrayChildId(y)) continue; - s += i + "'" + y + "' : " + t + "." + y; + o += i + "'" + y + "' : " + t + "." + y; } else { - if (s += i + "'" + y + `' : [ -`, h.isMany2One(), i += " ", s += i + `select JSON { + if (o += i + "'" + y + `' : [ +`, m.isMany2One(), i += " ", o += i + `select JSON { `, this.isMany2One()) throw new Error(this.one2many2oneUnsupoported); - s += h.generateSelectJsonTopDown(i + " "), s += i + " WITH NOCHECK } from " + y + ` with INSERT UPDATE + o += m.generateSelectJsonTopDown(i + " "), o += i + " WITH NOCHECK } from " + y + ` with INSERT UPDATE `; - let k = null; - for (var P in h.fks) { - var I = h.fks[P]; - if (I == t) { - k = P; + let x = null; + for (var P in m.fks) { + var M = m.fks[P]; + if (M == t) { + x = P; break; } } - const N = t + "." + this.getPkName(), w = y + "." + k; - s += i + "where " + w + " = " + N + ` -`, i = i.slice(0, -2), s += i + "]"; + const D = t + "." + this.getPkName(), N = y + "." + x; + o += i + "where " + N + " = " + D + ` +`, i = i.slice(0, -2), o += i + "]"; } - s += l < this.children.length - 1 ? `, + o += c < this.children.length - 1 ? `, ` : ` `; } - return s[s.length - 2] == "," ? s.slice(0, -2) + ` -` : s; + return o[o.length - 2] == "," ? o.slice(0, -2) + ` +` : o; }, this.generateDualityView = function() { var i = this.trimmedContent(), t = i.split(" "); if (3 < t.length) throw "max 1 table is allowed in DV"; - var s = "", l = m.find(t[2]); - return l != null && (s += "create or replace json relational duality view " + t[1] + ` as -`, s += `select JSON { -`, s += l.isMany2One() ? l.generateSelectJsonBottomUp(" ") : l.generateSelectJsonTopDown(" "), s += "} from " + l.parseName() + ` with INSERT UPDATE DELETE; + var o = "", c = d.find(t[2]); + return c != null && (o += "create or replace json relational duality view " + t[1] + ` as +`, o += `select JSON { +`, o += c.isMany2One() ? c.generateSelectJsonBottomUp(" ") : c.generateSelectJsonTopDown(" "), o += "} from " + c.parseName() + ` with INSERT UPDATE DELETE; -`), s; +`), o; }; } - function x(S) { - m = S; - const M = S.input; + function k(S) { + d = S; + const T = S.input; let r = [], u = []; - const i = Z(M + ` + const i = Z(T + ` `, !0, !0, ""); - m.data = null; - let t = null, s = "", l = 0; + d.data = null; + let t = null, o = "", c = 0; e: - for (let h in i) { - const y = i[h]; + for (let m in i) { + const y = i[m]; if (y.value == ` ` && t == null) { - if (s = s.replace(/\r/g, ""), s.replace(/\r/g, "").replace(/ /g, "") == "") { - s = "", l++; + if (o = o.replace(/\r/g, ""), o.replace(/\r/g, "").replace(/ /g, "") == "") { + o = "", c++; continue; } - let I = new T(l, s, null), k = !1; - for (let N = 0; N < r.length; N++) { - let w = r[N]; - if (I.apparentDepth() <= w.apparentDepth()) - if (0 < N) { - let D = r[N - 1]; - I = new T(l, s, D), r[N] = I, r = r.slice(0, N + 1), k = !0; + let M = new I(c, o, null), x = !1; + for (let D = 0; D < r.length; D++) { + let N = r[D]; + if (M.apparentDepth() <= N.apparentDepth()) + if (0 < D) { + let R = r[D - 1]; + M = new I(c, o, R), r[D] = M, r = r.slice(0, D + 1), x = !0; break; } else - r[0] = I, r = r.slice(0, 1), u.push(I), k = !0; + r[0] = M, r = r.slice(0, 1), u.push(M), x = !0; } - if (!k) { + if (!x) { if (0 < r.length) { - let N = r[r.length - 1]; - I = new T(l, s, N); + let D = r[r.length - 1]; + M = new I(c, o, D); } - r.push(I), I.apparentDepth() == 0 && u.push(I); + r.push(M), M.apparentDepth() == 0 && u.push(M); } - if (I.isMany2One()) { - const N = I.parent; - N.fks == null && (N.fks = []); - let w = I.refId(); - w == null && (w = I.parseName()), N.fks[I.parseName() + "_id"] = w; + if (M.isMany2One()) { + const D = M.parent; + D.fks == null && (D.fks = []); + let N = M.refId(); + N == null && (N = M.parseName()), D.fks[M.parseName() + "_id"] = N; } - l++, s = ""; + c++, o = ""; continue; } if (t == null && y.value == "#") { @@ -8489,34 +8503,34 @@ modify ` + I + " generated always as identity restart start with " + (P + 1) + continue; const P = Z(t, !1, !0, ""); if (P.length % 4 == 3 && P[1].value == ":") { - S.setOptions(t), t = null, s = ""; + S.setOptions(t), t = null, o = ""; continue; } - let I = null, k = null; - for (let N in P) { - const w = P[N]; - if (I == null && w.value == "document") { - I = ""; + let M = null, x = null; + for (let D in P) { + const N = P[D]; + if (M == null && N.value == "document") { + M = ""; continue; } - if (I != null) { - if (I += w.value, I == "=") + if (M != null) { + if (M += N.value, M == "=") continue; - let D = I.substring(1); + let R = M.substring(1); try { - m.data = JSON.parse(D), t = null, s = ""; + d.data = JSON.parse(R), t = null, o = ""; continue e; } catch { } } - if (k == null && w.value == "settings") { - k = ""; + if (x == null && N.value == "settings") { + x = ""; continue; } - if (k != null) { - k += w.value, k.substring(1); + if (x != null) { + x += N.value, x.substring(1); try { - S.setOptions(k), t = null, s = ""; + S.setOptions(x), t = null, o = ""; continue e; } catch { } @@ -8525,48 +8539,48 @@ modify ` + I + " generated always as identity restart start with " + (P + 1) + } if (y.type != "comment") { if (y.type == "line-comment") { - 0 < s.trim().length && (s += y.value); + 0 < o.trim().length && (o += y.value); continue; } - s += y.value; + o += y.value; } } return u; } - function p(S, M) { - let r = M.toLowerCase(); + function p(S, T) { + let r = T.toLowerCase(); return 0 < S.indexOf(r) && S.indexOf(r) == S.length - r.length ? S.substring(0, S.length - r.length) : S.trim(); } - function b(S, M, r, u) { + function b(S, T, r, u) { let i = []; if (S == null || typeof S != "object") return null; let t = S[r]; - t != null && M == u && i.push(t); - for (var s in S) { - let l = S[s]; - t = b(l, s, r, u), t != null && (i = i.concat(t)); + t != null && T == u && i.push(t); + for (var o in S) { + let c = S[o]; + t = b(c, o, r, u), t != null && (i = i.concat(t)); } return i; } - return x; + return k; }(); var Ce = function() { - function m() { + function d() { this.aggrCounts = {}, this.calculateCounts = function(E, L) { - let T = this.aggrSizes[E]; - T == null && (T = 0); - let x = 1; - L.length != null && (x = L.length), this.aggrSizes[E] = T + x; + let I = this.aggrSizes[E]; + I == null && (I = 0); + let k = 1; + L.length != null && (k = L.length), this.aggrSizes[E] = I + k; for (let p in L) L[p] != null && typeof L[p] == "object" && this.calculateCounts(p, L[p]); - }, this.introspect = function(E, L, T, x) { - if (T == 0) { - if (this.aggrSizes = {}, T == 0) + }, this.introspect = function(E, L, I, k) { + if (I == 0) { + if (this.aggrSizes = {}, I == 0) for (let S in L) { - let M = ["_address", "_id", "_name", "Id"], r = !1, u = ""; - for (let i = 0; i < M.length; i++) { - const t = M[i]; + let T = ["_address", "_id", "_name", "Id"], r = !1, u = ""; + for (let i = 0; i < T.length; i++) { + const t = T[i]; if (S.endsWith(t)) { u += S.substring(0, S.length - t.length), r = !0; break; @@ -8578,38 +8592,38 @@ var Ce = function() { this.calculateCounts(E, L); } let p = ""; - x != null && x && (p = ">"); + k != null && k && (p = ">"); let b = ` -` + d(T) + p + E; +` + h(I) + p + E; if (typeof L == "number" && (b += " num", E.endsWith("_id") || E.endsWith("Id"))) return b += " /pk", b; if (typeof L == "object") { if (Array.isArray(L)) - for (let M in L) { - 1 <= M && console.log("1 <= property !"); - const r = L[M]; - return this.introspect(E, r, T, !1); + for (let T in L) { + 1 <= T && console.log("1 <= property !"); + const r = L[T]; + return this.introspect(E, r, I, !1); } else if (E != "") { - let M = this.aggrSizes[E]; - b += " /insert " + M; + let T = this.aggrSizes[E]; + b += " /insert " + T; } let S = ""; - for (let M in L) { - const r = L[M]; - if (M != null) { - const t = z(E), s = M.toLowerCase(); - if (E != null && t + "_id" == s && 0 < T && (S = M), t + "_id" == s) + for (let T in L) { + const r = L[T]; + if (T != null) { + const t = z(E), o = T.toLowerCase(); + if (E != null && t + "_id" == o && 0 < I && (S = T), t + "_id" == o) continue; } let u = typeof r == "object"; - const i = this.introspect(M, r, T + 1, u); + const i = this.introspect(T, r, I + 1, u); b += i; } S != "" && (b += ` -` + d(T) + S); +` + h(I) + S); } - return T == 0 && (b += ` + return I == 0 && (b += ` dv ` + E + "_dv " + E, b += ` @@ -8622,82 +8636,82 @@ dv ` + E + "_dv " + E, b += ` `), b; }; } - function d(E) { - for (var L = "", T = 0; T < E; T++) + function h(E) { + for (var L = "", I = 0; I < E; I++) L = L + " "; return L; } - return new m(); + return new d(); }(); const ve = function() { - function m(p, b, S, M) { - this.from = b, this.to = S, S == null && (this.to = new d(b.line, b.depth + 1)), this.message = p, this.severity = M, M == null && (this.severity = "error"); + function d(p, b, S, T) { + this.from = b, this.to = S, S == null && (this.to = new h(b.line, b.depth + 1)), this.message = p, this.severity = T, T == null && (this.severity = "error"); } - function d(p, b) { + function h(p, b) { this.line = p, this.depth = b; } function E(p) { const b = p, S = p.input; - let M = []; + let T = []; const r = S.split(` `); - M = M.concat(x(r)); + T = T.concat(k(r)); const u = b.descendants(); for (let i = 0; i < u.length; i++) { const t = u[i]; if (b.optionEQvalue("genpk", !0) && u[i].parseName() == "id") { - const h = t.content.toLowerCase().indexOf("id"); - M.push(new m(q.duplicateId, new d(t.line, h))); + const m = t.content.toLowerCase().indexOf("id"); + T.push(new d(q.duplicateId, new h(t.line, m))); continue; } - const s = t.src[2]; - if (2 < t.src.length && s.value == "-") { - const h = s.begin; - M.push(new m(q.invalidDatatype, new d(t.line, h))); + const o = t.src[2]; + if (2 < t.src.length && o.value == "-") { + const m = o.begin; + T.push(new d(q.invalidDatatype, new h(t.line, m))); continue; } - const l = t.src[1]; - if (1 < t.src.length && 0 < l.value.indexOf("0")) { - const h = l.begin; - M.push(new m(q.invalidDatatype, new d(t.line, h))); + const c = t.src[1]; + if (1 < t.src.length && 0 < c.value.indexOf("0")) { + const m = c.begin; + T.push(new d(q.invalidDatatype, new h(t.line, m))); continue; } - M = M.concat(L(b, t)), M = M.concat(T(b, t)); + T = T.concat(L(b, t)), T = T.concat(I(b, t)); } - return M; + return T; } function L(p, b) { - var S = [], M = b.content.toLowerCase(); + var S = [], T = b.content.toLowerCase(); if (b.parseType() == "view") { - var r = $(M, " "); + var r = $(T, " "); let t = 0; for (var u = 0; u < r.length; u++) if (t += r[u].length, r[u] != " " && r[u] != "view" && u != 1) { var i = p.find(r[u]); - i == null && S.push(new m( + i == null && S.push(new d( q.undefinedObject + r[u], - new d(b.line, t - r[u].length) + new h(b.line, t - r[u].length) )); } } return S; } - function T(p, b) { - var S = [], M = b.content.toLowerCase(); - if (0 < M.indexOf("/fk") || 0 < M.indexOf("/reference")) { - let i = $(M, " "), t = 0, s = !1; + function I(p, b) { + var S = [], T = b.content.toLowerCase(); + if (0 < T.indexOf("/fk") || 0 < T.indexOf("/reference")) { + let i = $(T, " "), t = 0, o = !1; for (var r = 0; r < i.length; r++) if (t += i[r].length, i[r] != " ") { if (i[r] == "/fk" || i[r].indexOf("/reference") == 0) { - s = !0; + o = !0; continue; } - if (s) { + if (o) { var u = p.find(i[r]); if (u == null) { - S.push(new m( + S.push(new d( q.undefinedObject + i[r], - new d(b.line, t - i[r].length) + new h(b.line, t - i[r].length) )); break; } @@ -8706,13 +8720,13 @@ const ve = function() { } return S; } - function x(p) { - for (var b = [], S = Ae(p), M = 1; M < p.length; M++) { - var r = p[M - 1], u = p[M], i = re(r), t = re(u); + function k(p) { + for (var b = [], S = Ae(p), T = 1; T < p.length; T++) { + var r = p[T - 1], u = p[T], i = re(r), t = re(u); t != 0 && i < t && t < i + S && b.push( - new m( + new d( q.misalignedAttribute + S, - new d(M, t) + new h(T, t) ) ); } @@ -8720,40 +8734,40 @@ const ve = function() { } return E; }(); -function Ae(m) { - let d = []; - for (var E = 0; E < m.length; E++) { - var L = m[E]; - d[E] = re(L); +function Ae(d) { + let h = []; + for (var E = 0; E < d.length; E++) { + var L = d[E]; + h[E] = re(L); } - let T = []; - for (let p = 0; p < d.length; p++) { - let b = ye(d, p); + let I = []; + for (let p = 0; p < h.length; p++) { + let b = ye(h, p); if (b != null) { - let S = T[d[p] - d[b]]; - S == null && (S = 0), T[d[p] - d[b]] = S + 1; + let S = I[h[p] - h[b]]; + S == null && (S = 0), I[h[p] - h[b]] = S + 1; } } - let x = null; - for (let p in T) - (x == null || T[x] <= T[p]) && (x = p); - return x; + let k = null; + for (let p in I) + (k == null || I[k] <= I[p]) && (k = p); + return k; } -function re(m) { - for (var d = m.split(/ |\t/), E = 0, L = 0; L < d.length; L++) { - var T = d[L]; - if (T == " " && (E += 4), T == "") { +function re(d) { + for (var h = d.split(/ |\t/), E = 0, L = 0; L < h.length; L++) { + var I = h[L]; + if (I == " " && (E += 4), I == "") { E++; continue; } - if (!/[^.a-zA-Z0-9_"]/.test(T)) + if (!/[^.a-zA-Z0-9_"]/.test(I)) return E; } return 0; } -function ye(m, d) { - for (let E = d; 0 <= E; E--) - if (m[E] < m[d]) +function ye(d, h) { + for (let E = h; 0 <= E; E--) + if (d[E] < d[h]) return E; return null; } @@ -8763,7 +8777,7 @@ const q = { undefinedObject: "Undefined Object: ", misalignedAttribute: "Misaligned Table or Column; apparent indent = " }, Se = { findErrors: ve, messages: q }, ne = "identityDataType", ce = "guid", ue = "Timestamp with time zone", me = "Timestamp with local time zone", j = function() { - const m = { + const d = { apex: { label: "APEX", value: "no", check: ["yes", "no"] }, auditcols: { label: "Audit Columns", value: "no", check: ["yes", "no"] }, createdcol: { label: "Created Column Name", value: "created" }, @@ -8796,36 +8810,36 @@ const q = { //"Auxiliary Columns": {label: "Auxiliary Columns", value:''}, // e.g. security_group_id integer //namecase: {label: 'Object and Field name convention', value:'canonic',check:['canonic','json']}, }; - function d(L) { + function h(L) { if (L == null) return null; - let T = L; - return typeof T == "string" && (T = T.toLowerCase()), T == "yes" ? !0 : T == "no" ? !1 : T == "y" ? !0 : T == "n" ? !1 : T == "true" ? !0 : T == "false" ? !1 : T == ne.toLowerCase() ? "identity" : T == ce.toLowerCase() ? "guid" : T == ue.toLowerCase() ? "tswtz" : T == me.toLowerCase() ? "tswltz" : T; + let I = L; + return typeof I == "string" && (I = I.toLowerCase()), I == "yes" ? !0 : I == "no" ? !1 : I == "y" ? !0 : I == "n" ? !1 : I == "true" ? !0 : I == "false" ? !1 : I == ne.toLowerCase() ? "identity" : I == ce.toLowerCase() ? "guid" : I == ue.toLowerCase() ? "tswtz" : I == me.toLowerCase() ? "tswltz" : I; } - function E(L, T) { - this.ddl = null, this.erd = null, this.errors = null, this.options = JSON.parse(JSON.stringify(m)), this.input = L, this.getOptionValue = function(p) { + function E(L, I) { + this.ddl = null, this.erd = null, this.errors = null, this.options = JSON.parse(JSON.stringify(d)), this.input = L, this.getOptionValue = function(p) { const b = p.toLowerCase(); let S = this.options[b]; if (!(b in this.options)) - for (let M in this.options) { - const r = this.options[M].label; + for (let T in this.options) { + const r = this.options[T].label; if (r == null) continue; - r.toLowerCase() == b && (S = this.options[M]); + r.toLowerCase() == b && (S = this.options[T]); } return S == null ? null : S.value; }, this.optionEQvalue = function(p, b) { var S = this.getOptionValue(p); - return d(S) == d(b); + return h(S) == h(b); }, this.nonDefaultOptions = function() { let p = {}; for (let b in this.options) - m[b] && !this.optionEQvalue(b, m[b].value) && (p[b] = this.options[b].value); + d[b] && !this.optionEQvalue(b, d[b].value) && (p[b] = this.options[b].value); return p; }, this.unknownOptions = function() { let p = []; for (let b in this.options) - m[b] == null && p.push(b); + d[b] == null && p.push(b); return p; }, this.setOptionValue = function(p, b) { let S = p.toLowerCase(); @@ -8837,15 +8851,15 @@ const q = { } } b == null && (b = ""); - let M = this.options[S]; - M == null && (M = {}, this.options[S] = M), M.value = b; + let T = this.options[S]; + T == null && (T = {}, this.options[S] = T), T.value = b; }, this.semantics = function() { var p = ""; return this.optionEQvalue("semantics", "CHAR") ? p = " char" : this.optionEQvalue("semantics", "BYTE") && (p = " byte"), p; }, this.find = function(p) { for (var b = 0; b < this.forest.length; b++) - for (var S = this.forest[b].descendants(), M = 0; M < S.length; M++) { - var r = S[M]; + for (var S = this.forest[b].descendants(), T = 0; T < S.length; T++) { + var r = S[T]; if (r.parseName() == de(p)) return r; } @@ -8855,12 +8869,12 @@ const q = { const b = p.indexOf("="); let S = p.substring(b + 1).trim(); S.indexOf("{") < 0 && (S = "{" + p + "}"); - let M = "", r = Z(S, !0, !0, ""); + let T = "", r = Z(S, !0, !0, ""); for (let i in r) { let t = r[i]; - t.type == "identifier" && t.value != "true" && t.value != "false" && t.value != "null" ? M += '"' + t.value + '"' : M += t.value; + t.type == "identifier" && t.value != "true" && t.value != "false" && t.value != "null" ? T += '"' + t.value + '"' : T += t.value; } - let u = JSON.parse(M); + let u = JSON.parse(T); for (let i in u) this.setOptionValue(i.toLowerCase(), u[i]); }, this.descendants = function() { @@ -8871,8 +8885,8 @@ const q = { var p = [], b = this.getOptionValue("Auxiliary Columns"); if (b == null) return p; - for (var S = b.split(","), M = 0; M < S.length; M++) { - var r = S[M].trim(), u = "VARCHAR2(4000)", i = r.indexOf(" "); + for (var S = b.split(","), T = 0; T < S.length; T++) { + var r = S[T].trim(), u = "VARCHAR2(4000)", i = r.indexOf(" "); 0 < i && (u = r.substring(i + 1).toUpperCase(), r = r.substring(0, i)), p[r] = u; } return p; @@ -8882,10 +8896,10 @@ const q = { var S = ""; return this.getOptionValue("prefix") != null && (S = this.getOptionValue("prefix")), b = b + S, S != "" && (b = b + "_"), b.toLowerCase(); }; - let x = ""; - 0 < L.toLowerCase().indexOf("overridesettings") && se(this), T != null && this.optionEQvalue("overrideSettings", !1) && (x = "# settings = " + T + ` + let k = ""; + 0 < L.toLowerCase().indexOf("overridesettings") && se(this), I != null && this.optionEQvalue("overrideSettings", !1) && (k = "# settings = " + I + ` -`), this.input = x + L, this.forest = se(this), this.getERD = function() { +`), this.input = k + L, this.forest = se(this), this.getERD = function() { if (this.erd != null) return this.erd; let p = this.descendants(), b = { items: [] }; @@ -8896,28 +8910,28 @@ const q = { i == "" && (i = null), u.schema = i, u.columns = [], b.items.push(u); let t = p[r].getGenIdColName(); t != null && u.columns.push({ name: t, datatype: "number" }); - for (let l = 0; l < p[r].children.length; l++) { - let h = p[r].children[l]; - if (h.parseType() != "table" && (u.columns.push({ name: h.parseName(""), datatype: h.parseType((y) => !0) }), 0 < h.indexOf("file"))) { - const y = h.parseName(); + for (let c = 0; c < p[r].children.length; c++) { + let m = p[r].children[c]; + if (m.parseType() != "table" && (u.columns.push({ name: m.parseName(""), datatype: m.parseType((y) => !0) }), 0 < m.indexOf("file"))) { + const y = m.parseName(); u.columns.push({ name: y + "_filename", datatype: "varchar2(255" + this.semantics() + ")" }), u.columns.push({ name: y + "_mimetype", datatype: "varchar2(255" + this.semantics() + ")" }), u.columns.push({ name: y + "_charset", datatype: "varchar2(255" + this.semantics() + ")" }), u.columns.push({ name: y + "_lastupd", datatype: "date" }); } } - const s = p[r].trimmedContent().toUpperCase(); - if ((this.optionEQvalue("rowkey", !0) || 0 < s.indexOf("/ROWKEY")) && u.columns.push({ name: "row_key", datatype: "varchar2(30 char)" }), (this.optionEQvalue("rowVersion", "yes") || 0 < s.indexOf("/ROWVERSION")) && u.columns.push({ name: "row_version", datatype: "integer" }), this.optionEQvalue("Audit Columns", "yes") || 0 < s.indexOf("/AUDITCOLS")) { - let l = this.getOptionValue("createdcol"); - u.columns.push({ name: l, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); - let h = this.getOptionValue("createdbycol"); - u.columns.push({ name: h, datatype: "varchar2(255" + this.semantics() + ")" }); + const o = p[r].trimmedContent().toUpperCase(); + if ((this.optionEQvalue("rowkey", !0) || 0 < o.indexOf("/ROWKEY")) && u.columns.push({ name: "row_key", datatype: "varchar2(30 char)" }), (this.optionEQvalue("rowVersion", "yes") || 0 < o.indexOf("/ROWVERSION")) && u.columns.push({ name: "row_version", datatype: "integer" }), this.optionEQvalue("Audit Columns", "yes") || 0 < o.indexOf("/AUDITCOLS")) { + let c = this.getOptionValue("createdcol"); + u.columns.push({ name: c, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); + let m = this.getOptionValue("createdbycol"); + u.columns.push({ name: m, datatype: "varchar2(255" + this.semantics() + ")" }); let y = this.getOptionValue("updatedcol"); u.columns.push({ name: y, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); let P = this.getOptionValue("updatedbycol"); u.columns.push({ name: P, datatype: "varchar2(255" + this.semantics() + ")" }); } var S = this.additionalColumns(); - for (let l in S) { - var M = S[l]; - pad = tab + " ".repeat(this.maxChildNameLen() - l.length), ret += tab + l.toUpperCase() + pad + M + ` not null, + for (let c in S) { + var T = S[c]; + pad = tab + " ".repeat(this.maxChildNameLen() - c.length), ret += tab + c.toUpperCase() + pad + T + ` not null, `; } } @@ -8929,10 +8943,10 @@ const q = { let i = p[r].fks[u], t = this.find(i); if (t == null) continue; - let s = "id"; - t.getExplicitPkNode() != null && (s = t.getExplicitPkNode().parseName()), b.links.push({ + let o = "id"; + t.getExplicitPkNode() != null && (o = t.getExplicitPkNode().parseName()), b.links.push({ source: this.objPrefix() + i, - source_id: s, + source_id: o, target: this.objPrefix() + p[r].parseName(""), target_id: u }); @@ -9007,9 +9021,9 @@ const q = { `, p += `/* `; - let M = L; - M = M.replace(/#.+/g, ` -`), M = M.replace(/\/\*/g, "--<--"), M = M.replace(/\*\//g, "-->--"), M = M.replace(/\/* Non-default options:/g, ""), p += M, p += ` + let T = L; + T = T.replace(/#.+/g, ` +`), T = T.replace(/\/\*/g, "--<--"), T = T.replace(/\*\//g, "-->--"), T = T.replace(/\/* Non-default options:/g, ""), p += T, p += ` `; for (let r = 0; r < this.unknownOptions().length; r++) p += "*** Unknown setting: " + this.unknownOptions()[r] + ` @@ -9025,18 +9039,18 @@ const q = { } return E; }(); -function Me(m, d) { - const E = JSON.parse(m); - return Ce.introspect(d, E, 0); +function Me(d, h) { + const E = JSON.parse(d); + return Ce.introspect(h, E, 0); } -function Te(m, d) { - return new j(m, d).getERD(); +function Te(d, h) { + return new j(d, h).getERD(); } -function Ie(m, d) { - return new j(m, d).getDDL(); +function Ie(d, h) { + return new j(d, h).getDDL(); } -function Be(m, d) { - return new j(m, d).getErrors(); +function Be(d, h) { + return new j(d, h).getErrors(); } function te() { return "1.2.1"; diff --git a/dist/quick-sql.umd.cjs b/dist/quick-sql.umd.cjs index 019bb4b..5304204 100644 --- a/dist/quick-sql.umd.cjs +++ b/dist/quick-sql.umd.cjs @@ -1,93 +1,93 @@ -(function(V,W){typeof exports=="object"&&typeof module<"u"?W(exports):typeof define=="function"&&define.amd?define(["exports"],W):(V=typeof globalThis<"u"?globalThis:V||self,W(V.quickSQL={}))})(this,function(V){"use strict";function W(m){return m==null?m:m.toUpperCase().endsWith("IES")?m.substring(0,m.length-3)+"y":m.toUpperCase().endsWith("ES")||m.toUpperCase().endsWith("S")?m.substring(0,m.length-1):m}function Ce(m,d){let E='"';if(m==null)return null;let L=!1;const T="$#_ ";if(!m.startsWith(E)&&!L){const x=m;if(x.length>0&&"0"<=x[0]&&x[0]<="9")L=!0;else for(let p in x){const b=x[p];if(T.indexOf(b)<0&&(b<"0"||"9""u"&&(e[n]=a[n]);return e}function i(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var s=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?s=btoa:typeof Buffer=="function"&&(s=function(a){return new Buffer(a).toString("base64")})})(),r.prototype.bool=function(e){return e=u(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100o,"Chance: Max specified is out of range with fixed. Max should be, at most, "+o),e=u(e,{min:c,max:o}),a=this.integer({min:e.min*n,max:e.max*n});var g=(a/n).toFixed(e.fixed);return parseFloat(g)},r.prototype.integer=function(e){return e=u(e,{min:L,max:E}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},r.prototype.natural=function(e){if(e=u(e,{min:0,max:E}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),o=e.exclude.sort();for(var c in o){if(ne.max,"Chance: Min cannot be greater than Max.");var a=k.primes[k.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&k.primes.push(n);var o=k.primes.filter(function(c){return c>=e.min&&c<=e.max});return this.pick(o)},r.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},r.prototype.hex=function(e){e=u(e,{min:0,max:E,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},r.prototype.letter=function(e){e=u(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},r.prototype.string=function(e){e=u(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function h(e){this.c=e}h.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function y(e){this.c=e}y.prototype={replacers:{"#":function(e){return e.character({pool:T})},A:function(e){return e.character({pool:p})},a:function(e){return e.character({pool:x})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function P(e){for(var a=[],n="identity",o=0;o"u")throw new S("Sorry, the buffer() function is not supported on your platform");e=u(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},r.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},r.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},r.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var o=function(A,H){return A.indexOf(H)!==-1};n&&(o=n.comparator||o);for(var c=[],g=0,B,f=a*50,v=M.call(arguments,2);c.lengthf)throw new RangeError("Chance: num is likely too large for sample set")}return c},r.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,o=[],c=M.call(arguments,2);for(n=Math.max(0,n),null;n--;null)o.push(e.apply(this,c));return o},r.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},r.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},r.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},r.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),o=n.length;return this.n(function(){var c=this.natural({max:--o}),g=n[c];return n[c]=n[o],g},Math.min(o,a))},r.prototype.shuffle=function(e){for(var a=[],n=0,o=Number(e.length),c=i(o),g=o-1,B,f=0;f0&&(o+=c)}if(o===0)throw new RangeError("Chance: No valid entries in array weights");var B=this.random()*o,f=0,v=-1,C;for(g=0;g0){if(B<=f){C=g;break}v=g}g===a.length-1&&(C=v)}var A=e[C];return n=typeof n>"u"?!1:n,n&&(e.splice(C,1),a.splice(C,1)),A},r.prototype.paragraph=function(e){e=u(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),o=e.linebreak===!0?` -`:" ";return n.join(o)},r.prototype.sentence=function(e){e=u(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,o,c=this.n(this.word,a);return o=c.join(" "),o=this.capitalize(o),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(o+=n),o},r.prototype.syllable=function(e){e=u(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",o="aeiou",c=n+o,g="",B,f=0;fe.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var B=e.minAge!==void 0?e.minAge:0,f=e.maxAge!==void 0?e.maxAge:100,v=new Date(o-f-1,n.getMonth(),n.getDate()),C=new Date(o-B,n.getMonth(),n.getDate());v.setDate(v.getDate()+1),C.setDate(C.getDate()+1),C.setMilliseconds(C.getMilliseconds()-1),e=u(e,{min:v,max:C})}else e=u(e,{year:o-a});return this.date(e)},r.prototype.cpf=function(e){e=u(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var o=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;o=11-o%11,o>=10&&(o=0);var c=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+o;return e.formatted?c:c.replace(/\D/g,"")},r.prototype.cnpj=function(e){e=u(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var o=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;o=11-o%11,o<2&&(o=0);var c=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+o;return e.formatted?c:c.replace(/\D/g,"")},r.prototype.first=function(e){return e=u(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},r.prototype.profession=function(e){return e=u(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},r.prototype.company=function(){return this.pick(this.get("company"))},r.prototype.gender=function(e){return e=u(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},r.prototype.last=function(e){if(e=u(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(o){a=a.concat(n[o])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},r.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},r.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},r.prototype.tld=function(){return this.pick(this.tlds())},r.prototype.twitter=function(){return"@"+this.word()},r.prototype.url=function(e){e=u(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},r.prototype.port=function(){return this.integer({min:0,max:65535})},r.prototype.locale=function(e){return e=u(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},r.prototype.locales=function(e){return e=u(e),e.region?this.get("locale_regions"):this.get("locale_languages")},r.prototype.loremPicsum=function(e){e=u(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},r.prototype.address=function(e){return e=u(e),this.natural({min:5,max:2e3})+" "+this.street(e)},r.prototype.altitude=function(e){return e=u(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.areacode=function(e){e=u(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},r.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},r.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},r.prototype.countries=function(){return this.get("countries")},r.prototype.country=function(e){e=u(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},r.prototype.depth=function(e){return e=u(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.geohash=function(e){return e=u(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},r.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},r.prototype.latitude=function(e){var[a,n,o]=["ddm","dms","dd"];e=u(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:o});var c=e.format.toLowerCase();switch((c===a||c===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),c){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case o:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.longitude=function(e){var[a,n,o]=["ddm","dms","dd"];e=u(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:o});var c=e.format.toLowerCase();switch((c===a||c===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),c){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case o:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.phone=function(e){var a=this,n,o=function(H){var F=[];return H.sections.forEach(function(z){F.push(a.string({pool:"0123456789",length:z}))}),H.area+F.join(" ")};e=u(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var c;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),c=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),c=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),c=e.formatted?o(n):o(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),c=e.formatted?o(n):o(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),c=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),c=e.formatted||n);break;case"us":var g=this.areacode(e).toString(),B=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),f=this.natural({min:1e3,max:9999}).toString();c=e.formatted?g+" "+B+"-"+f:g+B+f;break;case"br":var v=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),C;e.mobile?C="9"+a.string({pool:"0123456789",length:4}):C=this.natural({min:2e3,max:5999}).toString();var A=a.string({pool:"0123456789",length:4});c=e.formatted?"("+v+") "+C+"-"+A:v+C+A;break}return c},r.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},r.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",o=e+a+n,c=this.natural({max:9}),g=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),B=c+g;return o+" "+B},r.prototype.counties=function(e){return e=u(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},r.prototype.county=function(e){return this.pick(this.counties(e)).name},r.prototype.provinces=function(e){return e=u(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},r.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},r.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},r.prototype.states=function(e){e=u(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),o=this.get("territories"),c=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(o)),e.armed_forces&&(a=a.concat(c));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},r.prototype.street=function(e){e=u(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},r.prototype.street_suffix=function(e){return e=u(e,{country:"us"}),this.pick(this.street_suffixes(e))},r.prototype.street_suffixes=function(e){return e=u(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},r.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},r.prototype.ampm=function(){return this.bool()?"am":"pm"},r.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=u(e,{american:!0,string:!1});var o=typeof e.min<"u"?e.min.getTime():1,c=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:o,max:c}))}else{var g=this.month({raw:!0}),B=g.days;e&&e.month&&(B=this.get("months")[(e.month%12+12)%12].days),e=u(e,{year:parseInt(this.year(),10),month:g.numeric-1,day:this.natural({min:1,max:B}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},r.prototype.hammertime=function(e){return this.date(e).getTime()},r.prototype.hour=function(e){return e=u(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.millisecond=function(){return this.natural({max:999})},r.prototype.minute=r.prototype.second=function(e){return e=u(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.month=function(e){e=u(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},r.prototype.months=function(){return this.get("months")},r.prototype.second=function(){return this.natural({max:59})},r.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},r.prototype.weekday=function(e){e=u(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},r.prototype.year=function(e){return e=u(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},r.prototype.cc=function(e){e=u(e);var a,n,o;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),o=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,o,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},r.prototype.cc_types=function(){return this.get("cc_types")},r.prototype.cc_type=function(e){e=u(e);var a=this.cc_types(),n=null;if(e.name){for(var o=0;o3&&(H?F=F.substr(0,3):F=F[0]+F.substr(2,2)),F.length<3&&(z=F,F=A.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+F),z},v=function(A,H,F){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return A.getFullYear().toString().substr(2)+z[A.getMonth()]+F.pad(A.getDate()+(H.toLowerCase()==="female"?40:0),2)},C=function(A){for(var H="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",F="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(F[H.indexOf(A[U])]):K+=j.indexOf(F[H.indexOf(A[U])]);return z[K%26]};return B=B.concat(f(o,!0),f(n),v(c,a,this),g.toUpperCase().split("")).join(""),B+=C(B.toUpperCase()),B.toUpperCase()},r.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;c--)o[c-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?o.reduce(function(g,B){return g+B}):o}else throw new RangeError("Chance: A type of die roll must be included")},r.prototype.guid=function(e){e=u(e,{version:5});var a="abcdef1234567890",n="ab89",o=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return o},r.prototype.hash=function(e){e=u(e,{length:40,casing:"lower"});var a=e.casing==="upper"?b.toUpperCase():b;return this.string({pool:a,length:e.length})},r.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},r.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,o,c=0,g=a.length;g>c;++c)o=+a[c],c%2===0&&(o*=2,o>9&&(o-=9)),n+=o;return n*9%10},r.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=u(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},r.prototype.file=function(e){var a=e||{},n="fileExtension",o=Object.keys(this.get("fileExtension")),c,g;if(c=this.word({length:a.length}),a.extension)return g=a.extension,c+"."+g;if(a.extensions){if(Array.isArray(a.extensions))return g=this.pickone(a.extensions),c+"."+g;if(a.extensions.constructor===Object){var B=a.extensions,f=Object.keys(B);return g=this.pickone(B[this.pickone(f)]),c+"."+g}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var v=a.fileType;if(o.indexOf(v)!==-1)return g=this.pickone(this.get(n)[v]),c+"."+g;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return g=this.pickone(this.get(n)[this.pickone(o)]),c+"."+g},r.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var o={fileData:this.buffer({length:a.fileSize}),fileName:n};return o};var k={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},D=Object.prototype.hasOwnProperty,w=Object.keys||function(e){var a=[];for(var n in e)D.call(e,n)&&a.push(n);return a};function N(e,a){for(var n=w(e),o,c=0,g=n.length;c0)return this.normal_pool(e);var a,n,o,c,g=e.mean,B=e.dev;do n=this.random()*2-1,o=this.random()*2-1,a=n*n+o*o;while(a>=1);return c=n*Math.sqrt(-2*Math.log(a)/a),B*c+g},r.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},r.prototype.radio=function(e){e=u(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},r.prototype.set=function(e,a){typeof e=="string"?k[e]=a:k=_(e,k)},r.prototype.tv=function(e){return this.radio(e)},r.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},r.prototype.emotion=function(){return this.pick(this.get("emotions"))},r.prototype.mersenne_twister=function(e){return new O(e)},r.prototype.blueimp_md5=function(){return new G};var O=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};O.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},O.prototype.init_by_array=function(e,a){var n=1,o=0,c,g;for(this.init_genrand(19650218),c=this.N>a?this.N:a;c;c--)g=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((g&4294901760)>>>16)*1664525<<16)+(g&65535)*1664525)+e[o]+o,this.mt[n]>>>=0,n++,o++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),o>=a&&(o=0);for(c=this.N-1;c;c--)g=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((g&4294901760)>>>16)*1566083941<<16)+(g&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},O.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},O.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},O.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},O.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},O.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},O.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var G=function(){};G.prototype.VERSION="1.0.1",G.prototype.safe_add=function(a,n){var o=(a&65535)+(n&65535),c=(a>>16)+(n>>16)+(o>>16);return c<<16|o&65535},G.prototype.bit_roll=function(e,a){return e<>>32-a},G.prototype.md5_cmn=function(e,a,n,o,c,g){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(o,g)),c),n)},G.prototype.md5_ff=function(e,a,n,o,c,g,B){return this.md5_cmn(a&n|~a&o,e,a,c,g,B)},G.prototype.md5_gg=function(e,a,n,o,c,g,B){return this.md5_cmn(a&o|n&~o,e,a,c,g,B)},G.prototype.md5_hh=function(e,a,n,o,c,g,B){return this.md5_cmn(a^n^o,e,a,c,g,B)},G.prototype.md5_ii=function(e,a,n,o,c,g,B){return this.md5_cmn(n^(a|~o),e,a,c,g,B)},G.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,o,c,g,B,f=1732584193,v=-271733879,C=-1732584194,A=271733878;for(n=0;n>5]>>>a%32&255);return n},G.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(o=this.binl_md5(o,e.length*8)),n=0;n<16;n+=1)c[n]=o[n]^909522486,g[n]=o[n]^1549556828;return B=this.binl_md5(c.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(g.concat(B),512+128))},G.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",o,c;for(c=0;c>>4&15)+a.charAt(o&15);return n},G.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},G.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},G.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},G.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},G.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},G.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},m.exports&&(d=m.exports=r),d.Chance=r,typeof importScripts<"u"&&(chance=new r,self.Chance=r),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=r,window.chance=new r)})()})(ne,ne.exports);var Ae=ne.exports;const ye=ve(Ae);var q=new ye,ce=function(){function m(d,E,L,T){let x=L.toUpperCase(),p=d.toUpperCase(),b=E.toUpperCase();if(T!=null&&0":u=="["?"]":u=="{"?"}":u=="("?")":u}}function d(T,x,p){for(var b=[],S=`(){}[]^-|!*+.><='",;:%@?/\\#~`+p,M=` -\r `,r=$(T,S+M),u=0,i=0,t=0,s=0;s0&&(h=b[b.length-1]),l==` -`?(i++,t=0):s>0&&r[s-1]!==` -`?t=t+r[s-1].length:t=0,u+=l.length,h!=null&&h.type=="comment"&&(h.value.lastIndexOf("*/")!=h.value.length-2||h.value=="/*/")){l=="*"||l=="/"?h.value=h.value+l:h.value="/* ... ",h.end=u,h!=null&&h.type=="comment"&&h.value.lastIndexOf("*/")==h.value.length-2&&h.value!="/*/"&&(h.value=T.substring(h.begin,h.end));continue}if(h!=null&&(h.type=="line-comment"||h.type=="dbtools-command")&&l!=` -`){h.value=h.value+l;continue}if(h!=null&&(h.type=="line-comment"||h.type=="dbtools-command")&&l==` -`&&(h.end=h.begin+h.value.length),h!=null&&h.type=="quoted-string"&&!(h.isStandardLiteral()||h.isAltLiteral())){h.value=h.value+l,h.end=h.begin+h.value.length;continue}if(!(h!=null&&h.type=="dquoted-string"&&l!='"'&&!(h.value.endsWith('"')&&h.value.length>1))){if(h!=null&&h.type=="dquoted-string"&&l=='"'){h.end=u,h.value=T.substring(h.begin,h.end);continue}if(!(h!=null&&h.type=="bquoted-string"&&l!="`"&&!(h.value.endsWith("`")&&h.value.length>1))){if(h!=null&&h.type=="bquoted-string"&&l=="`"){h.end=u,h.value=T.substring(h.begin,h.end);continue}if(l=="*"&&h!=null&&h.value=="/"){h.value=h.value+l,h.end=h.begin+h.value.length,h.type="comment";continue}if(l=="-"&&h!=null&&h.value=="-"){h.value=h.value+l,h.type="line-comment";continue}if((l.toUpperCase()=="REM"||l.toUpperCase()=="REMA"||l.toUpperCase()=="REMAR"||l.toUpperCase()=="REMARK"||l.toUpperCase()=="PRO"||l.toUpperCase()=="PROM"||l.toUpperCase()=="PROMP"||l.toUpperCase()=="PROMPT")&&(h==null||h.value==` -`||h.value=="\r")){b.push(new m(l,u-l.length,-9,"line-comment",i,t));continue}if(l.toUpperCase()=="SODA"&&(h==null||h.value==` -`||h.value=="\r")){b.push(new m(l,u-l.length,-9,"dbtools-command",i,t));continue}if(h!=null&&h.type=="identifier"&&h.end==-11&&h.value.indexOf("@")==0&&!(l==` -`||l=="\r")){h.value=h.value+l;continue}if(h!=null&&h.type=="identifier"&&h.end==-11&&h.value.indexOf("@")==0&&(l==` -`||l=="\r")){h.end=u-1,b.push(new m(l,u-1,u,"ws",i,t));continue}if(x&&l=="'"){h!=null&&(h.value.toUpperCase()=="Q"||h.value.toUpperCase()=="N"||h.value.toUpperCase()=="U"||h.value.toUpperCase()=="NQ")?(h.value+=l,h.type="quoted-string"):b.push(new m(l,u-1,-10,"quoted-string",i,t));continue}if(x&&l=='"'){b.push(new m(l,u-1,-11,"dquoted-string",i,t));continue}if(l=="`"&&0<=S.indexOf("`")){b.push(new m(l,u-1,-11,"bquoted-string",i,t));continue}if(l.length==1&&0<=S.indexOf(l)){b.push(new m(l,u-1,u,"operation",i,t));continue}if(l.length==1&&0<=M.indexOf(l)){b.push(new m(l,u-1,u,"ws",i,t));continue}if("0"<=l.charAt(0)&&l.charAt(0)<="9"){E(l,b,u-l.length,i)||(l.charAt(l.length-1)=="K"||l.charAt(l.length-1)=="k"||l.charAt(l.length-1)=="M"||l.charAt(l.length-1)=="m"||l.charAt(l.length-1)=="G"||l.charAt(l.length-1)=="g"||l.charAt(l.length-1)=="T"||l.charAt(l.length-1)=="t"||l.charAt(l.length-1)=="P"||l.charAt(l.length-1)=="p"||l.charAt(l.length-1)=="E"||l.charAt(l.length-1)=="e"?(b.push(new m(l.substring(0,l.length-1),u-l.length,u-1,"constant.numeric",i,t)),b.push(new m(l.substring(l.length-1),u-1,u,"constant.numeric",i,t))):b.push(new m(l,u-l.length,u,"constant.numeric",i,t)));continue}var y="identifier";s+10){var h=b[b.length-1];h.end=T.length}return b}function E(T,x,p,b){if(0>T.indexOf("e")&&0>T.indexOf("f")&&0>T.indexOf("d"))return!1;0<=T.indexOf("e"),0<=T.indexOf("e"),!(0<=T.indexOf("e"))&&0<=T.indexOf("f");for(var S=$(T,"efd"),M=0;M")==0||i.indexOf("<")==0)&&(i=i.substring(1).trim());const l=i.toLowerCase();if(l.indexOf("view ")==0){var h=i.split(" ");return h[1]}i=p(i," d");var y=i.indexOf("/");0="0"&&P<="9"&&(i="x"+i),Se(le(i))},this.parseType=function(i){if(this.children!=null&&0!0)),N}return y}0");return t==0},this.getExplicitPkNode=function(){for(var i=0;ii.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(m.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),m.optionEQvalue("prefixPKwithTname","yes")&&(t=W(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let i=this.getGenIdColName();if(i==null){let t=this.getExplicitPkNode();return t==null?null:t.parseName()}return i},this.toDDL=function(){if(this.parseType()=="view"||this.parseType()=="dv")return"";if(this.children.length==0&&00&&"0"<=k[0]&&k[0]<="9")L=!0;else for(let p in k){const b=k[p];if(I.indexOf(b)<0&&(b<"0"||"9""u"&&(e[n]=a[n]);return e}function i(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var o=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?o=btoa:typeof Buffer=="function"&&(o=function(a){return new Buffer(a).toString("base64")})})(),r.prototype.bool=function(e){return e=u(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100l,"Chance: Max specified is out of range with fixed. Max should be, at most, "+l),e=u(e,{min:s,max:l}),a=this.integer({min:e.min*n,max:e.max*n});var g=(a/n).toFixed(e.fixed);return parseFloat(g)},r.prototype.integer=function(e){return e=u(e,{min:L,max:E}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},r.prototype.natural=function(e){if(e=u(e,{min:0,max:E}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),l=e.exclude.sort();for(var s in l){if(ne.max,"Chance: Min cannot be greater than Max.");var a=x.primes[x.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&x.primes.push(n);var l=x.primes.filter(function(s){return s>=e.min&&s<=e.max});return this.pick(l)},r.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},r.prototype.hex=function(e){e=u(e,{min:0,max:E,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},r.prototype.letter=function(e){e=u(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},r.prototype.string=function(e){e=u(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function c(e){this.c=e}c.prototype={substitute:function(){return this.c}};function m(e){this.c=e}m.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function y(e){this.c=e}y.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:p})},a:function(e){return e.character({pool:k})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function P(e){for(var a=[],n="identity",l=0;l"u")throw new S("Sorry, the buffer() function is not supported on your platform");e=u(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},r.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},r.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},r.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var l=function(A,H){return A.indexOf(H)!==-1};n&&(l=n.comparator||l);for(var s=[],g=0,B,f=a*50,v=T.call(arguments,2);s.lengthf)throw new RangeError("Chance: num is likely too large for sample set")}return s},r.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,l=[],s=T.call(arguments,2);for(n=Math.max(0,n),null;n--;null)l.push(e.apply(this,s));return l},r.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},r.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},r.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},r.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),l=n.length;return this.n(function(){var s=this.natural({max:--l}),g=n[s];return n[s]=n[l],g},Math.min(l,a))},r.prototype.shuffle=function(e){for(var a=[],n=0,l=Number(e.length),s=i(l),g=l-1,B,f=0;f0&&(l+=s)}if(l===0)throw new RangeError("Chance: No valid entries in array weights");var B=this.random()*l,f=0,v=-1,C;for(g=0;g0){if(B<=f){C=g;break}v=g}g===a.length-1&&(C=v)}var A=e[C];return n=typeof n>"u"?!1:n,n&&(e.splice(C,1),a.splice(C,1)),A},r.prototype.paragraph=function(e){e=u(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),l=e.linebreak===!0?` +`:" ";return n.join(l)},r.prototype.sentence=function(e){e=u(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,l,s=this.n(this.word,a);return l=s.join(" "),l=this.capitalize(l),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(l+=n),l},r.prototype.syllable=function(e){e=u(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",l="aeiou",s=n+l,g="",B,f=0;fe.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var B=e.minAge!==void 0?e.minAge:0,f=e.maxAge!==void 0?e.maxAge:100,v=new Date(l-f-1,n.getMonth(),n.getDate()),C=new Date(l-B,n.getMonth(),n.getDate());v.setDate(v.getDate()+1),C.setDate(C.getDate()+1),C.setMilliseconds(C.getMilliseconds()-1),e=u(e,{min:v,max:C})}else e=u(e,{year:l-a});return this.date(e)},r.prototype.cpf=function(e){e=u(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var l=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;l=11-l%11,l>=10&&(l=0);var s=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+l;return e.formatted?s:s.replace(/\D/g,"")},r.prototype.cnpj=function(e){e=u(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var l=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;l=11-l%11,l<2&&(l=0);var s=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+l;return e.formatted?s:s.replace(/\D/g,"")},r.prototype.first=function(e){return e=u(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},r.prototype.profession=function(e){return e=u(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},r.prototype.company=function(){return this.pick(this.get("company"))},r.prototype.gender=function(e){return e=u(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},r.prototype.last=function(e){if(e=u(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(l){a=a.concat(n[l])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},r.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},r.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},r.prototype.tld=function(){return this.pick(this.tlds())},r.prototype.twitter=function(){return"@"+this.word()},r.prototype.url=function(e){e=u(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},r.prototype.port=function(){return this.integer({min:0,max:65535})},r.prototype.locale=function(e){return e=u(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},r.prototype.locales=function(e){return e=u(e),e.region?this.get("locale_regions"):this.get("locale_languages")},r.prototype.loremPicsum=function(e){e=u(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},r.prototype.address=function(e){return e=u(e),this.natural({min:5,max:2e3})+" "+this.street(e)},r.prototype.altitude=function(e){return e=u(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.areacode=function(e){e=u(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},r.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},r.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},r.prototype.countries=function(){return this.get("countries")},r.prototype.country=function(e){e=u(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},r.prototype.depth=function(e){return e=u(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.geohash=function(e){return e=u(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},r.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},r.prototype.latitude=function(e){var[a,n,l]=["ddm","dms","dd"];e=u(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:l});var s=e.format.toLowerCase();switch((s===a||s===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),s){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case l:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.longitude=function(e){var[a,n,l]=["ddm","dms","dd"];e=u(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:l});var s=e.format.toLowerCase();switch((s===a||s===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),s){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case l:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.phone=function(e){var a=this,n,l=function(H){var _=[];return H.sections.forEach(function(z){_.push(a.string({pool:"0123456789",length:z}))}),H.area+_.join(" ")};e=u(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var s;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),s=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),s=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),s=e.formatted?l(n):l(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),s=e.formatted?l(n):l(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),s=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),s=e.formatted||n);break;case"us":var g=this.areacode(e).toString(),B=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),f=this.natural({min:1e3,max:9999}).toString();s=e.formatted?g+" "+B+"-"+f:g+B+f;break;case"br":var v=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),C;e.mobile?C="9"+a.string({pool:"0123456789",length:4}):C=this.natural({min:2e3,max:5999}).toString();var A=a.string({pool:"0123456789",length:4});s=e.formatted?"("+v+") "+C+"-"+A:v+C+A;break}return s},r.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},r.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",l=e+a+n,s=this.natural({max:9}),g=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),B=s+g;return l+" "+B},r.prototype.counties=function(e){return e=u(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},r.prototype.county=function(e){return this.pick(this.counties(e)).name},r.prototype.provinces=function(e){return e=u(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},r.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},r.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},r.prototype.states=function(e){e=u(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),l=this.get("territories"),s=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(l)),e.armed_forces&&(a=a.concat(s));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},r.prototype.street=function(e){e=u(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},r.prototype.street_suffix=function(e){return e=u(e,{country:"us"}),this.pick(this.street_suffixes(e))},r.prototype.street_suffixes=function(e){return e=u(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},r.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},r.prototype.ampm=function(){return this.bool()?"am":"pm"},r.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=u(e,{american:!0,string:!1});var l=typeof e.min<"u"?e.min.getTime():1,s=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:l,max:s}))}else{var g=this.month({raw:!0}),B=g.days;e&&e.month&&(B=this.get("months")[(e.month%12+12)%12].days),e=u(e,{year:parseInt(this.year(),10),month:g.numeric-1,day:this.natural({min:1,max:B}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},r.prototype.hammertime=function(e){return this.date(e).getTime()},r.prototype.hour=function(e){return e=u(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.millisecond=function(){return this.natural({max:999})},r.prototype.minute=r.prototype.second=function(e){return e=u(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.month=function(e){e=u(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},r.prototype.months=function(){return this.get("months")},r.prototype.second=function(){return this.natural({max:59})},r.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},r.prototype.weekday=function(e){e=u(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},r.prototype.year=function(e){return e=u(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},r.prototype.cc=function(e){e=u(e);var a,n,l;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),l=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,l,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},r.prototype.cc_types=function(){return this.get("cc_types")},r.prototype.cc_type=function(e){e=u(e);var a=this.cc_types(),n=null;if(e.name){for(var l=0;l3&&(H?_=_.substr(0,3):_=_[0]+_.substr(2,2)),_.length<3&&(z=_,_=A.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+_),z},v=function(A,H,_){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return A.getFullYear().toString().substr(2)+z[A.getMonth()]+_.pad(A.getDate()+(H.toLowerCase()==="female"?40:0),2)},C=function(A){for(var H="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",_="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(_[H.indexOf(A[U])]):K+=j.indexOf(_[H.indexOf(A[U])]);return z[K%26]};return B=B.concat(f(l,!0),f(n),v(s,a,this),g.toUpperCase().split("")).join(""),B+=C(B.toUpperCase()),B.toUpperCase()},r.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;s--)l[s-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?l.reduce(function(g,B){return g+B}):l}else throw new RangeError("Chance: A type of die roll must be included")},r.prototype.guid=function(e){e=u(e,{version:5});var a="abcdef1234567890",n="ab89",l=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return l},r.prototype.hash=function(e){e=u(e,{length:40,casing:"lower"});var a=e.casing==="upper"?b.toUpperCase():b;return this.string({pool:a,length:e.length})},r.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},r.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,l,s=0,g=a.length;g>s;++s)l=+a[s],s%2===0&&(l*=2,l>9&&(l-=9)),n+=l;return n*9%10},r.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=u(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},r.prototype.file=function(e){var a=e||{},n="fileExtension",l=Object.keys(this.get("fileExtension")),s,g;if(s=this.word({length:a.length}),a.extension)return g=a.extension,s+"."+g;if(a.extensions){if(Array.isArray(a.extensions))return g=this.pickone(a.extensions),s+"."+g;if(a.extensions.constructor===Object){var B=a.extensions,f=Object.keys(B);return g=this.pickone(B[this.pickone(f)]),s+"."+g}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var v=a.fileType;if(l.indexOf(v)!==-1)return g=this.pickone(this.get(n)[v]),s+"."+g;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return g=this.pickone(this.get(n)[this.pickone(l)]),s+"."+g},r.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var l={fileData:this.buffer({length:a.fileSize}),fileName:n};return l};var x={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},D=Object.prototype.hasOwnProperty,N=Object.keys||function(e){var a=[];for(var n in e)D.call(e,n)&&a.push(n);return a};function R(e,a){for(var n=N(e),l,s=0,g=n.length;s0)return this.normal_pool(e);var a,n,l,s,g=e.mean,B=e.dev;do n=this.random()*2-1,l=this.random()*2-1,a=n*n+l*l;while(a>=1);return s=n*Math.sqrt(-2*Math.log(a)/a),B*s+g},r.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},r.prototype.radio=function(e){e=u(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},r.prototype.set=function(e,a){typeof e=="string"?x[e]=a:x=F(e,x)},r.prototype.tv=function(e){return this.radio(e)},r.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},r.prototype.emotion=function(){return this.pick(this.get("emotions"))},r.prototype.mersenne_twister=function(e){return new O(e)},r.prototype.blueimp_md5=function(){return new w};var O=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};O.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},O.prototype.init_by_array=function(e,a){var n=1,l=0,s,g;for(this.init_genrand(19650218),s=this.N>a?this.N:a;s;s--)g=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((g&4294901760)>>>16)*1664525<<16)+(g&65535)*1664525)+e[l]+l,this.mt[n]>>>=0,n++,l++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),l>=a&&(l=0);for(s=this.N-1;s;s--)g=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((g&4294901760)>>>16)*1566083941<<16)+(g&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},O.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},O.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},O.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},O.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},O.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},O.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var w=function(){};w.prototype.VERSION="1.0.1",w.prototype.safe_add=function(a,n){var l=(a&65535)+(n&65535),s=(a>>16)+(n>>16)+(l>>16);return s<<16|l&65535},w.prototype.bit_roll=function(e,a){return e<>>32-a},w.prototype.md5_cmn=function(e,a,n,l,s,g){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(l,g)),s),n)},w.prototype.md5_ff=function(e,a,n,l,s,g,B){return this.md5_cmn(a&n|~a&l,e,a,s,g,B)},w.prototype.md5_gg=function(e,a,n,l,s,g,B){return this.md5_cmn(a&l|n&~l,e,a,s,g,B)},w.prototype.md5_hh=function(e,a,n,l,s,g,B){return this.md5_cmn(a^n^l,e,a,s,g,B)},w.prototype.md5_ii=function(e,a,n,l,s,g,B){return this.md5_cmn(n^(a|~l),e,a,s,g,B)},w.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,l,s,g,B,f=1732584193,v=-271733879,C=-1732584194,A=271733878;for(n=0;n>5]>>>a%32&255);return n},w.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(l=this.binl_md5(l,e.length*8)),n=0;n<16;n+=1)s[n]=l[n]^909522486,g[n]=l[n]^1549556828;return B=this.binl_md5(s.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(g.concat(B),512+128))},w.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",l,s;for(s=0;s>>4&15)+a.charAt(l&15);return n},w.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},w.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},w.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},w.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},w.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},w.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},d.exports&&(h=d.exports=r),h.Chance=r,typeof importScripts<"u"&&(chance=new r,self.Chance=r),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=r,window.chance=new r)})()})(ne,ne.exports);var Ae=ne.exports;const ye=ve(Ae);var q=new ye,ce=function(){function d(h,E,L,I){let k=L.toUpperCase(),p=h.toUpperCase(),b=E.toUpperCase();if(I!=null&&0":u=="["?"]":u=="{"?"}":u=="("?")":u}}function h(I,k,p){for(var b=[],S=`(){}[]^-|!*+.><='",;:%@?/\\#~`+p,T=` +\r `,r=$(I,S+T),u=0,i=0,t=0,o=0;o0&&(m=b[b.length-1]),c==` +`?(i++,t=0):o>0&&r[o-1]!==` +`?t=t+r[o-1].length:t=0,u+=c.length,m!=null&&m.type=="comment"&&(m.value.lastIndexOf("*/")!=m.value.length-2||m.value=="/*/")){c=="*"||c=="/"?m.value=m.value+c:m.value="/* ... ",m.end=u,m!=null&&m.type=="comment"&&m.value.lastIndexOf("*/")==m.value.length-2&&m.value!="/*/"&&(m.value=I.substring(m.begin,m.end));continue}if(m!=null&&(m.type=="line-comment"||m.type=="dbtools-command")&&c!=` +`){m.value=m.value+c;continue}if(m!=null&&(m.type=="line-comment"||m.type=="dbtools-command")&&c==` +`&&(m.end=m.begin+m.value.length),m!=null&&m.type=="quoted-string"&&!(m.isStandardLiteral()||m.isAltLiteral())){m.value=m.value+c,m.end=m.begin+m.value.length;continue}if(!(m!=null&&m.type=="dquoted-string"&&c!='"'&&!(m.value.endsWith('"')&&m.value.length>1))){if(m!=null&&m.type=="dquoted-string"&&c=='"'){m.end=u,m.value=I.substring(m.begin,m.end);continue}if(!(m!=null&&m.type=="bquoted-string"&&c!="`"&&!(m.value.endsWith("`")&&m.value.length>1))){if(m!=null&&m.type=="bquoted-string"&&c=="`"){m.end=u,m.value=I.substring(m.begin,m.end);continue}if(c=="*"&&m!=null&&m.value=="/"){m.value=m.value+c,m.end=m.begin+m.value.length,m.type="comment";continue}if(c=="-"&&m!=null&&m.value=="-"){m.value=m.value+c,m.type="line-comment";continue}if((c.toUpperCase()=="REM"||c.toUpperCase()=="REMA"||c.toUpperCase()=="REMAR"||c.toUpperCase()=="REMARK"||c.toUpperCase()=="PRO"||c.toUpperCase()=="PROM"||c.toUpperCase()=="PROMP"||c.toUpperCase()=="PROMPT")&&(m==null||m.value==` +`||m.value=="\r")){b.push(new d(c,u-c.length,-9,"line-comment",i,t));continue}if(c.toUpperCase()=="SODA"&&(m==null||m.value==` +`||m.value=="\r")){b.push(new d(c,u-c.length,-9,"dbtools-command",i,t));continue}if(m!=null&&m.type=="identifier"&&m.end==-11&&m.value.indexOf("@")==0&&!(c==` +`||c=="\r")){m.value=m.value+c;continue}if(m!=null&&m.type=="identifier"&&m.end==-11&&m.value.indexOf("@")==0&&(c==` +`||c=="\r")){m.end=u-1,b.push(new d(c,u-1,u,"ws",i,t));continue}if(k&&c=="'"){m!=null&&(m.value.toUpperCase()=="Q"||m.value.toUpperCase()=="N"||m.value.toUpperCase()=="U"||m.value.toUpperCase()=="NQ")?(m.value+=c,m.type="quoted-string"):b.push(new d(c,u-1,-10,"quoted-string",i,t));continue}if(k&&c=='"'){b.push(new d(c,u-1,-11,"dquoted-string",i,t));continue}if(c=="`"&&0<=S.indexOf("`")){b.push(new d(c,u-1,-11,"bquoted-string",i,t));continue}if(c.length==1&&0<=S.indexOf(c)){b.push(new d(c,u-1,u,"operation",i,t));continue}if(c.length==1&&0<=T.indexOf(c)){b.push(new d(c,u-1,u,"ws",i,t));continue}if("0"<=c.charAt(0)&&c.charAt(0)<="9"){E(c,b,u-c.length,i)||(c.charAt(c.length-1)=="K"||c.charAt(c.length-1)=="k"||c.charAt(c.length-1)=="M"||c.charAt(c.length-1)=="m"||c.charAt(c.length-1)=="G"||c.charAt(c.length-1)=="g"||c.charAt(c.length-1)=="T"||c.charAt(c.length-1)=="t"||c.charAt(c.length-1)=="P"||c.charAt(c.length-1)=="p"||c.charAt(c.length-1)=="E"||c.charAt(c.length-1)=="e"?(b.push(new d(c.substring(0,c.length-1),u-c.length,u-1,"constant.numeric",i,t)),b.push(new d(c.substring(c.length-1),u-1,u,"constant.numeric",i,t))):b.push(new d(c,u-c.length,u,"constant.numeric",i,t)));continue}var y="identifier";o+10){var m=b[b.length-1];m.end=I.length}return b}function E(I,k,p,b){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var S=$(I,"efd"),T=0;T")==0||i.indexOf("<")==0)&&(i=i.substring(1).trim());const c=i.toLowerCase();if(c.indexOf("view ")==0){var m=i.split(" ");return m[1]}i=p(i," d");var y=i.indexOf("/");0="0"&&P<="9"&&(i="x"+i),Se(le(i))},this.parseType=function(i){if(this.children!=null&&0!0)),R}return y}0");return t==0},this.getExplicitPkNode=function(){for(var i=0;ii.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(d.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),d.optionEQvalue("prefixPKwithTname","yes")&&(t=W(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let i=this.getGenIdColName();if(i==null){let t=this.getExplicitPkNode();return t==null?null:t.parseName()}return i},this.singleDDL=function(){if(this.children.length==0&&0!0):g==null&&(g=m.find(n),g.isMany2One()&!n.endsWith("_id")&&(o=n,n=W(n),B="_id")),y=d+" ".repeat(this.maxChildNameLen()-n.length),l+=d+n+B+y+c+` -`,l+=d+d+" ".repeat(this.maxChildNameLen())+"constraint "+h+"_"+n+`_fk -`;let f="";0<=i.indexOf("/CASCADE")&&(f=" on delete cascade");let v="";for(let C in this.children){let A=this.children[C];if(n==A.parseName()){let H=A.trimmedContent().toUpperCase();(0<=H.indexOf("/NN")||0<=H.indexOf("/NOTNULL"))&&(v=" NOT NULL".toLowerCase()),0<=H.indexOf("/CASCADE")&&(f=" on delete cascade");break}}l+=d+d+" ".repeat(this.maxChildNameLen())+"references "+m.objPrefix()+o+f+v+`, -`}if(m.optionEQvalue("rowkey",!0)||0!0):s==null&&(s=d.find(a),s.isMany2One()&!a.endsWith("_id")&&(n=a,a=W(a),g="_id")),m=h+" ".repeat(this.maxChildNameLen()-a.length),o+=h+a+g+m+l+` +`,o+=h+h+" ".repeat(this.maxChildNameLen())+"constraint "+c+"_"+a+`_fk +`;let B="";0<=i.indexOf("/CASCADE")&&(B=" on delete cascade");let f="";for(let v in this.children){let C=this.children[v];if(a==C.parseName()){let A=C.trimmedContent().toUpperCase();(0<=A.indexOf("/NN")||0<=A.indexOf("/NOTNULL"))&&(f=" NOT NULL".toLowerCase()),0<=A.indexOf("/CASCADE")&&(B=" on delete cascade");break}}o+=h+h+" ".repeat(this.maxChildNameLen())+"references "+d.objPrefix()+n+B+f+`, +`}if(d.optionEQvalue("rowkey",!0)||0TRUE, p_object=>'"+h+`'); +`,d.optionEQvalue("api","yes")&&(t+="drop package "+i+`_api; +`),d.optionEQvalue("pk","SEQ")&&(t+="drop sequence "+i+`_seq; +`)),t.toLowerCase()},this.generateView=function(){if(this.parseType()!="view"&&this.parseType()!="dv")return"";if(d.optionEQvalue("Duality View","yes")||this.parseType()=="dv")try{return this.generateDualityView()}catch(s){if(s.message==this.one2many2oneUnsupoported)return"";throw s}let i=d.objPrefix()+this.parseName();var o=this.trimmedContent().split(" "),c="create or replace view "+i+` as +`;c+=`select +`;for(var m=0,y=2;yTRUE, p_object=>'"+m+`'); end; / -`},this.generateTrigger=function(){if(this.parseType()!="table")return"";let i="";m.optionEQvalue("editionable","yes")&&(i=" editionable");let t=m.objPrefix()+this.parseName();var s="create or replace"+i+" trigger "+t.toLowerCase()+`_BIU -`.toLowerCase();s+=` before insert or update -`,s+=" on "+t.toLowerCase()+` -`,s+=` for each row -`;let l=this.trimmedContent().toUpperCase();(m.optionEQvalue("Rowkey","yes")||0!0)),l+=`, -`,l+=d+d+"P_"+h+" "+s+" "+I+t}for(let P=0;P!0),(i=="insert"||i=="update")&&(s+=`, -`);let w=d+d+d+"P_"+I+" := c1."+I+`; -`;i=="insert"&&(w=d+d+d+I),i=="update"&&(w=d+d+d+I+" = P_"+I+` -`),s+=w}for(var h=0;h!0)),c+=`, +`,c+=h+h+"P_"+m+" "+o+" "+M+t}for(let P=0;P!0),(i=="insert"||i=="update")&&(o+=`, +`);let N=h+h+h+"P_"+M+" := c1."+M+`; +`;i=="insert"&&(N=h+h+h+M),i=="update"&&(N=h+h+h+M+" = P_"+M+` +`),o+=N}for(var m=0;ms.children.length>0&&s.parseName()==t&&!s.isArray())},this.generateSelectJsonBottomUp=function(i){throw new Error("generateSelectJsonBottomUp() not implemented yet")},this.one2many2oneUnsupoported="one to many to one is not supported",this.generateSelectJsonTopDown=function(i){var t=this.parseName();let s="";this.getExplicitPkNode==null&&(s+=i+"'"+this.getGenIdColName()+"' : "+t+"."+this.getGenIdColName()+`, -`);for(var l=0;lo.children.length>0&&o.parseName()==t&&!o.isArray())},this.generateSelectJsonBottomUp=function(i){throw new Error("generateSelectJsonBottomUp() not implemented yet")},this.one2many2oneUnsupoported="one to many to one is not supported",this.generateSelectJsonTopDown=function(i){var t=this.parseName();let o="";this.getExplicitPkNode==null&&(o+=i+"'"+this.getGenIdColName()+"' : "+t+"."+this.getGenIdColName()+`, +`);for(var c=0;c");let b=` -`+d(T)+p+E;if(typeof L=="number"&&(b+=" num",E.endsWith("_id")||E.endsWith("Id")))return b+=" /pk",b;if(typeof L=="object"){if(Array.isArray(L))for(let M in L){1<=M&&console.log("1 <= property !");const r=L[M];return this.introspect(E,r,T,!1)}else if(E!=""){let M=this.aggrSizes[E];b+=" /insert "+M}let S="";for(let M in L){const r=L[M];if(M!=null){const t=W(E),s=M.toLowerCase();if(E!=null&&t+"_id"==s&&0");let b=` +`+h(I)+p+E;if(typeof L=="number"&&(b+=" num",E.endsWith("_id")||E.endsWith("Id")))return b+=" /pk",b;if(typeof L=="object"){if(Array.isArray(L))for(let T in L){1<=T&&console.log("1 <= property !");const r=L[T];return this.introspect(E,r,I,!1)}else if(E!=""){let T=this.aggrSizes[E];b+=" /insert "+T}let S="";for(let T in L){const r=L[T];if(T!=null){const t=W(E),o=T.toLowerCase();if(E!=null&&t+"_id"==o&&0!0)}),0!0)}),0--"),M=M.replace(/\/* Non-default options:/g,""),p+=M,p+=` +`;let T=L;T=T.replace(/#.+/g,` +`),T=T.replace(/\/\*/g,"--<--"),T=T.replace(/\*\//g,"-->--"),T=T.replace(/\/* Non-default options:/g,""),p+=T,p+=` `;for(let r=0;r' - + this.location() - + nbrsp - + '' - + this.content.trim() - ; - for( let i = 0; i < this.children.length; i++ ) { - let child = this.children[i]; - child.render(table, depth+1); - } - };*/ - } function recognize( parsed ) { diff --git a/test/DV/car_racing/2.sql b/test/DV/car_racing/2.sql index a3324b5..83ef36e 100644 --- a/test/DV/car_racing/2.sql +++ b/test/DV/car_racing/2.sql @@ -4,6 +4,19 @@ drop table race cascade constraints; drop table raceinfo cascade constraints; -- create tables +create table raceInfo ( + raceId number generated by default on null as identity + constraint raceInfo_raceId_pk primary key, + name varchar2(255 char) +); + +create table teamInfo ( + teamId number generated by default on null as identity + constraint teamInfo_teamId_pk primary key, + name varchar2(255 char) +); + + create table driver ( driverId number generated by default on null as identity constraint driver_driverId_pk primary key, @@ -18,11 +31,6 @@ create table driver ( create index driver_i1 on driver (teamInfo_id); -create table teamInfo ( - teamId number generated by default on null as identity - constraint teamInfo_teamId_pk primary key, - name varchar2(255 char) -); create table race ( @@ -44,11 +52,6 @@ create index race_i2 on race (driver_id); -create table raceInfo ( - raceId number generated by default on null as identity - constraint raceInfo_raceId_pk primary key, - name varchar2(255 char) -); @@ -85,6 +88,34 @@ select JSON { -- load data +insert into raceInfo ( + raceId, + name +) values ( + 201, + 'Bahrain Grand Prix' +); + +insert into raceInfo ( + raceId, + name +) values ( + 202, + 'Saudi Arabian Grand Prix' +); + +commit; + +insert into teamInfo ( + teamId, + name +) values ( + 301, + 'Red Bull' +); + +commit; + insert into driver ( driverId, teamInfo_id, @@ -97,15 +128,7 @@ insert into driver ( 258 ); -commit; -insert into teamInfo ( - teamId, - name -) values ( - 301, - 'Red Bull' -); commit; @@ -135,22 +158,6 @@ insert into race ( commit; -insert into raceInfo ( - raceId, - name -) values ( - 201, - 'Bahrain Grand Prix' -); - -insert into raceInfo ( - raceId, - name -) values ( - 202, - 'Saudi Arabian Grand Prix' -); -commit; diff --git a/test/experimental/donuts.qsql b/test/experimental/donuts.qsql index 1684446..9c3b60d 100644 --- a/test/experimental/donuts.qsql +++ b/test/experimental/donuts.qsql @@ -16,7 +16,7 @@ dv donuts_dv donuts #settings = { genpk: false, drop: true } --- Generated by json2qsql.js development 1/3/2024, 2:15:58 PM +-- Generated by json2qsql.js development 1/3/2024, 2:33:44 PM #document = { diff --git a/test/experimental/events.json b/test/experimental/events.json deleted file mode 100644 index 2a8a3a9..0000000 --- a/test/experimental/events.json +++ /dev/null @@ -1,131 +0,0 @@ -[ - { - "id": "2489651045", - "type": "CreateEvent", - "actor": { - "id": 665991, - "login": "petroav", - "gravatar_id": "", - "url": "https://api.github.com/users/petroav", - "avatar_url": "https://avatars.githubusercontent.com/u/665991?" - }, - "repo": { - "id": 28688495, - "name": "petroav/6.828", - "url": "https://api.github.com/repos/petroav/6.828" - }, - "payload": { - "ref": "master", - "ref_type": "branch", - "master_branch": "master", - "description": "Solution to homework and assignments from MIT's 6.828 (Operating Systems Engineering). Done in my spare time.", - "pusher_type": "user" - }, - "public": true, - "created_at": "2015-01-01T15:00:00Z" - }, - { - "id": "2489651051", - "type": "PushEvent", - "actor": { - "id": 3854017, - "login": "rspt", - "gravatar_id": "", - "url": "https://api.github.com/users/rspt", - "avatar_url": "https://avatars.githubusercontent.com/u/3854017?" - }, - "repo": { - "id": 28671719, - "name": "rspt/rspt-theme", - "url": "https://api.github.com/repos/rspt/rspt-theme" - }, - "payload": { - "push_id": 536863970, - "size": 1, - "distinct_size": 1, - "ref": "refs/heads/master", - "head": "6b089eb4a43f728f0a594388092f480f2ecacfcd", - "before": "437c03652caa0bc4a7554b18d5c0a394c2f3d326", - "commits": [ - { - "sha": "6b089eb4a43f728f0a594388092f480f2ecacfcd", - "author": { - "email": "5c682c2d1ec4073e277f9ba9f4bdf07e5794dabe@rspt.ch", - "name": "rspt" - }, - "message": "Fix main header height on mobile", - "distinct": true, - "url": "https://api.github.com/repos/rspt/rspt-theme/commits/6b089eb4a43f728f0a594388092f480f2ecacfcd" - } - ] - }, - "public": true, - "created_at": "2015-01-01T15:00:01Z" - }, - { - "id": "2489651053", - "type": "PushEvent", - "actor": { - "id": 6339799, - "login": "izuzero", - "gravatar_id": "", - "url": "https://api.github.com/users/izuzero", - "avatar_url": "https://avatars.githubusercontent.com/u/6339799?" - }, - "repo": { - "id": 28270952, - "name": "izuzero/xe-module-ajaxboard", - "url": "https://api.github.com/repos/izuzero/xe-module-ajaxboard" - }, - "payload": { - "push_id": 536863972, - "size": 1, - "distinct_size": 1, - "ref": "refs/heads/develop", - "head": "ec819b9df4fe612bb35bf562f96810bf991f9975", - "before": "590433109f221a96cf19ea7a7d9a43ca333e3b3e", - "commits": [ - { - "sha": "ec819b9df4fe612bb35bf562f96810bf991f9975", - "author": { - "email": "df05f55543db3c62cf64f7438018ec37f3605d3c@gmail.com", - "name": "Eunsoo Lee" - }, - "message": "#20 게시글 및 댓글 삭제 시 새로고침이 되는 문제 해결\n\n원래 의도는 새로고침이 되지 않고 확인창만으로 해결되어야 함.\n기본 게시판 대응 플러그인에서 발생한 이슈.", - "distinct": true, - "url": "https://api.github.com/repos/izuzero/xe-module-ajaxboard/commits/ec819b9df4fe612bb35bf562f96810bf991f9975" - } - ] - }, - "public": true, - "created_at": "2015-01-01T15:00:01Z" - }, - { - "id": "2489651057", - "type": "WatchEvent", - "actor": { - "id": 6894991, - "login": "SametSisartenep", - "gravatar_id": "", - "url": "https://api.github.com/users/SametSisartenep", - "avatar_url": "https://avatars.githubusercontent.com/u/6894991?" - }, - "repo": { - "id": 2871998, - "name": "visionmedia/debug", - "url": "https://api.github.com/repos/visionmedia/debug" - }, - "payload": { - "action": "started" - }, - "public": true, - "created_at": "2015-01-01T15:00:03Z", - "org": { - "id": 9285252, - "login": "visionmedia", - "gravatar_id": "", - "url": "https://api.github.com/orgs/visionmedia", - "avatar_url": "https://avatars.githubusercontent.com/u/9285252?" - } - } -] \ No newline at end of file diff --git a/test/single_test.js b/test/single_test.js index 7fcfda4..a71288a 100644 --- a/test/single_test.js +++ b/test/single_test.js @@ -8,7 +8,8 @@ try { let file = '//experimental/events.json'; file = '//bugs/35.qsql'; file = '//DV/car_racing/2.qsql'; - file = '//experimental/donuts.json'; + file = '//apex/forrestclinic.quicksql'; + //file = '//experimental/donuts.json'; let args = process.argv.slice(2); if( 0 < args.length ) file = args[0]; diff --git a/test/small_tests.js b/test/small_tests.js index a5463fa..02ab8aa 100644 --- a/test/small_tests.js +++ b/test/small_tests.js @@ -1,11 +1,13 @@ import {quicksql, toDDL} from "../src/ddl.js"; +var assertionCnt = 0; + function assert( condition ) { if( !eval(condition) ) { console.error("Failed: "+condition); throw new Error('Test failed'); } - console.log('.\r'); + assertionCnt++; } var output; @@ -536,4 +538,12 @@ students } -small_tests(); \ No newline at end of file +small_tests(); + +console.log(assertionCnt); + +const minimalTestCnt = 95; +if( assertionCnt < minimalTestCnt ) { + console.error("assertionCnt < "+minimalTestCnt); + throw new Error('Test failed'); +} diff --git a/test/star/sales_product_customers.sql b/test/star/sales_product_customers.sql index 0796a1e..a54eef8 100644 --- a/test/star/sales_product_customers.sql +++ b/test/star/sales_product_customers.sql @@ -1,5 +1,17 @@ -- create tables +create table customers ( + id number generated by default on null as identity + constraint customers_id_pk primary key, + first_name varchar2(4000 char) +); + +create table product ( + id number generated by default on null as identity + constraint product_id_pk primary key, + name varchar2(255 char) +); + create table sales ( id number generated by default on null as identity constraint sales_id_pk primary key, @@ -18,22 +30,36 @@ create index sales_i1 on sales (product_id); create index sales_i2 on sales (customers_id); -create table product ( - id number generated by default on null as identity - constraint product_id_pk primary key, - name varchar2(255 char) + + + + + + + +-- load data + +insert into customers ( + id, + first_name +) values ( + 1, + 'Cornelia' ); +commit; -create table customers ( - id number generated by default on null as identity - constraint customers_id_pk primary key, - first_name varchar2(4000 char) +insert into product ( + id, + name +) values ( + 1, + 'Matilda Spencer' ); +commit; --- load data insert into sales ( id, @@ -63,26 +89,6 @@ commit; alter table sales modify id generated always as identity restart start with 3; -insert into product ( - id, - name -) values ( - 1, - 'Matilda Spencer' -); - -commit; - -insert into customers ( - id, - first_name -) values ( - 1, - 'Cornelia' -); - -commit; - -- Generated by Quick SQL undefined 10/4/2023, 12:26:53 PM From 776d9aa28289abab5d82668f7c31d84421a7dc8a Mon Sep 17 00:00:00 2001 From: Vadim Tropashko Date: Fri, 5 Jan 2024 17:25:32 -0800 Subject: [PATCH 07/22] donuts! + more elaborate insert statements test --- dist/quick-sql.js | 2459 ++++++++--------- dist/quick-sql.umd.cjs | 292 +- doc/user/quick-sql-grammar.md | 9 +- src/json2qsql.js | 17 +- src/sample.js | 149 +- src/tree.js | 263 +- test/experimental/donuts.qsql | 174 +- test/experimental/food_product.qsql | 3310 ----------------------- test/experimental/region_countries.qsql | 11 - test/experimental/region_countries.sql | 61 - test/regression_test.js | 4 +- test/single_test.js | 9 +- test/star/donuts.qsql | 13 + test/star/donuts.sql | 242 ++ 14 files changed, 1998 insertions(+), 5015 deletions(-) delete mode 100644 test/experimental/food_product.qsql delete mode 100644 test/experimental/region_countries.qsql delete mode 100644 test/experimental/region_countries.sql create mode 100644 test/star/donuts.qsql create mode 100644 test/star/donuts.sql diff --git a/dist/quick-sql.js b/dist/quick-sql.js index 7ed5298..f6f26b9 100644 --- a/dist/quick-sql.js +++ b/dist/quick-sql.js @@ -1,20 +1,20 @@ function z(d) { return d == null ? d : d.toUpperCase().endsWith("IES") ? d.substring(0, d.length - 3) + "y" : d.toUpperCase().endsWith("ES") || d.toUpperCase().endsWith("S") ? d.substring(0, d.length - 1) : d; } -function he(d, h) { +function fe(d, h) { let E = '"'; if (d == null) return null; let L = !1; - const I = "$#_ "; + const T = "$#_ "; if (!d.startsWith(E) && !L) { - const k = d; - if (k.length > 0 && "0" <= k[0] && k[0] <= "9") + const D = d; + if (D.length > 0 && "0" <= D[0] && D[0] <= "9") L = !0; else - for (let p in k) { - const b = k[p]; - if (I.indexOf(b) < 0 && (b < "0" || "9" < b && b < "A" || "Z" < b && b < "a" || "z" < b)) { + for (let f in D) { + const p = D[f]; + if (T.indexOf(p) < 0 && (p < "0" || "9" < p && p < "A" || "Z" < p && p < "a" || "z" < p)) { L = !0; break; } @@ -22,21 +22,21 @@ function he(d, h) { } return (d.startsWith("_") || d.startsWith("$") || d.startsWith("#")) && (L = !0), L || (E = ""), E + d + E; } -function de(d) { +function he(d) { if (d == null) return null; if (d.indexOf('"') == 0) return d; - let h = he(d); + let h = fe(d); return h.indexOf('"') == 0 || (h = h.replace(/ /g, "_")), h; } function K(d, h, E) { let L = !1; E == null && (E = ""), d.indexOf('"') == 0 && (L = !0, d = d.substring(1, d.length - 1)), h.indexOf('"') == 0 && (L = !0, h = h.substring(1, h.length - 1)), E.indexOf('"') == 0 && (L = !0, E = E.substring(1, E.length - 1)); - let I = d + h + E; - return L ? I = '"' + I + '"' : I = I.toLowerCase(), I; + let T = d + h + E; + return L ? T = '"' + T + '"' : T = T.toLowerCase(), T; } -var oe = function() { +var le = function() { var d = [ "Sales", "Finance", @@ -76,31 +76,31 @@ var oe = function() { "\uC804\uB3C4\uC790", "\uD310\uB9E4\uC6D0" ]; - function L(I, k) { - if (typeof k != "string" || I.substring(0, 2).toLowerCase() == "en") - return k; - k.indexOf("'") == 0 && (k = k.substring(1, k.length - 1)); - for (var p = -1, b = 0; b < d.length; b++) - if (d[b] == k) { - p = b; + function L(T, D) { + if (typeof D != "string" || T.substring(0, 2).toLowerCase() == "en") + return D; + D.indexOf("'") == 0 && (D = D.substring(1, D.length - 1)); + for (var f = -1, p = 0; p < d.length; p++) + if (d[p] == D) { + f = p; break; } - return 0 <= p && I.substring(0, 2).toLowerCase() == "jp" && p < h.length ? "'" + h[p] + "'" : 0 <= p && I.substring(0, 2).toLowerCase() == "kr" && p < E.length ? "'" + E[p] + "'" : k; + return 0 <= f && T.substring(0, 2).toLowerCase() == "jp" && f < h.length ? "'" + h[f] + "'" : 0 <= f && T.substring(0, 2).toLowerCase() == "kr" && f < E.length ? "'" + E[f] + "'" : D; } return L; }(); -function fe(d) { +function be(d) { return d && d.__esModule && Object.prototype.hasOwnProperty.call(d, "default") ? d.default : d; } -var ie = { exports: {} }; +var re = { exports: {} }; (function(d, h) { (function() { - var E = 9007199254740992, L = -E, I = "0123456789", k = "abcdefghijklmnopqrstuvwxyz", p = k.toUpperCase(), b = I + "abcdef"; - function S(e) { + var E = 9007199254740992, L = -E, T = "0123456789", D = "abcdefghijklmnopqrstuvwxyz", f = D.toUpperCase(), p = T + "abcdef"; + function y(e) { this.name = "UnsupportedError", this.message = e || "This feature is not supported on this platform"; } - S.prototype = new Error(), S.prototype.constructor = S; - var T = Array.prototype.slice; + y.prototype = new Error(), y.prototype.constructor = y; + var I = Array.prototype.slice; function r(e) { if (!(this instanceof r)) return e || (e = null), e === null ? new r() : new r(e); @@ -110,10 +110,10 @@ var ie = { exports: {} }; for (var a = 0; a < arguments.length; a++) { var n = 0; if (Object.prototype.toString.call(arguments[a]) === "[object String]") - for (var l = 0; l < arguments[a].length; l++) { - for (var s = 0, g = 0; g < arguments[a].length; g++) - s = arguments[a].charCodeAt(g) + (s << 6) + (s << 16) - s; - n += s; + for (var c = 0; c < arguments[a].length; c++) { + for (var u = 0, g = 0; g < arguments[a].length; g++) + u = arguments[a].charCodeAt(g) + (u << 6) + (u << 16) - u; + n += u; } else n = arguments[a]; @@ -124,7 +124,7 @@ var ie = { exports: {} }; }, this; } r.prototype.VERSION = "1.1.11"; - function u(e, a) { + function s(e, a) { if (e = e || {}, a) for (var n in a) typeof e[n] > "u" && (e[n] = a[n]); @@ -147,16 +147,16 @@ var ie = { exports: {} }; return new Buffer(a).toString("base64"); }); })(), r.prototype.bool = function(e) { - return e = u(e, { likelihood: 50 }), t( + return e = s(e, { likelihood: 50 }), t( e.likelihood < 0 || e.likelihood > 100, "Chance: Likelihood accepts values from 0 to 100." ), this.random() * 100 < e.likelihood; }, r.prototype.falsy = function(e) { - e = u(e, { pool: [!1, null, 0, NaN, "", void 0] }); - var a = e.pool, n = this.integer({ min: 0, max: a.length - 1 }), l = a[n]; - return l; + e = s(e, { pool: [!1, null, 0, NaN, "", void 0] }); + var a = e.pool, n = this.integer({ min: 0, max: a.length - 1 }), c = a[n]; + return c; }, r.prototype.animal = function(e) { - if (e = u(e), typeof e.type < "u") + if (e = s(e), typeof e.type < "u") return t( !this.get("animals")[e.type.toLowerCase()], "Please pick from desert, ocean, grassland, forest, zoo, pets, farm." @@ -164,34 +164,34 @@ var ie = { exports: {} }; var a = ["desert", "forest", "ocean", "zoo", "farm", "pet", "grassland"]; return this.pick(this.get("animals")[this.pick(a)]); }, r.prototype.character = function(e) { - e = u(e); - var a = "!@#$%^&*()[]", n, l; - return e.casing === "lower" ? n = k : e.casing === "upper" ? n = p : n = k + p, e.pool ? l = e.pool : (l = "", e.alpha && (l += n), e.numeric && (l += I), e.symbols && (l += a), l || (l = n + I + a)), l.charAt(this.natural({ max: l.length - 1 })); + e = s(e); + var a = "!@#$%^&*()[]", n, c; + return e.casing === "lower" ? n = D : e.casing === "upper" ? n = f : n = D + f, e.pool ? c = e.pool : (c = "", e.alpha && (c += n), e.numeric && (c += T), e.symbols && (c += a), c || (c = n + T + a)), c.charAt(this.natural({ max: c.length - 1 })); }, r.prototype.floating = function(e) { - e = u(e, { fixed: 4 }), t( + e = s(e, { fixed: 4 }), t( e.fixed && e.precision, "Chance: Cannot specify both fixed and precision." ); - var a, n = Math.pow(10, e.fixed), l = E / n, s = -l; + var a, n = Math.pow(10, e.fixed), c = E / n, u = -c; t( - e.min && e.fixed && e.min < s, - "Chance: Min specified is out of range with fixed. Min should be, at least, " + s + e.min && e.fixed && e.min < u, + "Chance: Min specified is out of range with fixed. Min should be, at least, " + u ), t( - e.max && e.fixed && e.max > l, - "Chance: Max specified is out of range with fixed. Max should be, at most, " + l - ), e = u(e, { min: s, max: l }), a = this.integer({ min: e.min * n, max: e.max * n }); + e.max && e.fixed && e.max > c, + "Chance: Max specified is out of range with fixed. Max should be, at most, " + c + ), e = s(e, { min: u, max: c }), a = this.integer({ min: e.min * n, max: e.max * n }); var g = (a / n).toFixed(e.fixed); return parseFloat(g); }, r.prototype.integer = function(e) { - return e = u(e, { min: L, max: E }), t(e.min > e.max, "Chance: Min cannot be greater than Max."), Math.floor(this.random() * (e.max - e.min + 1) + e.min); + return e = s(e, { min: L, max: E }), t(e.min > e.max, "Chance: Min cannot be greater than Max."), Math.floor(this.random() * (e.max - e.min + 1) + e.min); }, r.prototype.natural = function(e) { - if (e = u(e, { min: 0, max: E }), typeof e.numerals == "number" && (t(e.numerals < 1, "Chance: Numerals cannot be less than one."), e.min = Math.pow(10, e.numerals - 1), e.max = Math.pow(10, e.numerals) - 1), t(e.min < 0, "Chance: Min cannot be less than zero."), e.exclude) { + if (e = s(e, { min: 0, max: E }), typeof e.numerals == "number" && (t(e.numerals < 1, "Chance: Numerals cannot be less than one."), e.min = Math.pow(10, e.numerals - 1), e.max = Math.pow(10, e.numerals) - 1), t(e.min < 0, "Chance: Min cannot be less than zero."), e.exclude) { t(!Array.isArray(e.exclude), "Chance: exclude must be an array."); for (var a in e.exclude) t(!Number.isInteger(e.exclude[a]), "Chance: exclude must be numbers."); - var n = e.min + this.natural({ max: e.max - e.min - e.exclude.length }), l = e.exclude.sort(); - for (var s in l) { - if (n < l[s]) + var n = e.min + this.natural({ max: e.max - e.min - e.exclude.length }), c = e.exclude.sort(); + for (var u in c) { + if (n < c[u]) break; n++; } @@ -199,15 +199,15 @@ var ie = { exports: {} }; } return this.integer(e); }, r.prototype.prime = function(e) { - e = u(e, { min: 0, max: 1e4 }), t(e.min < 0, "Chance: Min cannot be less than zero."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); - var a = x.primes[x.primes.length - 1]; + e = s(e, { min: 0, max: 1e4 }), t(e.min < 0, "Chance: Min cannot be less than zero."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); + var a = N.primes[N.primes.length - 1]; if (e.max > a) for (var n = a + 2; n <= e.max; ++n) - this.is_prime(n) && x.primes.push(n); - var l = x.primes.filter(function(s) { - return s >= e.min && s <= e.max; + this.is_prime(n) && N.primes.push(n); + var c = N.primes.filter(function(u) { + return u >= e.min && u <= e.max; }); - return this.pick(l); + return this.pick(c); }, r.prototype.is_prime = function(e) { if (e % 1 || e < 2) return !1; @@ -220,22 +220,22 @@ var ie = { exports: {} }; return !1; return !0; }, r.prototype.hex = function(e) { - e = u(e, { min: 0, max: E, casing: "lower" }), t(e.min < 0, "Chance: Min cannot be less than zero."); + e = s(e, { min: 0, max: E, casing: "lower" }), t(e.min < 0, "Chance: Min cannot be less than zero."); var a = this.natural({ min: e.min, max: e.max }); return e.casing === "upper" ? a.toString(16).toUpperCase() : a.toString(16); }, r.prototype.letter = function(e) { - e = u(e, { casing: "lower" }); + e = s(e, { casing: "lower" }); var a = "abcdefghijklmnopqrstuvwxyz", n = this.character({ pool: a }); return e.casing === "upper" && (n = n.toUpperCase()), n; }, r.prototype.string = function(e) { - e = u(e, { min: 5, max: 20 }), e.length !== 0 && !e.length && (e.length = this.natural({ min: e.min, max: e.max })), t(e.length < 0, "Chance: Length cannot be less than zero."); + e = s(e, { min: 5, max: 20 }), e.length !== 0 && !e.length && (e.length = this.natural({ min: e.min, max: e.max })), t(e.length < 0, "Chance: Length cannot be less than zero."); var a = e.length, n = this.n(this.character, a, e); return n.join(""); }; - function c(e) { + function l(e) { this.c = e; } - c.prototype = { + l.prototype = { substitute: function() { return this.c; } @@ -250,19 +250,19 @@ var ie = { exports: {} }; return this.c; } }; - function y(e) { + function S(e) { this.c = e; } - y.prototype = { + S.prototype = { replacers: { "#": function(e) { - return e.character({ pool: I }); + return e.character({ pool: T }); }, A: function(e) { - return e.character({ pool: p }); + return e.character({ pool: f }); }, a: function(e) { - return e.character({ pool: k }); + return e.character({ pool: D }); } }, substitute: function(e) { @@ -272,18 +272,18 @@ var ie = { exports: {} }; return a(e); } }; - function P(e) { - for (var a = [], n = "identity", l = 0; l < e.length; l++) { - var s = e[l]; + function B(e) { + for (var a = [], n = "identity", c = 0; c < e.length; c++) { + var u = e[c]; switch (n) { case "escape": - a.push(new m(s)), n = "identity"; + a.push(new m(u)), n = "identity"; break; case "identity": - s === "{" ? n = "replace" : s === "\\" ? n = "escape" : a.push(new c(s)); + u === "{" ? n = "replace" : u === "\\" ? n = "escape" : a.push(new l(u)); break; case "replace": - s === "}" ? n = "identity" : a.push(new y(s)); + u === "}" ? n = "identity" : a.push(new S(u)); break; } } @@ -293,13 +293,13 @@ var ie = { exports: {} }; if (!e) throw new Error("Template string is required"); var a = this; - return P(e).map(function(n) { + return B(e).map(function(n) { return n.substitute(a); }).join(""); }, r.prototype.buffer = function(e) { if (typeof Buffer > "u") - throw new S("Sorry, the buffer() function is not supported on your platform"); - e = u(e, { length: this.natural({ min: 5, max: 20 }) }), t(e.length < 0, "Chance: Length cannot be less than zero."); + throw new y("Sorry, the buffer() function is not supported on your platform"); + e = s(e, { length: this.natural({ min: 5, max: 20 }) }), t(e.length < 0, "Chance: Length cannot be less than zero."); var a = e.length, n = this.n(this.character, a, e); return Buffer.from(n); }, r.prototype.capitalize = function(e) { @@ -313,25 +313,25 @@ var ie = { exports: {} }; typeof e != "function", "Chance: The first argument must be a function." ); - var l = function(A, H) { + var c = function(A, H) { return A.indexOf(H) !== -1; }; - n && (l = n.comparator || l); - for (var s = [], g = 0, B, f = a * 50, v = T.call(arguments, 2); s.length < a; ) { + n && (c = n.comparator || c); + for (var u = [], g = 0, P, b = a * 50, v = I.call(arguments, 2); u.length < a; ) { var C = JSON.parse(JSON.stringify(v)); - if (B = e.apply(this, C), l(s, B) || (s.push(B), g = 0), ++g > f) + if (P = e.apply(this, C), c(u, P) || (u.push(P), g = 0), ++g > b) throw new RangeError("Chance: num is likely too large for sample set"); } - return s; + return u; }, r.prototype.n = function(e, a) { t( typeof e != "function", "Chance: The first argument must be a function." ), typeof a > "u" && (a = 1); - var n = a, l = [], s = T.call(arguments, 2); + var n = a, c = [], u = I.call(arguments, 2); for (n = Math.max(0, n), null; n--; null) - l.push(e.apply(this, s)); - return l; + c.push(e.apply(this, u)); + return c; }, r.prototype.pad = function(e, a, n) { return n = n || "0", e = e + "", e.length >= a ? e : new Array(a - e.length + 1).join(n) + e; }, r.prototype.pick = function(e, a) { @@ -351,29 +351,29 @@ var ie = { exports: {} }; throw new RangeError("Chance: Count must be a positive number"); if (!a || a === 1) return [this.pickone(e)]; - var n = e.slice(0), l = n.length; + var n = e.slice(0), c = n.length; return this.n(function() { - var s = this.natural({ max: --l }), g = n[s]; - return n[s] = n[l], g; - }, Math.min(l, a)); + var u = this.natural({ max: --c }), g = n[u]; + return n[u] = n[c], g; + }, Math.min(c, a)); }, r.prototype.shuffle = function(e) { - for (var a = [], n = 0, l = Number(e.length), s = i(l), g = l - 1, B, f = 0; f < l; f++) - B = this.natural({ max: g }), n = s[B], a[f] = e[n], s[B] = s[g], g -= 1; + for (var a = [], n = 0, c = Number(e.length), u = i(c), g = c - 1, P, b = 0; b < c; b++) + P = this.natural({ max: g }), n = u[P], a[b] = e[n], u[P] = u[g], g -= 1; return a; }, r.prototype.weighted = function(e, a, n) { if (e.length !== a.length) throw new RangeError("Chance: Length of array and weights must match"); - for (var l = 0, s, g = 0; g < a.length; ++g) { - if (s = a[g], isNaN(s)) + for (var c = 0, u, g = 0; g < a.length; ++g) { + if (u = a[g], isNaN(u)) throw new RangeError("Chance: All weights must be numbers"); - s > 0 && (l += s); + u > 0 && (c += u); } - if (l === 0) + if (c === 0) throw new RangeError("Chance: No valid entries in array weights"); - var B = this.random() * l, f = 0, v = -1, C; + var P = this.random() * c, b = 0, v = -1, C; for (g = 0; g < a.length; ++g) { - if (s = a[g], f += s, s > 0) { - if (B <= f) { + if (u = a[g], b += u, u > 0) { + if (P <= b) { C = g; break; } @@ -384,21 +384,21 @@ var ie = { exports: {} }; var A = e[C]; return n = typeof n > "u" ? !1 : n, n && (e.splice(C, 1), a.splice(C, 1)), A; }, r.prototype.paragraph = function(e) { - e = u(e); - var a = e.sentences || this.natural({ min: 3, max: 7 }), n = this.n(this.sentence, a), l = e.linebreak === !0 ? ` + e = s(e); + var a = e.sentences || this.natural({ min: 3, max: 7 }), n = this.n(this.sentence, a), c = e.linebreak === !0 ? ` ` : " "; - return n.join(l); + return n.join(c); }, r.prototype.sentence = function(e) { - e = u(e); - var a = e.words || this.natural({ min: 12, max: 18 }), n = e.punctuation, l, s = this.n(this.word, a); - return l = s.join(" "), l = this.capitalize(l), n !== !1 && !/^[.?;!:]$/.test(n) && (n = "."), n && (l += n), l; + e = s(e); + var a = e.words || this.natural({ min: 12, max: 18 }), n = e.punctuation, c, u = this.n(this.word, a); + return c = u.join(" "), c = this.capitalize(c), n !== !1 && !/^[.?;!:]$/.test(n) && (n = "."), n && (c += n), c; }, r.prototype.syllable = function(e) { - e = u(e); - for (var a = e.length || this.natural({ min: 2, max: 3 }), n = "bcdfghjklmnprstvwz", l = "aeiou", s = n + l, g = "", B, f = 0; f < a; f++) - f === 0 ? B = this.character({ pool: s }) : n.indexOf(B) === -1 ? B = this.character({ pool: n }) : B = this.character({ pool: l }), g += B; + e = s(e); + for (var a = e.length || this.natural({ min: 2, max: 3 }), n = "bcdfghjklmnprstvwz", c = "aeiou", u = n + c, g = "", P, b = 0; b < a; b++) + b === 0 ? P = this.character({ pool: u }) : n.indexOf(P) === -1 ? P = this.character({ pool: n }) : P = this.character({ pool: c }), g += P; return e.capitalize && (g = this.capitalize(g)), g; }, r.prototype.word = function(e) { - e = u(e), t( + e = s(e), t( e.syllables && e.length, "Chance: Cannot specify both syllables AND length." ); @@ -409,11 +409,11 @@ var ie = { exports: {} }; while (n.length < e.length); n = n.substring(0, e.length); } else - for (var l = 0; l < a; l++) + for (var c = 0; c < a; c++) n += this.syllable(); return e.capitalize && (n = this.capitalize(n)), n; }, r.prototype.age = function(e) { - e = u(e); + e = s(e); var a; switch (e.type) { case "child": @@ -437,115 +437,115 @@ var ie = { exports: {} }; } return this.natural(a); }, r.prototype.birthday = function(e) { - var a = this.age(e), n = /* @__PURE__ */ new Date(), l = n.getFullYear(); + var a = this.age(e), n = /* @__PURE__ */ new Date(), c = n.getFullYear(); if (e && e.type) { - var s = /* @__PURE__ */ new Date(), g = /* @__PURE__ */ new Date(); - s.setFullYear(l - a - 1), g.setFullYear(l - a), e = u(e, { - min: s, + var u = /* @__PURE__ */ new Date(), g = /* @__PURE__ */ new Date(); + u.setFullYear(c - a - 1), g.setFullYear(c - a), e = s(e, { + min: u, max: g }); } else if (e && (e.minAge !== void 0 || e.maxAge !== void 0)) { t(e.minAge < 0, "Chance: MinAge cannot be less than zero."), t(e.minAge > e.maxAge, "Chance: MinAge cannot be greater than MaxAge."); - var B = e.minAge !== void 0 ? e.minAge : 0, f = e.maxAge !== void 0 ? e.maxAge : 100, v = new Date(l - f - 1, n.getMonth(), n.getDate()), C = new Date(l - B, n.getMonth(), n.getDate()); - v.setDate(v.getDate() + 1), C.setDate(C.getDate() + 1), C.setMilliseconds(C.getMilliseconds() - 1), e = u(e, { + var P = e.minAge !== void 0 ? e.minAge : 0, b = e.maxAge !== void 0 ? e.maxAge : 100, v = new Date(c - b - 1, n.getMonth(), n.getDate()), C = new Date(c - P, n.getMonth(), n.getDate()); + v.setDate(v.getDate() + 1), C.setDate(C.getDate() + 1), C.setMilliseconds(C.getMilliseconds() - 1), e = s(e, { min: v, max: C }); } else - e = u(e, { - year: l - a + e = s(e, { + year: c - a }); return this.date(e); }, r.prototype.cpf = function(e) { - e = u(e, { + e = s(e, { formatted: !0 }); var a = this.n(this.natural, 9, { max: 9 }), n = a[8] * 2 + a[7] * 3 + a[6] * 4 + a[5] * 5 + a[4] * 6 + a[3] * 7 + a[2] * 8 + a[1] * 9 + a[0] * 10; n = 11 - n % 11, n >= 10 && (n = 0); - var l = n * 2 + a[8] * 3 + a[7] * 4 + a[6] * 5 + a[5] * 6 + a[4] * 7 + a[3] * 8 + a[2] * 9 + a[1] * 10 + a[0] * 11; - l = 11 - l % 11, l >= 10 && (l = 0); - var s = "" + a[0] + a[1] + a[2] + "." + a[3] + a[4] + a[5] + "." + a[6] + a[7] + a[8] + "-" + n + l; - return e.formatted ? s : s.replace(/\D/g, ""); + var c = n * 2 + a[8] * 3 + a[7] * 4 + a[6] * 5 + a[5] * 6 + a[4] * 7 + a[3] * 8 + a[2] * 9 + a[1] * 10 + a[0] * 11; + c = 11 - c % 11, c >= 10 && (c = 0); + var u = "" + a[0] + a[1] + a[2] + "." + a[3] + a[4] + a[5] + "." + a[6] + a[7] + a[8] + "-" + n + c; + return e.formatted ? u : u.replace(/\D/g, ""); }, r.prototype.cnpj = function(e) { - e = u(e, { + e = s(e, { formatted: !0 }); var a = this.n(this.natural, 12, { max: 12 }), n = a[11] * 2 + a[10] * 3 + a[9] * 4 + a[8] * 5 + a[7] * 6 + a[6] * 7 + a[5] * 8 + a[4] * 9 + a[3] * 2 + a[2] * 3 + a[1] * 4 + a[0] * 5; n = 11 - n % 11, n < 2 && (n = 0); - var l = n * 2 + a[11] * 3 + a[10] * 4 + a[9] * 5 + a[8] * 6 + a[7] * 7 + a[6] * 8 + a[5] * 9 + a[4] * 2 + a[3] * 3 + a[2] * 4 + a[1] * 5 + a[0] * 6; - l = 11 - l % 11, l < 2 && (l = 0); - var s = "" + a[0] + a[1] + "." + a[2] + a[3] + a[4] + "." + a[5] + a[6] + a[7] + "/" + a[8] + a[9] + a[10] + a[11] + "-" + n + l; - return e.formatted ? s : s.replace(/\D/g, ""); + var c = n * 2 + a[11] * 3 + a[10] * 4 + a[9] * 5 + a[8] * 6 + a[7] * 7 + a[6] * 8 + a[5] * 9 + a[4] * 2 + a[3] * 3 + a[2] * 4 + a[1] * 5 + a[0] * 6; + c = 11 - c % 11, c < 2 && (c = 0); + var u = "" + a[0] + a[1] + "." + a[2] + a[3] + a[4] + "." + a[5] + a[6] + a[7] + "/" + a[8] + a[9] + a[10] + a[11] + "-" + n + c; + return e.formatted ? u : u.replace(/\D/g, ""); }, r.prototype.first = function(e) { - return e = u(e, { gender: this.gender(), nationality: "en" }), this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()]); + return e = s(e, { gender: this.gender(), nationality: "en" }), this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()]); }, r.prototype.profession = function(e) { - return e = u(e), e.rank ? this.pick(["Apprentice ", "Junior ", "Senior ", "Lead "]) + this.pick(this.get("profession")) : this.pick(this.get("profession")); + return e = s(e), e.rank ? this.pick(["Apprentice ", "Junior ", "Senior ", "Lead "]) + this.pick(this.get("profession")) : this.pick(this.get("profession")); }, r.prototype.company = function() { return this.pick(this.get("company")); }, r.prototype.gender = function(e) { - return e = u(e, { extraGenders: [] }), this.pick(["Male", "Female"].concat(e.extraGenders)); + return e = s(e, { extraGenders: [] }), this.pick(["Male", "Female"].concat(e.extraGenders)); }, r.prototype.last = function(e) { - if (e = u(e, { nationality: "*" }), e.nationality === "*") { + if (e = s(e, { nationality: "*" }), e.nationality === "*") { var a = [], n = this.get("lastNames"); - return Object.keys(n).forEach(function(l) { - a = a.concat(n[l]); + return Object.keys(n).forEach(function(c) { + a = a.concat(n[c]); }), this.pick(a); } else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()]); }, r.prototype.israelId = function() { for (var e = this.string({ pool: "0123456789", length: 8 }), a = 0, n = 0; n < e.length; n++) { - var l = e[n] * (n / 2 === parseInt(n / 2) ? 1 : 2); - l = this.pad(l, 2).toString(), l = parseInt(l[0]) + parseInt(l[1]), a = a + l; + var c = e[n] * (n / 2 === parseInt(n / 2) ? 1 : 2); + c = this.pad(c, 2).toString(), c = parseInt(c[0]) + parseInt(c[1]), a = a + c; } return e = e + (10 - parseInt(a.toString().slice(-1))).toString().slice(-1), e; }, r.prototype.mrz = function(e) { - var a = function(s) { - var g = "", "<=", ">=", "="]); e.range && (a = e.range); var n = ""; @@ -744,29 +744,29 @@ var ie = { exports: {} }; }, r.prototype.twitter = function() { return "@" + this.word(); }, r.prototype.url = function(e) { - e = u(e, { protocol: "http", domain: this.domain(e), domain_prefix: "", path: this.word(), extensions: [] }); + e = s(e, { protocol: "http", domain: this.domain(e), domain_prefix: "", path: this.word(), extensions: [] }); var a = e.extensions.length > 0 ? "." + this.pick(e.extensions) : "", n = e.domain_prefix ? e.domain_prefix + "." + e.domain : e.domain; return e.protocol + "://" + n + "/" + e.path + a; }, r.prototype.port = function() { return this.integer({ min: 0, max: 65535 }); }, r.prototype.locale = function(e) { - return e = u(e), e.region ? this.pick(this.get("locale_regions")) : this.pick(this.get("locale_languages")); + return e = s(e), e.region ? this.pick(this.get("locale_regions")) : this.pick(this.get("locale_languages")); }, r.prototype.locales = function(e) { - return e = u(e), e.region ? this.get("locale_regions") : this.get("locale_languages"); + return e = s(e), e.region ? this.get("locale_regions") : this.get("locale_languages"); }, r.prototype.loremPicsum = function(e) { - e = u(e, { width: 500, height: 500, greyscale: !1, blurred: !1 }); + e = s(e, { width: 500, height: 500, greyscale: !1, blurred: !1 }); var a = e.greyscale ? "g/" : "", n = e.blurred ? "/?blur" : "/?random"; return "https://picsum.photos/" + a + e.width + "/" + e.height + n; }, r.prototype.address = function(e) { - return e = u(e), this.natural({ min: 5, max: 2e3 }) + " " + this.street(e); + return e = s(e), this.natural({ min: 5, max: 2e3 }) + " " + this.street(e); }, r.prototype.altitude = function(e) { - return e = u(e, { fixed: 5, min: 0, max: 8848 }), this.floating({ + return e = s(e, { fixed: 5, min: 0, max: 8848 }), this.floating({ min: e.min, max: e.max, fixed: e.fixed }); }, r.prototype.areacode = function(e) { - e = u(e, { parens: !0 }); + e = s(e, { parens: !0 }); var a = e.exampleNumber ? "555" : this.natural({ min: 2, max: 9 }).toString() + this.natural({ min: 0, max: 8 }).toString() + this.natural({ min: 0, max: 9 }).toString(); return e.parens ? "(" + a + ")" : a; }, r.prototype.city = function() { @@ -776,68 +776,68 @@ var ie = { exports: {} }; }, r.prototype.countries = function() { return this.get("countries"); }, r.prototype.country = function(e) { - e = u(e); + e = s(e); var a = this.pick(this.countries()); return e.raw ? a : e.full ? a.name : a.abbreviation; }, r.prototype.depth = function(e) { - return e = u(e, { fixed: 5, min: -10994, max: 0 }), this.floating({ + return e = s(e, { fixed: 5, min: -10994, max: 0 }), this.floating({ min: e.min, max: e.max, fixed: e.fixed }); }, r.prototype.geohash = function(e) { - return e = u(e, { length: 7 }), this.string({ length: e.length, pool: "0123456789bcdefghjkmnpqrstuvwxyz" }); + return e = s(e, { length: 7 }), this.string({ length: e.length, pool: "0123456789bcdefghjkmnpqrstuvwxyz" }); }, r.prototype.geojson = function(e) { return this.latitude(e) + ", " + this.longitude(e) + ", " + this.altitude(e); }, r.prototype.latitude = function(e) { - var [a, n, l] = ["ddm", "dms", "dd"]; - e = u( + var [a, n, c] = ["ddm", "dms", "dd"]; + e = s( e, - e && e.format && [a, n].includes(e.format.toLowerCase()) ? { min: 0, max: 89, fixed: 4 } : { fixed: 5, min: -90, max: 90, format: l } + e && e.format && [a, n].includes(e.format.toLowerCase()) ? { min: 0, max: 89, fixed: 4 } : { fixed: 5, min: -90, max: 90, format: c } ); - var s = e.format.toLowerCase(); - switch ((s === a || s === n) && (t(e.min < 0 || e.min > 89, "Chance: Min specified is out of range. Should be between 0 - 89"), t(e.max < 0 || e.max > 89, "Chance: Max specified is out of range. Should be between 0 - 89"), t(e.fixed > 4, "Chance: Fixed specified should be below or equal to 4")), s) { + var u = e.format.toLowerCase(); + switch ((u === a || u === n) && (t(e.min < 0 || e.min > 89, "Chance: Min specified is out of range. Should be between 0 - 89"), t(e.max < 0 || e.max > 89, "Chance: Max specified is out of range. Should be between 0 - 89"), t(e.fixed > 4, "Chance: Fixed specified should be below or equal to 4")), u) { case a: return this.integer({ min: e.min, max: e.max }) + "\xB0" + this.floating({ min: 0, max: 59, fixed: e.fixed }); case n: return this.integer({ min: e.min, max: e.max }) + "\xB0" + this.integer({ min: 0, max: 59 }) + "\u2019" + this.floating({ min: 0, max: 59, fixed: e.fixed }) + "\u201D"; - case l: + case c: default: return this.floating({ min: e.min, max: e.max, fixed: e.fixed }); } }, r.prototype.longitude = function(e) { - var [a, n, l] = ["ddm", "dms", "dd"]; - e = u( + var [a, n, c] = ["ddm", "dms", "dd"]; + e = s( e, - e && e.format && [a, n].includes(e.format.toLowerCase()) ? { min: 0, max: 179, fixed: 4 } : { fixed: 5, min: -180, max: 180, format: l } + e && e.format && [a, n].includes(e.format.toLowerCase()) ? { min: 0, max: 179, fixed: 4 } : { fixed: 5, min: -180, max: 180, format: c } ); - var s = e.format.toLowerCase(); - switch ((s === a || s === n) && (t(e.min < 0 || e.min > 179, "Chance: Min specified is out of range. Should be between 0 - 179"), t(e.max < 0 || e.max > 179, "Chance: Max specified is out of range. Should be between 0 - 179"), t(e.fixed > 4, "Chance: Fixed specified should be below or equal to 4")), s) { + var u = e.format.toLowerCase(); + switch ((u === a || u === n) && (t(e.min < 0 || e.min > 179, "Chance: Min specified is out of range. Should be between 0 - 179"), t(e.max < 0 || e.max > 179, "Chance: Max specified is out of range. Should be between 0 - 179"), t(e.fixed > 4, "Chance: Fixed specified should be below or equal to 4")), u) { case a: return this.integer({ min: e.min, max: e.max }) + "\xB0" + this.floating({ min: 0, max: 59.9999, fixed: e.fixed }); case n: return this.integer({ min: e.min, max: e.max }) + "\xB0" + this.integer({ min: 0, max: 59 }) + "\u2019" + this.floating({ min: 0, max: 59.9999, fixed: e.fixed }) + "\u201D"; - case l: + case c: default: return this.floating({ min: e.min, max: e.max, fixed: e.fixed }); } }, r.prototype.phone = function(e) { - var a = this, n, l = function(H) { - var _ = []; + var a = this, n, c = function(H) { + var O = []; return H.sections.forEach(function(W) { - _.push(a.string({ pool: "0123456789", length: W })); - }), H.area + _.join(" "); + O.push(a.string({ pool: "0123456789", length: W })); + }), H.area + O.join(" "); }; - e = u(e, { + e = s(e, { formatted: !0, country: "us", mobile: !1, exampleNumber: !1 }), e.formatted || (e.parens = !1); - var s; + var u; switch (e.country) { case "fr": - e.mobile ? (n = this.pick(["06", "07"]) + a.string({ pool: "0123456789", length: 8 }), s = e.formatted ? n.match(/../g).join(" ") : n) : (n = this.pick([ + e.mobile ? (n = this.pick(["06", "07"]) + a.string({ pool: "0123456789", length: 8 }), u = e.formatted ? n.match(/../g).join(" ") : n) : (n = this.pick([ // Valid zone and département codes. "01" + this.pick(["30", "34", "39", "40", "41", "42", "43", "44", "45", "46", "47", "48", "49", "53", "55", "56", "58", "60", "64", "69", "70", "72", "73", "74", "75", "76", "77", "78", "79", "80", "81", "82", "83"]) + a.string({ pool: "0123456789", length: 6 }), "02" + this.pick(["14", "18", "22", "23", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37", "38", "40", "41", "43", "44", "45", "46", "47", "48", "49", "50", "51", "52", "53", "54", "56", "57", "61", "62", "69", "72", "76", "77", "78", "85", "90", "96", "97", "98", "99"]) + a.string({ pool: "0123456789", length: 6 }), @@ -845,13 +845,13 @@ var ie = { exports: {} }; "04" + this.pick(["11", "13", "15", "20", "22", "26", "27", "30", "32", "34", "37", "42", "43", "44", "50", "56", "57", "63", "66", "67", "68", "69", "70", "71", "72", "73", "74", "75", "76", "77", "78", "79", "80", "81", "82", "83", "84", "85", "86", "88", "89", "90", "91", "92", "93", "94", "95", "97", "98"]) + a.string({ pool: "0123456789", length: 6 }), "05" + this.pick(["08", "16", "17", "19", "24", "31", "32", "33", "34", "35", "40", "45", "46", "47", "49", "53", "55", "56", "57", "58", "59", "61", "62", "63", "64", "65", "67", "79", "81", "82", "86", "87", "90", "94"]) + a.string({ pool: "0123456789", length: 6 }), "09" + a.string({ pool: "0123456789", length: 8 }) - ]), s = e.formatted ? n.match(/../g).join(" ") : n); + ]), u = e.formatted ? n.match(/../g).join(" ") : n); break; case "uk": e.mobile ? (n = this.pick([ { area: "07" + this.pick(["4", "5", "7", "8", "9"]), sections: [2, 6] }, { area: "07624 ", sections: [6] } - ]), s = e.formatted ? l(n) : l(n).replace(" ", "")) : (n = this.pick([ + ]), u = e.formatted ? c(n) : c(n).replace(" ", "")) : (n = this.pick([ //valid area codes of major cities/counties followed by random numbers in required format. { area: "01" + this.character({ pool: "234569" }) + "1 ", sections: [3, 4] }, { area: "020 " + this.character({ pool: "378" }), sections: [3, 4] }, @@ -866,7 +866,7 @@ var ie = { exports: {} }; { area: "017" + this.pick(["26", "44", "50", "68"]) + " ", sections: [6] }, { area: "018" + this.pick(["27", "37", "84", "97"]) + " ", sections: [6] }, { area: "019" + this.pick(["00", "05", "35", "46", "49", "63", "95"]) + " ", sections: [6] } - ]), s = e.formatted ? l(n) : l(n).replace(" ", "", "g")); + ]), u = e.formatted ? c(n) : c(n).replace(" ", "", "g")); break; case "za": e.mobile ? (n = this.pick([ @@ -876,49 +876,49 @@ var ie = { exports: {} }; "071" + this.pick(["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"]) + a.string({ pool: "0123456789", length: 6 }), "07" + this.pick(["2", "3", "4", "6", "7", "8", "9"]) + a.string({ pool: "0123456789", length: 7 }), "08" + this.pick(["0", "1", "2", "3", "4", "5"]) + a.string({ pool: "0123456789", length: 7 }) - ]), s = e.formatted || n) : (n = this.pick([ + ]), u = e.formatted || n) : (n = this.pick([ "01" + this.pick(["0", "1", "2", "3", "4", "5", "6", "7", "8"]) + a.string({ pool: "0123456789", length: 7 }), "02" + this.pick(["1", "2", "3", "4", "7", "8"]) + a.string({ pool: "0123456789", length: 7 }), "03" + this.pick(["1", "2", "3", "5", "6", "9"]) + a.string({ pool: "0123456789", length: 7 }), "04" + this.pick(["1", "2", "3", "4", "5", "6", "7", "8", "9"]) + a.string({ pool: "0123456789", length: 7 }), "05" + this.pick(["1", "3", "4", "6", "7", "8"]) + a.string({ pool: "0123456789", length: 7 }) - ]), s = e.formatted || n); + ]), u = e.formatted || n); break; case "us": - var g = this.areacode(e).toString(), B = this.natural({ min: 2, max: 9 }).toString() + this.natural({ min: 0, max: 9 }).toString() + this.natural({ min: 0, max: 9 }).toString(), f = this.natural({ min: 1e3, max: 9999 }).toString(); - s = e.formatted ? g + " " + B + "-" + f : g + B + f; + var g = this.areacode(e).toString(), P = this.natural({ min: 2, max: 9 }).toString() + this.natural({ min: 0, max: 9 }).toString() + this.natural({ min: 0, max: 9 }).toString(), b = this.natural({ min: 1e3, max: 9999 }).toString(); + u = e.formatted ? g + " " + P + "-" + b : g + P + b; break; case "br": var v = this.pick(["11", "12", "13", "14", "15", "16", "17", "18", "19", "21", "22", "24", "27", "28", "31", "32", "33", "34", "35", "37", "38", "41", "42", "43", "44", "45", "46", "47", "48", "49", "51", "53", "54", "55", "61", "62", "63", "64", "65", "66", "67", "68", "69", "71", "73", "74", "75", "77", "79", "81", "82", "83", "84", "85", "86", "87", "88", "89", "91", "92", "93", "94", "95", "96", "97", "98", "99"]), C; e.mobile ? C = "9" + a.string({ pool: "0123456789", length: 4 }) : C = this.natural({ min: 2e3, max: 5999 }).toString(); var A = a.string({ pool: "0123456789", length: 4 }); - s = e.formatted ? "(" + v + ") " + C + "-" + A : v + C + A; + u = e.formatted ? "(" + v + ") " + C + "-" + A : v + C + A; break; } - return s; + return u; }, r.prototype.postal = function() { var e = this.character({ pool: "XVTSRPNKLMHJGECBA" }), a = e + this.natural({ max: 9 }) + this.character({ alpha: !0, casing: "upper" }), n = this.natural({ max: 9 }) + this.character({ alpha: !0, casing: "upper" }) + this.natural({ max: 9 }); return a + " " + n; }, r.prototype.postcode = function() { - var e = this.pick(this.get("postcodeAreas")).code, a = this.natural({ max: 9 }), n = this.bool() ? this.character({ alpha: !0, casing: "upper" }) : "", l = e + a + n, s = this.natural({ max: 9 }), g = this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }), B = s + g; - return l + " " + B; + var e = this.pick(this.get("postcodeAreas")).code, a = this.natural({ max: 9 }), n = this.bool() ? this.character({ alpha: !0, casing: "upper" }) : "", c = e + a + n, u = this.natural({ max: 9 }), g = this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }), P = u + g; + return c + " " + P; }, r.prototype.counties = function(e) { - return e = u(e, { country: "uk" }), this.get("counties")[e.country.toLowerCase()]; + return e = s(e, { country: "uk" }), this.get("counties")[e.country.toLowerCase()]; }, r.prototype.county = function(e) { return this.pick(this.counties(e)).name; }, r.prototype.provinces = function(e) { - return e = u(e, { country: "ca" }), this.get("provinces")[e.country.toLowerCase()]; + return e = s(e, { country: "ca" }), this.get("provinces")[e.country.toLowerCase()]; }, r.prototype.province = function(e) { return e && e.full ? this.pick(this.provinces(e)).name : this.pick(this.provinces(e)).abbreviation; }, r.prototype.state = function(e) { return e && e.full ? this.pick(this.states(e)).name : this.pick(this.states(e)).abbreviation; }, r.prototype.states = function(e) { - e = u(e, { country: "us", us_states_and_dc: !0 }); + e = s(e, { country: "us", us_states_and_dc: !0 }); var a; switch (e.country.toLowerCase()) { case "us": - var n = this.get("us_states_and_dc"), l = this.get("territories"), s = this.get("armed_forces"); - a = [], e.us_states_and_dc && (a = a.concat(n)), e.territories && (a = a.concat(l)), e.armed_forces && (a = a.concat(s)); + var n = this.get("us_states_and_dc"), c = this.get("territories"), u = this.get("armed_forces"); + a = [], e.us_states_and_dc && (a = a.concat(n)), e.territories && (a = a.concat(c)), e.armed_forces && (a = a.concat(u)); break; case "it": case "mx": @@ -930,7 +930,7 @@ var ie = { exports: {} }; } return a; }, r.prototype.street = function(e) { - e = u(e, { country: "us", syllables: 2 }); + e = s(e, { country: "us", syllables: 2 }); var a; switch (e.country.toLowerCase()) { case "us": @@ -942,9 +942,9 @@ var ie = { exports: {} }; } return a; }, r.prototype.street_suffix = function(e) { - return e = u(e, { country: "us" }), this.pick(this.street_suffixes(e)); + return e = s(e, { country: "us" }), this.pick(this.street_suffixes(e)); }, r.prototype.street_suffixes = function(e) { - return e = u(e, { country: "us" }), this.get("street_suffixes")[e.country.toLowerCase()]; + return e = s(e, { country: "us" }), this.get("street_suffixes")[e.country.toLowerCase()]; }, r.prototype.zip = function(e) { var a = this.n(this.natural, 5, { max: 9 }); return e && e.plusfour === !0 && (a.push("-"), a = a.concat(this.n(this.natural, 4, { max: 9 }))), a.join(""); @@ -953,20 +953,20 @@ var ie = { exports: {} }; }, r.prototype.date = function(e) { var a, n; if (e && (e.min || e.max)) { - e = u(e, { + e = s(e, { american: !0, string: !1 }); - var l = typeof e.min < "u" ? e.min.getTime() : 1, s = typeof e.max < "u" ? e.max.getTime() : 864e13; - n = new Date(this.integer({ min: l, max: s })); + var c = typeof e.min < "u" ? e.min.getTime() : 1, u = typeof e.max < "u" ? e.max.getTime() : 864e13; + n = new Date(this.integer({ min: c, max: u })); } else { - var g = this.month({ raw: !0 }), B = g.days; - e && e.month && (B = this.get("months")[(e.month % 12 + 12) % 12].days), e = u(e, { + var g = this.month({ raw: !0 }), P = g.days; + e && e.month && (P = this.get("months")[(e.month % 12 + 12) % 12].days), e = s(e, { year: parseInt(this.year(), 10), // Necessary to subtract 1 because Date() 0-indexes month but not day or year // for some reason. month: g.numeric - 1, - day: this.natural({ min: 1, max: B }), + day: this.natural({ min: 1, max: P }), hour: this.hour({ twentyfour: !0 }), minute: this.minute(), second: this.second(), @@ -979,16 +979,16 @@ var ie = { exports: {} }; }, r.prototype.hammertime = function(e) { return this.date(e).getTime(); }, r.prototype.hour = function(e) { - return e = u(e, { + return e = s(e, { min: e && e.twentyfour ? 0 : 1, max: e && e.twentyfour ? 23 : 12 }), t(e.min < 0, "Chance: Min cannot be less than 0."), t(e.twentyfour && e.max > 23, "Chance: Max cannot be greater than 23 for twentyfour option."), t(!e.twentyfour && e.max > 12, "Chance: Max cannot be greater than 12."), t(e.min > e.max, "Chance: Min cannot be greater than Max."), this.natural({ min: e.min, max: e.max }); }, r.prototype.millisecond = function() { return this.natural({ max: 999 }); }, r.prototype.minute = r.prototype.second = function(e) { - return e = u(e, { min: 0, max: 59 }), t(e.min < 0, "Chance: Min cannot be less than 0."), t(e.max > 59, "Chance: Max cannot be greater than 59."), t(e.min > e.max, "Chance: Min cannot be greater than Max."), this.natural({ min: e.min, max: e.max }); + return e = s(e, { min: 0, max: 59 }), t(e.min < 0, "Chance: Min cannot be less than 0."), t(e.max > 59, "Chance: Max cannot be greater than 59."), t(e.min > e.max, "Chance: Min cannot be greater than Max."), this.natural({ min: e.min, max: e.max }); }, r.prototype.month = function(e) { - e = u(e, { min: 1, max: 12 }), t(e.min < 1, "Chance: Min cannot be less than 1."), t(e.max > 12, "Chance: Max cannot be greater than 12."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); + e = s(e, { min: 1, max: 12 }), t(e.min < 1, "Chance: Min cannot be less than 1."), t(e.max > 12, "Chance: Max cannot be greater than 12."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); var a = this.pick(this.months().slice(e.min - 1, e.max)); return e.raw ? a : a.name; }, r.prototype.months = function() { @@ -998,24 +998,24 @@ var ie = { exports: {} }; }, r.prototype.timestamp = function() { return this.natural({ min: 1, max: parseInt((/* @__PURE__ */ new Date()).getTime() / 1e3, 10) }); }, r.prototype.weekday = function(e) { - e = u(e, { weekday_only: !1 }); + e = s(e, { weekday_only: !1 }); var a = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"]; return e.weekday_only || (a.push("Saturday"), a.push("Sunday")), this.pickone(a); }, r.prototype.year = function(e) { - return e = u(e, { min: (/* @__PURE__ */ new Date()).getFullYear() }), e.max = typeof e.max < "u" ? e.max : e.min + 100, this.natural(e).toString(); + return e = s(e, { min: (/* @__PURE__ */ new Date()).getFullYear() }), e.max = typeof e.max < "u" ? e.max : e.min + 100, this.natural(e).toString(); }, r.prototype.cc = function(e) { - e = u(e); - var a, n, l; - return a = e.type ? this.cc_type({ name: e.type, raw: !0 }) : this.cc_type({ raw: !0 }), n = a.prefix.split(""), l = a.length - a.prefix.length - 1, n = n.concat(this.n(this.integer, l, { min: 0, max: 9 })), n.push(this.luhn_calculate(n.join(""))), n.join(""); + e = s(e); + var a, n, c; + return a = e.type ? this.cc_type({ name: e.type, raw: !0 }) : this.cc_type({ raw: !0 }), n = a.prefix.split(""), c = a.length - a.prefix.length - 1, n = n.concat(this.n(this.integer, c, { min: 0, max: 9 })), n.push(this.luhn_calculate(n.join(""))), n.join(""); }, r.prototype.cc_types = function() { return this.get("cc_types"); }, r.prototype.cc_type = function(e) { - e = u(e); + e = s(e); var a = this.cc_types(), n = null; if (e.name) { - for (var l = 0; l < a.length; l++) - if (a[l].name === e.name || a[l].short_name === e.name) { - n = a[l]; + for (var c = 0; c < a.length; c++) + if (a[c].name === e.name || a[c].short_name === e.name) { + n = a[c]; break; } if (n === null) @@ -1033,30 +1033,30 @@ var ie = { exports: {} }; return this.pick(this.timezones()); }, r.prototype.currency_pair = function(e) { var a = this.unique(this.currency, 2, { - comparator: function(n, l) { - return n.reduce(function(s, g) { - return s || g.code === l.code; + comparator: function(n, c) { + return n.reduce(function(u, g) { + return u || g.code === c.code; }, !1); } }); return e ? a[0].code + "/" + a[1].code : a; }, r.prototype.dollar = function(e) { - e = u(e, { max: 1e4, min: 0 }); + e = s(e, { max: 1e4, min: 0 }); var a = this.floating({ min: e.min, max: e.max, fixed: 2 }).toString(), n = a.split(".")[1]; return n === void 0 ? a += ".00" : n.length < 2 && (a = a + "0"), a < 0 ? "-$" + a.replace("-", "") : "$" + a; }, r.prototype.euro = function(e) { return Number(this.dollar(e).replace("$", "")).toLocaleString() + "\u20AC"; }, r.prototype.exp = function(e) { - e = u(e); + e = s(e); var a = {}; return a.year = this.exp_year(), a.year === (/* @__PURE__ */ new Date()).getFullYear().toString() ? a.month = this.exp_month({ future: !0 }) : a.month = this.exp_month(), e.raw ? a : a.month + "/" + a.year; }, r.prototype.exp_month = function(e) { - e = u(e); - var a, n, l = (/* @__PURE__ */ new Date()).getMonth() + 1; - if (e.future && l !== 12) + e = s(e); + var a, n, c = (/* @__PURE__ */ new Date()).getMonth() + 1; + if (e.future && c !== 12) do a = this.month({ raw: !0 }).numeric, n = parseInt(a, 10); - while (n <= l); + while (n <= c); else a = this.month({ raw: !0 }).numeric; return a; @@ -1064,7 +1064,7 @@ var ie = { exports: {} }; var e = (/* @__PURE__ */ new Date()).getMonth() + 1, a = (/* @__PURE__ */ new Date()).getFullYear(); return this.year({ min: e === 12 ? a + 1 : a, max: a + 10 }); }, r.prototype.vat = function(e) { - switch (e = u(e, { country: "it" }), e.country.toLowerCase()) { + switch (e = s(e, { country: "it" }), e.country.toLowerCase()) { case "it": return this.it_vat(); } @@ -1076,39 +1076,39 @@ var ie = { exports: {} }; return e = this.pad(e, 7) + this.pad(this.pick(this.provinces({ country: "it" })).code, 3), e + this.luhn_calculate(e); }, r.prototype.cf = function(e) { e = e || {}; - var a = e.gender ? e.gender : this.gender(), n = e.first ? e.first : this.first({ gender: a, nationality: "it" }), l = e.last ? e.last : this.last({ nationality: "it" }), s = e.birthday ? e.birthday : this.birthday(), g = e.city ? e.city : this.pickone(["A", "B", "C", "D", "E", "F", "G", "H", "I", "L", "M", "Z"]) + this.pad(this.natural({ max: 999 }), 3), B = [], f = function(A, H) { - var _, W = []; - return A.length < 3 ? W = A.split("").concat("XXX".split("")).splice(0, 3) : (_ = A.toUpperCase().split("").map(function(J) { + var a = e.gender ? e.gender : this.gender(), n = e.first ? e.first : this.first({ gender: a, nationality: "it" }), c = e.last ? e.last : this.last({ nationality: "it" }), u = e.birthday ? e.birthday : this.birthday(), g = e.city ? e.city : this.pickone(["A", "B", "C", "D", "E", "F", "G", "H", "I", "L", "M", "Z"]) + this.pad(this.natural({ max: 999 }), 3), P = [], b = function(A, H) { + var O, W = []; + return A.length < 3 ? W = A.split("").concat("XXX".split("")).splice(0, 3) : (O = A.toUpperCase().split("").map(function(J) { return "BCDFGHJKLMNPRSTVWZ".indexOf(J) !== -1 ? J : void 0; - }).join(""), _.length > 3 && (H ? _ = _.substr(0, 3) : _ = _[0] + _.substr(2, 2)), _.length < 3 && (W = _, _ = A.toUpperCase().split("").map(function(J) { + }).join(""), O.length > 3 && (H ? O = O.substr(0, 3) : O = O[0] + O.substr(2, 2)), O.length < 3 && (W = O, O = A.toUpperCase().split("").map(function(J) { return "AEIOU".indexOf(J) !== -1 ? J : void 0; - }).join("").substr(0, 3 - W.length)), W = W + _), W; - }, v = function(A, H, _) { + }).join("").substr(0, 3 - W.length)), W = W + O), W; + }, v = function(A, H, O) { var W = ["A", "B", "C", "D", "E", "H", "L", "M", "P", "R", "S", "T"]; - return A.getFullYear().toString().substr(2) + W[A.getMonth()] + _.pad(A.getDate() + (H.toLowerCase() === "female" ? 40 : 0), 2); + return A.getFullYear().toString().substr(2) + W[A.getMonth()] + O.pad(A.getDate() + (H.toLowerCase() === "female" ? 40 : 0), 2); }, C = function(A) { - for (var H = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ", _ = "ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ", W = "ABCDEFGHIJKLMNOPQRSTUVWXYZ", J = "BAKPLCQDREVOSFTGUHMINJWZYX", V = 0, U = 0; U < 15; U++) - U % 2 !== 0 ? V += W.indexOf(_[H.indexOf(A[U])]) : V += J.indexOf(_[H.indexOf(A[U])]); + for (var H = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ", O = "ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ", W = "ABCDEFGHIJKLMNOPQRSTUVWXYZ", J = "BAKPLCQDREVOSFTGUHMINJWZYX", V = 0, U = 0; U < 15; U++) + U % 2 !== 0 ? V += W.indexOf(O[H.indexOf(A[U])]) : V += J.indexOf(O[H.indexOf(A[U])]); return W[V % 26]; }; - return B = B.concat(f(l, !0), f(n), v(s, a, this), g.toUpperCase().split("")).join(""), B += C(B.toUpperCase()), B.toUpperCase(); + return P = P.concat(b(c, !0), b(n), v(u, a, this), g.toUpperCase().split("")).join(""), P += C(P.toUpperCase()), P.toUpperCase(); }, r.prototype.pl_pesel = function() { for (var e = this.natural({ min: 1, max: 9999999999 }), a = this.pad(e, 10).split(""), n = 0; n < a.length; n++) a[n] = parseInt(a[n]); - var l = (1 * a[0] + 3 * a[1] + 7 * a[2] + 9 * a[3] + 1 * a[4] + 3 * a[5] + 7 * a[6] + 9 * a[7] + 1 * a[8] + 3 * a[9]) % 10; - return l !== 0 && (l = 10 - l), a.join("") + l; + var c = (1 * a[0] + 3 * a[1] + 7 * a[2] + 9 * a[3] + 1 * a[4] + 3 * a[5] + 7 * a[6] + 9 * a[7] + 1 * a[8] + 3 * a[9]) % 10; + return c !== 0 && (c = 10 - c), a.join("") + c; }, r.prototype.pl_nip = function() { for (var e = this.natural({ min: 1, max: 999999999 }), a = this.pad(e, 9).split(""), n = 0; n < a.length; n++) a[n] = parseInt(a[n]); - var l = (6 * a[0] + 5 * a[1] + 7 * a[2] + 2 * a[3] + 3 * a[4] + 4 * a[5] + 5 * a[6] + 6 * a[7] + 7 * a[8]) % 11; - return l === 10 ? this.pl_nip() : a.join("") + l; + var c = (6 * a[0] + 5 * a[1] + 7 * a[2] + 2 * a[3] + 3 * a[4] + 4 * a[5] + 5 * a[6] + 6 * a[7] + 7 * a[8]) % 11; + return c === 10 ? this.pl_nip() : a.join("") + c; }, r.prototype.pl_regon = function() { for (var e = this.natural({ min: 1, max: 99999999 }), a = this.pad(e, 8).split(""), n = 0; n < a.length; n++) a[n] = parseInt(a[n]); - var l = (8 * a[0] + 9 * a[1] + 2 * a[2] + 3 * a[3] + 4 * a[4] + 5 * a[5] + 6 * a[6] + 7 * a[7]) % 11; - return l === 10 && (l = 0), a.join("") + l; + var c = (8 * a[0] + 9 * a[1] + 2 * a[2] + 3 * a[3] + 4 * a[4] + 5 * a[5] + 6 * a[6] + 7 * a[7]) % 11; + return c === 10 && (c = 0), a.join("") + c; }, r.prototype.note = function(e) { - e = u(e, { notes: "flatKey" }); + e = s(e, { notes: "flatKey" }); var a = { naturals: ["C", "D", "E", "F", "G", "A", "B"], flats: ["D\u266D", "E\u266D", "G\u266D", "A\u266D", "B\u266D"], @@ -1117,9 +1117,9 @@ var ie = { exports: {} }; return a.all = a.naturals.concat(a.flats.concat(a.sharps)), a.flatKey = a.naturals.concat(a.flats), a.sharpKey = a.naturals.concat(a.sharps), this.pickone(a[e.notes]); }, r.prototype.midi_note = function(e) { var a = 0, n = 127; - return e = u(e, { min: a, max: n }), this.integer({ min: e.min, max: e.max }); + return e = s(e, { min: a, max: n }), this.integer({ min: e.min, max: e.max }); }, r.prototype.chord_quality = function(e) { - e = u(e, { jazz: !0 }); + e = s(e, { jazz: !0 }); var a = ["maj", "min", "aug", "dim"]; return e.jazz && (a = [ "maj7", @@ -1130,10 +1130,10 @@ var ie = { exports: {} }; "\xF8" ]), this.pickone(a); }, r.prototype.chord = function(e) { - return e = u(e), this.note(e) + this.chord_quality(e); + return e = s(e), this.note(e) + this.chord_quality(e); }, r.prototype.tempo = function(e) { var a = 40, n = 320; - return e = u(e, { min: a, max: n }), this.integer({ min: e.min, max: e.max }); + return e = s(e, { min: a, max: n }), this.integer({ min: e.min, max: e.max }); }, r.prototype.coin = function() { return this.bool() ? "heads" : "tails"; }; @@ -1143,33 +1143,33 @@ var ie = { exports: {} }; }; } r.prototype.d4 = M({ min: 1, max: 4 }), r.prototype.d6 = M({ min: 1, max: 6 }), r.prototype.d8 = M({ min: 1, max: 8 }), r.prototype.d10 = M({ min: 1, max: 10 }), r.prototype.d12 = M({ min: 1, max: 12 }), r.prototype.d20 = M({ min: 1, max: 20 }), r.prototype.d30 = M({ min: 1, max: 30 }), r.prototype.d100 = M({ min: 1, max: 100 }), r.prototype.rpg = function(e, a) { - if (a = u(a), e) { - var n = e.toLowerCase().split("d"), l = []; + if (a = s(a), e) { + var n = e.toLowerCase().split("d"), c = []; if (n.length !== 2 || !parseInt(n[0], 10) || !parseInt(n[1], 10)) throw new Error("Chance: Invalid format provided. Please provide #d# where the first # is the number of dice to roll, the second # is the max of each die"); - for (var s = n[0]; s > 0; s--) - l[s - 1] = this.natural({ min: 1, max: n[1] }); - return typeof a.sum < "u" && a.sum ? l.reduce(function(g, B) { - return g + B; - }) : l; + for (var u = n[0]; u > 0; u--) + c[u - 1] = this.natural({ min: 1, max: n[1] }); + return typeof a.sum < "u" && a.sum ? c.reduce(function(g, P) { + return g + P; + }) : c; } else throw new RangeError("Chance: A type of die roll must be included"); }, r.prototype.guid = function(e) { - e = u(e, { version: 5 }); - var a = "abcdef1234567890", n = "ab89", l = this.string({ pool: a, length: 8 }) + "-" + this.string({ pool: a, length: 4 }) + "-" + // The Version + e = s(e, { version: 5 }); + var a = "abcdef1234567890", n = "ab89", c = this.string({ pool: a, length: 8 }) + "-" + this.string({ pool: a, length: 4 }) + "-" + // The Version e.version + this.string({ pool: a, length: 3 }) + "-" + // The Variant this.string({ pool: n, length: 1 }) + this.string({ pool: a, length: 3 }) + "-" + this.string({ pool: a, length: 12 }); - return l; + return c; }, r.prototype.hash = function(e) { - e = u(e, { length: 40, casing: "lower" }); - var a = e.casing === "upper" ? b.toUpperCase() : b; + e = s(e, { length: 40, casing: "lower" }); + var a = e.casing === "upper" ? p.toUpperCase() : p; return this.string({ pool: a, length: e.length }); }, r.prototype.luhn_check = function(e) { var a = e.toString(), n = +a.substring(a.length - 1); return n === this.luhn_calculate(+a.substring(0, a.length - 1)); }, r.prototype.luhn_calculate = function(e) { - for (var a = e.toString().split("").reverse(), n = 0, l, s = 0, g = a.length; g > s; ++s) - l = +a[s], s % 2 === 0 && (l *= 2, l > 9 && (l -= 9)), n += l; + for (var a = e.toString().split("").reverse(), n = 0, c, u = 0, g = a.length; g > u; ++u) + c = +a[u], u % 2 === 0 && (c *= 2, c > 9 && (c -= 9)), n += c; return n * 9 % 10; }, r.prototype.md5 = function(e) { var a = { str: "", key: null, raw: !1 }; @@ -1183,40 +1183,40 @@ var ie = { exports: {} }; if (e.constructor === "Array") return null; } - if (a = u(e, a), !a.str) + if (a = s(e, a), !a.str) throw new Error("A parameter is required to return an md5 hash."); return this.bimd5.md5(a.str, a.key, a.raw); }, r.prototype.file = function(e) { - var a = e || {}, n = "fileExtension", l = Object.keys(this.get("fileExtension")), s, g; - if (s = this.word({ length: a.length }), a.extension) - return g = a.extension, s + "." + g; + var a = e || {}, n = "fileExtension", c = Object.keys(this.get("fileExtension")), u, g; + if (u = this.word({ length: a.length }), a.extension) + return g = a.extension, u + "." + g; if (a.extensions) { if (Array.isArray(a.extensions)) - return g = this.pickone(a.extensions), s + "." + g; + return g = this.pickone(a.extensions), u + "." + g; if (a.extensions.constructor === Object) { - var B = a.extensions, f = Object.keys(B); - return g = this.pickone(B[this.pickone(f)]), s + "." + g; + var P = a.extensions, b = Object.keys(P); + return g = this.pickone(P[this.pickone(b)]), u + "." + g; } throw new Error("Chance: Extensions must be an Array or Object"); } if (a.fileType) { var v = a.fileType; - if (l.indexOf(v) !== -1) - return g = this.pickone(this.get(n)[v]), s + "." + g; + if (c.indexOf(v) !== -1) + return g = this.pickone(this.get(n)[v]), u + "." + g; throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'"); } - return g = this.pickone(this.get(n)[this.pickone(l)]), s + "." + g; + return g = this.pickone(this.get(n)[this.pickone(c)]), u + "." + g; }, r.prototype.fileWithContent = function(e) { var a = e || {}, n = "fileName" in a ? a.fileName : this.file().split(".")[0]; if (n += "." + ("fileExtension" in a ? a.fileExtension : this.file().split(".")[1]), typeof a.fileSize != "number") throw new Error("File size must be an integer"); - var l = { + var c = { fileData: this.buffer({ length: a.fileSize }), fileName: n }; - return l; + return c; }; - var x = { + var N = { firstNames: { male: { en: ["James", "John", "Robert", "Michael", "William", "David", "Richard", "Joseph", "Charles", "Thomas", "Christopher", "Daniel", "Matthew", "George", "Donald", "Anthony", "Paul", "Mark", "Edward", "Steven", "Kenneth", "Andrew", "Brian", "Joshua", "Kevin", "Ronald", "Timothy", "Jason", "Jeffrey", "Frank", "Gary", "Ryan", "Nicholas", "Eric", "Stephen", "Jacob", "Larry", "Jonathan", "Scott", "Raymond", "Justin", "Brandon", "Gregory", "Samuel", "Benjamin", "Patrick", "Jack", "Henry", "Walter", "Dennis", "Jerry", "Alexander", "Peter", "Tyler", "Douglas", "Harold", "Aaron", "Jose", "Adam", "Arthur", "Zachary", "Carl", "Nathan", "Albert", "Kyle", "Lawrence", "Joe", "Willie", "Gerald", "Roger", "Keith", "Jeremy", "Terry", "Harry", "Ralph", "Sean", "Jesse", "Roy", "Louis", "Billy", "Austin", "Bruce", "Eugene", "Christian", "Bryan", "Wayne", "Russell", "Howard", "Fred", "Ethan", "Jordan", "Philip", "Alan", "Juan", "Randy", "Vincent", "Bobby", "Dylan", "Johnny", "Phillip", "Victor", "Clarence", "Ernest", "Martin", "Craig", "Stanley", "Shawn", "Travis", "Bradley", "Leonard", "Earl", "Gabriel", "Jimmy", "Francis", "Todd", "Noah", "Danny", "Dale", "Cody", "Carlos", "Allen", "Frederick", "Logan", "Curtis", "Alex", "Joel", "Luis", "Norman", "Marvin", "Glenn", "Tony", "Nathaniel", "Rodney", "Melvin", "Alfred", "Steve", "Cameron", "Chad", "Edwin", "Caleb", "Evan", "Antonio", "Lee", "Herbert", "Jeffery", "Isaac", "Derek", "Ricky", "Marcus", "Theodore", "Elijah", "Luke", "Jesus", "Eddie", "Troy", "Mike", "Dustin", "Ray", "Adrian", "Bernard", "Leroy", "Angel", "Randall", "Wesley", "Ian", "Jared", "Mason", "Hunter", "Calvin", "Oscar", "Clifford", "Jay", "Shane", "Ronnie", "Barry", "Lucas", "Corey", "Manuel", "Leo", "Tommy", "Warren", "Jackson", "Isaiah", "Connor", "Don", "Dean", "Jon", "Julian", "Miguel", "Bill", "Lloyd", "Charlie", "Mitchell", "Leon", "Jerome", "Darrell", "Jeremiah", "Alvin", "Brett", "Seth", "Floyd", "Jim", "Blake", "Micheal", "Gordon", "Trevor", "Lewis", "Erik", "Edgar", "Vernon", "Devin", "Gavin", "Jayden", "Chris", "Clyde", "Tom", "Derrick", "Mario", "Brent", "Marc", "Herman", "Chase", "Dominic", "Ricardo", "Franklin", "Maurice", "Max", "Aiden", "Owen", "Lester", "Gilbert", "Elmer", "Gene", "Francisco", "Glen", "Cory", "Garrett", "Clayton", "Sam", "Jorge", "Chester", "Alejandro", "Jeff", "Harvey", "Milton", "Cole", "Ivan", "Andre", "Duane", "Landon"], @@ -7027,32 +7027,32 @@ var ie = { exports: {} }; "sadness", "fear" ] - }, D = Object.prototype.hasOwnProperty, N = Object.keys || function(e) { + }, k = Object.prototype.hasOwnProperty, x = Object.keys || function(e) { var a = []; for (var n in e) - D.call(e, n) && a.push(n); + k.call(e, n) && a.push(n); return a; }; - function R(e, a) { - for (var n = N(e), l, s = 0, g = n.length; s < g; s++) - l = n[s], a[l] = e[l] || a[l]; + function w(e, a) { + for (var n = x(e), c, u = 0, g = n.length; u < g; u++) + c = n[u], a[c] = e[c] || a[c]; } - function G(e, a) { - for (var n = 0, l = e.length; n < l; n++) + function R(e, a) { + for (var n = 0, c = e.length; n < c; n++) a[n] = e[n]; } - function F(e, a) { - var n = Array.isArray(e), l = a || (n ? new Array(e.length) : {}); - return n ? G(e, l) : R(e, l), l; + function _(e, a) { + var n = Array.isArray(e), c = a || (n ? new Array(e.length) : {}); + return n ? R(e, c) : w(e, c), c; } r.prototype.get = function(e) { - return F(x[e]); + return _(N[e]); }, r.prototype.mac_address = function(e) { - e = u(e), e.separator || (e.separator = e.networkVersion ? "." : ":"); + e = s(e), e.separator || (e.separator = e.networkVersion ? "." : ":"); var a = "ABCDEF1234567890", n = ""; return e.networkVersion ? n = this.n(this.string, 3, { pool: a, length: 4 }).join(e.separator) : n = this.n(this.string, 6, { pool: a, length: 2 }).join(e.separator), n; }, r.prototype.normal = function(e) { - if (e = u(e, { mean: 0, dev: 1, pool: [] }), t( + if (e = s(e, { mean: 0, dev: 1, pool: [] }), t( e.pool.constructor !== Array, "Chance: The pool option must be a valid array." ), t( @@ -7063,11 +7063,11 @@ var ie = { exports: {} }; "Chance: Standard deviation (dev) must be a number" ), e.pool.length > 0) return this.normal_pool(e); - var a, n, l, s, g = e.mean, B = e.dev; + var a, n, c, u, g = e.mean, P = e.dev; do - n = this.random() * 2 - 1, l = this.random() * 2 - 1, a = n * n + l * l; + n = this.random() * 2 - 1, c = this.random() * 2 - 1, a = n * n + c * c; while (a >= 1); - return s = n * Math.sqrt(-2 * Math.log(a) / a), B * s + g; + return u = n * Math.sqrt(-2 * Math.log(a) / a), P * u + g; }, r.prototype.normal_pool = function(e) { var a = 0; do { @@ -7078,7 +7078,7 @@ var ie = { exports: {} }; } while (a < 100); throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust."); }, r.prototype.radio = function(e) { - e = u(e, { side: "?" }); + e = s(e, { side: "?" }); var a = ""; switch (e.side.toLowerCase()) { case "east": @@ -7095,7 +7095,7 @@ var ie = { exports: {} }; } return a + this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }); }, r.prototype.set = function(e, a) { - typeof e == "string" ? x[e] = a : x = F(e, x); + typeof e == "string" ? N[e] = a : N = _(e, N); }, r.prototype.tv = function(e) { return this.radio(e); }, r.prototype.cnpj = function() { @@ -7106,24 +7106,24 @@ var ie = { exports: {} }; }, r.prototype.emotion = function() { return this.pick(this.get("emotions")); }, r.prototype.mersenne_twister = function(e) { - return new O(e); + return new F(e); }, r.prototype.blueimp_md5 = function() { - return new w(); + return new G(); }; - var O = function(e) { + var F = function(e) { e === void 0 && (e = Math.floor(Math.random() * Math.pow(10, 13))), this.N = 624, this.M = 397, this.MATRIX_A = 2567483615, this.UPPER_MASK = 2147483648, this.LOWER_MASK = 2147483647, this.mt = new Array(this.N), this.mti = this.N + 1, this.init_genrand(e); }; - O.prototype.init_genrand = function(e) { + F.prototype.init_genrand = function(e) { for (this.mt[0] = e >>> 0, this.mti = 1; this.mti < this.N; this.mti++) e = this.mt[this.mti - 1] ^ this.mt[this.mti - 1] >>> 30, this.mt[this.mti] = (((e & 4294901760) >>> 16) * 1812433253 << 16) + (e & 65535) * 1812433253 + this.mti, this.mt[this.mti] >>>= 0; - }, O.prototype.init_by_array = function(e, a) { - var n = 1, l = 0, s, g; - for (this.init_genrand(19650218), s = this.N > a ? this.N : a; s; s--) - g = this.mt[n - 1] ^ this.mt[n - 1] >>> 30, this.mt[n] = (this.mt[n] ^ (((g & 4294901760) >>> 16) * 1664525 << 16) + (g & 65535) * 1664525) + e[l] + l, this.mt[n] >>>= 0, n++, l++, n >= this.N && (this.mt[0] = this.mt[this.N - 1], n = 1), l >= a && (l = 0); - for (s = this.N - 1; s; s--) + }, F.prototype.init_by_array = function(e, a) { + var n = 1, c = 0, u, g; + for (this.init_genrand(19650218), u = this.N > a ? this.N : a; u; u--) + g = this.mt[n - 1] ^ this.mt[n - 1] >>> 30, this.mt[n] = (this.mt[n] ^ (((g & 4294901760) >>> 16) * 1664525 << 16) + (g & 65535) * 1664525) + e[c] + c, this.mt[n] >>>= 0, n++, c++, n >= this.N && (this.mt[0] = this.mt[this.N - 1], n = 1), c >= a && (c = 0); + for (u = this.N - 1; u; u--) g = this.mt[n - 1] ^ this.mt[n - 1] >>> 30, this.mt[n] = (this.mt[n] ^ (((g & 4294901760) >>> 16) * 1566083941 << 16) + (g & 65535) * 1566083941) - n, this.mt[n] >>>= 0, n++, n >= this.N && (this.mt[0] = this.mt[this.N - 1], n = 1); this.mt[0] = 2147483648; - }, O.prototype.genrand_int32 = function() { + }, F.prototype.genrand_int32 = function() { var e, a = new Array(0, this.MATRIX_A); if (this.mti >= this.N) { var n; @@ -7134,292 +7134,297 @@ var ie = { exports: {} }; e = this.mt[this.N - 1] & this.UPPER_MASK | this.mt[0] & this.LOWER_MASK, this.mt[this.N - 1] = this.mt[this.M - 1] ^ e >>> 1 ^ a[e & 1], this.mti = 0; } return e = this.mt[this.mti++], e ^= e >>> 11, e ^= e << 7 & 2636928640, e ^= e << 15 & 4022730752, e ^= e >>> 18, e >>> 0; - }, O.prototype.genrand_int31 = function() { + }, F.prototype.genrand_int31 = function() { return this.genrand_int32() >>> 1; - }, O.prototype.genrand_real1 = function() { + }, F.prototype.genrand_real1 = function() { return this.genrand_int32() * (1 / 4294967295); - }, O.prototype.random = function() { + }, F.prototype.random = function() { return this.genrand_int32() * (1 / 4294967296); - }, O.prototype.genrand_real3 = function() { + }, F.prototype.genrand_real3 = function() { return (this.genrand_int32() + 0.5) * (1 / 4294967296); - }, O.prototype.genrand_res53 = function() { + }, F.prototype.genrand_res53 = function() { var e = this.genrand_int32() >>> 5, a = this.genrand_int32() >>> 6; return (e * 67108864 + a) * (1 / 9007199254740992); }; - var w = function() { + var G = function() { }; - w.prototype.VERSION = "1.0.1", w.prototype.safe_add = function(a, n) { - var l = (a & 65535) + (n & 65535), s = (a >> 16) + (n >> 16) + (l >> 16); - return s << 16 | l & 65535; - }, w.prototype.bit_roll = function(e, a) { + G.prototype.VERSION = "1.0.1", G.prototype.safe_add = function(a, n) { + var c = (a & 65535) + (n & 65535), u = (a >> 16) + (n >> 16) + (c >> 16); + return u << 16 | c & 65535; + }, G.prototype.bit_roll = function(e, a) { return e << a | e >>> 32 - a; - }, w.prototype.md5_cmn = function(e, a, n, l, s, g) { - return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a, e), this.safe_add(l, g)), s), n); - }, w.prototype.md5_ff = function(e, a, n, l, s, g, B) { - return this.md5_cmn(a & n | ~a & l, e, a, s, g, B); - }, w.prototype.md5_gg = function(e, a, n, l, s, g, B) { - return this.md5_cmn(a & l | n & ~l, e, a, s, g, B); - }, w.prototype.md5_hh = function(e, a, n, l, s, g, B) { - return this.md5_cmn(a ^ n ^ l, e, a, s, g, B); - }, w.prototype.md5_ii = function(e, a, n, l, s, g, B) { - return this.md5_cmn(n ^ (a | ~l), e, a, s, g, B); - }, w.prototype.binl_md5 = function(e, a) { + }, G.prototype.md5_cmn = function(e, a, n, c, u, g) { + return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a, e), this.safe_add(c, g)), u), n); + }, G.prototype.md5_ff = function(e, a, n, c, u, g, P) { + return this.md5_cmn(a & n | ~a & c, e, a, u, g, P); + }, G.prototype.md5_gg = function(e, a, n, c, u, g, P) { + return this.md5_cmn(a & c | n & ~c, e, a, u, g, P); + }, G.prototype.md5_hh = function(e, a, n, c, u, g, P) { + return this.md5_cmn(a ^ n ^ c, e, a, u, g, P); + }, G.prototype.md5_ii = function(e, a, n, c, u, g, P) { + return this.md5_cmn(n ^ (a | ~c), e, a, u, g, P); + }, G.prototype.binl_md5 = function(e, a) { e[a >> 5] |= 128 << a % 32, e[(a + 64 >>> 9 << 4) + 14] = a; - var n, l, s, g, B, f = 1732584193, v = -271733879, C = -1732584194, A = 271733878; + var n, c, u, g, P, b = 1732584193, v = -271733879, C = -1732584194, A = 271733878; for (n = 0; n < e.length; n += 16) - l = f, s = v, g = C, B = A, f = this.md5_ff(f, v, C, A, e[n], 7, -680876936), A = this.md5_ff(A, f, v, C, e[n + 1], 12, -389564586), C = this.md5_ff(C, A, f, v, e[n + 2], 17, 606105819), v = this.md5_ff(v, C, A, f, e[n + 3], 22, -1044525330), f = this.md5_ff(f, v, C, A, e[n + 4], 7, -176418897), A = this.md5_ff(A, f, v, C, e[n + 5], 12, 1200080426), C = this.md5_ff(C, A, f, v, e[n + 6], 17, -1473231341), v = this.md5_ff(v, C, A, f, e[n + 7], 22, -45705983), f = this.md5_ff(f, v, C, A, e[n + 8], 7, 1770035416), A = this.md5_ff(A, f, v, C, e[n + 9], 12, -1958414417), C = this.md5_ff(C, A, f, v, e[n + 10], 17, -42063), v = this.md5_ff(v, C, A, f, e[n + 11], 22, -1990404162), f = this.md5_ff(f, v, C, A, e[n + 12], 7, 1804603682), A = this.md5_ff(A, f, v, C, e[n + 13], 12, -40341101), C = this.md5_ff(C, A, f, v, e[n + 14], 17, -1502002290), v = this.md5_ff(v, C, A, f, e[n + 15], 22, 1236535329), f = this.md5_gg(f, v, C, A, e[n + 1], 5, -165796510), A = this.md5_gg(A, f, v, C, e[n + 6], 9, -1069501632), C = this.md5_gg(C, A, f, v, e[n + 11], 14, 643717713), v = this.md5_gg(v, C, A, f, e[n], 20, -373897302), f = this.md5_gg(f, v, C, A, e[n + 5], 5, -701558691), A = this.md5_gg(A, f, v, C, e[n + 10], 9, 38016083), C = this.md5_gg(C, A, f, v, e[n + 15], 14, -660478335), v = this.md5_gg(v, C, A, f, e[n + 4], 20, -405537848), f = this.md5_gg(f, v, C, A, e[n + 9], 5, 568446438), A = this.md5_gg(A, f, v, C, e[n + 14], 9, -1019803690), C = this.md5_gg(C, A, f, v, e[n + 3], 14, -187363961), v = this.md5_gg(v, C, A, f, e[n + 8], 20, 1163531501), f = this.md5_gg(f, v, C, A, e[n + 13], 5, -1444681467), A = this.md5_gg(A, f, v, C, e[n + 2], 9, -51403784), C = this.md5_gg(C, A, f, v, e[n + 7], 14, 1735328473), v = this.md5_gg(v, C, A, f, e[n + 12], 20, -1926607734), f = this.md5_hh(f, v, C, A, e[n + 5], 4, -378558), A = this.md5_hh(A, f, v, C, e[n + 8], 11, -2022574463), C = this.md5_hh(C, A, f, v, e[n + 11], 16, 1839030562), v = this.md5_hh(v, C, A, f, e[n + 14], 23, -35309556), f = this.md5_hh(f, v, C, A, e[n + 1], 4, -1530992060), A = this.md5_hh(A, f, v, C, e[n + 4], 11, 1272893353), C = this.md5_hh(C, A, f, v, e[n + 7], 16, -155497632), v = this.md5_hh(v, C, A, f, e[n + 10], 23, -1094730640), f = this.md5_hh(f, v, C, A, e[n + 13], 4, 681279174), A = this.md5_hh(A, f, v, C, e[n], 11, -358537222), C = this.md5_hh(C, A, f, v, e[n + 3], 16, -722521979), v = this.md5_hh(v, C, A, f, e[n + 6], 23, 76029189), f = this.md5_hh(f, v, C, A, e[n + 9], 4, -640364487), A = this.md5_hh(A, f, v, C, e[n + 12], 11, -421815835), C = this.md5_hh(C, A, f, v, e[n + 15], 16, 530742520), v = this.md5_hh(v, C, A, f, e[n + 2], 23, -995338651), f = this.md5_ii(f, v, C, A, e[n], 6, -198630844), A = this.md5_ii(A, f, v, C, e[n + 7], 10, 1126891415), C = this.md5_ii(C, A, f, v, e[n + 14], 15, -1416354905), v = this.md5_ii(v, C, A, f, e[n + 5], 21, -57434055), f = this.md5_ii(f, v, C, A, e[n + 12], 6, 1700485571), A = this.md5_ii(A, f, v, C, e[n + 3], 10, -1894986606), C = this.md5_ii(C, A, f, v, e[n + 10], 15, -1051523), v = this.md5_ii(v, C, A, f, e[n + 1], 21, -2054922799), f = this.md5_ii(f, v, C, A, e[n + 8], 6, 1873313359), A = this.md5_ii(A, f, v, C, e[n + 15], 10, -30611744), C = this.md5_ii(C, A, f, v, e[n + 6], 15, -1560198380), v = this.md5_ii(v, C, A, f, e[n + 13], 21, 1309151649), f = this.md5_ii(f, v, C, A, e[n + 4], 6, -145523070), A = this.md5_ii(A, f, v, C, e[n + 11], 10, -1120210379), C = this.md5_ii(C, A, f, v, e[n + 2], 15, 718787259), v = this.md5_ii(v, C, A, f, e[n + 9], 21, -343485551), f = this.safe_add(f, l), v = this.safe_add(v, s), C = this.safe_add(C, g), A = this.safe_add(A, B); - return [f, v, C, A]; - }, w.prototype.binl2rstr = function(e) { + c = b, u = v, g = C, P = A, b = this.md5_ff(b, v, C, A, e[n], 7, -680876936), A = this.md5_ff(A, b, v, C, e[n + 1], 12, -389564586), C = this.md5_ff(C, A, b, v, e[n + 2], 17, 606105819), v = this.md5_ff(v, C, A, b, e[n + 3], 22, -1044525330), b = this.md5_ff(b, v, C, A, e[n + 4], 7, -176418897), A = this.md5_ff(A, b, v, C, e[n + 5], 12, 1200080426), C = this.md5_ff(C, A, b, v, e[n + 6], 17, -1473231341), v = this.md5_ff(v, C, A, b, e[n + 7], 22, -45705983), b = this.md5_ff(b, v, C, A, e[n + 8], 7, 1770035416), A = this.md5_ff(A, b, v, C, e[n + 9], 12, -1958414417), C = this.md5_ff(C, A, b, v, e[n + 10], 17, -42063), v = this.md5_ff(v, C, A, b, e[n + 11], 22, -1990404162), b = this.md5_ff(b, v, C, A, e[n + 12], 7, 1804603682), A = this.md5_ff(A, b, v, C, e[n + 13], 12, -40341101), C = this.md5_ff(C, A, b, v, e[n + 14], 17, -1502002290), v = this.md5_ff(v, C, A, b, e[n + 15], 22, 1236535329), b = this.md5_gg(b, v, C, A, e[n + 1], 5, -165796510), A = this.md5_gg(A, b, v, C, e[n + 6], 9, -1069501632), C = this.md5_gg(C, A, b, v, e[n + 11], 14, 643717713), v = this.md5_gg(v, C, A, b, e[n], 20, -373897302), b = this.md5_gg(b, v, C, A, e[n + 5], 5, -701558691), A = this.md5_gg(A, b, v, C, e[n + 10], 9, 38016083), C = this.md5_gg(C, A, b, v, e[n + 15], 14, -660478335), v = this.md5_gg(v, C, A, b, e[n + 4], 20, -405537848), b = this.md5_gg(b, v, C, A, e[n + 9], 5, 568446438), A = this.md5_gg(A, b, v, C, e[n + 14], 9, -1019803690), C = this.md5_gg(C, A, b, v, e[n + 3], 14, -187363961), v = this.md5_gg(v, C, A, b, e[n + 8], 20, 1163531501), b = this.md5_gg(b, v, C, A, e[n + 13], 5, -1444681467), A = this.md5_gg(A, b, v, C, e[n + 2], 9, -51403784), C = this.md5_gg(C, A, b, v, e[n + 7], 14, 1735328473), v = this.md5_gg(v, C, A, b, e[n + 12], 20, -1926607734), b = this.md5_hh(b, v, C, A, e[n + 5], 4, -378558), A = this.md5_hh(A, b, v, C, e[n + 8], 11, -2022574463), C = this.md5_hh(C, A, b, v, e[n + 11], 16, 1839030562), v = this.md5_hh(v, C, A, b, e[n + 14], 23, -35309556), b = this.md5_hh(b, v, C, A, e[n + 1], 4, -1530992060), A = this.md5_hh(A, b, v, C, e[n + 4], 11, 1272893353), C = this.md5_hh(C, A, b, v, e[n + 7], 16, -155497632), v = this.md5_hh(v, C, A, b, e[n + 10], 23, -1094730640), b = this.md5_hh(b, v, C, A, e[n + 13], 4, 681279174), A = this.md5_hh(A, b, v, C, e[n], 11, -358537222), C = this.md5_hh(C, A, b, v, e[n + 3], 16, -722521979), v = this.md5_hh(v, C, A, b, e[n + 6], 23, 76029189), b = this.md5_hh(b, v, C, A, e[n + 9], 4, -640364487), A = this.md5_hh(A, b, v, C, e[n + 12], 11, -421815835), C = this.md5_hh(C, A, b, v, e[n + 15], 16, 530742520), v = this.md5_hh(v, C, A, b, e[n + 2], 23, -995338651), b = this.md5_ii(b, v, C, A, e[n], 6, -198630844), A = this.md5_ii(A, b, v, C, e[n + 7], 10, 1126891415), C = this.md5_ii(C, A, b, v, e[n + 14], 15, -1416354905), v = this.md5_ii(v, C, A, b, e[n + 5], 21, -57434055), b = this.md5_ii(b, v, C, A, e[n + 12], 6, 1700485571), A = this.md5_ii(A, b, v, C, e[n + 3], 10, -1894986606), C = this.md5_ii(C, A, b, v, e[n + 10], 15, -1051523), v = this.md5_ii(v, C, A, b, e[n + 1], 21, -2054922799), b = this.md5_ii(b, v, C, A, e[n + 8], 6, 1873313359), A = this.md5_ii(A, b, v, C, e[n + 15], 10, -30611744), C = this.md5_ii(C, A, b, v, e[n + 6], 15, -1560198380), v = this.md5_ii(v, C, A, b, e[n + 13], 21, 1309151649), b = this.md5_ii(b, v, C, A, e[n + 4], 6, -145523070), A = this.md5_ii(A, b, v, C, e[n + 11], 10, -1120210379), C = this.md5_ii(C, A, b, v, e[n + 2], 15, 718787259), v = this.md5_ii(v, C, A, b, e[n + 9], 21, -343485551), b = this.safe_add(b, c), v = this.safe_add(v, u), C = this.safe_add(C, g), A = this.safe_add(A, P); + return [b, v, C, A]; + }, G.prototype.binl2rstr = function(e) { var a, n = ""; for (a = 0; a < e.length * 32; a += 8) n += String.fromCharCode(e[a >> 5] >>> a % 32 & 255); return n; - }, w.prototype.rstr2binl = function(e) { + }, G.prototype.rstr2binl = function(e) { var a, n = []; for (n[(e.length >> 2) - 1] = void 0, a = 0; a < n.length; a += 1) n[a] = 0; for (a = 0; a < e.length * 8; a += 8) n[a >> 5] |= (e.charCodeAt(a / 8) & 255) << a % 32; return n; - }, w.prototype.rstr_md5 = function(e) { + }, G.prototype.rstr_md5 = function(e) { return this.binl2rstr(this.binl_md5(this.rstr2binl(e), e.length * 8)); - }, w.prototype.rstr_hmac_md5 = function(e, a) { - var n, l = this.rstr2binl(e), s = [], g = [], B; - for (s[15] = g[15] = void 0, l.length > 16 && (l = this.binl_md5(l, e.length * 8)), n = 0; n < 16; n += 1) - s[n] = l[n] ^ 909522486, g[n] = l[n] ^ 1549556828; - return B = this.binl_md5(s.concat(this.rstr2binl(a)), 512 + a.length * 8), this.binl2rstr(this.binl_md5(g.concat(B), 512 + 128)); - }, w.prototype.rstr2hex = function(e) { - var a = "0123456789abcdef", n = "", l, s; - for (s = 0; s < e.length; s += 1) - l = e.charCodeAt(s), n += a.charAt(l >>> 4 & 15) + a.charAt(l & 15); + }, G.prototype.rstr_hmac_md5 = function(e, a) { + var n, c = this.rstr2binl(e), u = [], g = [], P; + for (u[15] = g[15] = void 0, c.length > 16 && (c = this.binl_md5(c, e.length * 8)), n = 0; n < 16; n += 1) + u[n] = c[n] ^ 909522486, g[n] = c[n] ^ 1549556828; + return P = this.binl_md5(u.concat(this.rstr2binl(a)), 512 + a.length * 8), this.binl2rstr(this.binl_md5(g.concat(P), 512 + 128)); + }, G.prototype.rstr2hex = function(e) { + var a = "0123456789abcdef", n = "", c, u; + for (u = 0; u < e.length; u += 1) + c = e.charCodeAt(u), n += a.charAt(c >>> 4 & 15) + a.charAt(c & 15); return n; - }, w.prototype.str2rstr_utf8 = function(e) { + }, G.prototype.str2rstr_utf8 = function(e) { return unescape(encodeURIComponent(e)); - }, w.prototype.raw_md5 = function(e) { + }, G.prototype.raw_md5 = function(e) { return this.rstr_md5(this.str2rstr_utf8(e)); - }, w.prototype.hex_md5 = function(e) { + }, G.prototype.hex_md5 = function(e) { return this.rstr2hex(this.raw_md5(e)); - }, w.prototype.raw_hmac_md5 = function(e, a) { + }, G.prototype.raw_hmac_md5 = function(e, a) { return this.rstr_hmac_md5(this.str2rstr_utf8(e), this.str2rstr_utf8(a)); - }, w.prototype.hex_hmac_md5 = function(e, a) { + }, G.prototype.hex_hmac_md5 = function(e, a) { return this.rstr2hex(this.raw_hmac_md5(e, a)); - }, w.prototype.md5 = function(e, a, n) { + }, G.prototype.md5 = function(e, a, n) { return a ? n ? this.raw_hmac_md5(a, e) : this.hex_hmac_md5(a, e) : n ? this.raw_md5(e) : this.hex_md5(e); }, d.exports && (h = d.exports = r), h.Chance = r, typeof importScripts < "u" && (chance = new r(), self.Chance = r), typeof window == "object" && typeof window.document == "object" && (window.Chance = r, window.chance = new r()); })(); -})(ie, ie.exports); -var be = ie.exports; -const pe = /* @__PURE__ */ fe(be); -var Y = new pe(), le = function() { - function d(h, E, L, I) { - let k = L.toUpperCase(), p = h.toUpperCase(), b = E.toUpperCase(); - if (I != null && 0 < I.length) { - let i = 0, t = I.length; - var S = "'"; - (k.startsWith("INTEGER") || k.startsWith("NUMBER") || k.startsWith("DATE")) && (S = ""); - let o = I[Math.floor(Math.random() * (t - i)) + i]; - return o.toLowerCase && o.toLowerCase() == "null" && (S = ""), S + o + S; - } - if (b == "NAME" && 0 <= p.indexOf("DEPARTMENT")) { - var T = ["Sales", "Finance", "Delivery", "Manufacturing"]; - let i = 0, t = T.length; - return "'" + T[Math.floor(Math.random() * (t - i)) + i] + "'"; - } - if (Y[b.toLowerCase()] != null && b.indexOf("NAME") < 0) - return "'" + Y[b.toLowerCase()]() + "'"; - if (b == "FIRST_NAME") - return "'" + Y.first() + "'"; - if (b == "LAST_NAME") - return "'" + Y.last() + "'"; - if (0 <= b.indexOf("NAME")) - return "'" + Y.name() + "'"; - if (0 < b.indexOf("ADDRESS")) - return "'" + Y.address() + "'"; - if (b == "LOCATION") - return "'" + Y.city() + "'"; - if (b == "DESCRIPTION") - return "'" + Y.paragraph({ sentences: 2 }) + "'"; - if (b == "JOB") { - var r = ["Engineer", "Consultant", "Architect", "Manager", "Analyst", "Specialist", "Evangelist", "Salesman"]; - let i = 0, t = r.length; - return "'" + r[Math.floor(Math.random() * (t - i)) + i] + "'"; - } - if (k.startsWith("INTEGER") || k.startsWith("NUMBER")) { - let i = 0, t = 100; - return Math.floor(Math.random() * (t - i)) + i; - } - if (k.startsWith("DATE") || k.startsWith("TIMESTAMP")) { - let i = 0, t = 100; - var u = Math.floor(Math.random() * (t - i)) + i; - return "sysdate-" + u; - } - return "'N/A'"; +})(re, re.exports); +var pe = re.exports; +const ge = /* @__PURE__ */ be(pe); +var Y = new ge(); +function se(d, h, E, L) { + E == null && console.log(); + let T = E.toUpperCase(), D = d.toUpperCase(), f = h.toUpperCase(); + if (L != null && 0 < L.length) { + let s = 0, i = L.length; + var p = "'"; + (T.startsWith("INTEGER") || T.startsWith("NUMBER") || T.startsWith("DATE")) && (p = ""); + let t = L[Math.floor(Z() * (i - s)) + s]; + return t.toLowerCase && t.toLowerCase() == "null" && (p = ""), p + t + p; } - return d; -}(), $ = function() { + if (f == "NAME" && 0 <= D.indexOf("DEPARTMENT")) { + var y = ["Sales", "Finance", "Delivery", "Manufacturing"]; + let s = 0, i = y.length; + return "'" + y[Math.floor(Z() * (i - s)) + s] + "'"; + } + if (Y[f.toLowerCase()] != null && f.indexOf("NAME") < 0) + return "'" + Y[f.toLowerCase()]() + "'"; + if (f == "FIRST_NAME") + return "'" + Y.first() + "'"; + if (f == "LAST_NAME") + return "'" + Y.last() + "'"; + if (0 <= f.indexOf("NAME")) + return "'" + Y.name() + "'"; + if (0 < f.indexOf("ADDRESS")) + return "'" + Y.address() + "'"; + if (f == "LOCATION") + return "'" + Y.city() + "'"; + if (f == "DESCRIPTION") + return "'" + Y.paragraph({ sentences: 2 }) + "'"; + if (f == "JOB") { + var I = ["Engineer", "Consultant", "Architect", "Manager", "Analyst", "Specialist", "Evangelist", "Salesman"]; + let s = 0, i = I.length; + return "'" + I[Math.floor(Z() * (i - s)) + s] + "'"; + } + if (T.startsWith("INTEGER") || T.startsWith("NUMBER")) { + let s = 0, i = 100; + return Math.floor(Z() * (i - s)) + s; + } + if (T.startsWith("DATE") || T.startsWith("TIMESTAMP")) { + let s = 0, i = 100; + var r = Math.floor(Z() * (i - s)) + s; + return "sysdate-" + r; + } + return "'N/A'"; +} +var Ce = 1; +function Z() { + var d = Math.sin(Ce++) * 1e4; + return d - Math.floor(d); +} +var ee = function() { function d(h, E) { - for (var L = [], I = "", k = 0; k < h.length; k++) { - for (var p = h.charAt(k), b = L.length, S = 0; S < E.length; S++) { - var T = E.charAt(S); - if (p == T) { - 0 < I.length && L.push(I), L.push(p), I = ""; + for (var L = [], T = "", D = 0; D < h.length; D++) { + for (var f = h.charAt(D), p = L.length, y = 0; y < E.length; y++) { + var I = E.charAt(y); + if (f == I) { + 0 < T.length && L.push(T), L.push(f), T = ""; continue; } } - b == L.length && (I = I + p); + p == L.length && (T = T + f); } - return 0 < I.length && L.push(I), L; + return 0 < T.length && L.push(T), L; } return d; -}(), Z = function() { - function d(I, k, p, b, S, T) { - this.type = b, this.value = I, this.begin = k, this.end = p, this.line = S, this.col = T, this.toString = function() { - return "{type:" + b + ",value:" + I + "}"; +}(), Q = function() { + function d(T, D, f, p, y, I) { + this.type = p, this.value = T, this.begin = D, this.end = f, this.line = y, this.col = I, this.toString = function() { + return "{type:" + p + ",value:" + T + "}"; }, this.isStandardLiteral = function() { if (this.value.length < 2 || !(this.value.charAt(0) == "'" || this.value.charAt(0) == "n" || this.value.charAt(0) == "N")) return !1; - var u = this.value; - if (u.charAt(0) == "n" || u.charAt(0) == "N") { - if (u.length < 3) + var s = this.value; + if (s.charAt(0) == "n" || s.charAt(0) == "N") { + if (s.length < 3) return !1; - u = u.substring(1); + s = s.substring(1); } - return u.length < 2 ? !1 : u.charAt(0) == "'" && u.charAt(u.length - 1) == "'"; + return s.length < 2 ? !1 : s.charAt(0) == "'" && s.charAt(s.length - 1) == "'"; }, this.isAltLiteral = function() { if (this.value.length < 5 || !(this.value.charAt(0) == "q" || this.value.charAt(0) == "Q" || this.value.charAt(0) == "n" || this.value.charAt(0) == "N")) return !1; - var u = this.value; + var s = this.value; if (this.value.charAt(0) == "q" || this.value.charAt(0) == "Q") - u = u.substring(1); + s = s.substring(1); else if ( /*content.startsWith("Nq")*/ (this.value.charAt(0) == "n" || this.value.charAt(0) == "N") && (this.value.charAt(1) == "q" || this.value.charAt(1) == "Q") ) { - if (u.length < 6) + if (s.length < 6) return !1; - u = u.substring(2); + s = s.substring(2); } else return !1; - if (u.charAt(0) == "'" && u.charAt(u.length - 1) == "'") - u = u.substring(1, u.length - 1); + if (s.charAt(0) == "'" && s.charAt(s.length - 1) == "'") + s = s.substring(1, s.length - 1); else return !1; - return r(u.charAt(0)) == u.charAt(u.length - 1); + return r(s.charAt(0)) == s.charAt(s.length - 1); }; - function r(u) { - return u == "<" ? ">" : u == "[" ? "]" : u == "{" ? "}" : u == "(" ? ")" : u; + function r(s) { + return s == "<" ? ">" : s == "[" ? "]" : s == "{" ? "}" : s == "(" ? ")" : s; } } - function h(I, k, p) { - for (var b = [], S = `(){}[]^-|!*+.><='",;:%@?/\\#~` + p, T = ` -\r `, r = $( - I, + function h(T, D, f) { + for (var p = [], y = `(){}[]^-|!*+.><='",;:%@?/\\#~` + f, I = ` +\r `, r = ee( + T, //".*-+/|><=()\'\", \n\r\t" - S + T - ), u = 0, i = 0, t = 0, o = 0; o < r.length; o++) { - var c = r[o], m = null; - if (b.length > 0 && (m = b[b.length - 1]), c == ` + y + I + ), s = 0, i = 0, t = 0, o = 0; o < r.length; o++) { + var l = r[o], m = null; + if (p.length > 0 && (m = p[p.length - 1]), l == ` ` ? (i++, t = 0) : o > 0 && r[o - 1] !== ` -` ? t = t + r[o - 1].length : t = 0, u += c.length, m != null && m.type == "comment" && (m.value.lastIndexOf("*/") != m.value.length - 2 || m.value == "/*/")) { - c == "*" || c == "/" ? m.value = m.value + c : m.value = "/* ... ", m.end = u, m != null && m.type == "comment" && m.value.lastIndexOf("*/") == m.value.length - 2 && m.value != "/*/" && (m.value = I.substring(m.begin, m.end)); +` ? t = t + r[o - 1].length : t = 0, s += l.length, m != null && m.type == "comment" && (m.value.lastIndexOf("*/") != m.value.length - 2 || m.value == "/*/")) { + l == "*" || l == "/" ? m.value = m.value + l : m.value = "/* ... ", m.end = s, m != null && m.type == "comment" && m.value.lastIndexOf("*/") == m.value.length - 2 && m.value != "/*/" && (m.value = T.substring(m.begin, m.end)); continue; } - if (m != null && (m.type == "line-comment" || m.type == "dbtools-command") && c != ` + if (m != null && (m.type == "line-comment" || m.type == "dbtools-command") && l != ` `) { - m.value = m.value + c; + m.value = m.value + l; continue; } - if (m != null && (m.type == "line-comment" || m.type == "dbtools-command") && c == ` + if (m != null && (m.type == "line-comment" || m.type == "dbtools-command") && l == ` ` && (m.end = m.begin + m.value.length), m != null && m.type == "quoted-string" && !(m.isStandardLiteral() || m.isAltLiteral())) { - m.value = m.value + c, m.end = m.begin + m.value.length; + m.value = m.value + l, m.end = m.begin + m.value.length; continue; } - if (!(m != null && m.type == "dquoted-string" && c != '"' && !(m.value.endsWith('"') && m.value.length > 1))) { - if (m != null && m.type == "dquoted-string" && c == '"') { - m.end = u, m.value = I.substring(m.begin, m.end); + if (!(m != null && m.type == "dquoted-string" && l != '"' && !(m.value.endsWith('"') && m.value.length > 1))) { + if (m != null && m.type == "dquoted-string" && l == '"') { + m.end = s, m.value = T.substring(m.begin, m.end); continue; } - if (!(m != null && m.type == "bquoted-string" && c != "`" && !(m.value.endsWith("`") && m.value.length > 1))) { - if (m != null && m.type == "bquoted-string" && c == "`") { - m.end = u, m.value = I.substring(m.begin, m.end); + if (!(m != null && m.type == "bquoted-string" && l != "`" && !(m.value.endsWith("`") && m.value.length > 1))) { + if (m != null && m.type == "bquoted-string" && l == "`") { + m.end = s, m.value = T.substring(m.begin, m.end); continue; } - if (c == "*" && m != null && m.value == "/") { - m.value = m.value + c, m.end = m.begin + m.value.length, m.type = "comment"; + if (l == "*" && m != null && m.value == "/") { + m.value = m.value + l, m.end = m.begin + m.value.length, m.type = "comment"; continue; } - if (c == "-" && m != null && m.value == "-") { - m.value = m.value + c, m.type = "line-comment"; + if (l == "-" && m != null && m.value == "-") { + m.value = m.value + l, m.type = "line-comment"; continue; } - if ((c.toUpperCase() == "REM" || c.toUpperCase() == "REMA" || c.toUpperCase() == "REMAR" || c.toUpperCase() == "REMARK" || c.toUpperCase() == "PRO" || c.toUpperCase() == "PROM" || c.toUpperCase() == "PROMP" || c.toUpperCase() == "PROMPT") && (m == null || m.value == ` + if ((l.toUpperCase() == "REM" || l.toUpperCase() == "REMA" || l.toUpperCase() == "REMAR" || l.toUpperCase() == "REMARK" || l.toUpperCase() == "PRO" || l.toUpperCase() == "PROM" || l.toUpperCase() == "PROMP" || l.toUpperCase() == "PROMPT") && (m == null || m.value == ` ` || m.value == "\r")) { - b.push(new d(c, u - c.length, -9, "line-comment", i, t)); + p.push(new d(l, s - l.length, -9, "line-comment", i, t)); continue; } - if (c.toUpperCase() == "SODA" && (m == null || m.value == ` + if (l.toUpperCase() == "SODA" && (m == null || m.value == ` ` || m.value == "\r")) { - b.push(new d(c, u - c.length, -9, "dbtools-command", i, t)); + p.push(new d(l, s - l.length, -9, "dbtools-command", i, t)); continue; } - if (m != null && m.type == "identifier" && m.end == -11 && m.value.indexOf("@") == 0 && !(c == ` -` || c == "\r")) { - m.value = m.value + c; + if (m != null && m.type == "identifier" && m.end == -11 && m.value.indexOf("@") == 0 && !(l == ` +` || l == "\r")) { + m.value = m.value + l; continue; } - if (m != null && m.type == "identifier" && m.end == -11 && m.value.indexOf("@") == 0 && (c == ` -` || c == "\r")) { - m.end = u - 1, b.push(new d(c, u - 1, u, "ws", i, t)); + if (m != null && m.type == "identifier" && m.end == -11 && m.value.indexOf("@") == 0 && (l == ` +` || l == "\r")) { + m.end = s - 1, p.push(new d(l, s - 1, s, "ws", i, t)); continue; } - if (k && c == "'") { - m != null && (m.value.toUpperCase() == "Q" || m.value.toUpperCase() == "N" || m.value.toUpperCase() == "U" || m.value.toUpperCase() == "NQ") ? (m.value += c, m.type = "quoted-string") : b.push(new d(c, u - 1, -10, "quoted-string", i, t)); + if (D && l == "'") { + m != null && (m.value.toUpperCase() == "Q" || m.value.toUpperCase() == "N" || m.value.toUpperCase() == "U" || m.value.toUpperCase() == "NQ") ? (m.value += l, m.type = "quoted-string") : p.push(new d(l, s - 1, -10, "quoted-string", i, t)); continue; } - if (k && c == '"') { - b.push(new d(c, u - 1, -11, "dquoted-string", i, t)); + if (D && l == '"') { + p.push(new d(l, s - 1, -11, "dquoted-string", i, t)); continue; } - if (c == "`" && 0 <= S.indexOf("`")) { - b.push(new d(c, u - 1, -11, "bquoted-string", i, t)); + if (l == "`" && 0 <= y.indexOf("`")) { + p.push(new d(l, s - 1, -11, "bquoted-string", i, t)); continue; } - if (c.length == 1 && 0 <= S.indexOf(c)) { - b.push(new d(c, u - 1, u, "operation", i, t)); + if (l.length == 1 && 0 <= y.indexOf(l)) { + p.push(new d(l, s - 1, s, "operation", i, t)); continue; } - if (c.length == 1 && 0 <= T.indexOf(c)) { - b.push(new d(c, u - 1, u, "ws", i, t)); + if (l.length == 1 && 0 <= I.indexOf(l)) { + p.push(new d(l, s - 1, s, "ws", i, t)); continue; } - if ("0" <= c.charAt(0) && c.charAt(0) <= "9") { - E(c, b, u - c.length, i) || (c.charAt(c.length - 1) == "K" || c.charAt(c.length - 1) == "k" || c.charAt(c.length - 1) == "M" || c.charAt(c.length - 1) == "m" || c.charAt(c.length - 1) == "G" || c.charAt(c.length - 1) == "g" || c.charAt(c.length - 1) == "T" || c.charAt(c.length - 1) == "t" || c.charAt(c.length - 1) == "P" || c.charAt(c.length - 1) == "p" || c.charAt(c.length - 1) == "E" || c.charAt(c.length - 1) == "e" ? (b.push(new d(c.substring(0, c.length - 1), u - c.length, u - 1, "constant.numeric", i, t)), b.push(new d(c.substring(c.length - 1), u - 1, u, "constant.numeric", i, t))) : b.push(new d(c, u - c.length, u, "constant.numeric", i, t))); + if ("0" <= l.charAt(0) && l.charAt(0) <= "9") { + E(l, p, s - l.length, i) || (l.charAt(l.length - 1) == "K" || l.charAt(l.length - 1) == "k" || l.charAt(l.length - 1) == "M" || l.charAt(l.length - 1) == "m" || l.charAt(l.length - 1) == "G" || l.charAt(l.length - 1) == "g" || l.charAt(l.length - 1) == "T" || l.charAt(l.length - 1) == "t" || l.charAt(l.length - 1) == "P" || l.charAt(l.length - 1) == "p" || l.charAt(l.length - 1) == "E" || l.charAt(l.length - 1) == "e" ? (p.push(new d(l.substring(0, l.length - 1), s - l.length, s - 1, "constant.numeric", i, t)), p.push(new d(l.substring(l.length - 1), s - 1, s, "constant.numeric", i, t))) : p.push(new d(l, s - l.length, s, "constant.numeric", i, t))); continue; } - var y = "identifier"; - o + 1 < r.length && r[o + 1], b.push(new d(c, u - c.length, u, y, i, t)); + var S = "identifier"; + o + 1 < r.length && r[o + 1], p.push(new d(l, s - l.length, s, S, i, t)); } } } - if (b.length > 0) { - var m = b[b.length - 1]; - m.end = I.length; + if (p.length > 0) { + var m = p[p.length - 1]; + m.end = T.length; } - return b; + return p; } - function E(I, k, p, b) { - if (0 > I.indexOf("e") && 0 > I.indexOf("f") && 0 > I.indexOf("d")) + function E(T, D, f, p) { + if (0 > T.indexOf("e") && 0 > T.indexOf("f") && 0 > T.indexOf("d")) return !1; - 0 <= I.indexOf("e"), 0 <= I.indexOf("e"), !(0 <= I.indexOf("e")) && 0 <= I.indexOf("f"); - for (var S = $(I, "efd"), T = 0; T < S.length; T++) { - var r = S[T]; - p += r.length, "0" <= r.charAt(0) && r.charAt(0) <= "9" ? k.push(new d(r, p - r.length, p, "constant.numeric", b)) : k.push(new d(r, p - r.length, p, "identifier", b)); + 0 <= T.indexOf("e"), 0 <= T.indexOf("e"), !(0 <= T.indexOf("e")) && 0 <= T.indexOf("f"); + for (var y = ee(T, "efd"), I = 0; I < y.length; I++) { + var r = y[I]; + f += r.length, "0" <= r.charAt(0) && r.charAt(0) <= "9" ? D.push(new d(r, f - r.length, f, "constant.numeric", p)) : D.push(new d(r, f - r.length, f, "identifier", p)); } return !0; } - function L(I, k, p, b) { - for (var S = [], T = h(I, p, b), r = null, u = 0; u < T.length; u++) { - var i = T[u]; + function L(T, D, f, p) { + for (var y = [], I = h(T, f, p), r = null, s = 0; s < I.length; s++) { + var i = I[s]; if (i.type == "quoted-string") { if (r != null && r.type == "quoted-string") { r.value = r.value + i.value, r.end = i.end; @@ -7444,13 +7449,13 @@ var Y = new pe(), le = function() { || token.value.equals("$ELSE") || token.value.equals("$THEN") ||*/ - i.value.indexOf("$$") == 0 && (i.value = "$$VAR"), (k || i.type != "ws" && i.type != "comment" && i.type != "line-comment") && S.push(i), r = i; + i.value.indexOf("$$") == 0 && (i.value = "$$VAR"), (D || i.type != "ws" && i.type != "comment" && i.type != "line-comment") && y.push(i), r = i; } - return S; + return y; } return L; }(); -function ge(d) { +function ve(d) { const h = { ACCESS: "N", ADD: "N", @@ -7565,11 +7570,11 @@ function ge(d) { let E = d.toUpperCase(); return h[E] != null ? "the_" + d : d; } -let se = function() { +let ce = function() { let d, h = " ", E = ["string", "varchar2", "varchar", "vc", "char"]; var L = ["yn", "boolean", "bool"]; - function I(S, T, r) { - this.line = S, this.parent = r, this.children = [], r != null && r.children.push(this), this.fks = null, this.descendants = function() { + function T(y, I, r) { + this.line = y, this.parent = r, this.children = [], r != null && r.children.push(this), this.fks = null, this.descendants = function() { var i = []; i.push(this); for (var t = 0; t < this.children.length; t++) @@ -7578,34 +7583,34 @@ let se = function() { }, this.maxChildNameLen = function() { var i = 2, t = this.trimmedContent().toUpperCase(); if ((d.optionEQvalue("rowkey", !0) || 0 < t.indexOf("/ROWKEY")) && (i = 7), (d.optionEQvalue("Row Version Number", "yes") || 0 < t.indexOf("/ROWVERSION")) && (i = 11), d.optionEQvalue("Audit Columns", "yes") || 0 < t.indexOf("/AUDITCOLS") || 0 < t.indexOf("/AUDIT COL")) { - let P = d.getOptionValue("createdcol").length; - i < P && (i = P), P = d.getOptionValue("createdbycol").length, i < P && (i = P), P = d.getOptionValue("updatedcol").length, i < P && (i = P), P = d.getOptionValue("updatedbycol").length, i < P && (i = P); + let B = d.getOptionValue("createdcol").length; + i < B && (i = B), B = d.getOptionValue("createdbycol").length, i < B && (i = B), B = d.getOptionValue("updatedcol").length, i < B && (i = B), B = d.getOptionValue("updatedbycol").length, i < B && (i = B); } if (this.fks != null) for (var o in this.fks) { - var c = o.length; - let P = d.find(o); - P != null && P.isMany2One() && (c += 3), i < c && (i = c); + var l = o.length; + let B = d.find(o); + B != null && B.isMany2One() && (l += 3), i < l && (i = l); } for (var m = 0; m < this.children.length; m++) { - let P = this.children[m]; - if (0 < P.children.length) + let B = this.children[m]; + if (0 < B.children.length) continue; - let M = P.parseName().length; - 0 < P.indexOf("file") && (M += 9), i < M && (i = M); + let M = B.parseName().length; + 0 < B.indexOf("file") && (M += 9), i < M && (i = M); } - var y = d.additionalColumns(); - for (let P in y) { - let M = P.length; + var S = d.additionalColumns(); + for (let B in S) { + let M = B.length; i < M && (i = M); } return i; }; - function u(i) { + function s(i) { let t = i; return t = t.replace(/ timestamp with local time zone/gi, " tswltz"), t = t.replace(/ timestamp with time zone/gi, " tswtz"), t = t.replace(/ timestamp/gi, " ts"), t; } - this.content = u(T), this.comment, this.indexOf = function(i, t) { + this.content = s(I), this.comment, this.indexOf = function(i, t) { for (let o = 0; o < this.src.length; o++) { if (t && this.src[o].value.indexOf(i) == 0) return o; @@ -7616,38 +7621,38 @@ let se = function() { }, this.trimmedContent = function() { var i = this.content.trim(), t = i.indexOf("["), o = i.indexOf("]"); return this.comment == null && 0 < t && (this.comment = i.substr(t + 1, o - t - 1)), 0 < t && (i = i.substr(0, t) + i.substr(o + 2)), t = i.indexOf("--"), this.comment == null && 0 < t && (this.comment = i.substr(t + 2)), 0 < t && (i = i.substr(0, t)), i.trim(); - }, this.src = Z(this.content.toLowerCase(), !1, !0, ""), this.parseName = function() { + }, this.src = Q(this.content.toLowerCase(), !1, !0, ""), this.parseName = function() { let i = this.trimmedContent(); i = i.replace(/\t/, h); const t = i.indexOf('"'), o = i.indexOf('"', t + 1); if (0 <= t && t < o) return i.substring(t, o + 1); (i.indexOf(">") == 0 || i.indexOf("<") == 0) && (i = i.substring(1).trim()); - const c = i.toLowerCase(); - if (c.indexOf("view ") == 0) { + const l = i.toLowerCase(); + if (l.indexOf("view ") == 0) { var m = i.split(" "); return m[1]; } - i = p(i, " d"); - var y = i.indexOf("/"); - 0 < y && (i = i.substring(0, y)), i = i.trim(), i = p(i, " integer"), i = p(i, " number"), i = p(i, " int"), i = p(i, " num"), i = p(i, " clob"), i = p(i, " blob"), i = p(i, " json"), i = p(i, " file"), i = p(i, " date"), i = p(i, " tstz"), i = p(i, " tswtz"), i = p(i, " tswltz"), i = p(i, " ts"), i = i.replace(/ vc\d+k/g, ""), i = i.replace(/ vc\(\d+\)/g, ""), i = i.replace(/ vc\d+/g, ""); + i = f(i, " d"); + var S = i.indexOf("/"); + 0 < S && (i = i.substring(0, S)), i = i.trim(), i = f(i, " integer"), i = f(i, " number"), i = f(i, " int"), i = f(i, " num"), i = f(i, " clob"), i = f(i, " blob"), i = f(i, " json"), i = f(i, " file"), i = f(i, " date"), i = f(i, " tstz"), i = f(i, " tswtz"), i = f(i, " tswltz"), i = f(i, " ts"), i = i.replace(/ vc\d+k/g, ""), i = i.replace(/ vc\(\d+\)/g, ""), i = i.replace(/ vc\d+/g, ""); for (let M in E) { - let x = c.indexOf(" " + E[M]); - if (0 < x) { - i = i.substring(0, x) + i.substring(x + E[M].length + 1); + let N = l.indexOf(" " + E[M]); + if (0 < N) { + i = i.substring(0, N) + i.substring(N + E[M].length + 1); break; } } for (let M in L) { - let x = c.indexOf(" " + L[M]); - if (0 < x) { - i = i.substring(0, x) + i.substring(x + L[M].length + 1); + let N = l.indexOf(" " + L[M]); + if (0 < N) { + i = i.substring(0, N) + i.substring(N + L[M].length + 1); break; } } i = i.replace(/ num(ber)?\(\d+\)/g, ""), i = i.replace(/ num(ber)?\(\d+,\d+\)/g, ""), i = i.replace(/ num(ber)?\d+/g, ""), i = i.trim(), this.children.length == 0 && this.parent != null && this.parent.colprefix != null && (i = this.parent.colprefix + "_" + i); - var P = i.substr(0, 1); - return P >= "0" && P <= "9" && (i = "x" + i), ge(de(i)); + var B = i.substr(0, 1); + return B >= "0" && B <= "9" && (i = "x" + i), ve(he(i)); }, this.parseType = function(i) { if (this.children != null && 0 < this.children.length) return "table"; @@ -7658,70 +7663,70 @@ let se = function() { return "dv"; if (this.parent == null) return "table"; - var o = d.semantics(), c = 4e3; - (t[0].value.startsWith("name") || t[0].value.startsWith("email")) && (c = 255); + var o = d.semantics(), l = 4e3; + (t[0].value.startsWith("name") || t[0].value.startsWith("email")) && (l = 255); const m = this.indexOf("vc", !0); if (0 < m) { t[m].begin, t[m].end; - let N = t[m].value.substring(2); - N == "" && this.indexOf("(") == m + 1 && (N = t[m + 2].value), N != "" && (c = parseInt(N)), t[m].value.endsWith("k") && (c < 32 ? c = c * 1024 : c = c * 1024 - 1); + let x = t[m].value.substring(2); + x == "" && this.indexOf("(") == m + 1 && (x = t[m + 2].value), x != "" && (l = parseInt(x)), t[m].value.endsWith("k") && (l < 32 ? l = l * 1024 : l = l * 1024 - 1); } - var y = "varchar2(" + c + o + ")"; - i == "plsql" && (y = "varchar2"), 0 < this.indexOf("int", !0) && (y = "integer"), t[0].value.endsWith("_id") && m < 0 && this.indexOf("date") < 0 && (y = "number"), t[0].value.endsWith("id") && m < 0 && this.indexOf("/") + 1 == this.indexOf("pk") && (y = "number"); - const P = K(r.parseName(), "_", this.parseName()); - (t[0].value.endsWith("_yn") || t[0].value.startsWith("is_")) && (y = "varchar2(1 char) constraint " + K(d.objPrefix(), P) + ` -`, y += h + h + " ".repeat(r.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"); - for (let N in L) - if (0 < this.indexOf(L[N])) { - y = "varchar2(1 char) constraint " + K(d.objPrefix(), P) + ` -`, y += h + h + " ".repeat(r.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"; + var S = "varchar2(" + l + o + ")"; + i == "plsql" && (S = "varchar2"), 0 < this.indexOf("int", !0) && (S = "integer"), t[0].value.endsWith("_id") && m < 0 && this.indexOf("date") < 0 && (S = "number"), t[0].value.endsWith("id") && m < 0 && this.indexOf("/") + 1 == this.indexOf("pk") && (S = "number"); + const B = K(r.parseName(), "_", this.parseName()); + (t[0].value.endsWith("_yn") || t[0].value.startsWith("is_")) && (S = "varchar2(1 char) constraint " + K(d.objPrefix(), B) + ` +`, S += h + h + " ".repeat(r.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"); + for (let x in L) + if (0 < this.indexOf(L[x])) { + S = "varchar2(1 char) constraint " + K(d.objPrefix(), B) + ` +`, S += h + h + " ".repeat(r.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"; break; } - this.indexOf("phone_number") == 0 && (y = "number"); + this.indexOf("phone_number") == 0 && (S = "number"); let M = this.indexOf("num", !0); - 0 < M && (y = "number"); - let x = this.indexOf(")"); - if (0 < M && 0 < x && (y += this.content.toLowerCase().substring(t[M + 1].begin, t[x].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value.startsWith("created") || t[0].value.startsWith("updated")) && (y = d.getOptionValue("Date Data Type").toLowerCase()), m < 0 && (0 < this.indexOf("clob") && (y = "clob"), (0 < this.indexOf("blob") || 0 < this.indexOf("file")) && (y = "blob"), 0 < this.indexOf("json") && (y = "clob check (" + this.parseName() + " is json)")), 0 < this.indexOf("tswltz") ? y = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : 0 < this.indexOf("tswtz") || 0 < this.indexOf("tstz") ? y = "TIMESTAMP WITH TIME ZONE".toLowerCase() : 0 < this.indexOf("ts") && (y = "TIMESTAMP".toLowerCase()), i) { + 0 < M && (S = "number"); + let N = this.indexOf(")"); + if (0 < M && 0 < N && (S += this.content.toLowerCase().substring(t[M + 1].begin, t[N].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value.startsWith("created") || t[0].value.startsWith("updated")) && (S = d.getOptionValue("Date Data Type").toLowerCase()), m < 0 && (0 < this.indexOf("clob") && (S = "clob"), (0 < this.indexOf("blob") || 0 < this.indexOf("file")) && (S = "blob"), 0 < this.indexOf("json") && (S = "clob check (" + this.parseName() + " is json)")), 0 < this.indexOf("tswltz") ? S = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : 0 < this.indexOf("tswtz") || 0 < this.indexOf("tstz") ? S = "TIMESTAMP WITH TIME ZONE".toLowerCase() : 0 < this.indexOf("ts") && (S = "TIMESTAMP".toLowerCase()), i) { if (0 < this.indexOf("fk") || 0 < this.indexOf("reference")) { - const N = this.refId(); - let R = "number", G = d.find(N); - return G != null && G.getExplicitPkNode() != null && (R = G.getExplicitPkNode().parseType((F) => !0)), R; + const x = this.refId(); + let w = "number", R = d.find(x); + return R != null && R.getExplicitPkNode() != null && (w = R.getExplicitPkNode().parseType((_) => !0)), w; } - return y; + return S; } - 0 < this.indexOf("unique") && (y += ` -`, y += h + h + " ".repeat(r.maxChildNameLen()) + "constraint " + P + "_unq unique"); - var D = "'"; - if ((y.startsWith("integer") || y.startsWith("number") || y.startsWith("date")) && (D = ""), 0 < this.indexOf("default")) { - const N = t[this.indexOf("default") + 1].value; - y += " default on null " + D + N + D; + 0 < this.indexOf("unique") && (S += ` +`, S += h + h + " ".repeat(r.maxChildNameLen()) + "constraint " + B + "_unq unique"); + var k = "'"; + if ((S.startsWith("integer") || S.startsWith("number") || S.startsWith("date")) && (k = ""), 0 < this.indexOf("default")) { + const x = t[this.indexOf("default") + 1].value; + S += " default on null " + k + x + k; } - if ((0 < this.indexOf("nn") || this.indexOf("not") + 1 == this.indexOf("null")) && this.indexOf("pk") < 0 && (y += " not null"), (0 < this.indexOf("hidden") || 0 < this.indexOf("invincible")) && (y += " invisible"), y += this.genConstraint(D), 0 < this.indexOf("between")) { - const N = this.indexOf("between"), R = t[N + 1].value + " and " + t[N + 3].value; - y += " constraint " + K(P, "_bet") + ` -`, y += " check (" + this.parseName() + " between " + R + ")"; + if ((0 < this.indexOf("nn") || this.indexOf("not") + 1 == this.indexOf("null")) && this.indexOf("pk") < 0 && (S += " not null"), (0 < this.indexOf("hidden") || 0 < this.indexOf("invincible")) && (S += " invisible"), S += this.genConstraint(k), 0 < this.indexOf("between")) { + const x = this.indexOf("between"), w = t[x + 1].value + " and " + t[x + 3].value; + S += " constraint " + K(B, "_bet") + ` +`, S += " check (" + this.parseName() + " between " + w + ")"; } if (0 < this.indexOf("pk")) { - let N = " not null"; - y.startsWith("number") && d.optionEQvalue("pk", "identityDataType") && (N = " GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), y.startsWith("number") && d.optionEQvalue("pk", "seq") && (N = " default on null " + (d.objPrefix() + this.parent.parseName()) + "_seq.NEXTVAL ".toLowerCase()), y.startsWith("number") && d.optionEQvalue("pk", "guid") && (N = " default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), y += N + ` -`, y += h + h + " ".repeat(r.maxChildNameLen()) + "constraint " + K(d.objPrefix(), P, "_pk") + " primary key"; + let x = " not null"; + S.startsWith("number") && d.optionEQvalue("pk", "identityDataType") && (x = " GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), S.startsWith("number") && d.optionEQvalue("pk", "seq") && (x = " default on null " + (d.objPrefix() + this.parent.parseName()) + "_seq.NEXTVAL ".toLowerCase()), S.startsWith("number") && d.optionEQvalue("pk", "guid") && (x = " default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), S += x + ` +`, S += h + h + " ".repeat(r.maxChildNameLen()) + "constraint " + K(d.objPrefix(), B, "_pk") + " primary key"; } - return y; + return S; }, this.genConstraint = function(i) { let t = ""; if (0 < this.indexOf("check")) { let o = ""; r != null && (o = r.parseName() + "_"); - const c = K(o, this.parseName()), m = this.trimmedContent().toLowerCase(), y = m.indexOf("/check"); - let P = m.lastIndexOf("/"); - P == y && (P = m.length); - let M = this.trimmedContent().substr(y + 6, P - y - 6).trim(); - const x = Z(M, !1, !0, ""); - let D = h; - r != null && (D = " ".repeat(r.maxChildNameLen())), this.children != null && 0 < this.children.length ? (x[0].value != "(" && (M = "( " + M + ")"), t += h + "constraint " + K(d.objPrefix(), c, "_ck"), t += " check " + M + `, -`) : x[0].value == "(" && x[x.length - 1].value == ")" ? (t += " constraint " + K(d.objPrefix(), c, "_ck") + ` -`, t += h + h + D + "check " + M) : (0 < M.indexOf(", ") ? M = M.replace(/, /g, i + "," + i) : 0 < M.indexOf(",") ? M = M.replace(/,/g, i + "," + i) : M = M.replace(/ /g, i + "," + i), t += " constraint " + K(d.objPrefix(), c, "_ck") + ` -`, t += h + h + D + "check (" + this.parseName() + " in (" + i + M + i + "))", t = t.replace(/''/gm, "'")); + const l = K(o, this.parseName()), m = this.trimmedContent().toLowerCase(), S = m.indexOf("/check"); + let B = m.lastIndexOf("/"); + B == S && (B = m.length); + let M = this.trimmedContent().substr(S + 6, B - S - 6).trim(); + const N = Q(M, !1, !0, ""); + let k = h; + r != null && (k = " ".repeat(r.maxChildNameLen())), this.children != null && 0 < this.children.length ? (N[0].value != "(" && (M = "( " + M + ")"), t += h + "constraint " + K(d.objPrefix(), l, "_ck"), t += " check " + M + `, +`) : N[0].value == "(" && N[N.length - 1].value == ")" ? (t += " constraint " + K(d.objPrefix(), l, "_ck") + ` +`, t += h + h + k + "check " + M) : (0 < M.indexOf(", ") ? M = M.replace(/, /g, i + "," + i) : 0 < M.indexOf(",") ? M = M.replace(/,/g, i + "," + i) : M = M.replace(/ /g, i + "," + i), t += " constraint " + K(d.objPrefix(), l, "_ck") + ` +`, t += h + h + k + "check (" + this.parseName() + " in (" + i + M + i + "))", t = t.replace(/''/gm, "'")); } return t; }, this.isMany2One = function() { @@ -7745,27 +7750,27 @@ let se = function() { } return t = i.indexOf("/fk"), 0 < t ? (i = i.substr(t + 3).trim(), t = i.indexOf("/"), 0 < t && (i = i.substring(0, t).trim()), i.replace(" ", "_")) : (t = i.indexOf("/reference"), 0 < t ? (i = i.substr(t + 10).trim(), i.indexOf("s") == 0 && (i = i.substring(1).trim()), t = i.indexOf("/"), 0 < t && (i = i.substring(0, t).trim()), i.replace(" ", "_")) : null); }, this.parseValues = function() { - var i = this.trimmedContent().toUpperCase(), t, o, c; + var i = this.trimmedContent().toUpperCase(), t, o, l; if (0 <= i.indexOf("/CHECK") || 0 <= i.indexOf("/VALUES")) { var m = "/CHECK"; - return t = i.indexOf(m), t < 0 && (m = "/VALUES", t = i.indexOf(m)), o = i.lastIndexOf("/"), o == t && (o = i.length), c = i.substr(t + m.length, o - t - m.length).trim(), 0 < c.indexOf(",") ? (c = c.replace(/ /g, ""), c.split(",")) : c.split(" "); + return t = i.indexOf(m), t < 0 && (m = "/VALUES", t = i.indexOf(m)), o = i.lastIndexOf("/"), o == t && (o = i.length), l = i.substr(t + m.length, o - t - m.length).trim(), 0 < l.indexOf(",") ? (l = l.replace(/ /g, ""), l.split(",")) : l.split(" "); } if (0 <= i.indexOf("/BETWEEN")) { - t = i.indexOf("/BETWEEN"), o = i.lastIndexOf("/"), o == t && (o = i.length), c = i.substr(t + 8, o - t - 8).trim(), c = c.replace(" AND ", " "); - for (var y = [], P = parseInt(c.split(" ")[0]); P <= parseInt(c.split(" ")[1]); P++) - y.push(P); - return y; + t = i.indexOf("/BETWEEN"), o = i.lastIndexOf("/"), o == t && (o = i.length), l = i.substr(t + 8, o - t - 8).trim(), l = l.replace(" AND ", " "); + for (var S = [], B = parseInt(l.split(" ")[0]); B <= parseInt(l.split(" ")[1]); B++) + S.push(B); + return S; } return null; }, this.apparentDepth = function() { let i = this.content.split(/ |\t/), t = 0; for (var o = 0; o < i.length; o++) { - var c = i[o]; - if (c == " ") { + var l = i[o]; + if (l == " ") { t += this.tab; continue; } - if (c == "") { + if (l == "") { t++; continue; } @@ -7808,18 +7813,18 @@ let se = function() { this.colprefix = n[0]; } var o = ""; - const c = d.objPrefix() + this.parseName(); - d.optionEQvalue("pk", "SEQ") && d.optionEQvalue("genpk", !0) && (o = o + "create sequence " + c + `_seq; + const l = d.objPrefix() + this.parseName(); + d.optionEQvalue("pk", "SEQ") && d.optionEQvalue("genpk", !0) && (o = o + "create sequence " + l + `_seq; -`), o = o + "create table " + c + ` ( +`), o = o + "create table " + l + ` ( `; var m = h + " ".repeat(this.maxChildNameLen() - 2); - let y = this.getGenIdColName(); - if (y != null) { + let S = this.getGenIdColName(); + if (S != null) { let a = "not null"; - d.optionEQvalue("pk", "identityDataType") && (a = "GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), d.optionEQvalue("pk", "seq") && (a = "default on null " + c + "_seq.NEXTVAL ".toLowerCase()), d.optionEQvalue("pk", "guid") && (a = "default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), o += h + y + m + "number " + a + ` + d.optionEQvalue("pk", "identityDataType") && (a = "GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), d.optionEQvalue("pk", "seq") && (a = "default on null " + l + "_seq.NEXTVAL ".toLowerCase()), d.optionEQvalue("pk", "guid") && (a = "default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), o += h + S + m + "number " + a + ` `; - const n = K(d.objPrefix("no schema") + this.parseName(), "_", y); + const n = K(d.objPrefix("no schema") + this.parseName(), "_", S); o += h + h + " ".repeat(this.maxChildNameLen()) + "constraint " + K(n, "_pk") + ` primary key, `; } else { @@ -7831,43 +7836,43 @@ let se = function() { } } for (let a in this.fks) { - let n = this.fks[a], l = "number", s = d.find(n), g = ""; - s != null && s.getExplicitPkNode() != null ? l = s.getExplicitPkNode().parseType((v) => !0) : s == null && (s = d.find(a), s.isMany2One() & !a.endsWith("_id") && (n = a, a = z(a), g = "_id")), m = h + " ".repeat(this.maxChildNameLen() - a.length), o += h + a + g + m + l + ` -`, o += h + h + " ".repeat(this.maxChildNameLen()) + "constraint " + c + "_" + a + `_fk + let n = this.fks[a], c = "number", u = d.find(n), g = ""; + u != null && u.getExplicitPkNode() != null ? c = u.getExplicitPkNode().parseType((v) => !0) : u == null && (u = d.find(a), u.isMany2One() & !a.endsWith("_id") && (n = a, a = z(a), g = "_id")), m = h + " ".repeat(this.maxChildNameLen() - a.length), o += h + a + g + m + c + ` +`, o += h + h + " ".repeat(this.maxChildNameLen()) + "constraint " + l + "_" + a + `_fk `; - let B = ""; - 0 <= i.indexOf("/CASCADE") && (B = " on delete cascade"); - let f = ""; + let P = ""; + 0 <= i.indexOf("/CASCADE") && (P = " on delete cascade"); + let b = ""; for (let v in this.children) { let C = this.children[v]; if (a == C.parseName()) { let A = C.trimmedContent().toUpperCase(); - (0 <= A.indexOf("/NN") || 0 <= A.indexOf("/NOTNULL")) && (f = " NOT NULL".toLowerCase()), 0 <= A.indexOf("/CASCADE") && (B = " on delete cascade"); + (0 <= A.indexOf("/NN") || 0 <= A.indexOf("/NOTNULL")) && (b = " NOT NULL".toLowerCase()), 0 <= A.indexOf("/CASCADE") && (P = " on delete cascade"); break; } } - o += h + h + " ".repeat(this.maxChildNameLen()) + "references " + d.objPrefix() + n + B + f + `, + o += h + h + " ".repeat(this.maxChildNameLen()) + "references " + d.objPrefix() + n + P + b + `, `; } if (d.optionEQvalue("rowkey", !0) || 0 < i.indexOf("/ROWKEY")) { let a = h + " ".repeat(this.maxChildNameLen() - 7); o += h + "row_key" + a + `varchar2(30 char) -`, o += h + h + " ".repeat(this.maxChildNameLen()) + "constraint " + c + `_row_key_unq unique not null, +`, o += h + h + " ".repeat(this.maxChildNameLen()) + "constraint " + l + `_row_key_unq unique not null, `; } for (let a = 0; a < this.children.length; a++) { let n = this.children[a]; - if (!(y != null && n.parseName() == "id") && !(0 < n.children.length) && n.refId() == null) { + if (!(S != null && n.parseName() == "id") && !(0 < n.children.length) && n.refId() == null) { if (n == this.getExplicitPkNode()) continue; if (o += h + n.singleDDL() + `, `, 0 < n.indexOf("file")) { - const l = n.parseName().toUpperCase(); - let s = l + "_FILENAME", g = h + " ".repeat(this.maxChildNameLen() - s.length); - o += h + s.toLowerCase() + g + "varchar2(255" + d.semantics() + `), -`, s = l + "_MIMETYPE", g = h + " ".repeat(this.maxChildNameLen() - s.length), o += h + s.toLowerCase() + g + "varchar2(255" + d.semantics() + `), -`, s = l + "_CHARSET", g = h + " ".repeat(this.maxChildNameLen() - s.length), o += h + s.toLowerCase() + g + "varchar2(255" + d.semantics() + `), -`, s = l + "_LASTUPD", g = h + " ".repeat(this.maxChildNameLen() - s.length), o += h + s.toLowerCase() + g + d.getOptionValue("Date Data Type").toLowerCase() + `, + const c = n.parseName().toUpperCase(); + let u = c + "_FILENAME", g = h + " ".repeat(this.maxChildNameLen() - u.length); + o += h + u.toLowerCase() + g + "varchar2(255" + d.semantics() + `), +`, u = c + "_MIMETYPE", g = h + " ".repeat(this.maxChildNameLen() - u.length), o += h + u.toLowerCase() + g + "varchar2(255" + d.semantics() + `), +`, u = c + "_CHARSET", g = h + " ".repeat(this.maxChildNameLen() - u.length), o += h + u.toLowerCase() + g + "varchar2(255" + d.semantics() + `), +`, u = c + "_LASTUPD", g = h + " ".repeat(this.maxChildNameLen() - u.length), o += h + u.toLowerCase() + g + d.getOptionValue("Date Data Type").toLowerCase() + `, `; } } @@ -7881,19 +7886,19 @@ let se = function() { let a = d.getOptionValue("createdcol"), n = h + " ".repeat(this.maxChildNameLen() - a.length); o += h + a + n + d.getOptionValue("Date Data Type").toLowerCase() + ` not null, `; - let l = d.getOptionValue("createdbycol"); - n = h + " ".repeat(this.maxChildNameLen() - l.length), o += h + l + n + "varchar2(255" + d.semantics() + `) not null, + let c = d.getOptionValue("createdbycol"); + n = h + " ".repeat(this.maxChildNameLen() - c.length), o += h + c + n + "varchar2(255" + d.semantics() + `) not null, `; - let s = d.getOptionValue("updatedcol"); - n = h + " ".repeat(this.maxChildNameLen() - s.length), o += h + s + n + d.getOptionValue("Date Data Type").toLowerCase() + ` not null, + let u = d.getOptionValue("updatedcol"); + n = h + " ".repeat(this.maxChildNameLen() - u.length), o += h + u + n + d.getOptionValue("Date Data Type").toLowerCase() + ` not null, `; let g = d.getOptionValue("updatedbycol"); n = h + " ".repeat(this.maxChildNameLen() - g.length), o += h + g + n + "varchar2(255" + d.semantics() + `) not null, `; } - var P = d.additionalColumns(); - for (let a in P) { - var M = P[a]; + var B = d.additionalColumns(); + for (let a in B) { + var M = B[a]; m = h + " ".repeat(this.maxChildNameLen() - a.length), o += h + a.toUpperCase() + m + M + ` not null, `; } @@ -7902,38 +7907,38 @@ let se = function() { `), o += ")" + (d.optionEQvalue("compress", "yes") || 0 < i.indexOf("/COMPRESS") ? " compress" : "") + `; `; - const x = i.indexOf("/AUDIT"), D = i.indexOf("/AUDITCOLS"), N = i.indexOf("/AUDIT COL"); - 0 < x && D < 0 && N < 0 && (o += "audit all on " + c + `; + const N = i.indexOf("/AUDIT"), k = i.indexOf("/AUDITCOLS"), x = i.indexOf("/AUDIT COL"); + 0 < N && k < 0 && x < 0 && (o += "audit all on " + l + `; `); - let R = 1; + let w = 1; for (let a in this.fks) if (!this.isMany2One()) { - var G = this.fks[a], F = G, O = a; - O == null && (O = z(F) + "_id"), R == 1 && (o += `-- table index -`), o += "create index " + c + "_i" + R++ + " on " + c + " (" + O + `); + var R = this.fks[a], _ = R, F = a; + F == null && (F = z(_) + "_id"), w == 1 && (o += `-- table index +`), o += "create index " + l + "_i" + w++ + " on " + l + " (" + F + `); `; } - let w = i.indexOf("/UNIQUE "); - if (0 < w) { - let a = i.substr(w + 8), n = a.indexOf("/"); - 0 < n && (a = a.substring(0, n).trim()), o += "alter table " + c + " add constraint " + c + "_uk unique (" + a + `); + let G = i.indexOf("/UNIQUE "); + if (0 < G) { + let a = i.substr(G + 8), n = a.indexOf("/"); + 0 < n && (a = a.substring(0, n).trim()), o += "alter table " + l + " add constraint " + l + "_uk unique (" + a + `); `; } for (let a = 0; a < this.children.length; a++) { var e = this.children[a]; let n = e.trimmedContent().toUpperCase(); - (0 <= n.indexOf("/IDX") || 0 <= n.indexOf("/INDEX")) && (R == 1 && (o += `-- table index -`), o += "create index " + c + "_i" + R++ + " on " + c + " (" + e.parseName() + `); + (0 <= n.indexOf("/IDX") || 0 <= n.indexOf("/INDEX")) && (w == 1 && (o += `-- table index +`), o += "create index " + l + "_i" + w++ + " on " + l + " (" + e.parseName() + `); `); } - this.comment != null && (o += "comment on table " + c + " is '" + this.comment + `'; + this.comment != null && (o += "comment on table " + l + " is '" + this.comment + `'; `); for (let a = 0; a < this.children.length; a++) { let n = this.children[a]; - n.comment != null && n.children.length == 0 && (o += "comment on column " + c + "." + n.parseName() + " is '" + n.comment + `'; + n.comment != null && n.children.length == 0 && (o += "comment on column " + l + "." + n.parseName() + " is '" + n.comment + `'; `); } return o += ` @@ -7966,117 +7971,117 @@ let se = function() { if (d.optionEQvalue("Duality View", "yes") || this.parseType() == "dv") try { return this.generateDualityView(); - } catch (s) { - if (s.message == this.one2many2oneUnsupoported) + } catch (u) { + if (u.message == this.one2many2oneUnsupoported) return ""; - throw s; + throw u; } let i = d.objPrefix() + this.parseName(); - var o = this.trimmedContent().split(" "), c = "create or replace view " + i + ` as + var o = this.trimmedContent().split(" "), l = "create or replace view " + i + ` as `; - c += `select + l += `select `; - for (var m = 0, y = 2; y < o.length; y++) { - let s = d.find(o[y]); - if (s == null) + for (var m = 0, S = 2; S < o.length; S++) { + let u = d.find(o[S]); + if (u == null) return ""; - var P = (o[y] + ".id").length; - m < P && (m = P); - for (var M = 0; M < s.children.length; M++) { - var x = s.children[M]; - P = (o[y] + "." + x.parseName()).length, m < P && (m = P); + var B = (o[S] + ".id").length; + m < B && (m = B); + for (var M = 0; M < u.children.length; M++) { + var N = u.children[M]; + B = (o[S] + "." + N.parseName()).length, m < B && (m = B); } } - var D = {}; - for (let s = 2; s < o.length; s++) { - let g = d.find(o[s]); + var k = {}; + for (let u = 2; u < o.length; u++) { + let g = d.find(o[u]); if (g != null) - for (let B = 0; B < g.children.length; B++) { - var N = g.children[B].parseName(), R = D[N]; - R == null && (R = 0), D[N] = R + 1; + for (let P = 0; P < g.children.length; P++) { + var x = g.children[P].parseName(), w = k[x]; + w == null && (w = 0), k[x] = w + 1; } } - for (let s = 2; s < o.length; s++) { - let g = d.find(o[s]); + for (let u = 2; u < o.length; u++) { + let g = d.find(o[u]); if (g == null) continue; - let B = " ".repeat(m - (o[s] + ".id").length); - c += h + o[s] + ".id" + h + B + z(o[s]) + `_id, + let P = " ".repeat(m - (o[u] + ".id").length); + l += h + o[u] + ".id" + h + P + z(o[u]) + `_id, `; for (let v = 0; v < g.children.length; v++) { let C = g.children[v]; if (C.children.length == 0) { - B = " ".repeat(m - (o[s] + "." + C.parseName()).length); - var G = ""; - 1 < D[C.parseName()] && (G = z(o[s]) + "_"), c += h + o[s] + "." + C.parseName() + h + B + G + C.parseName() + `, + P = " ".repeat(m - (o[u] + "." + C.parseName()).length); + var R = ""; + 1 < k[C.parseName()] && (R = z(o[u]) + "_"), l += h + o[u] + "." + C.parseName() + h + P + R + C.parseName() + `, `; } } - let f = g.trimmedContent().toUpperCase(); - if (d.optionEQvalue("rowVersion", "yes") || 0 < f.indexOf("/ROWVERSION")) { + let b = g.trimmedContent().toUpperCase(); + if (d.optionEQvalue("rowVersion", "yes") || 0 < b.indexOf("/ROWVERSION")) { let v = h + " ".repeat(g.maxChildNameLen() - 11); - c += h + o[s] + ".row_version" + z(v + o[s]) + `_row_version, + l += h + o[u] + ".row_version" + z(v + o[u]) + `_row_version, `; } - if (d.optionEQvalue("rowkey", "yes") || 0 < f.indexOf("/ROWKEY")) { + if (d.optionEQvalue("rowkey", "yes") || 0 < b.indexOf("/ROWKEY")) { let v = h + " ".repeat(g.maxChildNameLen() - 7); - c += h + o[s] + ".ROW_KEY" + z(v + o[s]) + `_ROW_KEY, + l += h + o[u] + ".ROW_KEY" + z(v + o[u]) + `_ROW_KEY, `; } - if (d.optionEQvalue("Audit Columns", "yes") || 0 < f.indexOf("/AUDITCOLS") || 0 < f.indexOf("/AUDIT COL")) { + if (d.optionEQvalue("Audit Columns", "yes") || 0 < b.indexOf("/AUDITCOLS") || 0 < b.indexOf("/AUDIT COL")) { let v = d.getOptionValue("createdcol"), C = h + " ".repeat(g.maxChildNameLen() - v.length); - c += h + o[s] + "." + v + z(C + o[s]) + "_" + v + `, + l += h + o[u] + "." + v + z(C + o[u]) + "_" + v + `, `; let A = d.getOptionValue("createdbycol"); - C = h + " ".repeat(g.maxChildNameLen() - A.length), c += h + o[s] + "." + A + z(C + o[s]) + "_" + A + `, + C = h + " ".repeat(g.maxChildNameLen() - A.length), l += h + o[u] + "." + A + z(C + o[u]) + "_" + A + `, `; let H = d.getOptionValue("updatedcol"); - C = h + " ".repeat(g.maxChildNameLen() - H.length), c += h + o[s] + "." + H + z(C + o[s]) + "_" + H + `, + C = h + " ".repeat(g.maxChildNameLen() - H.length), l += h + o[u] + "." + H + z(C + o[u]) + "_" + H + `, `; - let _ = d.getOptionValue("updatedbycol"); - C = h + " ".repeat(g.maxChildNameLen() - _.length), c += h + o[s] + "." + _ + z(C + o[s]) + "_" + _ + `, + let O = d.getOptionValue("updatedbycol"); + C = h + " ".repeat(g.maxChildNameLen() - O.length), l += h + o[u] + "." + O + z(C + o[u]) + "_" + O + `, `; } } - c.lastIndexOf(`, -`) == c.length - 2 && (c = c.substr(0, c.length - 2) + ` -`), c += `from + l.lastIndexOf(`, +`) == l.length - 2 && (l = l.substr(0, l.length - 2) + ` +`), l += `from `; - for (let s = 2; s < o.length; s++) { - let g = " ".repeat(m - o[s].length); - var F = o[s]; - d.objPrefix() != null && d.objPrefix() != "" && (F = d.objPrefix() + o[s] + g + o[s]), c += h + F + `, + for (let u = 2; u < o.length; u++) { + let g = " ".repeat(m - o[u].length); + var _ = o[u]; + d.objPrefix() != null && d.objPrefix() != "" && (_ = d.objPrefix() + o[u] + g + o[u]), l += h + _ + `, `; } - c.lastIndexOf(`, -`) == c.length - 2 && (c = c.substr(0, c.length - 2) + ` -`), c += `where + l.lastIndexOf(`, +`) == l.length - 2 && (l = l.substr(0, l.length - 2) + ` +`), l += `where `; - for (let s = 2; s < o.length; s++) + for (let u = 2; u < o.length; u++) for (let g = 2; g < o.length; g++) - if (g != s) { - var O = o[s], w = o[g], e = d.find(O); + if (g != u) { + var F = o[u], G = o[g], e = d.find(F); if (e != null) { - var a = d.find(w); + var a = d.find(G); if (a != null) for (var n in e.fks) { - var l = e.fks[n]; - l == w && (c += h + O + "." + z(l) + "_id(+) = " + w + `.id and + var c = e.fks[n]; + c == G && (l += h + F + "." + z(c) + "_id(+) = " + G + `.id and `); } } } - return c = p(c, `where -`), c.lastIndexOf(" and") == c.length - 4 && (c = c.substring(0, c.length - 4) + ` -`), c += `/ -`, c.toLowerCase(); + return l = f(l, `where +`), l.lastIndexOf(" and") == l.length - 4 && (l = l.substring(0, l.length - 4) + ` +`), l += `/ +`, l.toLowerCase(); }, this.restEnable = function() { if (this.parseType() != "table" || this.trimmedContent().toUpperCase().indexOf("/REST") < 0) return ""; let o = this.parseName(); - const c = o.indexOf('"') == 0; + const l = o.indexOf('"') == 0; let m = d.objPrefix() + o; - return c ? m = d.objPrefix() + o.substring(1, o.length - 1) : m = (d.objPrefix() + o).toUpperCase(), `begin + return l ? m = d.objPrefix() + o.substring(1, o.length - 1) : m = (d.objPrefix() + o).toUpperCase(), `begin ` + h + "ords.enable_object(p_enabled=>TRUE, p_object=>'" + m + `'); end; / @@ -8093,8 +8098,8 @@ end; `, o += " on " + t.toLowerCase() + ` `, o += ` for each row `; - let c = this.trimmedContent().toUpperCase(); - (d.optionEQvalue("Rowkey", "yes") || 0 < c.indexOf("/ROWKEY")) && (o += `declare + let l = this.trimmedContent().toUpperCase(); + (d.optionEQvalue("Rowkey", "yes") || 0 < l.indexOf("/ROWKEY")) && (o += `declare function compress_int (n in integer ) return varchar2 as ret varchar2(30); @@ -8119,35 +8124,35 @@ end; end compress_int; `), o += `begin `; - var m = !1, y = "user"; - d.optionEQvalue("apex", "yes") && (y = "coalesce(sys_context('APEX$SESSION','APP_USER'),user)"), (d.optionEQvalue("rowkey", "yes") || 0 < c.indexOf("/ROWKEY")) && (o += ` if inserting then + var m = !1, S = "user"; + d.optionEQvalue("apex", "yes") && (S = "coalesce(sys_context('APEX$SESSION','APP_USER'),user)"), (d.optionEQvalue("rowkey", "yes") || 0 < l.indexOf("/ROWKEY")) && (o += ` if inserting then `, o += ` :new.row_key := compress_int(row_key_seq.nextval); `, o += ` end if; `, m = !0); - for (var P = 0; P < this.children.length; P++) { - var M = this.children[P]; - let R = null; - 0 < M.content.indexOf("/lower") ? R = "LOWER".toLowerCase() : 0 < M.content.indexOf("/upper") && (R = "UPPER".toLowerCase()), R != null && (o += " :new." + M.parseName().toLowerCase() + " := " + R + "(:new." + M.parseName().toLowerCase() + `); + for (var B = 0; B < this.children.length; B++) { + var M = this.children[B]; + let w = null; + 0 < M.content.indexOf("/lower") ? w = "LOWER".toLowerCase() : 0 < M.content.indexOf("/upper") && (w = "UPPER".toLowerCase()), w != null && (o += " :new." + M.parseName().toLowerCase() + " := " + w + "(:new." + M.parseName().toLowerCase() + `); `, m = !0); } - (d.optionEQvalue("Row Version Number", "yes") || 0 < c.indexOf("/ROWVERSION")) && (o += ` if inserting then + (d.optionEQvalue("Row Version Number", "yes") || 0 < l.indexOf("/ROWVERSION")) && (o += ` if inserting then `, o += ` :new.row_version := 1; `, o += ` elsif updating then `, o += ` :new.row_version := NVL(:old.row_version, 0) + 1; `, o += ` end if; -`, m = !0), (d.optionEQvalue("Audit Columns", "yes") || 0 < c.indexOf("/AUDITCOLS") || 0 < c.indexOf("/AUDIT COL")) && (o += ` if inserting then +`, m = !0), (d.optionEQvalue("Audit Columns", "yes") || 0 < l.indexOf("/AUDITCOLS") || 0 < l.indexOf("/AUDIT COL")) && (o += ` if inserting then `, o += " :new." + d.getOptionValue("createdcol") + ` := SYSDATE; -`.toLowerCase(), o += " :new." + d.getOptionValue("createdbycol") + " := " + y + `; +`.toLowerCase(), o += " :new." + d.getOptionValue("createdbycol") + " := " + S + `; `.toLowerCase(), o += ` end if; `, o += " :new." + d.getOptionValue("updatedcol") + ` := SYSDATE; -`.toLowerCase(), o += " :new." + d.getOptionValue("updatedbycol") + " := " + y + `; +`.toLowerCase(), o += " :new." + d.getOptionValue("updatedbycol") + " := " + S + `; `.toLowerCase(), m = !0); - var x = d.additionalColumns(); - for (var D in x) { - var N = x[D]; - o += " if :new." + D + ` is null then -`, N.startsWith("INT") ? o += " " + D + ` := 0; -` : o += " " + D + ` := 'N/A'; + var N = d.additionalColumns(); + for (var k in N) { + var x = N[k]; + o += " if :new." + k + ` is null then +`, x.startsWith("INT") ? o += " " + k + ` := 0; +` : o += " " + k + ` := 'N/A'; `, o += ` end if; `, m = !0; } @@ -8160,49 +8165,49 @@ end; i != "get" && (t = " default null"); let o = "out"; i != "get" && (o = " in"); - let c = h + "procedure " + i + `_row ( + let l = h + "procedure " + i + `_row ( `; - c += h + h + "p_id in number" + t; + l += h + h + "p_id in number" + t; for (var m in this.fks) { - let P = this.fks[m], M = "number", x = d.find(P); - x != null && x.getExplicitPkNode() != null && (M = x.getExplicitPkNode().parseType((D) => !0)), c += `, -`, c += h + h + "P_" + m + " " + o + " " + M + t; + let B = this.fks[m], M = "number", N = d.find(B); + N != null && N.getExplicitPkNode() != null && (M = N.getExplicitPkNode().parseType((k) => !0)), l += `, +`, l += h + h + "P_" + m + " " + o + " " + M + t; } - for (let P = 0; P < this.children.length; P++) { - var y = this.children[P]; - y.refId() == null && y.children.length == 0 && (c += `, -`, c += h + h + "P_" + y.parseName() + " " + o + " " + y.parseType("plsql") + t); + for (let B = 0; B < this.children.length; B++) { + var S = this.children[B]; + S.refId() == null && S.children.length == 0 && (l += `, +`, l += h + h + "P_" + S.parseName() + " " + o + " " + S.parseType("plsql") + t); } - return c += ` - )`, c; + return l += ` + )`, l; }, this.procBody = function(i) { let t = d.objPrefix() + this.parseName(), o = h + `is `; o += h + `begin `; - let c = h + h + "for c1 in (select * from " + t + ` where id = p_id) loop + let l = h + h + "for c1 in (select * from " + t + ` where id = p_id) loop `; - i == "insert" && (c = h + h + "insert into " + t + ` ( -`, c += h + h + h + "id"), i == "update" && (c = h + h + "update " + t + ` set -`, c += h + h + h + "id = p_id"), o += c; + i == "insert" && (l = h + h + "insert into " + t + ` ( +`, l += h + h + h + "id"), i == "update" && (l = h + h + "update " + t + ` set +`, l += h + h + h + "id = p_id"), o += l; for (let M in this.fks) { - let x = this.fks[M], D = d.find(x); - D != null && D.getExplicitPkNode() != null && D.getExplicitPkNode().parseType((R) => !0), (i == "insert" || i == "update") && (o += `, + let N = this.fks[M], k = d.find(N); + k != null && k.getExplicitPkNode() != null && k.getExplicitPkNode().parseType((w) => !0), (i == "insert" || i == "update") && (o += `, `); - let N = h + h + h + "P_" + M + " := c1." + M + `; + let x = h + h + h + "P_" + M + " := c1." + M + `; `; - i == "insert" && (N = h + h + h + M), i == "update" && (N = h + h + h + M + " = P_" + M + ` -`), o += N; + i == "insert" && (x = h + h + h + M), i == "update" && (x = h + h + h + M + " = P_" + M + ` +`), o += x; } for (var m = 0; m < this.children.length; m++) { - var y = this.children[m]; - if (y.refId() != null || y.children.length != 0) + var S = this.children[m]; + if (S.refId() != null || S.children.length != 0) continue; (i == "insert" || i == "update") && (o += `, `); - let M = h + h + h + "P_" + y.parseName().toLowerCase() + " := c1." + y.parseName().toLowerCase() + `; + let M = h + h + h + "P_" + S.parseName().toLowerCase() + " := c1." + S.parseName().toLowerCase() + `; `; - i == "insert" && (M = h + h + h + y.parseName().toLowerCase()), i == "update" && (M = h + h + h + y.parseName().toLowerCase() + " = P_" + y.parseName().toLowerCase() + ` + i == "insert" && (M = h + h + h + S.parseName().toLowerCase()), i == "update" && (M = h + h + h + S.parseName().toLowerCase() + " = P_" + S.parseName().toLowerCase() + ` `), o += M; } if (i == "insert") { @@ -8213,16 +8218,16 @@ end; o += `, `, o += h + h + h + "p_" + M; for (let M = 0; M < this.children.length; M++) { - let x = this.children[M]; - x.refId() == null && x.children.length == 0 && (o += `, -`, o += h + h + h + "p_" + x.parseName()); + let N = this.children[M]; + N.refId() == null && N.children.length == 0 && (o += `, +`, o += h + h + h + "p_" + N.parseName()); } } - let P = ` + let B = ` end loop; `; - return i == "insert" && (P = ` -` + h + h + ");"), i == "update" && (P = h + h + "where id = p_id;"), o += P, o += ` + return i == "insert" && (B = ` +` + h + h + ");"), i == "update" && (B = h + h + "where id = p_id;"), o += B, o += ` ` + h + "end " + i + `_row; `, o += ` `, o; @@ -8262,133 +8267,136 @@ is `, t += "end " + i.toLowerCase() + `_api; `, t += `/ `, t.toLowerCase(); - }, this.rows = 0, this.generateData = function(i, t) { + }, this.cardinality = function() { + let i = this.trimmedContent().toLowerCase(), t = i.indexOf("/insert "); + if (0 < t) { + i = i.substr(t + 8); + let o = i.split(" "), l = parseInt(o[0]); + const m = d.getOptionValue("datalimit"); + return m < l && (l = m), l; + } + return 0; + }, this.generateData = function(i, t) { if (d.optionEQvalue("inserts", !1)) return ""; - const o = this.inserts4tbl(i, t), c = this.orderedTableNodes(); + const o = this.inserts4tbl(i, t), l = this.orderedTableNodes(); let m = ""; - for (let y = 0; y < c.length; y++) { - const P = o[c[y].parseName()]; - P != null && (m += P); + for (let S = 0; S < l.length; S++) { + const B = o[l[S].parseName()]; + B != null && (m += B); } return m; }, this.inserts4tbl = function(i, t) { let o = {}; if (d.optionEQvalue("inserts", !1)) return ""; - let c = d.objPrefix() + this.parseName(), m = "", y = this.trimmedContent().toLowerCase(), P = y.indexOf("/insert "), M = 0; - if (0 < P) { - y = y.substr(P + 8); - let D = y.split(" "); - if (this.rows = parseInt(D[0]), 0 < this.rows) { - for (d.getOptionValue("datalimit") < this.rows && (this.rows = d.getOptionValue("datalimit")), M = 0; M < this.rows; M++) { - let N = i; - i != null && Array.isArray(i) && (N = i[M]), m += "insert into " + c + ` ( + let l = d.objPrefix() + this.parseName(), m = ""; + for (let B = 0; B < this.cardinality(); B++) { + let M = i; + i != null && Array.isArray(i) && (M = i[B]), m += "insert into " + l + ` ( `; - let R = this.getGenIdColName(); - if (R != null) - m += h + R + `, + let N = this.getGenIdColName(); + if (N != null) + m += h + N + `, `; - else { - let G = this.getExplicitPkNode(); - G != null && (m += h + G.parseName() + `, + else { + let k = this.getExplicitPkNode(); + k != null && (m += h + k.parseName() + `, `); - } - for (let G in this.fks) { - let F = this.fks[G], O = d.find(F), w = ""; - O == null && (O = d.find(G), O.isMany2One() & !G.endsWith("_id") && (F = G, G = z(G), w = "_id")), m += h + G + w + `, + } + for (let k in this.fks) { + let x = this.fks[k], w = d.find(x), R = ""; + w == null && (w = d.find(k), w.isMany2One() & !k.endsWith("_id") && (x = k, k = z(k), R = "_id")), m += h + k + R + `, `; - } - for (let G = 0; G < this.children.length; G++) { - let F = this.children[G]; - if (!(R != null && F.parseName() == "id") && F.refId() == null) { - if (F == this.getExplicitPkNode()) - continue; - F.children.length == 0 && (m += h + F.parseName() + `, + } + for (let k = 0; k < this.children.length; k++) { + let x = this.children[k]; + if (!(N != null && x.parseName() == "id") && x.refId() == null) { + if (x == this.getExplicitPkNode()) + continue; + x.children.length == 0 && (m += h + x.parseName() + `, `); - } - } - if (m.lastIndexOf(`, + } + } + if (m.lastIndexOf(`, `) == m.length - 2 && (m = m.substr(0, m.length - 2) + ` `), m += `) values ( -`, R != null) - m += h + (M + 1) + `, +`, N != null) + m += h + (B + 1) + `, `; - else { - let G = this.getExplicitPkNode(); - if (G != null) { - const F = G.parseName(); - let O = b(d.data, null, F, this.parseName()), w = -1; - N != null && (w = N[F]), O != null && O[M] != null && (w = O[M]), m += h + (w ?? M + 1) + `, -`; - } - } - for (let G in this.fks) { - let F = this.fks[G], O = d.find(F), w = []; - for (let e = 1; e <= O.rows; e++) - w.push(e); - if (t != null && O != null) { - const e = O.getPkName(); - if (e == null) - continue; - let a = t[e]; - a != null && (w = [], w[0] = a); - } - if (N != null) { - let e = N[F]; - if (e != null) { - const a = O.getPkName(); - if (a == null) - continue; - let n = e[a]; - n != null && (w = [], w[0] = n); - } - } - m += h + oe(d.getOptionValue("Data Language"), le(c, z(F) + "_id", "INTEGER", w)) + `, + else { + let k = this.getExplicitPkNode(); + if (k != null) { + const x = k.parseName(); + let w = p(d.data, null, x, this.parseName()), R = -1; + M != null && (R = M[x]), w != null && w[B] != null && (R = w[B]), m += h + (R != -1 ? R : B + 1) + `, `; + } + } + this.parseName() == "donut_batters" && console.log(""); + for (let k in this.fks) { + let x = this.fks[k], w = d.find(x), R = []; + for (let _ = 1; _ <= w.cardinality(); _++) + R.push(_); + if (t != null && w != null) { + const _ = w.getPkName(); + if (_ == null) + continue; + let F = t[_]; + F != null && (R = [], R[0] = F); + } + if (M != null) { + let _ = M[x]; + if (_ != null) { + const F = w.getPkName(); + if (F == null) + continue; + let G = _[F]; + G != null && (R = [], R[0] = G); } - for (let G = 0; G < this.children.length; G++) { - let F = this.children[G]; - if (!(R != null && F.parseName() == "id") && F.refId() == null) { - if (F == this.getExplicitPkNode()) - continue; - if (F.children.length == 0) { - let O = F.parseValues(), w = F.parseName(); - if (N != null) { - let n = N[w]; - n != null && (O = [], O[0] = n); - } - let e = b(d.data, null, w, this.parseName()); - e != null && e[M] != null && (O = [], O[0] = e[M]); - let a = le(c, w, F.parseType(), O); - m += h + oe(d.getOptionValue("Data Language"), a) + `, + } + m += h + le(d.getOptionValue("Data Language"), se(l, z(x) + "_id", "INTEGER", R)) + `, `; - } + } + for (let k = 0; k < this.children.length; k++) { + let x = this.children[k]; + if (!(N != null && x.parseName() == "id") && x.refId() == null) { + if (x == this.getExplicitPkNode()) + continue; + if (x.children.length == 0) { + let w = x.parseValues(), R = x.parseName(); + if (M != null) { + let G = M[R]; + G != null && (w = [], w[0] = G); } + let _ = p(d.data, null, R, this.parseName()); + _ != null && _[B] != null && (w = [], w[0] = _[B]); + let F = se(l, R, x.parseType(), w); + m += h + le(d.getOptionValue("Data Language"), F) + `, +`; } - m.lastIndexOf(`, + } + } + m.lastIndexOf(`, `) == m.length - 2 && (m = m.substr(0, m.length - 2) + ` `), m += `); `; - } - m += ` -`; - } } - m != "" && (m += `commit; + m != "" && (m += ` +commit; `); - let x = this.getGenIdColName(); - x != null && 1 < M && !d.optionEQvalue("pk", "guid") && (m += "alter table " + c + ` -modify ` + x + " generated always as identity restart start with " + (M + 1) + `; + let S = this.getGenIdColName(); + S != null && 1 < this.cardinality() && !d.optionEQvalue("pk", "guid") && (m += "alter table " + l + ` +modify ` + S + " generated always as identity restart start with " + (this.cardinality() + 1) + `; -`), o[c] = m; - for (let D = 0; D < this.children.length; D++) { - const N = this.children[D]; - if (0 < N.children.length) { - const R = i; - let G = null; - i != null && (G = i[N.parseName()]), o = { ...o, ...N.inserts4tbl(G, R) }; +`), o[l] = m; + for (let B = 0; B < this.children.length; B++) { + const M = this.children[B]; + if (0 < M.children.length) { + const N = i; + let k = null; + i != null && (k = i[M.parseName()]), o = { ...o, ...M.inserts4tbl(k, N) }; } } return o; @@ -8406,32 +8414,32 @@ modify ` + x + " generated always as identity restart start with " + (M + 1) + let o = ""; this.getExplicitPkNode == null && (o += i + "'" + this.getGenIdColName() + "' : " + t + "." + this.getGenIdColName() + `, `); - for (var c = 0; c < this.children.length; c++) { - var m = this.children[c], y = m.parseName(); + for (var l = 0; l < this.children.length; l++) { + var m = this.children[l], S = m.parseName(); if (m.children.length == 0) { - if (this.hasNonArrayChildId(y)) + if (this.hasNonArrayChildId(S)) continue; - o += i + "'" + y + "' : " + t + "." + y; + o += i + "'" + S + "' : " + t + "." + S; } else { - if (o += i + "'" + y + `' : [ + if (o += i + "'" + S + `' : [ `, m.isMany2One(), i += " ", o += i + `select JSON { `, this.isMany2One()) throw new Error(this.one2many2oneUnsupoported); - o += m.generateSelectJsonTopDown(i + " "), o += i + " WITH NOCHECK } from " + y + ` with INSERT UPDATE + o += m.generateSelectJsonTopDown(i + " "), o += i + " WITH NOCHECK } from " + S + ` with INSERT UPDATE `; - let x = null; - for (var P in m.fks) { - var M = m.fks[P]; + let N = null; + for (var B in m.fks) { + var M = m.fks[B]; if (M == t) { - x = P; + N = B; break; } } - const D = t + "." + this.getPkName(), N = y + "." + x; - o += i + "where " + N + " = " + D + ` + const k = t + "." + this.getPkName(), x = S + "." + N; + o += i + "where " + x + " = " + k + ` `, i = i.slice(0, -2), o += i + "]"; } - o += c < this.children.length - 1 ? `, + o += l < this.children.length - 1 ? `, ` : ` `; } @@ -8441,265 +8449,268 @@ modify ` + x + " generated always as identity restart start with " + (M + 1) + var i = this.trimmedContent(), t = i.split(" "); if (3 < t.length) throw "max 1 table is allowed in DV"; - var o = "", c = d.find(t[2]); - return c != null && (o += "create or replace json relational duality view " + t[1] + ` as + var o = "", l = d.find(t[2]); + return l != null && (o += "create or replace json relational duality view " + t[1] + ` as `, o += `select JSON { -`, o += c.isMany2One() ? c.generateSelectJsonBottomUp(" ") : c.generateSelectJsonTopDown(" "), o += "} from " + c.parseName() + ` with INSERT UPDATE DELETE; +`, o += l.isMany2One() ? l.generateSelectJsonBottomUp(" ") : l.generateSelectJsonTopDown(" "), o += "} from " + l.parseName() + ` with INSERT UPDATE DELETE; `), o; }; } - function k(S) { - d = S; - const T = S.input; - let r = [], u = []; - const i = Z(T + ` + function D(y) { + d = y; + const I = y.input; + let r = [], s = []; + const i = Q(I + ` `, !0, !0, ""); d.data = null; - let t = null, o = "", c = 0; + let t = null, o = "", l = 0; e: for (let m in i) { - const y = i[m]; - if (y.value == ` + const S = i[m]; + if (S.value == ` ` && t == null) { if (o = o.replace(/\r/g, ""), o.replace(/\r/g, "").replace(/ /g, "") == "") { - o = "", c++; + o = "", l++; continue; } - let M = new I(c, o, null), x = !1; - for (let D = 0; D < r.length; D++) { - let N = r[D]; - if (M.apparentDepth() <= N.apparentDepth()) - if (0 < D) { - let R = r[D - 1]; - M = new I(c, o, R), r[D] = M, r = r.slice(0, D + 1), x = !0; + let M = new T(l, o, null), N = !1; + for (let k = 0; k < r.length; k++) { + let x = r[k]; + if (M.apparentDepth() <= x.apparentDepth()) + if (0 < k) { + let w = r[k - 1]; + M = new T(l, o, w), r[k] = M, r = r.slice(0, k + 1), N = !0; break; } else - r[0] = M, r = r.slice(0, 1), u.push(M), x = !0; + r[0] = M, r = r.slice(0, 1), s.push(M), N = !0; } - if (!x) { + if (!N) { if (0 < r.length) { - let D = r[r.length - 1]; - M = new I(c, o, D); + let k = r[r.length - 1]; + M = new T(l, o, k); } - r.push(M), M.apparentDepth() == 0 && u.push(M); + r.push(M), M.apparentDepth() == 0 && s.push(M); } if (M.isMany2One()) { - const D = M.parent; - D.fks == null && (D.fks = []); - let N = M.refId(); - N == null && (N = M.parseName()), D.fks[M.parseName() + "_id"] = N; + const k = M.parent; + k.fks == null && (k.fks = []); + let x = M.refId(); + x == null && (x = M.parseName()), k.fks[M.parseName() + "_id"] = x; } - c++, o = ""; + l++, o = ""; continue; } - if (t == null && y.value == "#") { + if (t == null && S.value == "#") { t = ""; continue; } if (t != null) { - if (t += y.value, y.value != ` -` && y.value != "}") + if (t += S.value, S.value != ` +` && S.value != "}") continue; - const P = Z(t, !1, !0, ""); - if (P.length % 4 == 3 && P[1].value == ":") { - S.setOptions(t), t = null, o = ""; + const B = Q(t, !1, !0, ""); + if (B.length % 4 == 3 && B[1].value == ":") { + y.setOptions(t), t = null, o = ""; continue; } - let M = null, x = null; - for (let D in P) { - const N = P[D]; - if (M == null && N.value == "document") { + let M = null, N = null; + for (let k in B) { + const x = B[k]; + if (M == null && x.value == "document") { M = ""; continue; } if (M != null) { - if (M += N.value, M == "=") + if (M += x.value, M == "=") continue; - let R = M.substring(1); + let w = M.substring(1); try { - d.data = JSON.parse(R), t = null, o = ""; + d.data = JSON.parse(w), t = null, o = ""; continue e; } catch { } } - if (x == null && N.value == "settings") { - x = ""; + if (N == null && x.value == "settings") { + N = ""; continue; } - if (x != null) { - x += N.value, x.substring(1); + if (N != null) { + N += x.value, N.substring(1); try { - S.setOptions(x), t = null, o = ""; + y.setOptions(N), t = null, o = ""; continue e; } catch { } } } } - if (y.type != "comment") { - if (y.type == "line-comment") { - 0 < o.trim().length && (o += y.value); + if (S.type != "comment") { + if (S.type == "line-comment") { + 0 < o.trim().length && (o += S.value); continue; } - o += y.value; + o += S.value; } } - return u; + return s; } - function p(S, T) { - let r = T.toLowerCase(); - return 0 < S.indexOf(r) && S.indexOf(r) == S.length - r.length ? S.substring(0, S.length - r.length) : S.trim(); + function f(y, I) { + let r = I.toLowerCase(); + return 0 < y.indexOf(r) && y.indexOf(r) == y.length - r.length ? y.substring(0, y.length - r.length) : y.trim(); } - function b(S, T, r, u) { + function p(y, I, r, s) { let i = []; - if (S == null || typeof S != "object") + if (y == null || typeof y != "object") return null; - let t = S[r]; - t != null && T == u && i.push(t); - for (var o in S) { - let c = S[o]; - t = b(c, o, r, u), t != null && (i = i.concat(t)); + let t = y[r]; + t != null && I == s && i.push(t); + for (var o in y) { + let l = y[o]; + t = p(l, o, r, s), t != null && (i = i.concat(t)); } return i; } - return k; + return D; }(); -var Ce = function() { +var Ae = function() { function d() { this.aggrCounts = {}, this.calculateCounts = function(E, L) { - let I = this.aggrSizes[E]; - I == null && (I = 0); - let k = 1; - L.length != null && (k = L.length), this.aggrSizes[E] = I + k; - for (let p in L) - L[p] != null && typeof L[p] == "object" && this.calculateCounts(p, L[p]); - }, this.introspect = function(E, L, I, k) { - if (I == 0) { - if (this.aggrSizes = {}, I == 0) - for (let S in L) { - let T = ["_address", "_id", "_name", "Id"], r = !1, u = ""; - for (let i = 0; i < T.length; i++) { - const t = T[i]; - if (S.endsWith(t)) { - u += S.substring(0, S.length - t.length), r = !0; + let T = this.aggrSizes[E]; + T == null && (T = 0); + let D = 1; + L.length != null && (D = L.length), this.aggrSizes[E] = T + D; + for (let f in L) + L[f] != null && typeof L[f] == "object" && this.calculateCounts(f, L[f]); + }, this.introspect = function(E, L, T, D) { + const f = this.aggrSizes == null; + if (f) { + if (this.aggrSizes = {}, T == 0) + for (let I in L) { + let r = ["_address", "_id", "_name", "Id"], s = !1, i = ""; + for (let t = 0; t < r.length; t++) { + const o = r[t]; + if (I.endsWith(o)) { + i += I.substring(0, I.length - o.length), s = !0; break; } } - !r && E == null ? E = "unnamed_entity" : r && (E = u); + !s && E == null ? E = "unnamed_entity" : s && (E = i); break; } this.calculateCounts(E, L); } let p = ""; - k != null && k && (p = ">"); - let b = ` -` + h(I) + p + E; - if (typeof L == "number" && (b += " num", E.endsWith("_id") || E.endsWith("Id"))) - return b += " /pk", b; - if (typeof L == "object") { - if (Array.isArray(L)) - for (let T in L) { - 1 <= T && console.log("1 <= property !"); - const r = L[T]; - return this.introspect(E, r, I, !1); + D != null && D && (p = ">"); + let y = E; + if (0 < T && (y = ` +` + h(T) + p + E), typeof L == "number" && (y += " num", E.endsWith("_id") || E.endsWith("Id"))) + return y += " /pk", y; + e: + if (typeof L == "object") { + if (Array.isArray(L)) + for (let r in L) { + 1 <= r && console.log("1 <= property !"); + const s = L[r]; + y = this.introspect(E, s, T, !1); + break e; + } + else if (E != "") { + let r = this.aggrSizes[E]; + y += " /insert " + r; } - else if (E != "") { - let T = this.aggrSizes[E]; - b += " /insert " + T; - } - let S = ""; - for (let T in L) { - const r = L[T]; - if (T != null) { - const t = z(E), o = T.toLowerCase(); - if (E != null && t + "_id" == o && 0 < I && (S = T), t + "_id" == o) - continue; + let I = ""; + for (let r in L) { + const s = L[r]; + if (r != null) { + const o = z(E), l = r.toLowerCase(); + if (E != null && o + "_id" == l && 0 < T && (I = r), o + "_id" == l) + continue; + } + let i = typeof s == "object"; + const t = this.introspect(r, s, T + 1, i); + y += t; } - let u = typeof r == "object"; - const i = this.introspect(T, r, I + 1, u); - b += i; + I != "" && (y += ` +` + h(T) + I); } - S != "" && (b += ` -` + h(I) + S); - } - return I == 0 && (b += ` + return f && (y += ` -dv ` + E + "_dv " + E, b += ` +dv ` + E + "_dv " + E, y += ` -#settings = { genpk: false, drop: true }`, b += ` +#settings = { genpk: false, drop: true }`, y += ` --- Generated by json2qsql.js ${te()} ` + (/* @__PURE__ */ new Date()).toLocaleString() + ` +-- Generated by json2qsql.js ${oe()} ` + (/* @__PURE__ */ new Date()).toLocaleString() + ` -`, b += `#document = -`, b += JSON.stringify(L, null, 3), b += ` -`), b; +`, y += `#document = +`, y += JSON.stringify(L, null, 3), y += ` +`, this.aggrSizes = null), y; }; } function h(E) { - for (var L = "", I = 0; I < E; I++) + for (var L = "", T = 0; T < E; T++) L = L + " "; return L; } return new d(); }(); -const ve = function() { - function d(p, b, S, T) { - this.from = b, this.to = S, S == null && (this.to = new h(b.line, b.depth + 1)), this.message = p, this.severity = T, T == null && (this.severity = "error"); +const ye = function() { + function d(f, p, y, I) { + this.from = p, this.to = y, y == null && (this.to = new h(p.line, p.depth + 1)), this.message = f, this.severity = I, I == null && (this.severity = "error"); } - function h(p, b) { - this.line = p, this.depth = b; + function h(f, p) { + this.line = f, this.depth = p; } - function E(p) { - const b = p, S = p.input; - let T = []; - const r = S.split(` + function E(f) { + const p = f, y = f.input; + let I = []; + const r = y.split(` `); - T = T.concat(k(r)); - const u = b.descendants(); - for (let i = 0; i < u.length; i++) { - const t = u[i]; - if (b.optionEQvalue("genpk", !0) && u[i].parseName() == "id") { + I = I.concat(D(r)); + const s = p.descendants(); + for (let i = 0; i < s.length; i++) { + const t = s[i]; + if (p.optionEQvalue("genpk", !0) && s[i].parseName() == "id") { const m = t.content.toLowerCase().indexOf("id"); - T.push(new d(q.duplicateId, new h(t.line, m))); + I.push(new d(q.duplicateId, new h(t.line, m))); continue; } const o = t.src[2]; if (2 < t.src.length && o.value == "-") { const m = o.begin; - T.push(new d(q.invalidDatatype, new h(t.line, m))); + I.push(new d(q.invalidDatatype, new h(t.line, m))); continue; } - const c = t.src[1]; - if (1 < t.src.length && 0 < c.value.indexOf("0")) { - const m = c.begin; - T.push(new d(q.invalidDatatype, new h(t.line, m))); + const l = t.src[1]; + if (1 < t.src.length && 0 < l.value.indexOf("0")) { + const m = l.begin; + I.push(new d(q.invalidDatatype, new h(t.line, m))); continue; } - T = T.concat(L(b, t)), T = T.concat(I(b, t)); + I = I.concat(L(p, t)), I = I.concat(T(p, t)); } - return T; + return I; } - function L(p, b) { - var S = [], T = b.content.toLowerCase(); - if (b.parseType() == "view") { - var r = $(T, " "); + function L(f, p) { + var y = [], I = p.content.toLowerCase(); + if (p.parseType() == "view") { + var r = ee(I, " "); let t = 0; - for (var u = 0; u < r.length; u++) - if (t += r[u].length, r[u] != " " && r[u] != "view" && u != 1) { - var i = p.find(r[u]); - i == null && S.push(new d( - q.undefinedObject + r[u], - new h(b.line, t - r[u].length) + for (var s = 0; s < r.length; s++) + if (t += r[s].length, r[s] != " " && r[s] != "view" && s != 1) { + var i = f.find(r[s]); + i == null && y.push(new d( + q.undefinedObject + r[s], + new h(p.line, t - r[s].length) )); } } - return S; + return y; } - function I(p, b) { - var S = [], T = b.content.toLowerCase(); - if (0 < T.indexOf("/fk") || 0 < T.indexOf("/reference")) { - let i = $(T, " "), t = 0, o = !1; + function T(f, p) { + var y = [], I = p.content.toLowerCase(); + if (0 < I.indexOf("/fk") || 0 < I.indexOf("/reference")) { + let i = ee(I, " "), t = 0, o = !1; for (var r = 0; r < i.length; r++) if (t += i[r].length, i[r] != " ") { if (i[r] == "/fk" || i[r].indexOf("/reference") == 0) { @@ -8707,65 +8718,65 @@ const ve = function() { continue; } if (o) { - var u = p.find(i[r]); - if (u == null) { - S.push(new d( + var s = f.find(i[r]); + if (s == null) { + y.push(new d( q.undefinedObject + i[r], - new h(b.line, t - i[r].length) + new h(p.line, t - i[r].length) )); break; } } } } - return S; + return y; } - function k(p) { - for (var b = [], S = Ae(p), T = 1; T < p.length; T++) { - var r = p[T - 1], u = p[T], i = re(r), t = re(u); - t != 0 && i < t && t < i + S && b.push( + function D(f) { + for (var p = [], y = Se(f), I = 1; I < f.length; I++) { + var r = f[I - 1], s = f[I], i = te(r), t = te(s); + t != 0 && i < t && t < i + y && p.push( new d( - q.misalignedAttribute + S, - new h(T, t) + q.misalignedAttribute + y, + new h(I, t) ) ); } - return b; + return p; } return E; }(); -function Ae(d) { +function Se(d) { let h = []; for (var E = 0; E < d.length; E++) { var L = d[E]; - h[E] = re(L); + h[E] = te(L); } - let I = []; - for (let p = 0; p < h.length; p++) { - let b = ye(h, p); - if (b != null) { - let S = I[h[p] - h[b]]; - S == null && (S = 0), I[h[p] - h[b]] = S + 1; + let T = []; + for (let f = 0; f < h.length; f++) { + let p = Me(h, f); + if (p != null) { + let y = T[h[f] - h[p]]; + y == null && (y = 0), T[h[f] - h[p]] = y + 1; } } - let k = null; - for (let p in I) - (k == null || I[k] <= I[p]) && (k = p); - return k; + let D = null; + for (let f in T) + (D == null || T[D] <= T[f]) && (D = f); + return D; } -function re(d) { +function te(d) { for (var h = d.split(/ |\t/), E = 0, L = 0; L < h.length; L++) { - var I = h[L]; - if (I == " " && (E += 4), I == "") { + var T = h[L]; + if (T == " " && (E += 4), T == "") { E++; continue; } - if (!/[^.a-zA-Z0-9_"]/.test(I)) + if (!/[^.a-zA-Z0-9_"]/.test(T)) return E; } return 0; } -function ye(d, h) { +function Me(d, h) { for (let E = h; 0 <= E; E--) if (d[E] < d[h]) return E; @@ -8776,7 +8787,7 @@ const q = { invalidDatatype: "Invalid Datatype", undefinedObject: "Undefined Object: ", misalignedAttribute: "Misaligned Table or Column; apparent indent = " -}, Se = { findErrors: ve, messages: q }, ne = "identityDataType", ce = "guid", ue = "Timestamp with time zone", me = "Timestamp with local time zone", j = function() { +}, Te = { findErrors: ye, messages: q }, ie = "identityDataType", ue = "guid", me = "Timestamp with time zone", de = "Timestamp with local time zone", j = function() { const d = { apex: { label: "APEX", value: "no", check: ["yes", "no"] }, auditcols: { label: "Audit Columns", value: "no", check: ["yes", "no"] }, @@ -8788,7 +8799,7 @@ const q = { semantics: { label: "Character Strings", value: "CHAR", check: ["BYTE", "CHAR", "Default"] }, language: { label: "Data Language", value: "EN", check: ["EN", "JP", "KO"] }, datalimit: { label: "Data Limit Rows", value: 1e4 }, - date: { label: "Date Data Type", value: "DATE", check: ["DATE", "TIMESTAMP", ue, me] }, + date: { label: "Date Data Type", value: "DATE", check: ["DATE", "TIMESTAMP", me, de] }, db: { label: "DB", value: "no", check: ["not used"] }, dv: { label: "Duality View", value: "no", check: ["yes", "no"] }, // switched default to 'no' until thorough development&testig @@ -8800,7 +8811,7 @@ const q = { overridesettings: { label: "Ignore toDDL() second parameter", value: "no", check: ["yes", "no"] }, prefix: { label: "Object Prefix", value: "" }, //ondelete: {label: 'On Delete', value:'Cascade',check:['restrict','cascade','set null']}, - pk: { label: "Primary Key Maintenance", value: ne, check: [ne, ce, "SEQ", "NONE"] }, + pk: { label: "Primary Key Maintenance", value: ie, check: [ie, ue, "SEQ", "NONE"] }, prefixpkwithtname: { label: "Prefix primary keys with table name", value: "no", check: ["yes", "no"] }, rowkey: { label: "Alphanumeric Row Identifier", value: "no", check: ["yes", "no"] }, rowversion: { label: "Row Version Number", value: "no", check: ["yes", "no"] }, @@ -8813,259 +8824,259 @@ const q = { function h(L) { if (L == null) return null; - let I = L; - return typeof I == "string" && (I = I.toLowerCase()), I == "yes" ? !0 : I == "no" ? !1 : I == "y" ? !0 : I == "n" ? !1 : I == "true" ? !0 : I == "false" ? !1 : I == ne.toLowerCase() ? "identity" : I == ce.toLowerCase() ? "guid" : I == ue.toLowerCase() ? "tswtz" : I == me.toLowerCase() ? "tswltz" : I; + let T = L; + return typeof T == "string" && (T = T.toLowerCase()), T == "yes" ? !0 : T == "no" ? !1 : T == "y" ? !0 : T == "n" ? !1 : T == "true" ? !0 : T == "false" ? !1 : T == ie.toLowerCase() ? "identity" : T == ue.toLowerCase() ? "guid" : T == me.toLowerCase() ? "tswtz" : T == de.toLowerCase() ? "tswltz" : T; } - function E(L, I) { - this.ddl = null, this.erd = null, this.errors = null, this.options = JSON.parse(JSON.stringify(d)), this.input = L, this.getOptionValue = function(p) { - const b = p.toLowerCase(); - let S = this.options[b]; - if (!(b in this.options)) - for (let T in this.options) { - const r = this.options[T].label; + function E(L, T) { + this.ddl = null, this.erd = null, this.errors = null, this.options = JSON.parse(JSON.stringify(d)), this.input = L, this.getOptionValue = function(f) { + const p = f.toLowerCase(); + let y = this.options[p]; + if (!(p in this.options)) + for (let I in this.options) { + const r = this.options[I].label; if (r == null) continue; - r.toLowerCase() == b && (S = this.options[T]); + r.toLowerCase() == p && (y = this.options[I]); } - return S == null ? null : S.value; - }, this.optionEQvalue = function(p, b) { - var S = this.getOptionValue(p); - return h(S) == h(b); + return y == null ? null : y.value; + }, this.optionEQvalue = function(f, p) { + var y = this.getOptionValue(f); + return h(y) == h(p); }, this.nonDefaultOptions = function() { - let p = {}; - for (let b in this.options) - d[b] && !this.optionEQvalue(b, d[b].value) && (p[b] = this.options[b].value); - return p; + let f = {}; + for (let p in this.options) + d[p] && !this.optionEQvalue(p, d[p].value) && (f[p] = this.options[p].value); + return f; }, this.unknownOptions = function() { - let p = []; - for (let b in this.options) - d[b] == null && p.push(b); - return p; - }, this.setOptionValue = function(p, b) { - let S = p.toLowerCase(); - if (!(S in this.options)) { + let f = []; + for (let p in this.options) + d[p] == null && f.push(p); + return f; + }, this.setOptionValue = function(f, p) { + let y = f.toLowerCase(); + if (!(y in this.options)) { for (let r in this.options) - if (this.options[r].label == p) { - this.options[r].value = b; + if (this.options[r].label == f) { + this.options[r].value = p; return; } } - b == null && (b = ""); - let T = this.options[S]; - T == null && (T = {}, this.options[S] = T), T.value = b; + p == null && (p = ""); + let I = this.options[y]; + I == null && (I = {}, this.options[y] = I), I.value = p; }, this.semantics = function() { - var p = ""; - return this.optionEQvalue("semantics", "CHAR") ? p = " char" : this.optionEQvalue("semantics", "BYTE") && (p = " byte"), p; - }, this.find = function(p) { - for (var b = 0; b < this.forest.length; b++) - for (var S = this.forest[b].descendants(), T = 0; T < S.length; T++) { - var r = S[T]; - if (r.parseName() == de(p)) + var f = ""; + return this.optionEQvalue("semantics", "CHAR") ? f = " char" : this.optionEQvalue("semantics", "BYTE") && (f = " byte"), f; + }, this.find = function(f) { + for (var p = 0; p < this.forest.length; p++) + for (var y = this.forest[p].descendants(), I = 0; I < y.length; I++) { + var r = y[I]; + if (r.parseName() == he(f)) return r; } return null; - }, this.setOptions = function(p) { - p = p.trim(), p.startsWith("#") && (p = p.substring(1).trim()); - const b = p.indexOf("="); - let S = p.substring(b + 1).trim(); - S.indexOf("{") < 0 && (S = "{" + p + "}"); - let T = "", r = Z(S, !0, !0, ""); + }, this.setOptions = function(f) { + f = f.trim(), f.startsWith("#") && (f = f.substring(1).trim()); + const p = f.indexOf("="); + let y = f.substring(p + 1).trim(); + y.indexOf("{") < 0 && (y = "{" + f + "}"); + let I = "", r = Q(y, !0, !0, ""); for (let i in r) { let t = r[i]; - t.type == "identifier" && t.value != "true" && t.value != "false" && t.value != "null" ? T += '"' + t.value + '"' : T += t.value; + t.type == "identifier" && t.value != "true" && t.value != "false" && t.value != "null" ? I += '"' + t.value + '"' : I += t.value; } - let u = JSON.parse(T); - for (let i in u) - this.setOptionValue(i.toLowerCase(), u[i]); + let s = JSON.parse(I); + for (let i in s) + this.setOptionValue(i.toLowerCase(), s[i]); }, this.descendants = function() { - for (var p = [], b = 0; b < this.forest.length; b++) - p = p.concat(this.forest[b].descendants()); - return p; + for (var f = [], p = 0; p < this.forest.length; p++) + f = f.concat(this.forest[p].descendants()); + return f; }, this.additionalColumns = function() { - var p = [], b = this.getOptionValue("Auxiliary Columns"); - if (b == null) - return p; - for (var S = b.split(","), T = 0; T < S.length; T++) { - var r = S[T].trim(), u = "VARCHAR2(4000)", i = r.indexOf(" "); - 0 < i && (u = r.substring(i + 1).toUpperCase(), r = r.substring(0, i)), p[r] = u; + var f = [], p = this.getOptionValue("Auxiliary Columns"); + if (p == null) + return f; + for (var y = p.split(","), I = 0; I < y.length; I++) { + var r = y[I].trim(), s = "VARCHAR2(4000)", i = r.indexOf(" "); + 0 < i && (s = r.substring(i + 1).toUpperCase(), r = r.substring(0, i)), f[r] = s; } - return p; - }, this.objPrefix = function(p) { - var b = this.getOptionValue("schema"); - b == null && (b = ""), b != "" && p == null ? b = b + "." : b = ""; - var S = ""; - return this.getOptionValue("prefix") != null && (S = this.getOptionValue("prefix")), b = b + S, S != "" && (b = b + "_"), b.toLowerCase(); + return f; + }, this.objPrefix = function(f) { + var p = this.getOptionValue("schema"); + p == null && (p = ""), p != "" && f == null ? p = p + "." : p = ""; + var y = ""; + return this.getOptionValue("prefix") != null && (y = this.getOptionValue("prefix")), p = p + y, y != "" && (p = p + "_"), p.toLowerCase(); }; - let k = ""; - 0 < L.toLowerCase().indexOf("overridesettings") && se(this), I != null && this.optionEQvalue("overrideSettings", !1) && (k = "# settings = " + I + ` + let D = ""; + 0 < L.toLowerCase().indexOf("overridesettings") && ce(this), T != null && this.optionEQvalue("overrideSettings", !1) && (D = "# settings = " + T + ` -`), this.input = k + L, this.forest = se(this), this.getERD = function() { +`), this.input = D + L, this.forest = ce(this), this.getERD = function() { if (this.erd != null) return this.erd; - let p = this.descendants(), b = { items: [] }; - for (let r = 0; r < p.length; r++) { - if (p[r].parseType() != "table") + let f = this.descendants(), p = { items: [] }; + for (let r = 0; r < f.length; r++) { + if (f[r].parseType() != "table") continue; - let u = { name: this.objPrefix("no schema") + p[r].parseName("") }, i = this.getOptionValue("schema"); - i == "" && (i = null), u.schema = i, u.columns = [], b.items.push(u); - let t = p[r].getGenIdColName(); - t != null && u.columns.push({ name: t, datatype: "number" }); - for (let c = 0; c < p[r].children.length; c++) { - let m = p[r].children[c]; - if (m.parseType() != "table" && (u.columns.push({ name: m.parseName(""), datatype: m.parseType((y) => !0) }), 0 < m.indexOf("file"))) { - const y = m.parseName(); - u.columns.push({ name: y + "_filename", datatype: "varchar2(255" + this.semantics() + ")" }), u.columns.push({ name: y + "_mimetype", datatype: "varchar2(255" + this.semantics() + ")" }), u.columns.push({ name: y + "_charset", datatype: "varchar2(255" + this.semantics() + ")" }), u.columns.push({ name: y + "_lastupd", datatype: "date" }); + let s = { name: this.objPrefix("no schema") + f[r].parseName("") }, i = this.getOptionValue("schema"); + i == "" && (i = null), s.schema = i, s.columns = [], p.items.push(s); + let t = f[r].getGenIdColName(); + t != null && s.columns.push({ name: t, datatype: "number" }); + for (let l = 0; l < f[r].children.length; l++) { + let m = f[r].children[l]; + if (m.parseType() != "table" && (s.columns.push({ name: m.parseName(""), datatype: m.parseType((S) => !0) }), 0 < m.indexOf("file"))) { + const S = m.parseName(); + s.columns.push({ name: S + "_filename", datatype: "varchar2(255" + this.semantics() + ")" }), s.columns.push({ name: S + "_mimetype", datatype: "varchar2(255" + this.semantics() + ")" }), s.columns.push({ name: S + "_charset", datatype: "varchar2(255" + this.semantics() + ")" }), s.columns.push({ name: S + "_lastupd", datatype: "date" }); } } - const o = p[r].trimmedContent().toUpperCase(); - if ((this.optionEQvalue("rowkey", !0) || 0 < o.indexOf("/ROWKEY")) && u.columns.push({ name: "row_key", datatype: "varchar2(30 char)" }), (this.optionEQvalue("rowVersion", "yes") || 0 < o.indexOf("/ROWVERSION")) && u.columns.push({ name: "row_version", datatype: "integer" }), this.optionEQvalue("Audit Columns", "yes") || 0 < o.indexOf("/AUDITCOLS")) { - let c = this.getOptionValue("createdcol"); - u.columns.push({ name: c, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); + const o = f[r].trimmedContent().toUpperCase(); + if ((this.optionEQvalue("rowkey", !0) || 0 < o.indexOf("/ROWKEY")) && s.columns.push({ name: "row_key", datatype: "varchar2(30 char)" }), (this.optionEQvalue("rowVersion", "yes") || 0 < o.indexOf("/ROWVERSION")) && s.columns.push({ name: "row_version", datatype: "integer" }), this.optionEQvalue("Audit Columns", "yes") || 0 < o.indexOf("/AUDITCOLS")) { + let l = this.getOptionValue("createdcol"); + s.columns.push({ name: l, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); let m = this.getOptionValue("createdbycol"); - u.columns.push({ name: m, datatype: "varchar2(255" + this.semantics() + ")" }); - let y = this.getOptionValue("updatedcol"); - u.columns.push({ name: y, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); - let P = this.getOptionValue("updatedbycol"); - u.columns.push({ name: P, datatype: "varchar2(255" + this.semantics() + ")" }); + s.columns.push({ name: m, datatype: "varchar2(255" + this.semantics() + ")" }); + let S = this.getOptionValue("updatedcol"); + s.columns.push({ name: S, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); + let B = this.getOptionValue("updatedbycol"); + s.columns.push({ name: B, datatype: "varchar2(255" + this.semantics() + ")" }); } - var S = this.additionalColumns(); - for (let c in S) { - var T = S[c]; - pad = tab + " ".repeat(this.maxChildNameLen() - c.length), ret += tab + c.toUpperCase() + pad + T + ` not null, + var y = this.additionalColumns(); + for (let l in y) { + var I = y[l]; + pad = tab + " ".repeat(this.maxChildNameLen() - l.length), ret += tab + l.toUpperCase() + pad + I + ` not null, `; } } - b.links = []; - for (let r = 0; r < p.length; r++) - if (p[r].parseType() == "table") { - p[r].toDDL(); - for (let u in p[r].fks) { - let i = p[r].fks[u], t = this.find(i); + p.links = []; + for (let r = 0; r < f.length; r++) + if (f[r].parseType() == "table") { + f[r].toDDL(); + for (let s in f[r].fks) { + let i = f[r].fks[s], t = this.find(i); if (t == null) continue; let o = "id"; - t.getExplicitPkNode() != null && (o = t.getExplicitPkNode().parseName()), b.links.push({ + t.getExplicitPkNode() != null && (o = t.getExplicitPkNode().parseName()), p.links.push({ source: this.objPrefix() + i, source_id: o, - target: this.objPrefix() + p[r].parseName(""), - target_id: u + target: this.objPrefix() + f[r].parseName(""), + target_id: s }); } } - return this.erd = b, b; + return this.erd = p, p; }, this.getDDL = function() { if (this.ddl != null) return this.ddl; - var p = "", b = this.descendants(); + var f = "", p = this.descendants(); if (this.optionEQvalue("Include Drops", "yes")) - for (let r = 0; r < b.length; r++) { - let u = b[r].generateDrop(); - u != "" && (p += u); + for (let r = 0; r < p.length; r++) { + let s = p[r].generateDrop(); + s != "" && (f += s); } if (this.optionEQvalue("rowkey", !0)) - p += `create sequence row_key_seq; + f += `create sequence row_key_seq; `; else for (let r = 0; r < this.forest.length; r++) if (0 < this.forest[r].trimmedContent().toUpperCase().indexOf("/ROWKEY")) { - p += `create sequence row_key_seq; + f += `create sequence row_key_seq; `; break; } - p += `-- create tables + f += `-- create tables `; for (let r = 0; r < this.forest.length; r++) - p += this.forest[r].toDDL() + ` + f += this.forest[r].toDDL() + ` `; - let S = 0; - for (let r = 0; r < b.length; r++) { - let u = b[r].generateTrigger(); - u != "" && (S++ == 0 && (p += `-- triggers -`), p += u + ` + let y = 0; + for (let r = 0; r < p.length; r++) { + let s = p[r].generateTrigger(); + s != "" && (y++ == 0 && (f += `-- triggers +`), f += s + ` `); } - S = 0; - for (let r = 0; r < b.length; r++) { - let u = b[r].restEnable(); - u != "" && (p += u + ` + y = 0; + for (let r = 0; r < p.length; r++) { + let s = p[r].restEnable(); + s != "" && (f += s + ` `); } - S = 0; - for (let r = 0; r < b.length; r++) { - if (this.optionEQvalue("api", !1) && b[r].trimmedContent().toLowerCase().indexOf("/api") < 0) + y = 0; + for (let r = 0; r < p.length; r++) { + if (this.optionEQvalue("api", !1) && p[r].trimmedContent().toLowerCase().indexOf("/api") < 0) continue; - let u = b[r].generateTAPI(); - u != "" && (S++ == 0 && (p += `-- APIs -`), p += u + ` + let s = p[r].generateTAPI(); + s != "" && (y++ == 0 && (f += `-- APIs +`), f += s + ` `); } - S = 0; + y = 0; for (let r = 0; r < this.forest.length; r++) { - let u = this.forest[r].generateView(); - u != "" && (S++ == 0 && (p += `-- create views -`), p += u + ` + let s = this.forest[r].generateView(); + s != "" && (y++ == 0 && (f += `-- create views +`), f += s + ` `); } - S = 0; + y = 0; for (let r = 0; r < this.forest.length; r++) { - let u = this.forest[r].generateData(this.data); - u != "" && (S++ == 0 && (p += `-- load data + let s = this.forest[r].generateData(this.data); + s != "" && (y++ == 0 && (f += `-- load data -`), p += u + ` +`), f += s + ` `); } - S = 0, p += `-- Generated by Quick SQL ${this.version()} ` + (/* @__PURE__ */ new Date()).toLocaleString() + ` + y = 0, f += `-- Generated by Quick SQL ${this.version()} ` + (/* @__PURE__ */ new Date()).toLocaleString() + ` -`, p += `/* +`, f += `/* `; - let T = L; - T = T.replace(/#.+/g, ` -`), T = T.replace(/\/\*/g, "--<--"), T = T.replace(/\*\//g, "-->--"), T = T.replace(/\/* Non-default options:/g, ""), p += T, p += ` + let I = L; + I = I.replace(/#.+/g, ` +`), I = I.replace(/\/\*/g, "--<--"), I = I.replace(/\*\//g, "-->--"), I = I.replace(/\/* Non-default options:/g, ""), f += I, f += ` `; for (let r = 0; r < this.unknownOptions().length; r++) - p += "*** Unknown setting: " + this.unknownOptions()[r] + ` + f += "*** Unknown setting: " + this.unknownOptions()[r] + ` `; - return p += ` + return f += ` Non-default options: # settings = ` + JSON.stringify(this.nonDefaultOptions()) + ` -`, p += ` -*/`, this.ddl = p, p; +`, f += ` +*/`, this.ddl = f, f; }, this.getErrors = function() { - return this.errors != null ? this.errors : (this.errors = Se.findErrors(this, this.fullInput), this.errors); - }, this.version = te; + return this.errors != null ? this.errors : (this.errors = Te.findErrors(this, this.fullInput), this.errors); + }, this.version = oe; } return E; }(); -function Me(d, h) { +function Ie(d, h) { const E = JSON.parse(d); - return Ce.introspect(h, E, 0); + return Ae.introspect(h, E, 0); } -function Te(d, h) { +function Be(d, h) { return new j(d, h).getERD(); } -function Ie(d, h) { +function Pe(d, h) { return new j(d, h).getDDL(); } -function Be(d, h) { +function Ee(d, h) { return new j(d, h).getErrors(); } -function te() { +function oe() { return "1.2.1"; } -j.version = te; -j.toDDL = Ie; -j.toERD = Te; -j.toErrors = Be; -j.fromJSON = Me; +j.version = oe; +j.toDDL = Pe; +j.toERD = Be; +j.toErrors = Ee; +j.fromJSON = Ie; export { j as default, - Me as fromJSON, - te as qsql_version, + Ie as fromJSON, + oe as qsql_version, j as quicksql, - Ie as toDDL, - Te as toERD, - Be as toErrors + Pe as toDDL, + Be as toERD, + Ee as toErrors }; diff --git a/dist/quick-sql.umd.cjs b/dist/quick-sql.umd.cjs index 5304204..c1b35d4 100644 --- a/dist/quick-sql.umd.cjs +++ b/dist/quick-sql.umd.cjs @@ -1,85 +1,85 @@ -(function(V,W){typeof exports=="object"&&typeof module<"u"?W(exports):typeof define=="function"&&define.amd?define(["exports"],W):(V=typeof globalThis<"u"?globalThis:V||self,W(V.quickSQL={}))})(this,function(V){"use strict";function W(d){return d==null?d:d.toUpperCase().endsWith("IES")?d.substring(0,d.length-3)+"y":d.toUpperCase().endsWith("ES")||d.toUpperCase().endsWith("S")?d.substring(0,d.length-1):d}function Ce(d,h){let E='"';if(d==null)return null;let L=!1;const I="$#_ ";if(!d.startsWith(E)&&!L){const k=d;if(k.length>0&&"0"<=k[0]&&k[0]<="9")L=!0;else for(let p in k){const b=k[p];if(I.indexOf(b)<0&&(b<"0"||"9""u"&&(e[n]=a[n]);return e}function i(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var o=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?o=btoa:typeof Buffer=="function"&&(o=function(a){return new Buffer(a).toString("base64")})})(),r.prototype.bool=function(e){return e=u(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100l,"Chance: Max specified is out of range with fixed. Max should be, at most, "+l),e=u(e,{min:s,max:l}),a=this.integer({min:e.min*n,max:e.max*n});var g=(a/n).toFixed(e.fixed);return parseFloat(g)},r.prototype.integer=function(e){return e=u(e,{min:L,max:E}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},r.prototype.natural=function(e){if(e=u(e,{min:0,max:E}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),l=e.exclude.sort();for(var s in l){if(ne.max,"Chance: Min cannot be greater than Max.");var a=x.primes[x.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&x.primes.push(n);var l=x.primes.filter(function(s){return s>=e.min&&s<=e.max});return this.pick(l)},r.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},r.prototype.hex=function(e){e=u(e,{min:0,max:E,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},r.prototype.letter=function(e){e=u(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},r.prototype.string=function(e){e=u(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function c(e){this.c=e}c.prototype={substitute:function(){return this.c}};function m(e){this.c=e}m.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function y(e){this.c=e}y.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:p})},a:function(e){return e.character({pool:k})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function P(e){for(var a=[],n="identity",l=0;l"u")throw new S("Sorry, the buffer() function is not supported on your platform");e=u(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},r.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},r.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},r.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var l=function(A,H){return A.indexOf(H)!==-1};n&&(l=n.comparator||l);for(var s=[],g=0,B,f=a*50,v=T.call(arguments,2);s.lengthf)throw new RangeError("Chance: num is likely too large for sample set")}return s},r.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,l=[],s=T.call(arguments,2);for(n=Math.max(0,n),null;n--;null)l.push(e.apply(this,s));return l},r.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},r.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},r.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},r.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),l=n.length;return this.n(function(){var s=this.natural({max:--l}),g=n[s];return n[s]=n[l],g},Math.min(l,a))},r.prototype.shuffle=function(e){for(var a=[],n=0,l=Number(e.length),s=i(l),g=l-1,B,f=0;f0&&(l+=s)}if(l===0)throw new RangeError("Chance: No valid entries in array weights");var B=this.random()*l,f=0,v=-1,C;for(g=0;g0){if(B<=f){C=g;break}v=g}g===a.length-1&&(C=v)}var A=e[C];return n=typeof n>"u"?!1:n,n&&(e.splice(C,1),a.splice(C,1)),A},r.prototype.paragraph=function(e){e=u(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),l=e.linebreak===!0?` -`:" ";return n.join(l)},r.prototype.sentence=function(e){e=u(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,l,s=this.n(this.word,a);return l=s.join(" "),l=this.capitalize(l),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(l+=n),l},r.prototype.syllable=function(e){e=u(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",l="aeiou",s=n+l,g="",B,f=0;fe.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var B=e.minAge!==void 0?e.minAge:0,f=e.maxAge!==void 0?e.maxAge:100,v=new Date(l-f-1,n.getMonth(),n.getDate()),C=new Date(l-B,n.getMonth(),n.getDate());v.setDate(v.getDate()+1),C.setDate(C.getDate()+1),C.setMilliseconds(C.getMilliseconds()-1),e=u(e,{min:v,max:C})}else e=u(e,{year:l-a});return this.date(e)},r.prototype.cpf=function(e){e=u(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var l=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;l=11-l%11,l>=10&&(l=0);var s=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+l;return e.formatted?s:s.replace(/\D/g,"")},r.prototype.cnpj=function(e){e=u(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var l=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;l=11-l%11,l<2&&(l=0);var s=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+l;return e.formatted?s:s.replace(/\D/g,"")},r.prototype.first=function(e){return e=u(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},r.prototype.profession=function(e){return e=u(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},r.prototype.company=function(){return this.pick(this.get("company"))},r.prototype.gender=function(e){return e=u(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},r.prototype.last=function(e){if(e=u(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(l){a=a.concat(n[l])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},r.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},r.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},r.prototype.tld=function(){return this.pick(this.tlds())},r.prototype.twitter=function(){return"@"+this.word()},r.prototype.url=function(e){e=u(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},r.prototype.port=function(){return this.integer({min:0,max:65535})},r.prototype.locale=function(e){return e=u(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},r.prototype.locales=function(e){return e=u(e),e.region?this.get("locale_regions"):this.get("locale_languages")},r.prototype.loremPicsum=function(e){e=u(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},r.prototype.address=function(e){return e=u(e),this.natural({min:5,max:2e3})+" "+this.street(e)},r.prototype.altitude=function(e){return e=u(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.areacode=function(e){e=u(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},r.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},r.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},r.prototype.countries=function(){return this.get("countries")},r.prototype.country=function(e){e=u(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},r.prototype.depth=function(e){return e=u(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.geohash=function(e){return e=u(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},r.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},r.prototype.latitude=function(e){var[a,n,l]=["ddm","dms","dd"];e=u(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:l});var s=e.format.toLowerCase();switch((s===a||s===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),s){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case l:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.longitude=function(e){var[a,n,l]=["ddm","dms","dd"];e=u(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:l});var s=e.format.toLowerCase();switch((s===a||s===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),s){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case l:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.phone=function(e){var a=this,n,l=function(H){var _=[];return H.sections.forEach(function(z){_.push(a.string({pool:"0123456789",length:z}))}),H.area+_.join(" ")};e=u(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var s;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),s=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),s=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),s=e.formatted?l(n):l(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),s=e.formatted?l(n):l(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),s=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),s=e.formatted||n);break;case"us":var g=this.areacode(e).toString(),B=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),f=this.natural({min:1e3,max:9999}).toString();s=e.formatted?g+" "+B+"-"+f:g+B+f;break;case"br":var v=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),C;e.mobile?C="9"+a.string({pool:"0123456789",length:4}):C=this.natural({min:2e3,max:5999}).toString();var A=a.string({pool:"0123456789",length:4});s=e.formatted?"("+v+") "+C+"-"+A:v+C+A;break}return s},r.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},r.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",l=e+a+n,s=this.natural({max:9}),g=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),B=s+g;return l+" "+B},r.prototype.counties=function(e){return e=u(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},r.prototype.county=function(e){return this.pick(this.counties(e)).name},r.prototype.provinces=function(e){return e=u(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},r.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},r.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},r.prototype.states=function(e){e=u(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),l=this.get("territories"),s=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(l)),e.armed_forces&&(a=a.concat(s));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},r.prototype.street=function(e){e=u(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},r.prototype.street_suffix=function(e){return e=u(e,{country:"us"}),this.pick(this.street_suffixes(e))},r.prototype.street_suffixes=function(e){return e=u(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},r.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},r.prototype.ampm=function(){return this.bool()?"am":"pm"},r.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=u(e,{american:!0,string:!1});var l=typeof e.min<"u"?e.min.getTime():1,s=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:l,max:s}))}else{var g=this.month({raw:!0}),B=g.days;e&&e.month&&(B=this.get("months")[(e.month%12+12)%12].days),e=u(e,{year:parseInt(this.year(),10),month:g.numeric-1,day:this.natural({min:1,max:B}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},r.prototype.hammertime=function(e){return this.date(e).getTime()},r.prototype.hour=function(e){return e=u(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.millisecond=function(){return this.natural({max:999})},r.prototype.minute=r.prototype.second=function(e){return e=u(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.month=function(e){e=u(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},r.prototype.months=function(){return this.get("months")},r.prototype.second=function(){return this.natural({max:59})},r.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},r.prototype.weekday=function(e){e=u(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},r.prototype.year=function(e){return e=u(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},r.prototype.cc=function(e){e=u(e);var a,n,l;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),l=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,l,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},r.prototype.cc_types=function(){return this.get("cc_types")},r.prototype.cc_type=function(e){e=u(e);var a=this.cc_types(),n=null;if(e.name){for(var l=0;l3&&(H?_=_.substr(0,3):_=_[0]+_.substr(2,2)),_.length<3&&(z=_,_=A.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+_),z},v=function(A,H,_){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return A.getFullYear().toString().substr(2)+z[A.getMonth()]+_.pad(A.getDate()+(H.toLowerCase()==="female"?40:0),2)},C=function(A){for(var H="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",_="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(_[H.indexOf(A[U])]):K+=j.indexOf(_[H.indexOf(A[U])]);return z[K%26]};return B=B.concat(f(l,!0),f(n),v(s,a,this),g.toUpperCase().split("")).join(""),B+=C(B.toUpperCase()),B.toUpperCase()},r.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;s--)l[s-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?l.reduce(function(g,B){return g+B}):l}else throw new RangeError("Chance: A type of die roll must be included")},r.prototype.guid=function(e){e=u(e,{version:5});var a="abcdef1234567890",n="ab89",l=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return l},r.prototype.hash=function(e){e=u(e,{length:40,casing:"lower"});var a=e.casing==="upper"?b.toUpperCase():b;return this.string({pool:a,length:e.length})},r.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},r.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,l,s=0,g=a.length;g>s;++s)l=+a[s],s%2===0&&(l*=2,l>9&&(l-=9)),n+=l;return n*9%10},r.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=u(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},r.prototype.file=function(e){var a=e||{},n="fileExtension",l=Object.keys(this.get("fileExtension")),s,g;if(s=this.word({length:a.length}),a.extension)return g=a.extension,s+"."+g;if(a.extensions){if(Array.isArray(a.extensions))return g=this.pickone(a.extensions),s+"."+g;if(a.extensions.constructor===Object){var B=a.extensions,f=Object.keys(B);return g=this.pickone(B[this.pickone(f)]),s+"."+g}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var v=a.fileType;if(l.indexOf(v)!==-1)return g=this.pickone(this.get(n)[v]),s+"."+g;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return g=this.pickone(this.get(n)[this.pickone(l)]),s+"."+g},r.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var l={fileData:this.buffer({length:a.fileSize}),fileName:n};return l};var x={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},D=Object.prototype.hasOwnProperty,N=Object.keys||function(e){var a=[];for(var n in e)D.call(e,n)&&a.push(n);return a};function R(e,a){for(var n=N(e),l,s=0,g=n.length;s0)return this.normal_pool(e);var a,n,l,s,g=e.mean,B=e.dev;do n=this.random()*2-1,l=this.random()*2-1,a=n*n+l*l;while(a>=1);return s=n*Math.sqrt(-2*Math.log(a)/a),B*s+g},r.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},r.prototype.radio=function(e){e=u(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},r.prototype.set=function(e,a){typeof e=="string"?x[e]=a:x=F(e,x)},r.prototype.tv=function(e){return this.radio(e)},r.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},r.prototype.emotion=function(){return this.pick(this.get("emotions"))},r.prototype.mersenne_twister=function(e){return new O(e)},r.prototype.blueimp_md5=function(){return new w};var O=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};O.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},O.prototype.init_by_array=function(e,a){var n=1,l=0,s,g;for(this.init_genrand(19650218),s=this.N>a?this.N:a;s;s--)g=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((g&4294901760)>>>16)*1664525<<16)+(g&65535)*1664525)+e[l]+l,this.mt[n]>>>=0,n++,l++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),l>=a&&(l=0);for(s=this.N-1;s;s--)g=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((g&4294901760)>>>16)*1566083941<<16)+(g&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},O.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},O.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},O.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},O.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},O.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},O.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var w=function(){};w.prototype.VERSION="1.0.1",w.prototype.safe_add=function(a,n){var l=(a&65535)+(n&65535),s=(a>>16)+(n>>16)+(l>>16);return s<<16|l&65535},w.prototype.bit_roll=function(e,a){return e<>>32-a},w.prototype.md5_cmn=function(e,a,n,l,s,g){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(l,g)),s),n)},w.prototype.md5_ff=function(e,a,n,l,s,g,B){return this.md5_cmn(a&n|~a&l,e,a,s,g,B)},w.prototype.md5_gg=function(e,a,n,l,s,g,B){return this.md5_cmn(a&l|n&~l,e,a,s,g,B)},w.prototype.md5_hh=function(e,a,n,l,s,g,B){return this.md5_cmn(a^n^l,e,a,s,g,B)},w.prototype.md5_ii=function(e,a,n,l,s,g,B){return this.md5_cmn(n^(a|~l),e,a,s,g,B)},w.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,l,s,g,B,f=1732584193,v=-271733879,C=-1732584194,A=271733878;for(n=0;n>5]>>>a%32&255);return n},w.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(l=this.binl_md5(l,e.length*8)),n=0;n<16;n+=1)s[n]=l[n]^909522486,g[n]=l[n]^1549556828;return B=this.binl_md5(s.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(g.concat(B),512+128))},w.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",l,s;for(s=0;s>>4&15)+a.charAt(l&15);return n},w.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},w.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},w.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},w.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},w.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},w.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},d.exports&&(h=d.exports=r),h.Chance=r,typeof importScripts<"u"&&(chance=new r,self.Chance=r),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=r,window.chance=new r)})()})(ne,ne.exports);var Ae=ne.exports;const ye=ve(Ae);var q=new ye,ce=function(){function d(h,E,L,I){let k=L.toUpperCase(),p=h.toUpperCase(),b=E.toUpperCase();if(I!=null&&0":u=="["?"]":u=="{"?"}":u=="("?")":u}}function h(I,k,p){for(var b=[],S=`(){}[]^-|!*+.><='",;:%@?/\\#~`+p,T=` -\r `,r=$(I,S+T),u=0,i=0,t=0,o=0;o0&&(m=b[b.length-1]),c==` +(function(V,W){typeof exports=="object"&&typeof module<"u"?W(exports):typeof define=="function"&&define.amd?define(["exports"],W):(V=typeof globalThis<"u"?globalThis:V||self,W(V.quickSQL={}))})(this,function(V){"use strict";function W(d){return d==null?d:d.toUpperCase().endsWith("IES")?d.substring(0,d.length-3)+"y":d.toUpperCase().endsWith("ES")||d.toUpperCase().endsWith("S")?d.substring(0,d.length-1):d}function ve(d,h){let E='"';if(d==null)return null;let L=!1;const T="$#_ ";if(!d.startsWith(E)&&!L){const D=d;if(D.length>0&&"0"<=D[0]&&D[0]<="9")L=!0;else for(let f in D){const p=D[f];if(T.indexOf(p)<0&&(p<"0"||"9""u"&&(e[n]=a[n]);return e}function i(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var o=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?o=btoa:typeof Buffer=="function"&&(o=function(a){return new Buffer(a).toString("base64")})})(),r.prototype.bool=function(e){return e=s(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100c,"Chance: Max specified is out of range with fixed. Max should be, at most, "+c),e=s(e,{min:u,max:c}),a=this.integer({min:e.min*n,max:e.max*n});var g=(a/n).toFixed(e.fixed);return parseFloat(g)},r.prototype.integer=function(e){return e=s(e,{min:L,max:E}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},r.prototype.natural=function(e){if(e=s(e,{min:0,max:E}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),c=e.exclude.sort();for(var u in c){if(ne.max,"Chance: Min cannot be greater than Max.");var a=N.primes[N.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&N.primes.push(n);var c=N.primes.filter(function(u){return u>=e.min&&u<=e.max});return this.pick(c)},r.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},r.prototype.hex=function(e){e=s(e,{min:0,max:E,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},r.prototype.letter=function(e){e=s(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},r.prototype.string=function(e){e=s(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function m(e){this.c=e}m.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function S(e){this.c=e}S.prototype={replacers:{"#":function(e){return e.character({pool:T})},A:function(e){return e.character({pool:f})},a:function(e){return e.character({pool:D})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function B(e){for(var a=[],n="identity",c=0;c"u")throw new y("Sorry, the buffer() function is not supported on your platform");e=s(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},r.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},r.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},r.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var c=function(A,H){return A.indexOf(H)!==-1};n&&(c=n.comparator||c);for(var u=[],g=0,P,b=a*50,v=I.call(arguments,2);u.lengthb)throw new RangeError("Chance: num is likely too large for sample set")}return u},r.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,c=[],u=I.call(arguments,2);for(n=Math.max(0,n),null;n--;null)c.push(e.apply(this,u));return c},r.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},r.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},r.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},r.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),c=n.length;return this.n(function(){var u=this.natural({max:--c}),g=n[u];return n[u]=n[c],g},Math.min(c,a))},r.prototype.shuffle=function(e){for(var a=[],n=0,c=Number(e.length),u=i(c),g=c-1,P,b=0;b0&&(c+=u)}if(c===0)throw new RangeError("Chance: No valid entries in array weights");var P=this.random()*c,b=0,v=-1,C;for(g=0;g0){if(P<=b){C=g;break}v=g}g===a.length-1&&(C=v)}var A=e[C];return n=typeof n>"u"?!1:n,n&&(e.splice(C,1),a.splice(C,1)),A},r.prototype.paragraph=function(e){e=s(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),c=e.linebreak===!0?` +`:" ";return n.join(c)},r.prototype.sentence=function(e){e=s(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,c,u=this.n(this.word,a);return c=u.join(" "),c=this.capitalize(c),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(c+=n),c},r.prototype.syllable=function(e){e=s(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",c="aeiou",u=n+c,g="",P,b=0;be.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var P=e.minAge!==void 0?e.minAge:0,b=e.maxAge!==void 0?e.maxAge:100,v=new Date(c-b-1,n.getMonth(),n.getDate()),C=new Date(c-P,n.getMonth(),n.getDate());v.setDate(v.getDate()+1),C.setDate(C.getDate()+1),C.setMilliseconds(C.getMilliseconds()-1),e=s(e,{min:v,max:C})}else e=s(e,{year:c-a});return this.date(e)},r.prototype.cpf=function(e){e=s(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var c=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;c=11-c%11,c>=10&&(c=0);var u=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+c;return e.formatted?u:u.replace(/\D/g,"")},r.prototype.cnpj=function(e){e=s(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var c=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;c=11-c%11,c<2&&(c=0);var u=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+c;return e.formatted?u:u.replace(/\D/g,"")},r.prototype.first=function(e){return e=s(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},r.prototype.profession=function(e){return e=s(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},r.prototype.company=function(){return this.pick(this.get("company"))},r.prototype.gender=function(e){return e=s(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},r.prototype.last=function(e){if(e=s(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(c){a=a.concat(n[c])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},r.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},r.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},r.prototype.tld=function(){return this.pick(this.tlds())},r.prototype.twitter=function(){return"@"+this.word()},r.prototype.url=function(e){e=s(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},r.prototype.port=function(){return this.integer({min:0,max:65535})},r.prototype.locale=function(e){return e=s(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},r.prototype.locales=function(e){return e=s(e),e.region?this.get("locale_regions"):this.get("locale_languages")},r.prototype.loremPicsum=function(e){e=s(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},r.prototype.address=function(e){return e=s(e),this.natural({min:5,max:2e3})+" "+this.street(e)},r.prototype.altitude=function(e){return e=s(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.areacode=function(e){e=s(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},r.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},r.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},r.prototype.countries=function(){return this.get("countries")},r.prototype.country=function(e){e=s(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},r.prototype.depth=function(e){return e=s(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.geohash=function(e){return e=s(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},r.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},r.prototype.latitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=s(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:c});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.longitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=s(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:c});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.phone=function(e){var a=this,n,c=function(H){var O=[];return H.sections.forEach(function(z){O.push(a.string({pool:"0123456789",length:z}))}),H.area+O.join(" ")};e=s(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var u;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),u=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),u=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),u=e.formatted?c(n):c(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),u=e.formatted?c(n):c(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n);break;case"us":var g=this.areacode(e).toString(),P=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),b=this.natural({min:1e3,max:9999}).toString();u=e.formatted?g+" "+P+"-"+b:g+P+b;break;case"br":var v=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),C;e.mobile?C="9"+a.string({pool:"0123456789",length:4}):C=this.natural({min:2e3,max:5999}).toString();var A=a.string({pool:"0123456789",length:4});u=e.formatted?"("+v+") "+C+"-"+A:v+C+A;break}return u},r.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},r.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",c=e+a+n,u=this.natural({max:9}),g=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),P=u+g;return c+" "+P},r.prototype.counties=function(e){return e=s(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},r.prototype.county=function(e){return this.pick(this.counties(e)).name},r.prototype.provinces=function(e){return e=s(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},r.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},r.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},r.prototype.states=function(e){e=s(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),c=this.get("territories"),u=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(c)),e.armed_forces&&(a=a.concat(u));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},r.prototype.street=function(e){e=s(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},r.prototype.street_suffix=function(e){return e=s(e,{country:"us"}),this.pick(this.street_suffixes(e))},r.prototype.street_suffixes=function(e){return e=s(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},r.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},r.prototype.ampm=function(){return this.bool()?"am":"pm"},r.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=s(e,{american:!0,string:!1});var c=typeof e.min<"u"?e.min.getTime():1,u=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:c,max:u}))}else{var g=this.month({raw:!0}),P=g.days;e&&e.month&&(P=this.get("months")[(e.month%12+12)%12].days),e=s(e,{year:parseInt(this.year(),10),month:g.numeric-1,day:this.natural({min:1,max:P}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},r.prototype.hammertime=function(e){return this.date(e).getTime()},r.prototype.hour=function(e){return e=s(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.millisecond=function(){return this.natural({max:999})},r.prototype.minute=r.prototype.second=function(e){return e=s(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.month=function(e){e=s(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},r.prototype.months=function(){return this.get("months")},r.prototype.second=function(){return this.natural({max:59})},r.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},r.prototype.weekday=function(e){e=s(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},r.prototype.year=function(e){return e=s(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},r.prototype.cc=function(e){e=s(e);var a,n,c;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),c=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,c,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},r.prototype.cc_types=function(){return this.get("cc_types")},r.prototype.cc_type=function(e){e=s(e);var a=this.cc_types(),n=null;if(e.name){for(var c=0;c3&&(H?O=O.substr(0,3):O=O[0]+O.substr(2,2)),O.length<3&&(z=O,O=A.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+O),z},v=function(A,H,O){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return A.getFullYear().toString().substr(2)+z[A.getMonth()]+O.pad(A.getDate()+(H.toLowerCase()==="female"?40:0),2)},C=function(A){for(var H="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",O="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(O[H.indexOf(A[U])]):K+=j.indexOf(O[H.indexOf(A[U])]);return z[K%26]};return P=P.concat(b(c,!0),b(n),v(u,a,this),g.toUpperCase().split("")).join(""),P+=C(P.toUpperCase()),P.toUpperCase()},r.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;u--)c[u-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?c.reduce(function(g,P){return g+P}):c}else throw new RangeError("Chance: A type of die roll must be included")},r.prototype.guid=function(e){e=s(e,{version:5});var a="abcdef1234567890",n="ab89",c=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return c},r.prototype.hash=function(e){e=s(e,{length:40,casing:"lower"});var a=e.casing==="upper"?p.toUpperCase():p;return this.string({pool:a,length:e.length})},r.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},r.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,c,u=0,g=a.length;g>u;++u)c=+a[u],u%2===0&&(c*=2,c>9&&(c-=9)),n+=c;return n*9%10},r.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=s(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},r.prototype.file=function(e){var a=e||{},n="fileExtension",c=Object.keys(this.get("fileExtension")),u,g;if(u=this.word({length:a.length}),a.extension)return g=a.extension,u+"."+g;if(a.extensions){if(Array.isArray(a.extensions))return g=this.pickone(a.extensions),u+"."+g;if(a.extensions.constructor===Object){var P=a.extensions,b=Object.keys(P);return g=this.pickone(P[this.pickone(b)]),u+"."+g}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var v=a.fileType;if(c.indexOf(v)!==-1)return g=this.pickone(this.get(n)[v]),u+"."+g;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return g=this.pickone(this.get(n)[this.pickone(c)]),u+"."+g},r.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var c={fileData:this.buffer({length:a.fileSize}),fileName:n};return c};var N={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},k=Object.prototype.hasOwnProperty,x=Object.keys||function(e){var a=[];for(var n in e)k.call(e,n)&&a.push(n);return a};function w(e,a){for(var n=x(e),c,u=0,g=n.length;u0)return this.normal_pool(e);var a,n,c,u,g=e.mean,P=e.dev;do n=this.random()*2-1,c=this.random()*2-1,a=n*n+c*c;while(a>=1);return u=n*Math.sqrt(-2*Math.log(a)/a),P*u+g},r.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},r.prototype.radio=function(e){e=s(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},r.prototype.set=function(e,a){typeof e=="string"?N[e]=a:N=_(e,N)},r.prototype.tv=function(e){return this.radio(e)},r.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},r.prototype.emotion=function(){return this.pick(this.get("emotions"))},r.prototype.mersenne_twister=function(e){return new F(e)},r.prototype.blueimp_md5=function(){return new G};var F=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};F.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},F.prototype.init_by_array=function(e,a){var n=1,c=0,u,g;for(this.init_genrand(19650218),u=this.N>a?this.N:a;u;u--)g=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((g&4294901760)>>>16)*1664525<<16)+(g&65535)*1664525)+e[c]+c,this.mt[n]>>>=0,n++,c++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),c>=a&&(c=0);for(u=this.N-1;u;u--)g=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((g&4294901760)>>>16)*1566083941<<16)+(g&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},F.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},F.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},F.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},F.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},F.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},F.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var G=function(){};G.prototype.VERSION="1.0.1",G.prototype.safe_add=function(a,n){var c=(a&65535)+(n&65535),u=(a>>16)+(n>>16)+(c>>16);return u<<16|c&65535},G.prototype.bit_roll=function(e,a){return e<>>32-a},G.prototype.md5_cmn=function(e,a,n,c,u,g){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(c,g)),u),n)},G.prototype.md5_ff=function(e,a,n,c,u,g,P){return this.md5_cmn(a&n|~a&c,e,a,u,g,P)},G.prototype.md5_gg=function(e,a,n,c,u,g,P){return this.md5_cmn(a&c|n&~c,e,a,u,g,P)},G.prototype.md5_hh=function(e,a,n,c,u,g,P){return this.md5_cmn(a^n^c,e,a,u,g,P)},G.prototype.md5_ii=function(e,a,n,c,u,g,P){return this.md5_cmn(n^(a|~c),e,a,u,g,P)},G.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,c,u,g,P,b=1732584193,v=-271733879,C=-1732584194,A=271733878;for(n=0;n>5]>>>a%32&255);return n},G.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(c=this.binl_md5(c,e.length*8)),n=0;n<16;n+=1)u[n]=c[n]^909522486,g[n]=c[n]^1549556828;return P=this.binl_md5(u.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(g.concat(P),512+128))},G.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",c,u;for(u=0;u>>4&15)+a.charAt(c&15);return n},G.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},G.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},G.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},G.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},G.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},G.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},d.exports&&(h=d.exports=r),h.Chance=r,typeof importScripts<"u"&&(chance=new r,self.Chance=r),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=r,window.chance=new r)})()})(ie,ie.exports);var ye=ie.exports;const Se=Ae(ye);var q=new Se;function ue(d,h,E,L){E==null&&console.log();let T=E.toUpperCase(),D=d.toUpperCase(),f=h.toUpperCase();if(L!=null&&0":s=="["?"]":s=="{"?"}":s=="("?")":s}}function h(T,D,f){for(var p=[],y=`(){}[]^-|!*+.><='",;:%@?/\\#~`+f,I=` +\r `,r=ee(T,y+I),s=0,i=0,t=0,o=0;o0&&(m=p[p.length-1]),l==` `?(i++,t=0):o>0&&r[o-1]!==` -`?t=t+r[o-1].length:t=0,u+=c.length,m!=null&&m.type=="comment"&&(m.value.lastIndexOf("*/")!=m.value.length-2||m.value=="/*/")){c=="*"||c=="/"?m.value=m.value+c:m.value="/* ... ",m.end=u,m!=null&&m.type=="comment"&&m.value.lastIndexOf("*/")==m.value.length-2&&m.value!="/*/"&&(m.value=I.substring(m.begin,m.end));continue}if(m!=null&&(m.type=="line-comment"||m.type=="dbtools-command")&&c!=` -`){m.value=m.value+c;continue}if(m!=null&&(m.type=="line-comment"||m.type=="dbtools-command")&&c==` -`&&(m.end=m.begin+m.value.length),m!=null&&m.type=="quoted-string"&&!(m.isStandardLiteral()||m.isAltLiteral())){m.value=m.value+c,m.end=m.begin+m.value.length;continue}if(!(m!=null&&m.type=="dquoted-string"&&c!='"'&&!(m.value.endsWith('"')&&m.value.length>1))){if(m!=null&&m.type=="dquoted-string"&&c=='"'){m.end=u,m.value=I.substring(m.begin,m.end);continue}if(!(m!=null&&m.type=="bquoted-string"&&c!="`"&&!(m.value.endsWith("`")&&m.value.length>1))){if(m!=null&&m.type=="bquoted-string"&&c=="`"){m.end=u,m.value=I.substring(m.begin,m.end);continue}if(c=="*"&&m!=null&&m.value=="/"){m.value=m.value+c,m.end=m.begin+m.value.length,m.type="comment";continue}if(c=="-"&&m!=null&&m.value=="-"){m.value=m.value+c,m.type="line-comment";continue}if((c.toUpperCase()=="REM"||c.toUpperCase()=="REMA"||c.toUpperCase()=="REMAR"||c.toUpperCase()=="REMARK"||c.toUpperCase()=="PRO"||c.toUpperCase()=="PROM"||c.toUpperCase()=="PROMP"||c.toUpperCase()=="PROMPT")&&(m==null||m.value==` -`||m.value=="\r")){b.push(new d(c,u-c.length,-9,"line-comment",i,t));continue}if(c.toUpperCase()=="SODA"&&(m==null||m.value==` -`||m.value=="\r")){b.push(new d(c,u-c.length,-9,"dbtools-command",i,t));continue}if(m!=null&&m.type=="identifier"&&m.end==-11&&m.value.indexOf("@")==0&&!(c==` -`||c=="\r")){m.value=m.value+c;continue}if(m!=null&&m.type=="identifier"&&m.end==-11&&m.value.indexOf("@")==0&&(c==` -`||c=="\r")){m.end=u-1,b.push(new d(c,u-1,u,"ws",i,t));continue}if(k&&c=="'"){m!=null&&(m.value.toUpperCase()=="Q"||m.value.toUpperCase()=="N"||m.value.toUpperCase()=="U"||m.value.toUpperCase()=="NQ")?(m.value+=c,m.type="quoted-string"):b.push(new d(c,u-1,-10,"quoted-string",i,t));continue}if(k&&c=='"'){b.push(new d(c,u-1,-11,"dquoted-string",i,t));continue}if(c=="`"&&0<=S.indexOf("`")){b.push(new d(c,u-1,-11,"bquoted-string",i,t));continue}if(c.length==1&&0<=S.indexOf(c)){b.push(new d(c,u-1,u,"operation",i,t));continue}if(c.length==1&&0<=T.indexOf(c)){b.push(new d(c,u-1,u,"ws",i,t));continue}if("0"<=c.charAt(0)&&c.charAt(0)<="9"){E(c,b,u-c.length,i)||(c.charAt(c.length-1)=="K"||c.charAt(c.length-1)=="k"||c.charAt(c.length-1)=="M"||c.charAt(c.length-1)=="m"||c.charAt(c.length-1)=="G"||c.charAt(c.length-1)=="g"||c.charAt(c.length-1)=="T"||c.charAt(c.length-1)=="t"||c.charAt(c.length-1)=="P"||c.charAt(c.length-1)=="p"||c.charAt(c.length-1)=="E"||c.charAt(c.length-1)=="e"?(b.push(new d(c.substring(0,c.length-1),u-c.length,u-1,"constant.numeric",i,t)),b.push(new d(c.substring(c.length-1),u-1,u,"constant.numeric",i,t))):b.push(new d(c,u-c.length,u,"constant.numeric",i,t)));continue}var y="identifier";o+10){var m=b[b.length-1];m.end=I.length}return b}function E(I,k,p,b){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var S=$(I,"efd"),T=0;T")==0||i.indexOf("<")==0)&&(i=i.substring(1).trim());const c=i.toLowerCase();if(c.indexOf("view ")==0){var m=i.split(" ");return m[1]}i=p(i," d");var y=i.indexOf("/");0="0"&&P<="9"&&(i="x"+i),Se(le(i))},this.parseType=function(i){if(this.children!=null&&0!0)),R}return y}0");return t==0},this.getExplicitPkNode=function(){for(var i=0;ii.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(d.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),d.optionEQvalue("prefixPKwithTname","yes")&&(t=W(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let i=this.getGenIdColName();if(i==null){let t=this.getExplicitPkNode();return t==null?null:t.parseName()}return i},this.singleDDL=function(){if(this.children.length==0&&01))){if(m!=null&&m.type=="dquoted-string"&&l=='"'){m.end=s,m.value=T.substring(m.begin,m.end);continue}if(!(m!=null&&m.type=="bquoted-string"&&l!="`"&&!(m.value.endsWith("`")&&m.value.length>1))){if(m!=null&&m.type=="bquoted-string"&&l=="`"){m.end=s,m.value=T.substring(m.begin,m.end);continue}if(l=="*"&&m!=null&&m.value=="/"){m.value=m.value+l,m.end=m.begin+m.value.length,m.type="comment";continue}if(l=="-"&&m!=null&&m.value=="-"){m.value=m.value+l,m.type="line-comment";continue}if((l.toUpperCase()=="REM"||l.toUpperCase()=="REMA"||l.toUpperCase()=="REMAR"||l.toUpperCase()=="REMARK"||l.toUpperCase()=="PRO"||l.toUpperCase()=="PROM"||l.toUpperCase()=="PROMP"||l.toUpperCase()=="PROMPT")&&(m==null||m.value==` +`||m.value=="\r")){p.push(new d(l,s-l.length,-9,"line-comment",i,t));continue}if(l.toUpperCase()=="SODA"&&(m==null||m.value==` +`||m.value=="\r")){p.push(new d(l,s-l.length,-9,"dbtools-command",i,t));continue}if(m!=null&&m.type=="identifier"&&m.end==-11&&m.value.indexOf("@")==0&&!(l==` +`||l=="\r")){m.value=m.value+l;continue}if(m!=null&&m.type=="identifier"&&m.end==-11&&m.value.indexOf("@")==0&&(l==` +`||l=="\r")){m.end=s-1,p.push(new d(l,s-1,s,"ws",i,t));continue}if(D&&l=="'"){m!=null&&(m.value.toUpperCase()=="Q"||m.value.toUpperCase()=="N"||m.value.toUpperCase()=="U"||m.value.toUpperCase()=="NQ")?(m.value+=l,m.type="quoted-string"):p.push(new d(l,s-1,-10,"quoted-string",i,t));continue}if(D&&l=='"'){p.push(new d(l,s-1,-11,"dquoted-string",i,t));continue}if(l=="`"&&0<=y.indexOf("`")){p.push(new d(l,s-1,-11,"bquoted-string",i,t));continue}if(l.length==1&&0<=y.indexOf(l)){p.push(new d(l,s-1,s,"operation",i,t));continue}if(l.length==1&&0<=I.indexOf(l)){p.push(new d(l,s-1,s,"ws",i,t));continue}if("0"<=l.charAt(0)&&l.charAt(0)<="9"){E(l,p,s-l.length,i)||(l.charAt(l.length-1)=="K"||l.charAt(l.length-1)=="k"||l.charAt(l.length-1)=="M"||l.charAt(l.length-1)=="m"||l.charAt(l.length-1)=="G"||l.charAt(l.length-1)=="g"||l.charAt(l.length-1)=="T"||l.charAt(l.length-1)=="t"||l.charAt(l.length-1)=="P"||l.charAt(l.length-1)=="p"||l.charAt(l.length-1)=="E"||l.charAt(l.length-1)=="e"?(p.push(new d(l.substring(0,l.length-1),s-l.length,s-1,"constant.numeric",i,t)),p.push(new d(l.substring(l.length-1),s-1,s,"constant.numeric",i,t))):p.push(new d(l,s-l.length,s,"constant.numeric",i,t)));continue}var S="identifier";o+10){var m=p[p.length-1];m.end=T.length}return p}function E(T,D,f,p){if(0>T.indexOf("e")&&0>T.indexOf("f")&&0>T.indexOf("d"))return!1;0<=T.indexOf("e"),0<=T.indexOf("e"),!(0<=T.indexOf("e"))&&0<=T.indexOf("f");for(var y=ee(T,"efd"),I=0;I")==0||i.indexOf("<")==0)&&(i=i.substring(1).trim());const l=i.toLowerCase();if(l.indexOf("view ")==0){var m=i.split(" ");return m[1]}i=f(i," d");var S=i.indexOf("/");0="0"&&B<="9"&&(i="x"+i),Te(se(i))},this.parseType=function(i){if(this.children!=null&&0!0)),w}return S}0");return t==0},this.getExplicitPkNode=function(){for(var i=0;ii.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(d.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),d.optionEQvalue("prefixPKwithTname","yes")&&(t=W(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let i=this.getGenIdColName();if(i==null){let t=this.getExplicitPkNode();return t==null?null:t.parseName()}return i},this.singleDDL=function(){if(this.children.length==0&&0!0):s==null&&(s=d.find(a),s.isMany2One()&!a.endsWith("_id")&&(n=a,a=W(a),g="_id")),m=h+" ".repeat(this.maxChildNameLen()-a.length),o+=h+a+g+m+l+` -`,o+=h+h+" ".repeat(this.maxChildNameLen())+"constraint "+c+"_"+a+`_fk -`;let B="";0<=i.indexOf("/CASCADE")&&(B=" on delete cascade");let f="";for(let v in this.children){let C=this.children[v];if(a==C.parseName()){let A=C.trimmedContent().toUpperCase();(0<=A.indexOf("/NN")||0<=A.indexOf("/NOTNULL"))&&(f=" NOT NULL".toLowerCase()),0<=A.indexOf("/CASCADE")&&(B=" on delete cascade");break}}o+=h+h+" ".repeat(this.maxChildNameLen())+"references "+d.objPrefix()+n+B+f+`, +`}}for(let a in this.fks){let n=this.fks[a],c="number",u=d.find(n),g="";u!=null&&u.getExplicitPkNode()!=null?c=u.getExplicitPkNode().parseType(v=>!0):u==null&&(u=d.find(a),u.isMany2One()&!a.endsWith("_id")&&(n=a,a=W(a),g="_id")),m=h+" ".repeat(this.maxChildNameLen()-a.length),o+=h+a+g+m+c+` +`,o+=h+h+" ".repeat(this.maxChildNameLen())+"constraint "+l+"_"+a+`_fk +`;let P="";0<=i.indexOf("/CASCADE")&&(P=" on delete cascade");let b="";for(let v in this.children){let C=this.children[v];if(a==C.parseName()){let A=C.trimmedContent().toUpperCase();(0<=A.indexOf("/NN")||0<=A.indexOf("/NOTNULL"))&&(b=" NOT NULL".toLowerCase()),0<=A.indexOf("/CASCADE")&&(P=" on delete cascade");break}}o+=h+h+" ".repeat(this.maxChildNameLen())+"references "+d.objPrefix()+n+P+b+`, `}if(d.optionEQvalue("rowkey",!0)||0TRUE, p_object=>'"+m+`'); end; / @@ -87,7 +87,7 @@ end; `.toLowerCase();o+=` before insert or update `,o+=" on "+t.toLowerCase()+` `,o+=` for each row -`;let c=this.trimmedContent().toUpperCase();(d.optionEQvalue("Rowkey","yes")||0!0)),c+=`, -`,c+=h+h+"P_"+m+" "+o+" "+M+t}for(let P=0;P!0)),l+=`, +`,l+=h+h+"P_"+m+" "+o+" "+M+t}for(let B=0;B!0),(i=="insert"||i=="update")&&(o+=`, -`);let N=h+h+h+"P_"+M+" := c1."+M+`; -`;i=="insert"&&(N=h+h+h+M),i=="update"&&(N=h+h+h+M+" = P_"+M+` -`),o+=N}for(var m=0;m!0),(i=="insert"||i=="update")&&(o+=`, +`);let x=h+h+h+"P_"+M+" := c1."+M+`; +`;i=="insert"&&(x=h+h+h+M),i=="update"&&(x=h+h+h+M+" = P_"+M+` +`),o+=x}for(var m=0;mo.children.length>0&&o.parseName()==t&&!o.isArray())},this.generateSelectJsonBottomUp=function(i){throw new Error("generateSelectJsonBottomUp() not implemented yet")},this.one2many2oneUnsupoported="one to many to one is not supported",this.generateSelectJsonTopDown=function(i){var t=this.parseName();let o="";this.getExplicitPkNode==null&&(o+=i+"'"+this.getGenIdColName()+"' : "+t+"."+this.getGenIdColName()+`, -`);for(var c=0;co.children.length>0&&o.parseName()==t&&!o.isArray())},this.generateSelectJsonBottomUp=function(i){throw new Error("generateSelectJsonBottomUp() not implemented yet")},this.one2many2oneUnsupoported="one to many to one is not supported",this.generateSelectJsonTopDown=function(i){var t=this.parseName();let o="";this.getExplicitPkNode==null&&(o+=i+"'"+this.getGenIdColName()+"' : "+t+"."+this.getGenIdColName()+`, +`);for(var l=0;l");let b=` -`+h(I)+p+E;if(typeof L=="number"&&(b+=" num",E.endsWith("_id")||E.endsWith("Id")))return b+=" /pk",b;if(typeof L=="object"){if(Array.isArray(L))for(let T in L){1<=T&&console.log("1 <= property !");const r=L[T];return this.introspect(E,r,I,!1)}else if(E!=""){let T=this.aggrSizes[E];b+=" /insert "+T}let S="";for(let T in L){const r=L[T];if(T!=null){const t=W(E),o=T.toLowerCase();if(E!=null&&t+"_id"==o&&0");let y=E;if(0!0)}),0!0)}),0--"),T=T.replace(/\/* Non-default options:/g,""),p+=T,p+=` -`;for(let r=0;r--"),I=I.replace(/\/* Non-default options:/g,""),f+=I,f+=` +`;for(let r=0;rbatters /insert 1 - batter /insert 4 + >batters /insert 3 + batter /insert 7 id type - topping /insert 7 + topping /insert 16 id type @@ -16,62 +16,136 @@ dv donuts_dv donuts #settings = { genpk: false, drop: true } --- Generated by json2qsql.js development 1/3/2024, 2:33:44 PM +-- Generated by json2qsql.js development 1/5/2024, 10:56:49 AM #document = -{ - "id": "0001", - "type": "donut", - "name": "Cake", - "ppu": 0.55, - "batters": { - "batter": [ - { - "id": "1001", - "type": "Regular" +[ + { + "id": "0001", + "type": "donut", + "name": "Cake", + "ppu": 0.55, + "batters": { + "batter": [ + { + "id": "1001", + "type": "Regular" + }, + { + "id": "1002", + "type": "Chocolate" + }, + { + "id": "1003", + "type": "Blueberry" + }, + { + "id": "1004", + "type": "Devil's Food" + } + ] + }, + "topping": [ + { + "id": "5001", + "type": "None" }, { - "id": "1002", - "type": "Chocolate" + "id": "5002", + "type": "Glazed" + }, + { + "id": "5005", + "type": "Sugar" }, { - "id": "1003", - "type": "Blueberry" + "id": "5007", + "type": "Powdered Sugar" + }, + { + "id": "5006", + "type": "Chocolate with Sprinkles" + }, + { + "id": "5003", + "type": "Chocolate" }, { - "id": "1004", - "type": "Devil's Food" + "id": "5004", + "type": "Maple" } ] }, - "topping": [ - { - "id": "5001", - "type": "None" + { + "id": "0002", + "type": "donut", + "name": "Raised", + "ppu": 0.55, + "batters": { + "batter": [ + { + "id": "1001", + "type": "Regular" + } + ] }, - { - "id": "5002", - "type": "Glazed" - }, - { - "id": "5005", - "type": "Sugar" - }, - { - "id": "5007", - "type": "Powdered Sugar" - }, - { - "id": "5006", - "type": "Chocolate with Sprinkles" - }, - { - "id": "5003", - "type": "Chocolate" + "topping": [ + { + "id": "5001", + "type": "None" + }, + { + "id": "5002", + "type": "Glazed" + }, + { + "id": "5005", + "type": "Sugar" + }, + { + "id": "5003", + "type": "Chocolate" + }, + { + "id": "5004", + "type": "Maple" + } + ] + }, + { + "id": "0003", + "type": "donut", + "name": "Old Fashioned", + "ppu": 0.55, + "batters": { + "batter": [ + { + "id": "1001", + "type": "Regular" + }, + { + "id": "1002", + "type": "Chocolate" + } + ] }, - { - "id": "5004", - "type": "Maple" - } - ] -} + "topping": [ + { + "id": "5001", + "type": "None" + }, + { + "id": "5002", + "type": "Glazed" + }, + { + "id": "5003", + "type": "Chocolate" + }, + { + "id": "5004", + "type": "Maple" + } + ] + } +] diff --git a/test/experimental/food_product.qsql b/test/experimental/food_product.qsql deleted file mode 100644 index 6593775..0000000 --- a/test/experimental/food_product.qsql +++ /dev/null @@ -1,3310 +0,0 @@ - -unnamed_entity /insert 1 - code - >product /insert 1 - _id - _keywords - >added_countries_tags - >additives_debug_tags - additives_n num - additives_old_n num - additives_old_tags - additives_original_tags - additives_prev_original_tags - additives_tags - allergens - allergens_from_ingredients - allergens_from_user - allergens_hierarchy - allergens_lc - allergens_tags - >amino_acids_prev_tags - >amino_acids_tags - brands - brands_tags - carbon_footprint_from_known_ingredients_debug - carbon_footprint_percent_of_known_ingredients num - categories - categories_hierarchy - categories_lc - categories_old - >categories_properties /insert 1 - agribalyse_food_code:en - ciqual_food_code:en - categories_properties_tags - categories_tags - >category_properties /insert 1 - ciqual_food_name:en - ciqual_food_name:fr - >checkers_tags - ciqual_food_name_tags - >cities_tags - code - codes_tags - compared_to_category - complete num - completeness num - correctors_tags - countries - countries_hierarchy - countries_lc - countries_tags - created_t num - creator - >data_quality_bugs_tags - >data_quality_errors_tags - data_quality_info_tags - data_quality_tags - data_quality_warnings_tags - data_sources - data_sources_tags - debug_param_sorted_langs - >ecoscore_data /insert 1 - >adjustments /insert 1 - >origins_of_ingredients /insert 1 - aggregated_origins /insert 1 - epi_score - origin - percent num - >transportation_score /insert undefined - epi_score num - epi_value num - origins_from_categories - origins_from_origins_field - transportation_score num - >transportation_scores /insert 1 - ad num - al num - at num - ax num - ba num - be num - bg num - ch num - cy num - cz num - de num - dk num - dz num - ee num - eg num - es num - fi num - fo num - fr num - gg num - gi num - gr num - hr num - hu num - ie num - il num - im num - is num - it num - je num - lb num - li num - lt num - lu num - lv num - ly num - ma num - mc num - md num - me num - mk num - mt num - nl num - no num - pl num - ps num - pt num - ro num - rs num - se num - si num - sj num - sk num - sm num - sy num - tn num - tr num - ua num - uk num - us num - va num - world num - xk num - transportation_value num - >transportation_values /insert 1 - ad num - al num - at num - ax num - ba num - be num - bg num - ch num - cy num - cz num - de num - dk num - dz num - ee num - eg num - es num - fi num - fo num - fr num - gg num - gi num - gr num - hr num - hu num - ie num - il num - im num - is num - it num - je num - lb num - li num - lt num - lu num - lv num - ly num - ma num - mc num - md num - me num - mk num - mt num - nl num - no num - pl num - ps num - pt num - ro num - rs num - se num - si num - sj num - sk num - sm num - sy num - tn num - tr num - ua num - uk num - us num - va num - world num - xk num - value num - >values /insert 1 - ad num - al num - at num - ax num - ba num - be num - bg num - ch num - cy num - cz num - de num - dk num - dz num - ee num - eg num - es num - fi num - fo num - fr num - gg num - gi num - gr num - hr num - hu num - ie num - il num - im num - is num - it num - je num - lb num - li num - lt num - lu num - lv num - ly num - ma num - mc num - md num - me num - mk num - mt num - nl num - no num - pl num - ps num - pt num - ro num - rs num - se num - si num - sj num - sk num - sm num - sy num - tn num - tr num - ua num - uk num - us num - va num - world num - xk num - warning - >packaging /insert 1 - non_recyclable_and_non_biodegradable_materials num - packagings /insert 4 - ecoscore_material_score num - ecoscore_shape_ratio num - material - non_recyclable_and_non_biodegradable - shape - score num - value num - >production_system /insert 1 - >labels - value num - warning - >threatened_species /insert 1 - >agribalyse /insert 2 - agribalyse_food_code - co2_agriculture num - co2_consumption num - co2_distribution num - co2_packaging num - co2_processing num - co2_total num - co2_transportation num - code - dqr - ef_agriculture num - ef_consumption num - ef_distribution num - ef_packaging num - ef_processing num - ef_total num - ef_transportation num - is_beverage num - name_en - name_fr - score num - version - grade - >grades /insert 1 - ad - al - at - ax - ba - be - bg - ch - cy - cz - de - dk - dz - ee - eg - es - fi - fo - fr - gg - gi - gr - hr - hu - ie - il - im - is - it - je - lb - li - lt - lu - lv - ly - ma - mc - md - me - mk - mt - nl - no - pl - ps - pt - ro - rs - se - si - sj - sk - sm - sy - tn - tr - ua - uk - us - va - world - xk - >missing /insert 1 - labels num - origins num - missing_data_warning num - >previous_data /insert 1 - >agribalyse /insert 2 - agribalyse_food_code - co2_agriculture num - co2_consumption num - co2_distribution num - co2_packaging num - co2_processing num - co2_total num - co2_transportation num - code - dqr - ef_agriculture num - ef_consumption num - ef_distribution num - ef_packaging num - ef_processing num - ef_total num - ef_transportation num - is_beverage num - name_en - name_fr - score num - grade - score num - score num - >scores /insert 1 - ad num - al num - at num - ax num - ba num - be num - bg num - ch num - cy num - cz num - de num - dk num - dz num - ee num - eg num - es num - fi num - fo num - fr num - gg num - gi num - gr num - hr num - hu num - ie num - il num - im num - is num - it num - je num - lb num - li num - lt num - lu num - lv num - ly num - ma num - mc num - md num - me num - mk num - mt num - nl num - no num - pl num - ps num - pt num - ro num - rs num - se num - si num - sj num - sk num - sm num - sy num - tn num - tr num - ua num - uk num - us num - va num - world num - xk num - status - >ecoscore_extended_data /insert 1 - >impact /insert 6 - ef_single_score_log_stddev num - >likeliest_impacts /insert 1 - Climate_change num - EF_single_score num - >likeliest_recipe /insert 1 - en:Oak_smoked_sea_salti_yeast_extract num - en:e160c num - en:e330 num - en:flavouring num - en:garlic_powder num - en:milk num - en:onion num - en:potato num - en:potato_starch num - en:rice_flour num - en:salt num - en:spice num - en:sugar num - en:sunflower_oil num - en:tomato_powder num - en:water num - en:yeast_powder num - mass_ratio_uncharacterized num - >uncharacterized_ingredients /insert 1 - impact - nutrition - >uncharacterized_ingredients_mass_proportion /insert 1 - impact num - nutrition num - >uncharacterized_ingredients_ratio /insert 1 - impact num - nutrition num - warnings - ecoscore_extended_data_version - ecoscore_grade - ecoscore_score num - ecoscore_tags - editors - editors_tags - emb_codes - emb_codes_20141016 - emb_codes_orig - >emb_codes_tags - entry_dates_tags - expiration_date - food_groups - food_groups_tags - fruits-vegetables-nuts_100g_estimate num - generic_name - generic_name_en - generic_name_fr - >generic_name_fr_debug_tags - id - image_front_small_url - image_front_thumb_url - image_front_url - image_ingredients_small_url - image_ingredients_thumb_url - image_ingredients_url - image_nutrition_small_url - image_nutrition_thumb_url - image_nutrition_url - image_small_url - image_thumb_url - image_url - >images /insert 1 - >1 /insert 8 - >sizes /insert 15 - >100 /insert 15 - h num - w num - >400 /insert 15 - h num - w num - >full /insert 15 - h num - w num - uploaded_t num - uploader - >2 /insert 6 - >sizes /insert 15 - >100 /insert 15 - h num - w num - >400 /insert 15 - h num - w num - >full /insert 15 - h num - w num - uploaded_t num - uploader - >3 /insert 11 - >sizes /insert 15 - >100 /insert 15 - h num - w num - >400 /insert 15 - h num - w num - >full /insert 15 - h num - w num - uploaded_t num - uploader - >4 /insert 8 - >sizes /insert 15 - >100 /insert 15 - h num - w num - >400 /insert 15 - h num - w num - >full /insert 15 - h num - w num - uploaded_t num - uploader - >5 /insert 2 - >sizes /insert 15 - >100 /insert 15 - h num - w num - >400 /insert 15 - h num - w num - >full /insert 15 - h num - w num - uploaded_t num - uploader - >6 /insert 2 - >sizes /insert 15 - >100 /insert 15 - h num - w num - >400 /insert 15 - h num - w num - >full /insert 15 - h num - w num - uploaded_t num - uploader - >7 /insert 2 - >sizes /insert 15 - >100 /insert 15 - h num - w num - >400 /insert 15 - h num - w num - >full /insert 15 - h num - w num - uploaded_t - uploader - >8 /insert 2 - >sizes /insert 15 - >100 /insert 15 - h num - w num - >400 /insert 15 - h num - w num - >full /insert 15 - h num - w num - uploaded_t num - uploader - >9 /insert 2 - >sizes /insert 15 - >100 /insert 15 - h num - w num - >400 /insert 15 - h num - w num - >full /insert 15 - h num - w num - uploaded_t num - uploader - >front /insert 2 - geometry - imgid - normalize - rev - >sizes /insert 15 - >100 /insert 15 - h num - w num - >200 /insert 6 - h num - w num - >400 /insert 15 - h num - w num - >full /insert 15 - h num - w num - white_magic - >front_en /insert 1 - angle num - coordinates_image_size - geometry - imgid - >normalize /insert undefined - rev - >sizes /insert 15 - >100 /insert 15 - h num - w num - >200 /insert 6 - h num - w num - >400 /insert 15 - h num - w num - >full /insert 15 - h num - w num - >white_magic /insert undefined - x1 - x2 - y1 - y2 - >ingredients /insert 22 - geometry - imgid - normalize - ocr num - orientation - rev - >sizes /insert 15 - >100 /insert 15 - h num - w num - >200 /insert 6 - h num - w num - >400 /insert 15 - h num - w num - >full /insert 15 - h num - w num - white_magic - >ingredients_en /insert 1 - geometry - imgid - normalize - ocr num - orientation - rev - >sizes /insert 15 - >100 /insert 15 - h num - w num - >200 /insert 6 - h num - w num - >400 /insert 15 - h num - w num - >full /insert 15 - h num - w num - white_magic - >nutrition /insert 4 - geometry - imgid - normalize - ocr num - orientation - rev - >sizes /insert 15 - >100 /insert 15 - h num - w num - >200 /insert 6 - h num - w num - >400 /insert 15 - h num - w num - >full /insert 15 - h num - w num - white_magic - >nutrition_en /insert 1 - angle num - coordinates_image_size - geometry - imgid - >normalize /insert undefined - rev - >sizes /insert 15 - >100 /insert 15 - h num - w num - >200 /insert 6 - h num - w num - >400 /insert 15 - h num - w num - >full /insert 15 - h num - w num - >white_magic /insert undefined - x1 - x2 - y1 - y2 - informers_tags - ingredients /insert 22 - ciqual_food_code - id - percent num - percent_estimate num - percent_max num - percent_min num - processing - rank num - text - vegan - vegetarian - >ingredients_analysis /insert 1 - en:non-vegan - en:palm-oil-content-unknown - en:vegan-status-unknown - en:vegetarian-status-unknown - ingredients_analysis_tags - ingredients_debug - ingredients_from_or_that_may_be_from_palm_oil_n num - ingredients_from_palm_oil_n num - >ingredients_from_palm_oil_tags - ingredients_hierarchy - ingredients_ids_debug - ingredients_n num - ingredients_n_tags - ingredients_original_tags - ingredients_percent_analysis num - ingredients_tags - ingredients_text - ingredients_text_debug - >ingredients_text_debug_tags - ingredients_text_en - ingredients_text_fr - >ingredients_text_fr_debug_tags - ingredients_text_with_allergens - ingredients_text_with_allergens_en - ingredients_that_may_be_from_palm_oil_n num - >ingredients_that_may_be_from_palm_oil_tags - ingredients_with_specified_percent_n num - ingredients_with_specified_percent_sum num - ingredients_with_unspecified_percent_n num - ingredients_with_unspecified_percent_sum num - ingredients_without_ciqual_codes - ingredients_without_ciqual_codes_n num - interface_version_created - interface_version_modified - known_ingredients_n num - labels - labels_hierarchy - labels_lc - labels_old - labels_tags - lang - >languages /insert 1 - en:english num - >languages_codes /insert 1 - en num - languages_hierarchy - languages_tags - last_edit_dates_tags - last_editor - last_image_dates_tags - last_image_t num - last_modified_by - last_modified_t num - lc - link - >main_countries_tags - manufacturing_places - manufacturing_places_tags - max_imgid - >minerals_prev_tags - >minerals_tags - misc_tags - no_nutrition_data - nova_group num - nova_group_debug - nova_groups - >nova_groups_markers /insert 1 - 3 - 4 - nova_groups_tags - >nucleotides_prev_tags - >nucleotides_tags - >nutrient_levels /insert 1 - fat - salt - saturated-fat - sugars - nutrient_levels_tags - >nutriments /insert 1 - carbohydrates num - carbohydrates_100g num - carbohydrates_serving num - carbohydrates_unit - carbohydrates_value num - carbon-footprint-from-known-ingredients_100g num - carbon-footprint-from-known-ingredients_product num - carbon-footprint-from-known-ingredients_serving num - energy num - energy-kcal num - energy-kcal_100g num - energy-kcal_serving num - energy-kcal_unit - energy-kcal_value num - energy-kcal_value_computed num - energy-kj num - energy-kj_100g num - energy-kj_serving num - energy-kj_unit - energy-kj_value num - energy-kj_value_computed num - energy_100g num - energy_serving num - energy_unit - energy_value num - fat num - fat_100g num - fat_serving num - fat_unit - fat_value num - fiber num - fiber_100g num - fiber_serving num - fiber_unit - fiber_value num - fruits-vegetables-legumes-estimate-from-ingredients_100g num - fruits-vegetables-legumes-estimate-from-ingredients_serving num - fruits-vegetables-nuts-estimate-from-ingredients_100g num - fruits-vegetables-nuts-estimate-from-ingredients_serving num - nova-group num - nova-group_100g num - nova-group_serving num - nutrition-score-fr num - nutrition-score-fr_100g num - proteins num - proteins_100g num - proteins_serving num - proteins_unit - proteins_value num - salt num - salt_100g num - salt_serving num - salt_unit - salt_value num - saturated-fat num - saturated-fat_100g num - saturated-fat_serving num - saturated-fat_unit - saturated-fat_value num - sodium num - sodium_100g num - sodium_serving num - sodium_unit - sodium_value num - sugars num - sugars_100g num - sugars_serving num - sugars_unit - sugars_value num - >nutriscore /insert 1 - >2021 /insert 1 - category_available num - >data /insert 2 - energy num - energy_points num - energy_value num - fiber num - fiber_points num - fiber_value num - fruits_vegetables_nuts_colza_walnut_olive_oils - fruits_vegetables_nuts_colza_walnut_olive_oils_points num - fruits_vegetables_nuts_colza_walnut_olive_oils_value num - is_beverage num - is_cheese num - is_fat num - is_water num - negative_points num - positive_points num - proteins num - proteins_points num - proteins_value num - saturated_fat num - saturated_fat_points num - saturated_fat_value num - sodium num - sodium_points num - sodium_value num - sugars num - sugars_points num - sugars_value num - grade - nutrients_available num - nutriscore_applicable num - nutriscore_computed num - score num - >2023 /insert 1 - category_available num - >data /insert 2 - count_proteins num - count_proteins_reason - energy num - energy_points num - fiber num - fiber_points num - fruits_vegetables_legumes num - fruits_vegetables_legumes_points num - is_beverage num - is_cheese num - is_fat_oil_nuts_seeds num - is_red_meat_product num - is_water num - negative_nutrients - negative_points num - positive_nutrients - positive_points num - proteins num - proteins_points num - salt num - salt_points num - saturated_fat num - saturated_fat_points num - sugars num - sugars_points num - grade - nutrients_available num - nutriscore_applicable num - nutriscore_computed num - score num - nutriscore_2021_tags - nutriscore_2023_tags - >nutriscore_data /insert 1 - energy num - energy_points num - energy_value num - fiber num - fiber_points num - fiber_value num - fruits_vegetables_nuts_colza_walnut_olive_oils - fruits_vegetables_nuts_colza_walnut_olive_oils_points num - fruits_vegetables_nuts_colza_walnut_olive_oils_value num - grade - is_beverage num - is_cheese num - is_fat num - is_water num - negative_points num - positive_points num - proteins num - proteins_points num - proteins_value num - saturated_fat num - saturated_fat_points num - saturated_fat_value num - score num - sodium num - sodium_points num - sodium_value num - sugars num - sugars_points num - sugars_value num - nutriscore_grade - nutriscore_score num - nutriscore_score_opposite num - nutriscore_tags - nutriscore_version - nutrition_data - nutrition_data_per - nutrition_data_prepared - nutrition_data_prepared_per - nutrition_grade_fr - nutrition_grades - nutrition_grades_tags - nutrition_score_beverage num - nutrition_score_debug - obsolete - obsolete_since_date - origin - origin_en - origins - >origins_hierarchy - origins_lc - origins_old - >origins_tags - >other_nutritional_substances_tags - packaging - packaging_hierarchy - packaging_lc - packaging_materials_tags - packaging_old - packaging_old_before_taxonomization - >packaging_recycling_tags - packaging_shapes_tags - packaging_tags - packaging_text - packaging_text_en - packagings /insert 4 - material - shape - packagings_complete num - >packagings_materials /insert 1 - >all /insert 1 - >en:plastic /insert 1 - packagings_n num - photographers_tags - pnns_groups_1 - pnns_groups_1_tags - pnns_groups_2 - pnns_groups_2_tags - popularity_key num - popularity_tags - product_name - product_name_en - product_name_fr - >product_name_fr_debug_tags - product_quantity - purchase_places - >purchase_places_tags - quantity - >removed_countries_tags - rev num - scans_n num - >selected_images /insert 1 - >front /insert 2 - >display /insert 3 - en - >small /insert 3 - en - >thumb /insert 3 - en - >ingredients /insert 22 - >display /insert 3 - en - >small /insert 3 - en - >thumb /insert 3 - en - >nutrition /insert 4 - >display /insert 3 - en - >small /insert 3 - en - >thumb /insert 3 - en - serving_quantity - serving_size - sortkey num - states - states_hierarchy - states_tags - stores - >stores_tags - teams - teams_tags - traces - traces_from_ingredients - traces_from_user - >traces_hierarchy - traces_lc - >traces_tags - unique_scans_n num - unknown_ingredients_n num - >unknown_nutrients_tags - update_key - >vitamins_prev_tags - >vitamins_tags - >weighers_tags - status num - status_verbose - -dv unnamed_entity_dv unnamed_entity - -#settings = { genpk: false, drop: true } - --- Generated by json2qsql.js development 1/3/2024, 10:04:19 AM - -#document = -{ - "code": "5060292302201", - "product": { - "_id": "5060292302201", - "_keywords": [ - "and", - "anything", - "appetizer", - "artificial", - "barbeque", - "beverage", - "cereal", - "chip", - "crisp", - "food", - "frie", - "in", - "no", - "oil", - "plant-based", - "popchip", - "potato", - "potatoe", - "preservative", - "salty", - "snack", - "sunflower", - "vegetarian" - ], - "added_countries_tags": [], - "additives_debug_tags": [], - "additives_n": 2, - "additives_old_n": 2, - "additives_old_tags": [ - "en:e330", - "en:e160c" - ], - "additives_original_tags": [ - "en:e330", - "en:e160c" - ], - "additives_prev_original_tags": [ - "en:e330", - "en:e160c" - ], - "additives_tags": [ - "en:e160c", - "en:e330" - ], - "allergens": "en:milk", - "allergens_from_ingredients": "en:milk, milk", - "allergens_from_user": "(en) en:milk", - "allergens_hierarchy": [ - "en:milk" - ], - "allergens_lc": "en", - "allergens_tags": [ - "en:milk" - ], - "amino_acids_prev_tags": [], - "amino_acids_tags": [], - "brands": "Popchips", - "brands_tags": [ - "popchips" - ], - "carbon_footprint_from_known_ingredients_debug": "en:potato 54% x 0.6 = 32.4 g - ", - "carbon_footprint_percent_of_known_ingredients": 54, - "categories": "Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil", - "categories_hierarchy": [ - "en:plant-based-foods-and-beverages", - "en:plant-based-foods", - "en:snacks", - "en:cereals-and-potatoes", - "en:salty-snacks", - "en:appetizers", - "en:chips-and-fries", - "en:crisps", - "en:potato-crisps", - "en:potato-crisps-in-sunflower-oil" - ], - "categories_lc": "en", - "categories_old": "Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil", - "categories_properties": { - "agribalyse_food_code:en": "4004", - "ciqual_food_code:en": "4004" - }, - "categories_properties_tags": [ - "all-products", - "categories-known", - "agribalyse-food-code-4004", - "agribalyse-food-code-known", - "agribalyse-proxy-food-code-unknown", - "ciqual-food-code-4004", - "ciqual-food-code-known", - "agribalyse-known", - "agribalyse-4004" - ], - "categories_tags": [ - "en:plant-based-foods-and-beverages", - "en:plant-based-foods", - "en:snacks", - "en:cereals-and-potatoes", - "en:salty-snacks", - "en:appetizers", - "en:chips-and-fries", - "en:crisps", - "en:potato-crisps", - "en:potato-crisps-in-sunflower-oil" - ], - "category_properties": { - "ciqual_food_name:en": "Potato crisps", - "ciqual_food_name:fr": "Chips de pommes de terre, standard" - }, - "checkers_tags": [], - "ciqual_food_name_tags": [ - "potato-crisps" - ], - "cities_tags": [], - "code": "5060292302201", - "codes_tags": [ - "code-13", - "5060292302xxx", - "506029230xxxx", - "50602923xxxxx", - "5060292xxxxxx", - "506029xxxxxxx", - "50602xxxxxxxx", - "5060xxxxxxxxx", - "506xxxxxxxxxx", - "50xxxxxxxxxxx", - "5xxxxxxxxxxxx" - ], - "compared_to_category": "en:potato-crisps-in-sunflower-oil", - "complete": 0, - "completeness": 0.8875, - "correctors_tags": [ - "tacite", - "tacite-mass-editor", - "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", - "openfoodfacts-contributors", - "swipe-studio", - "yuka.sY2b0xO6T85zoF3NwEKvllZnctbb-gn-LDr4mHzUyem0FYPXMO5by7b5NKg", - "kiliweb", - "packbot", - "foodless", - "yuka.sY2b0xO6T85zoF3NwEKvlmBZVPXu-gnlBU3miFTQ-NeSIbDaMdUtu4fLGas", - "aleene" - ], - "countries": "France,United Kingdom", - "countries_hierarchy": [ - "en:france", - "en:united-kingdom" - ], - "countries_lc": "en", - "countries_tags": [ - "en:france", - "en:united-kingdom" - ], - "created_t": 1433338177, - "creator": "kyzh", - "data_quality_bugs_tags": [], - "data_quality_errors_tags": [], - "data_quality_info_tags": [ - "en:packaging-data-incomplete", - "en:ingredients-percent-analysis-ok", - "en:carbon-footprint-from-known-ingredients-but-not-from-meat-or-fish", - "en:ecoscore-extended-data-computed", - "en:ecoscore-extended-data-less-precise-than-agribalyse", - "en:food-groups-1-known", - "en:food-groups-2-known", - "en:food-groups-3-unknown" - ], - "data_quality_tags": [ - "en:packaging-data-incomplete", - "en:ingredients-percent-analysis-ok", - "en:carbon-footprint-from-known-ingredients-but-not-from-meat-or-fish", - "en:ecoscore-extended-data-computed", - "en:ecoscore-extended-data-less-precise-than-agribalyse", - "en:food-groups-1-known", - "en:food-groups-2-known", - "en:food-groups-3-unknown", - "en:nutrition-value-very-low-for-category-energy", - "en:nutrition-value-very-low-for-category-fat", - "en:nutrition-value-very-high-for-category-sugars", - "en:vegetarian-label-but-could-not-confirm-for-all-ingredients", - "en:ecoscore-origins-of-ingredients-origins-are-100-percent-unknown", - "en:ecoscore-production-system-no-label" - ], - "data_quality_warnings_tags": [ - "en:nutrition-value-very-low-for-category-energy", - "en:nutrition-value-very-low-for-category-fat", - "en:nutrition-value-very-high-for-category-sugars", - "en:vegetarian-label-but-could-not-confirm-for-all-ingredients", - "en:ecoscore-origins-of-ingredients-origins-are-100-percent-unknown", - "en:ecoscore-production-system-no-label" - ], - "data_sources": "App - yuka, Apps, App - Horizon", - "data_sources_tags": [ - "app-yuka", - "apps", - "app-horizon" - ], - "debug_param_sorted_langs": [ - "en" - ], - "ecoscore_data": { - "adjustments": { - "origins_of_ingredients": { - "aggregated_origins": [ - { - "epi_score": "0", - "origin": "en:unknown", - "percent": 100, - "transportation_score": null - } - ], - "epi_score": 0, - "epi_value": -5, - "origins_from_categories": [ - "en:unknown" - ], - "origins_from_origins_field": [ - "en:unknown" - ], - "transportation_score": 0, - "transportation_scores": { - "ad": 0, - "al": 0, - "at": 0, - "ax": 0, - "ba": 0, - "be": 0, - "bg": 0, - "ch": 0, - "cy": 0, - "cz": 0, - "de": 0, - "dk": 0, - "dz": 0, - "ee": 0, - "eg": 0, - "es": 0, - "fi": 0, - "fo": 0, - "fr": 0, - "gg": 0, - "gi": 0, - "gr": 0, - "hr": 0, - "hu": 0, - "ie": 0, - "il": 0, - "im": 0, - "is": 0, - "it": 0, - "je": 0, - "lb": 0, - "li": 0, - "lt": 0, - "lu": 0, - "lv": 0, - "ly": 0, - "ma": 0, - "mc": 0, - "md": 0, - "me": 0, - "mk": 0, - "mt": 0, - "nl": 0, - "no": 0, - "pl": 0, - "ps": 0, - "pt": 0, - "ro": 0, - "rs": 0, - "se": 0, - "si": 0, - "sj": 0, - "sk": 0, - "sm": 0, - "sy": 0, - "tn": 0, - "tr": 0, - "ua": 0, - "uk": 0, - "us": 0, - "va": 0, - "world": 0, - "xk": 0 - }, - "transportation_value": 0, - "transportation_values": { - "ad": 0, - "al": 0, - "at": 0, - "ax": 0, - "ba": 0, - "be": 0, - "bg": 0, - "ch": 0, - "cy": 0, - "cz": 0, - "de": 0, - "dk": 0, - "dz": 0, - "ee": 0, - "eg": 0, - "es": 0, - "fi": 0, - "fo": 0, - "fr": 0, - "gg": 0, - "gi": 0, - "gr": 0, - "hr": 0, - "hu": 0, - "ie": 0, - "il": 0, - "im": 0, - "is": 0, - "it": 0, - "je": 0, - "lb": 0, - "li": 0, - "lt": 0, - "lu": 0, - "lv": 0, - "ly": 0, - "ma": 0, - "mc": 0, - "md": 0, - "me": 0, - "mk": 0, - "mt": 0, - "nl": 0, - "no": 0, - "pl": 0, - "ps": 0, - "pt": 0, - "ro": 0, - "rs": 0, - "se": 0, - "si": 0, - "sj": 0, - "sk": 0, - "sm": 0, - "sy": 0, - "tn": 0, - "tr": 0, - "ua": 0, - "uk": 0, - "us": 0, - "va": 0, - "world": 0, - "xk": 0 - }, - "value": -5, - "values": { - "ad": -5, - "al": -5, - "at": -5, - "ax": -5, - "ba": -5, - "be": -5, - "bg": -5, - "ch": -5, - "cy": -5, - "cz": -5, - "de": -5, - "dk": -5, - "dz": -5, - "ee": -5, - "eg": -5, - "es": -5, - "fi": -5, - "fo": -5, - "fr": -5, - "gg": -5, - "gi": -5, - "gr": -5, - "hr": -5, - "hu": -5, - "ie": -5, - "il": -5, - "im": -5, - "is": -5, - "it": -5, - "je": -5, - "lb": -5, - "li": -5, - "lt": -5, - "lu": -5, - "lv": -5, - "ly": -5, - "ma": -5, - "mc": -5, - "md": -5, - "me": -5, - "mk": -5, - "mt": -5, - "nl": -5, - "no": -5, - "pl": -5, - "ps": -5, - "pt": -5, - "ro": -5, - "rs": -5, - "se": -5, - "si": -5, - "sj": -5, - "sk": -5, - "sm": -5, - "sy": -5, - "tn": -5, - "tr": -5, - "ua": -5, - "uk": -5, - "us": -5, - "va": -5, - "world": -5, - "xk": -5 - }, - "warning": "origins_are_100_percent_unknown" - }, - "packaging": { - "non_recyclable_and_non_biodegradable_materials": 2, - "packagings": [ - { - "ecoscore_material_score": 0, - "ecoscore_shape_ratio": 1, - "material": "en:plastic", - "non_recyclable_and_non_biodegradable": "maybe", - "shape": "en:packet" - }, - { - "ecoscore_material_score": 0, - "ecoscore_shape_ratio": 1, - "material": "en:plastic", - "non_recyclable_and_non_biodegradable": "maybe", - "shape": "en:packet" - } - ], - "score": -100, - "value": -15 - }, - "production_system": { - "labels": [], - "value": 0, - "warning": "no_label" - }, - "threatened_species": {} - }, - "agribalyse": { - "agribalyse_food_code": "4004", - "co2_agriculture": 0.82655583, - "co2_consumption": 0, - "co2_distribution": 0.019537154, - "co2_packaging": 0.28154442, - "co2_processing": 0.23156851, - "co2_total": 1.543669164, - "co2_transportation": 0.18446325, - "code": "4004", - "dqr": "2.45", - "ef_agriculture": 0.14029442, - "ef_consumption": 0, - "ef_distribution": 0.004831936, - "ef_packaging": 0.02370999, - "ef_processing": 0.038707917, - "ef_total": 0.223317319, - "ef_transportation": 0.015773056, - "is_beverage": 0, - "name_en": "Potato crisps", - "name_fr": "Chips de pommes de terre, standard", - "score": 87, - "version": "3.1" - }, - "grade": "b", - "grades": { - "ad": "b", - "al": "b", - "at": "b", - "ax": "b", - "ba": "b", - "be": "b", - "bg": "b", - "ch": "b", - "cy": "b", - "cz": "b", - "de": "b", - "dk": "b", - "dz": "b", - "ee": "b", - "eg": "b", - "es": "b", - "fi": "b", - "fo": "b", - "fr": "b", - "gg": "b", - "gi": "b", - "gr": "b", - "hr": "b", - "hu": "b", - "ie": "b", - "il": "b", - "im": "b", - "is": "b", - "it": "b", - "je": "b", - "lb": "b", - "li": "b", - "lt": "b", - "lu": "b", - "lv": "b", - "ly": "b", - "ma": "b", - "mc": "b", - "md": "b", - "me": "b", - "mk": "b", - "mt": "b", - "nl": "b", - "no": "b", - "pl": "b", - "ps": "b", - "pt": "b", - "ro": "b", - "rs": "b", - "se": "b", - "si": "b", - "sj": "b", - "sk": "b", - "sm": "b", - "sy": "b", - "tn": "b", - "tr": "b", - "ua": "b", - "uk": "b", - "us": "b", - "va": "b", - "world": "b", - "xk": "b" - }, - "missing": { - "labels": 1, - "origins": 1 - }, - "missing_data_warning": 1, - "previous_data": { - "agribalyse": { - "agribalyse_food_code": "4004", - "co2_agriculture": 1.2992636, - "co2_consumption": 0, - "co2_distribution": 0.029120657, - "co2_packaging": 0.28581962, - "co2_processing": 0.39294234, - "co2_total": 2.2443641, - "co2_transportation": 0.23728203, - "code": "4004", - "dqr": "2.45", - "ef_agriculture": 0.18214682, - "ef_consumption": 0, - "ef_distribution": 0.0098990521, - "ef_packaging": 0.021558384, - "ef_processing": 0.057508389, - "ef_total": 0.29200269, - "ef_transportation": 0.020894187, - "is_beverage": 0, - "name_en": "Potato crisps", - "name_fr": "Chips de pommes de terre, standard", - "score": 78 - }, - "grade": "b", - "score": 63 - }, - "score": 67, - "scores": { - "ad": 67, - "al": 67, - "at": 67, - "ax": 67, - "ba": 67, - "be": 67, - "bg": 67, - "ch": 67, - "cy": 67, - "cz": 67, - "de": 67, - "dk": 67, - "dz": 67, - "ee": 67, - "eg": 67, - "es": 67, - "fi": 67, - "fo": 67, - "fr": 67, - "gg": 67, - "gi": 67, - "gr": 67, - "hr": 67, - "hu": 67, - "ie": 67, - "il": 67, - "im": 67, - "is": 67, - "it": 67, - "je": 67, - "lb": 67, - "li": 67, - "lt": 67, - "lu": 67, - "lv": 67, - "ly": 67, - "ma": 67, - "mc": 67, - "md": 67, - "me": 67, - "mk": 67, - "mt": 67, - "nl": 67, - "no": 67, - "pl": 67, - "ps": 67, - "pt": 67, - "ro": 67, - "rs": 67, - "se": 67, - "si": 67, - "sj": 67, - "sk": 67, - "sm": 67, - "sy": 67, - "tn": 67, - "tr": 67, - "ua": 67, - "uk": 67, - "us": 67, - "va": 67, - "world": 67, - "xk": 67 - }, - "status": "known" - }, - "ecoscore_extended_data": { - "impact": { - "ef_single_score_log_stddev": 0.0664290643574977, - "likeliest_impacts": { - "Climate_change": 0.0835225930657116, - "EF_single_score": 0.0132996566234689 - }, - "likeliest_recipe": { - "en:Oak_smoked_sea_salti_yeast_extract": 0.103505496656251, - "en:e160c": 0.10350549665625, - "en:e330": 0.10350549665625, - "en:flavouring": 0.10350549665625, - "en:garlic_powder": 0.103505496656251, - "en:milk": 1.55847864453775, - "en:onion": 0.15510736429208, - "en:potato": 69.2208020730349, - "en:potato_starch": 10.5320407294931, - "en:rice_flour": 13.8595510001351, - "en:salt": 1.3345917157533, - "en:spice": 0.10350549665625, - "en:sugar": 10.2883618334396, - "en:sunflower_oil": 14.1645835312727, - "en:tomato_powder": 0.10350549665625, - "en:water": 6.24510964041154, - "en:yeast_powder": 0.103505496656251 - }, - "mass_ratio_uncharacterized": 0.0244618467395455, - "uncharacterized_ingredients": { - "impact": [ - "en:yeast-powder", - "en:flavouring", - "en:Oak smoked sea salti yeast extract", - "en:e160c", - "en:e330" - ], - "nutrition": [ - "en:flavouring", - "en:Oak smoked sea salti yeast extract" - ] - }, - "uncharacterized_ingredients_mass_proportion": { - "impact": 0.0244618467395455, - "nutrition": 0.0106506947223728 - }, - "uncharacterized_ingredients_ratio": { - "impact": 0.3125, - "nutrition": 0.125 - }, - "warnings": [ - "Fermentation agents are present in the product (en:yeast-powder). Carbohydrates and sugars mass balance will not be considered to estimate potential recipes", - "The product has a high number of impact uncharacterized ingredients: 31%" - ] - } - }, - "ecoscore_extended_data_version": "4", - "ecoscore_grade": "b", - "ecoscore_score": 67, - "ecoscore_tags": [ - "b" - ], - "editors": [ - "kyzh", - "tacite" - ], - "editors_tags": [ - "kiliweb", - "openfoodfacts-contributors", - "aleene", - "tacite-mass-editor", - "yuka.sY2b0xO6T85zoF3NwEKvlmBZVPXu-gnlBU3miFTQ-NeSIbDaMdUtu4fLGas", - "kyzh", - "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", - "ecoscore-impact-estimator", - "tacite", - "foodless", - "yuka.sY2b0xO6T85zoF3NwEKvllZnctbb-gn-LDr4mHzUyem0FYPXMO5by7b5NKg", - "swipe-studio", - "packbot" - ], - "emb_codes": "", - "emb_codes_20141016": "", - "emb_codes_orig": "", - "emb_codes_tags": [], - "entry_dates_tags": [ - "2015-06-03", - "2015-06", - "2015" - ], - "expiration_date": "11/05/2016", - "food_groups": "en:appetizers", - "food_groups_tags": [ - "en:salty-snacks", - "en:appetizers" - ], - "fruits-vegetables-nuts_100g_estimate": 0, - "generic_name": "", - "generic_name_en": "", - "generic_name_fr": "", - "generic_name_fr_debug_tags": [], - "id": "5060292302201", - "image_front_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", - "image_front_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", - "image_front_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", - "image_ingredients_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg", - "image_ingredients_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg", - "image_ingredients_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg", - "image_nutrition_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg", - "image_nutrition_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg", - "image_nutrition_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg", - "image_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", - "image_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", - "image_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", - "images": { - "1": { - "sizes": { - "100": { - "h": 74, - "w": 100 - }, - "400": { - "h": 296, - "w": 400 - }, - "full": { - "h": 1482, - "w": 2000 - } - }, - "uploaded_t": 1433338177, - "uploader": "kyzh" - }, - "2": { - "sizes": { - "100": { - "h": 74, - "w": 100 - }, - "400": { - "h": 296, - "w": 400 - }, - "full": { - "h": 1482, - "w": 2000 - } - }, - "uploaded_t": 1433338194, - "uploader": "kyzh" - }, - "3": { - "sizes": { - "100": { - "h": 74, - "w": 100 - }, - "400": { - "h": 296, - "w": 400 - }, - "full": { - "h": 1482, - "w": 2000 - } - }, - "uploaded_t": 1433338203, - "uploader": "kyzh" - }, - "4": { - "sizes": { - "100": { - "h": 74, - "w": 100 - }, - "400": { - "h": 296, - "w": 400 - }, - "full": { - "h": 1482, - "w": 2000 - } - }, - "uploaded_t": 1433338215, - "uploader": "kyzh" - }, - "5": { - "sizes": { - "100": { - "h": 74, - "w": 100 - }, - "400": { - "h": 296, - "w": 400 - }, - "full": { - "h": 1482, - "w": 2000 - } - }, - "uploaded_t": 1433338229, - "uploader": "kyzh" - }, - "6": { - "sizes": { - "100": { - "h": 74, - "w": 100 - }, - "400": { - "h": 296, - "w": 400 - }, - "full": { - "h": 1482, - "w": 2000 - } - }, - "uploaded_t": 1433338245, - "uploader": "kyzh" - }, - "7": { - "sizes": { - "100": { - "h": 43, - "w": 100 - }, - "400": { - "h": 171, - "w": 400 - }, - "full": { - "h": 846, - "w": 1974 - } - }, - "uploaded_t": "1508236270", - "uploader": "kiliweb" - }, - "8": { - "sizes": { - "100": { - "h": 100, - "w": 82 - }, - "400": { - "h": 400, - "w": 326 - }, - "full": { - "h": 1140, - "w": 930 - } - }, - "uploaded_t": 1620505759, - "uploader": "kiliweb" - }, - "9": { - "sizes": { - "100": { - "h": 56, - "w": 100 - }, - "400": { - "h": 225, - "w": 400 - }, - "full": { - "h": 569, - "w": 1011 - } - }, - "uploaded_t": 1656075071, - "uploader": "kiliweb" - }, - "front": { - "geometry": "1421x1825-0-95", - "imgid": "1", - "normalize": "false", - "rev": "9", - "sizes": { - "100": { - "h": 100, - "w": 78 - }, - "200": { - "h": 200, - "w": 156 - }, - "400": { - "h": 400, - "w": 311 - }, - "full": { - "h": 1825, - "w": 1421 - } - }, - "white_magic": "true" - }, - "front_en": { - "angle": 0, - "coordinates_image_size": "full", - "geometry": "0x0--1--1", - "imgid": "8", - "normalize": null, - "rev": "23", - "sizes": { - "100": { - "h": 100, - "w": 82 - }, - "200": { - "h": 200, - "w": 163 - }, - "400": { - "h": 400, - "w": 326 - }, - "full": { - "h": 1140, - "w": 930 - } - }, - "white_magic": null, - "x1": "-1", - "x2": "-1", - "y1": "-1", - "y2": "-1" - }, - "ingredients": { - "geometry": "1730x526-125-304", - "imgid": "5", - "normalize": "false", - "ocr": 1, - "orientation": "0", - "rev": "11", - "sizes": { - "100": { - "h": 30, - "w": 100 - }, - "200": { - "h": 61, - "w": 200 - }, - "400": { - "h": 122, - "w": 400 - }, - "full": { - "h": 526, - "w": 1730 - } - }, - "white_magic": "false" - }, - "ingredients_en": { - "geometry": "1730x526-125-304", - "imgid": "5", - "normalize": "false", - "ocr": 1, - "orientation": "0", - "rev": "11", - "sizes": { - "100": { - "h": 30, - "w": 100 - }, - "200": { - "h": 61, - "w": 200 - }, - "400": { - "h": 122, - "w": 400 - }, - "full": { - "h": 526, - "w": 1730 - } - }, - "white_magic": "false" - }, - "nutrition": { - "geometry": "1131x920-150-794", - "imgid": "3", - "normalize": "false", - "ocr": 1, - "orientation": "0", - "rev": "10", - "sizes": { - "100": { - "h": 81, - "w": 100 - }, - "200": { - "h": 163, - "w": 200 - }, - "400": { - "h": 325, - "w": 400 - }, - "full": { - "h": 920, - "w": 1131 - } - }, - "white_magic": "false" - }, - "nutrition_en": { - "angle": 0, - "coordinates_image_size": "full", - "geometry": "0x0--1--1", - "imgid": "9", - "normalize": null, - "rev": "32", - "sizes": { - "100": { - "h": 56, - "w": 100 - }, - "200": { - "h": 113, - "w": 200 - }, - "400": { - "h": 225, - "w": 400 - }, - "full": { - "h": 569, - "w": 1011 - } - }, - "white_magic": null, - "x1": "-1", - "x2": "-1", - "y1": "-1", - "y2": "-1" - } - }, - "informers_tags": [ - "kyzh", - "tacite", - "tacite-mass-editor", - "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", - "openfoodfacts-contributors", - "aleene" - ], - "ingredients": [ - { - "ciqual_food_code": "4003", - "id": "en:potato", - "percent": 54, - "percent_estimate": 54, - "percent_max": 54, - "percent_min": 54, - "processing": "en:dried", - "rank": 1, - "text": "potatoes", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "ciqual_food_code": "17440", - "from_palm_oil": "no", - "id": "en:sunflower-oil", - "percent_estimate": 28.75, - "percent_max": 46, - "percent_min": 11.5, - "rank": 2, - "text": "sunflower oil", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "has_sub_ingredients": "yes", - "id": "en:coating", - "percent_estimate": 8.625, - "percent_max": 33.3333333333333, - "percent_min": 0, - "rank": 3, - "text": "seasoning", - "vegan": "maybe", - "vegetarian": "maybe" - }, - { - "ciqual_food_code": "9520", - "id": "en:rice-flour", - "percent_estimate": 4.3125, - "percent_max": 17.25, - "percent_min": 0, - "rank": 4, - "text": "rice flour", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "id": "en:potato-starch", - "percent_estimate": 4.3125, - "percent_max": 11.5, - "percent_min": 0, - "rank": 5, - "text": "potato starch", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "id": "en:sugar", - "percent_estimate": 4.3125, - "percent_max": 8.7, - "percent_min": 0, - "text": "sugar", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "has_sub_ingredients": "yes", - "id": "en:whey-powder", - "percent_estimate": 2.15625, - "percent_max": 8.7, - "percent_min": 0, - "text": "whey powder", - "vegan": "no", - "vegetarian": "maybe" - }, - { - "ciqual_food_code": "11058", - "id": "en:salt", - "percent_estimate": 1.05, - "percent_max": 2.1, - "percent_min": 0, - "text": "salt", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "ciqual_food_code": "20034", - "id": "en:onion", - "percent_estimate": 0.553125, - "percent_max": 2.1, - "percent_min": 0, - "processing": "en:powder", - "text": "onion", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "id": "en:yeast-powder", - "percent_estimate": 0.2765625, - "percent_max": 2.1, - "percent_min": 0, - "text": "yeast powder", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "ciqual_food_code": "11000", - "id": "en:garlic", - "percent_estimate": 0.13828125, - "percent_max": 2.1, - "percent_min": 0, - "processing": "en:powder", - "text": "garlic", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "ciqual_food_code": "20047", - "id": "en:tomato", - "percent_estimate": 0.0691406250000002, - "percent_max": 2.1, - "percent_min": 0, - "processing": "en:powder", - "text": "tomato", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "id": "en:oak-smoked-sea-salti-yeast-extract", - "percent_estimate": 0.0345703124999996, - "percent_max": 2.1, - "percent_min": 0, - "text": "Oak smoked sea salti yeast extract" - }, - { - "id": "en:flavouring", - "percent_estimate": 0.0172851562499998, - "percent_max": 2.1, - "percent_min": 0, - "text": "flavourings", - "vegan": "maybe", - "vegetarian": "maybe" - }, - { - "id": "en:spice", - "percent_estimate": 0.00864257812500036, - "percent_max": 2.1, - "percent_min": 0, - "text": "spices", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "has_sub_ingredients": "yes", - "id": "en:acid", - "percent_estimate": 0.00432128906250018, - "percent_max": 2.1, - "percent_min": 0, - "text": "acid" - }, - { - "has_sub_ingredients": "yes", - "id": "en:colour", - "percent_estimate": 0.00432128906249929, - "percent_max": 2.1, - "percent_min": 0, - "text": "colour" - }, - { - "id": "en:milk", - "percent_estimate": 2.15625, - "percent_max": 8.7, - "percent_min": 0, - "text": "milk", - "vegan": "no", - "vegetarian": "yes" - }, - { - "id": "en:e330", - "percent_estimate": 0.00432128906250018, - "percent_max": 2.1, - "percent_min": 0, - "text": "citric acid", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "id": "en:e160c", - "percent_estimate": 0.00432128906249929, - "percent_max": 2.1, - "percent_min": 0, - "text": "paprika extract", - "vegan": "yes", - "vegetarian": "yes" - } - ], - "ingredients_analysis": { - "en:non-vegan": [ - "en:whey-powder", - "en:milk" - ], - "en:palm-oil-content-unknown": [ - "en:oak-smoked-sea-salti-yeast-extract" - ], - "en:vegan-status-unknown": [ - "en:oak-smoked-sea-salti-yeast-extract" - ], - "en:vegetarian-status-unknown": [ - "en:oak-smoked-sea-salti-yeast-extract" - ] - }, - "ingredients_analysis_tags": [ - "en:palm-oil-free", - "en:non-vegan", - "en:vegetarian" - ], - "ingredients_debug": [ - "54% dried potatoes", - ",", - null, - null, - null, - " sunflower oil", - ",", - null, - null, - null, - " seasoning ", - "(", - "(", - null, - null, - "sugar", - ",", - null, - null, - null, - " whey powder ", - "[", - "[", - null, - null, - "milk]", - ",", - null, - null, - null, - " salt", - ",", - null, - null, - null, - " onion powder", - ",", - null, - null, - null, - " yeast powder", - ",", - null, - null, - null, - " garlic powder", - ",", - null, - null, - null, - " tomato powder", - ",", - null, - null, - null, - " Oak smoked sea salti yeast extract", - ",", - null, - null, - null, - " flavourings", - ",", - null, - null, - null, - " spices", - ",", - null, - null, - null, - " acid", - ":", - ":", - null, - null, - " citric acid", - ",", - null, - null, - null, - " colour", - ":", - ":", - null, - null, - " paprika extract)", - ",", - null, - null, - null, - " rice flour", - ",", - null, - null, - null, - " potato starch." - ], - "ingredients_from_or_that_may_be_from_palm_oil_n": 0, - "ingredients_from_palm_oil_n": 0, - "ingredients_from_palm_oil_tags": [], - "ingredients_hierarchy": [ - "en:potato", - "en:vegetable", - "en:root-vegetable", - "en:tuber", - "en:sunflower-oil", - "en:oil-and-fat", - "en:vegetable-oil-and-fat", - "en:vegetable-oil", - "en:coating", - "en:rice-flour", - "en:flour", - "en:rice", - "en:potato-starch", - "en:starch", - "en:sugar", - "en:added-sugar", - "en:disaccharide", - "en:whey-powder", - "en:dairy", - "en:whey", - "en:salt", - "en:onion", - "en:onion-family-vegetable", - "en:yeast-powder", - "en:yeast", - "en:garlic", - "en:tomato", - "en:fruit-vegetable", - "en:oak-smoked-sea-salti-yeast-extract", - "en:flavouring", - "en:spice", - "en:condiment", - "en:acid", - "en:colour", - "en:milk", - "en:e330", - "en:e160c" - ], - "ingredients_ids_debug": [ - "54-dried-potatoes", - "sunflower-oil", - "seasoning", - "sugar", - "whey-powder", - "milk", - "salt", - "onion-powder", - "yeast-powder", - "garlic-powder", - "tomato-powder", - "oak-smoked-sea-salti-yeast-extract", - "flavourings", - "spices", - "acid", - "citric-acid", - "colour", - "paprika-extract", - "rice-flour", - "potato-starch" - ], - "ingredients_n": 20, - "ingredients_n_tags": [ - "20", - "11-20" - ], - "ingredients_original_tags": [ - "en:potato", - "en:sunflower-oil", - "en:coating", - "en:rice-flour", - "en:potato-starch", - "en:sugar", - "en:whey-powder", - "en:salt", - "en:onion", - "en:yeast-powder", - "en:garlic", - "en:tomato", - "en:oak-smoked-sea-salti-yeast-extract", - "en:flavouring", - "en:spice", - "en:acid", - "en:colour", - "en:milk", - "en:e330", - "en:e160c" - ], - "ingredients_percent_analysis": 1, - "ingredients_tags": [ - "en:potato", - "en:vegetable", - "en:root-vegetable", - "en:tuber", - "en:sunflower-oil", - "en:oil-and-fat", - "en:vegetable-oil-and-fat", - "en:vegetable-oil", - "en:coating", - "en:rice-flour", - "en:flour", - "en:rice", - "en:potato-starch", - "en:starch", - "en:sugar", - "en:added-sugar", - "en:disaccharide", - "en:whey-powder", - "en:dairy", - "en:whey", - "en:salt", - "en:onion", - "en:onion-family-vegetable", - "en:yeast-powder", - "en:yeast", - "en:garlic", - "en:tomato", - "en:fruit-vegetable", - "en:oak-smoked-sea-salti-yeast-extract", - "en:flavouring", - "en:spice", - "en:condiment", - "en:acid", - "en:colour", - "en:milk", - "en:e330", - "en:e160c" - ], - "ingredients_text": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", - "ingredients_text_debug": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", - "ingredients_text_debug_tags": [], - "ingredients_text_en": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", - "ingredients_text_fr": "", - "ingredients_text_fr_debug_tags": [], - "ingredients_text_with_allergens": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", - "ingredients_text_with_allergens_en": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", - "ingredients_that_may_be_from_palm_oil_n": 0, - "ingredients_that_may_be_from_palm_oil_tags": [], - "ingredients_with_specified_percent_n": 1, - "ingredients_with_specified_percent_sum": 54, - "ingredients_with_unspecified_percent_n": 15, - "ingredients_with_unspecified_percent_sum": 46, - "ingredients_without_ciqual_codes": [ - "en:e160c", - "en:e330", - "en:flavouring", - "en:milk", - "en:oak-smoked-sea-salti-yeast-extract", - "en:potato-starch", - "en:spice", - "en:sugar", - "en:yeast-powder" - ], - "ingredients_without_ciqual_codes_n": 9, - "interface_version_created": "20120622", - "interface_version_modified": "20190830", - "known_ingredients_n": 36, - "labels": "Vegetarian, No preservatives, No artificial anything", - "labels_hierarchy": [ - "en:vegetarian", - "en:no-preservatives", - "en:No artificial anything" - ], - "labels_lc": "en", - "labels_old": "Vegetarian,No preservatives,No artificial anything", - "labels_tags": [ - "en:vegetarian", - "en:no-preservatives", - "en:no-artificial-anything" - ], - "lang": "en", - "languages": { - "en:english": 5 - }, - "languages_codes": { - "en": 5 - }, - "languages_hierarchy": [ - "en:english" - ], - "languages_tags": [ - "en:english", - "en:1" - ], - "last_edit_dates_tags": [ - "2023-03-24", - "2023-03", - "2023" - ], - "last_editor": "aleene", - "last_image_dates_tags": [ - "2022-06-24", - "2022-06", - "2022" - ], - "last_image_t": 1656075071, - "last_modified_by": "aleene", - "last_modified_t": 1679645675, - "lc": "en", - "link": "", - "main_countries_tags": [], - "manufacturing_places": "European Union", - "manufacturing_places_tags": [ - "european-union" - ], - "max_imgid": "9", - "minerals_prev_tags": [], - "minerals_tags": [], - "misc_tags": [ - "en:nutriscore-computed", - "en:nutrition-fruits-vegetables-nuts-from-category", - "en:nutrition-fruits-vegetables-nuts-from-category-en-potato-crisps-in-sunflower-oil", - "en:nutrition-fruits-vegetables-legumes-from-category", - "en:nutrition-fruits-vegetables-legumes-from-category-en-potato-crisps-in-sunflower-oil", - "en:nutriscore-2021-same-as-2023", - "en:nutriscore-2021-d-2023-d", - "en:packagings-number-of-components-2", - "en:packagings-not-complete", - "en:packagings-not-empty-but-not-complete", - "en:packagings-not-empty", - "en:ecoscore-extended-data-computed", - "en:ecoscore-extended-data-version-4", - "en:ecoscore-missing-data-warning", - "en:ecoscore-missing-data-labels", - "en:ecoscore-missing-data-origins", - "en:ecoscore-computed", - "en:ecoscore-changed" - ], - "no_nutrition_data": "", - "nova_group": 4, - "nova_group_debug": "", - "nova_groups": "4", - "nova_groups_markers": { - "3": [ - [ - "categories", - "en:salty-snacks" - ], - [ - "ingredients", - "en:salt" - ], - [ - "ingredients", - "en:starch" - ], - [ - "ingredients", - "en:sugar" - ], - [ - "ingredients", - "en:vegetable-oil" - ] - ], - "4": [ - [ - "additives", - "en:e160c" - ], - [ - "ingredients", - "en:colour" - ], - [ - "ingredients", - "en:flavouring" - ], - [ - "ingredients", - "en:whey" - ] - ] - }, - "nova_groups_tags": [ - "en:4-ultra-processed-food-and-drink-products" - ], - "nucleotides_prev_tags": [], - "nucleotides_tags": [], - "nutrient_levels": { - "fat": "moderate", - "salt": "high", - "saturated-fat": "low", - "sugars": "moderate" - }, - "nutrient_levels_tags": [ - "en:fat-in-moderate-quantity", - "en:saturated-fat-in-low-quantity", - "en:sugars-in-moderate-quantity", - "en:salt-in-high-quantity" - ], - "nutriments": { - "carbohydrates": 62, - "carbohydrates_100g": 62, - "carbohydrates_serving": 14.3, - "carbohydrates_unit": "g", - "carbohydrates_value": 62, - "carbon-footprint-from-known-ingredients_100g": 32.4, - "carbon-footprint-from-known-ingredients_product": 7.45, - "carbon-footprint-from-known-ingredients_serving": 7.45, - "energy": 1759, - "energy-kcal": 420, - "energy-kcal_100g": 420, - "energy-kcal_serving": 96.6, - "energy-kcal_unit": "kcal", - "energy-kcal_value": 420, - "energy-kcal_value_computed": 413.6, - "energy-kj": 1759, - "energy-kj_100g": 1759, - "energy-kj_serving": 405, - "energy-kj_unit": "kJ", - "energy-kj_value": 1759, - "energy-kj_value_computed": 1737.1, - "energy_100g": 1759, - "energy_serving": 405, - "energy_unit": "kJ", - "energy_value": 1759, - "fat": 15, - "fat_100g": 15, - "fat_serving": 3.45, - "fat_unit": "g", - "fat_value": 15, - "fiber": 3.9, - "fiber_100g": 3.9, - "fiber_serving": 0.897, - "fiber_unit": "g", - "fiber_value": 3.9, - "fruits-vegetables-legumes-estimate-from-ingredients_100g": 0, - "fruits-vegetables-legumes-estimate-from-ingredients_serving": 0, - "fruits-vegetables-nuts-estimate-from-ingredients_100g": 0, - "fruits-vegetables-nuts-estimate-from-ingredients_serving": 0, - "nova-group": 4, - "nova-group_100g": 4, - "nova-group_serving": 4, - "nutrition-score-fr": 12, - "nutrition-score-fr_100g": 12, - "proteins": 5.7, - "proteins_100g": 5.7, - "proteins_serving": 1.31, - "proteins_unit": "g", - "proteins_value": 5.7, - "salt": 2.1, - "salt_100g": 2.1, - "salt_serving": 0.483, - "salt_unit": "g", - "salt_value": 2.1, - "saturated-fat": 1.4, - "saturated-fat_100g": 1.4, - "saturated-fat_serving": 0.322, - "saturated-fat_unit": "g", - "saturated-fat_value": 1.4, - "sodium": 0.84, - "sodium_100g": 0.84, - "sodium_serving": 0.193, - "sodium_unit": "g", - "sodium_value": 0.84, - "sugars": 8.7, - "sugars_100g": 8.7, - "sugars_serving": 2, - "sugars_unit": "g", - "sugars_value": 8.7 - }, - "nutriscore": { - "2021": { - "category_available": 1, - "data": { - "energy": 1759, - "energy_points": 5, - "energy_value": 1759, - "fiber": 3.9, - "fiber_points": 4, - "fiber_value": 3.9, - "fruits_vegetables_nuts_colza_walnut_olive_oils": "0", - "fruits_vegetables_nuts_colza_walnut_olive_oils_points": 0, - "fruits_vegetables_nuts_colza_walnut_olive_oils_value": 0, - "is_beverage": 0, - "is_cheese": 0, - "is_fat": 0, - "is_water": 0, - "negative_points": 16, - "positive_points": 4, - "proteins": 5.7, - "proteins_points": 3, - "proteins_value": 5.7, - "saturated_fat": 1.4, - "saturated_fat_points": 1, - "saturated_fat_value": 1.4, - "sodium": 840, - "sodium_points": 9, - "sodium_value": 840, - "sugars": 8.7, - "sugars_points": 1, - "sugars_value": 8.7 - }, - "grade": "d", - "nutrients_available": 1, - "nutriscore_applicable": 1, - "nutriscore_computed": 1, - "score": 12 - }, - "2023": { - "category_available": 1, - "data": { - "count_proteins": 0, - "count_proteins_reason": "negative_points_more_than_11", - "energy": 1759, - "energy_points": 5, - "fiber": 3.9, - "fiber_points": 1, - "fruits_vegetables_legumes": 0, - "fruits_vegetables_legumes_points": 0, - "is_beverage": 0, - "is_cheese": 0, - "is_fat_oil_nuts_seeds": 0, - "is_red_meat_product": 0, - "is_water": 0, - "negative_nutrients": [ - "energy", - "sugars", - "saturated_fat", - "salt", - "non_nutritive_sweeteners" - ], - "negative_points": 18, - "positive_nutrients": [ - "fruits_vegetables_legumes", - "fiber" - ], - "positive_points": 1, - "proteins": 5.7, - "proteins_points": 2, - "salt": 2.1, - "salt_points": 10, - "saturated_fat": 1.4, - "saturated_fat_points": 1, - "sugars": 8.7, - "sugars_points": 2 - }, - "grade": "d", - "nutrients_available": 1, - "nutriscore_applicable": 1, - "nutriscore_computed": 1, - "score": 17 - } - }, - "nutriscore_2021_tags": [ - "d" - ], - "nutriscore_2023_tags": [ - "d" - ], - "nutriscore_data": { - "energy": 1759, - "energy_points": 5, - "energy_value": 1759, - "fiber": 3.9, - "fiber_points": 4, - "fiber_value": 3.9, - "fruits_vegetables_nuts_colza_walnut_olive_oils": "0", - "fruits_vegetables_nuts_colza_walnut_olive_oils_points": 0, - "fruits_vegetables_nuts_colza_walnut_olive_oils_value": 0, - "grade": "d", - "is_beverage": 0, - "is_cheese": 0, - "is_fat": 0, - "is_water": 0, - "negative_points": 16, - "positive_points": 4, - "proteins": 5.7, - "proteins_points": 3, - "proteins_value": 5.7, - "saturated_fat": 1.4, - "saturated_fat_points": 1, - "saturated_fat_value": 1.4, - "score": 12, - "sodium": 840, - "sodium_points": 9, - "sodium_value": 840, - "sugars": 8.7, - "sugars_points": 1, - "sugars_value": 8.7 - }, - "nutriscore_grade": "d", - "nutriscore_score": 12, - "nutriscore_score_opposite": -12, - "nutriscore_tags": [ - "d" - ], - "nutriscore_version": "2021", - "nutrition_data": "on", - "nutrition_data_per": "100g", - "nutrition_data_prepared": "", - "nutrition_data_prepared_per": "100g", - "nutrition_grade_fr": "d", - "nutrition_grades": "d", - "nutrition_grades_tags": [ - "d" - ], - "nutrition_score_beverage": 0, - "nutrition_score_debug": "", - "obsolete": "", - "obsolete_since_date": "", - "origin": "", - "origin_en": "", - "origins": "", - "origins_hierarchy": [], - "origins_lc": "en", - "origins_old": "", - "origins_tags": [], - "other_nutritional_substances_tags": [], - "packaging": "Plastic,Mixed plastic film-packet", - "packaging_hierarchy": [ - "en:plastic", - "en:Mixed plastic film-packet" - ], - "packaging_lc": "en", - "packaging_materials_tags": [ - "en:plastic" - ], - "packaging_old": "Plastic, Mixed plastic-packet", - "packaging_old_before_taxonomization": "Plastic, en:mixed plastic-packet", - "packaging_recycling_tags": [], - "packaging_shapes_tags": [ - "en:packet" - ], - "packaging_tags": [ - "en:plastic", - "en:mixed-plastic-film-packet" - ], - "packaging_text": "", - "packaging_text_en": "", - "packagings": [ - { - "material": "en:plastic", - "shape": "en:packet" - }, - { - "material": "en:plastic", - "shape": "en:packet" - } - ], - "packagings_complete": 0, - "packagings_materials": { - "all": {}, - "en:plastic": {} - }, - "packagings_n": 2, - "photographers_tags": [ - "kyzh", - "kiliweb" - ], - "pnns_groups_1": "Salty snacks", - "pnns_groups_1_tags": [ - "salty-snacks", - "known" - ], - "pnns_groups_2": "Appetizers", - "pnns_groups_2_tags": [ - "appetizers", - "known" - ], - "popularity_key": 21900000007, - "popularity_tags": [ - "bottom-25-percent-scans-2019", - "bottom-20-percent-scans-2019", - "bottom-15-percent-scans-2019", - "top-90-percent-scans-2019", - "top-10000-gb-scans-2019", - "top-50000-gb-scans-2019", - "top-100000-gb-scans-2019", - "top-country-gb-scans-2019", - "bottom-25-percent-scans-2020", - "top-80-percent-scans-2020", - "top-85-percent-scans-2020", - "top-90-percent-scans-2020", - "top-5000-gb-scans-2020", - "top-10000-gb-scans-2020", - "top-50000-gb-scans-2020", - "top-100000-gb-scans-2020", - "top-country-gb-scans-2020", - "top-100000-scans-2021", - "at-least-5-scans-2021", - "top-75-percent-scans-2021", - "top-80-percent-scans-2021", - "top-85-percent-scans-2021", - "top-90-percent-scans-2021", - "top-5000-gb-scans-2021", - "top-10000-gb-scans-2021", - "top-50000-gb-scans-2021", - "top-100000-gb-scans-2021", - "top-country-gb-scans-2021", - "at-least-5-gb-scans-2021", - "top-5000-ie-scans-2021", - "top-10000-ie-scans-2021", - "top-50000-ie-scans-2021", - "top-100000-ie-scans-2021", - "top-1000-mu-scans-2021", - "top-5000-mu-scans-2021", - "top-10000-mu-scans-2021", - "top-50000-mu-scans-2021", - "top-100000-mu-scans-2021", - "top-100000-scans-2022", - "top-75-percent-scans-2022", - "top-80-percent-scans-2022", - "top-85-percent-scans-2022", - "top-90-percent-scans-2022", - "top-5000-gb-scans-2022", - "top-10000-gb-scans-2022", - "top-50000-gb-scans-2022", - "top-100000-gb-scans-2022", - "top-country-gb-scans-2022", - "top-500-hk-scans-2022", - "top-1000-hk-scans-2022", - "top-5000-hk-scans-2022", - "top-10000-hk-scans-2022", - "top-50000-hk-scans-2022", - "top-100000-hk-scans-2022", - "top-10000-us-scans-2022", - "top-50000-us-scans-2022", - "top-100000-us-scans-2022" - ], - "product_name": "Barbeque Potato Chips", - "product_name_en": "Barbeque Potato Chips", - "product_name_fr": "", - "product_name_fr_debug_tags": [], - "product_quantity": "23", - "purchase_places": "", - "purchase_places_tags": [], - "quantity": "23 g", - "removed_countries_tags": [], - "rev": 33, - "scans_n": 6, - "selected_images": { - "front": { - "display": { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg" - }, - "small": { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg" - }, - "thumb": { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg" - } - }, - "ingredients": { - "display": { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg" - }, - "small": { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg" - }, - "thumb": { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg" - } - }, - "nutrition": { - "display": { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg" - }, - "small": { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg" - }, - "thumb": { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg" - } - } - }, - "serving_quantity": "23", - "serving_size": "23 g", - "sortkey": 1535456524, - "states": "en:to-be-completed, en:nutrition-facts-completed, en:ingredients-completed, en:expiration-date-completed, en:packaging-code-to-be-completed, en:characteristics-to-be-completed, en:origins-to-be-completed, en:categories-completed, en:brands-completed, en:packaging-completed, en:quantity-completed, en:product-name-completed, en:photos-to-be-validated, en:packaging-photo-to-be-selected, en:nutrition-photo-selected, en:ingredients-photo-selected, en:front-photo-selected, en:photos-uploaded", - "states_hierarchy": [ - "en:to-be-completed", - "en:nutrition-facts-completed", - "en:ingredients-completed", - "en:expiration-date-completed", - "en:packaging-code-to-be-completed", - "en:characteristics-to-be-completed", - "en:origins-to-be-completed", - "en:categories-completed", - "en:brands-completed", - "en:packaging-completed", - "en:quantity-completed", - "en:product-name-completed", - "en:photos-to-be-validated", - "en:packaging-photo-to-be-selected", - "en:nutrition-photo-selected", - "en:ingredients-photo-selected", - "en:front-photo-selected", - "en:photos-uploaded" - ], - "states_tags": [ - "en:to-be-completed", - "en:nutrition-facts-completed", - "en:ingredients-completed", - "en:expiration-date-completed", - "en:packaging-code-to-be-completed", - "en:characteristics-to-be-completed", - "en:origins-to-be-completed", - "en:categories-completed", - "en:brands-completed", - "en:packaging-completed", - "en:quantity-completed", - "en:product-name-completed", - "en:photos-to-be-validated", - "en:packaging-photo-to-be-selected", - "en:nutrition-photo-selected", - "en:ingredients-photo-selected", - "en:front-photo-selected", - "en:photos-uploaded" - ], - "stores": "", - "stores_tags": [], - "teams": "swipe-studio", - "teams_tags": [ - "swipe-studio" - ], - "traces": "", - "traces_from_ingredients": "", - "traces_from_user": "(en) ", - "traces_hierarchy": [], - "traces_lc": "en", - "traces_tags": [], - "unique_scans_n": 4, - "unknown_ingredients_n": 1, - "unknown_nutrients_tags": [], - "update_key": "eco20231129", - "vitamins_prev_tags": [], - "vitamins_tags": [], - "weighers_tags": [] - }, - "status": 1, - "status_verbose": "product found" -} diff --git a/test/experimental/region_countries.qsql b/test/experimental/region_countries.qsql deleted file mode 100644 index 583eabc..0000000 --- a/test/experimental/region_countries.qsql +++ /dev/null @@ -1,11 +0,0 @@ --- tests generateSelectJsonTopDown() - -regions - region_name - countries - country_name - - -view country_dv regions countries - -# settings = { "prefixpkwithtname" : true, "DV": true } diff --git a/test/experimental/region_countries.sql b/test/experimental/region_countries.sql deleted file mode 100644 index a3833cf..0000000 --- a/test/experimental/region_countries.sql +++ /dev/null @@ -1,61 +0,0 @@ -create table regions ( - region_id number generated by default on null as identity - constraint regions_region_id_pk primary key, - region_name varchar2(4000 char) -); - - -create table countries ( - country_id number generated by default on null as identity - constraint countries_country_id_pk primary key, - region_id number - constraint countries_region_id_fk - references regions, - country_name varchar2(4000 char) -); - --- table index -create index countries_i1 on countries (region_id); - - - - --- create views -create or replace json relational duality view COUNTRY_DV as -select JSON { - 'region_id' : regions.region_id, - 'region_name' : regions.region_name, - 'countries' : [ - select JSON { - 'country_id' : countries.country_id, - 'country_name' : countries.country_name - } from countries countries with (UPDATE) - where regions.region_id = countries.region_id - ] -} from regions REGIONS with (INSERT, UPDATE, DELETE); - - --- Generated by Quick SQL undefined 9/20/2023, 11:20:34 AM - -/* --- tests generateSelectJsonTopDown() - -regions - region_name - countries - country_name - - -view country_dv regions countries - - - - - - - - ---- Non-default options: -# settings = {"dv":true,"prefixpkwithtname":true} - -*/ diff --git a/test/regression_test.js b/test/regression_test.js index 0c4dfca..0ae1328 100755 --- a/test/regression_test.js +++ b/test/regression_test.js @@ -5,6 +5,7 @@ import fs from "fs"; import {fromJSON} from "../src/ddl.js"; import lexer from '../src/lexer.js' import errorMsgs from '../src/errorMsgs.js' +import {resetSeed} from '../src/sample.js' const mismatches = { "frc_patients_insurance_provider_fk": "frc_patients_insurance_prov_fk", @@ -87,6 +88,7 @@ function processFile( subdir, file ) { const text = fs.readFileSync(subdir+file+ext).toString(); let output = null; + resetSeed(); if( 0 < subdir.indexOf('/erd/') ) output = JSON.stringify(new quicksql(text).getERD(),null,3); else if( ext == '.json' ) @@ -113,7 +115,7 @@ function processFile( subdir, file ) { let sc= lexer( cmp, false, true, "" ); let i = 0; while (i < so.length && i < sc.length ) { - const strict = 0 < subdir.indexOf('/DV/'); + const strict = 0 < subdir.indexOf('/DV/') || 0 <= file.indexOf('donuts'); if( !compareTokens(so[i], sc[i], strict) ) { //var linec = Service.charPos2LineNo(cmp, sc[i].begin); //var linecOffset = Service.lineNo2CharPos(cmp, linec); diff --git a/test/single_test.js b/test/single_test.js index a71288a..4259a46 100644 --- a/test/single_test.js +++ b/test/single_test.js @@ -5,11 +5,10 @@ import json2qsql from "../src/json2qsql.js"; import fs from "fs"; try { - let file = '//experimental/events.json'; - file = '//bugs/35.qsql'; - file = '//DV/car_racing/2.qsql'; - file = '//apex/forrestclinic.quicksql'; - //file = '//experimental/donuts.json'; + let file = '//Bug35756025/1.qsql'; + //file = '//DV/car_racing/2.qsql'; + file = '//star/donuts.qsql'; + //file = '//experimental/donuts1.qsql'; let args = process.argv.slice(2); if( 0 < args.length ) file = args[0]; diff --git a/test/star/donuts.qsql b/test/star/donuts.qsql new file mode 100644 index 0000000..f7165ab --- /dev/null +++ b/test/star/donuts.qsql @@ -0,0 +1,13 @@ +donuts /insert 2 + id /pk + type + donut_batters /insert 5 + >batters /insert 3 + id /pk + type + donut_toppings /insert 7 + >toppings /insert 4 + id vc100 /pk + type + +#settings = { genpk: false, pk: none } diff --git a/test/star/donuts.sql b/test/star/donuts.sql new file mode 100644 index 0000000..724a689 --- /dev/null +++ b/test/star/donuts.sql @@ -0,0 +1,242 @@ +-- create tables + +create table toppings ( + id varchar2(100 char) not null + constraint toppings_id_pk primary key, + type varchar2(4000 char) +); + + +create table batters ( + id number not null + constraint batters_id_pk primary key, + type varchar2(4000 char) +); + + +create table donuts ( + id number not null + constraint donuts_id_pk primary key, + type varchar2(4000 char) +); + + +create table donut_batters ( + batters_id number + constraint donut_batters_batters_id_fk + references batters, + donut_id number + constraint donut_batters_donut_id_fk + references donuts +); + +-- table index +create index donut_batters_i1 on donut_batters (batters_id); + +create index donut_batters_i2 on donut_batters (donut_id); + + +create table donut_toppings ( + toppings_id varchar2(100 char) + constraint donut_toppings_toppings_id_fk + references toppings, + donut_id number + constraint donut_toppings_donut_id_fk + references donuts +); + +-- table index +create index donut_toppings_i1 on donut_toppings (toppings_id); + +create index donut_toppings_i2 on donut_toppings (donut_id); + + + +-- load data + +insert into toppings ( + id, + type +) values ( + 1, + 'N/A' +); +insert into toppings ( + id, + type +) values ( + 2, + 'N/A' +); +insert into toppings ( + id, + type +) values ( + 3, + 'N/A' +); +insert into toppings ( + id, + type +) values ( + 4, + 'N/A' +); + +commit; + +insert into batters ( + id, + type +) values ( + 1, + 'N/A' +); +insert into batters ( + id, + type +) values ( + 2, + 'N/A' +); +insert into batters ( + id, + type +) values ( + 3, + 'N/A' +); + +commit; + +insert into donuts ( + id, + type +) values ( + 1, + 'N/A' +); +insert into donuts ( + id, + type +) values ( + 2, + 'N/A' +); + +commit; + +insert into donut_batters ( + batters_id, + donut_id +) values ( + 2, + 2 +); +insert into donut_batters ( + batters_id, + donut_id +) values ( + 1, + 2 +); +insert into donut_batters ( + batters_id, + donut_id +) values ( + 2, + 2 +); +insert into donut_batters ( + batters_id, + donut_id +) values ( + 1, + 2 +); +insert into donut_batters ( + batters_id, + donut_id +) values ( + 3, + 1 +); + +commit; + +insert into donut_toppings ( + toppings_id, + donut_id +) values ( + 4, + 2 +); +insert into donut_toppings ( + toppings_id, + donut_id +) values ( + 2, + 2 +); +insert into donut_toppings ( + toppings_id, + donut_id +) values ( + 3, + 1 +); +insert into donut_toppings ( + toppings_id, + donut_id +) values ( + 2, + 2 +); +insert into donut_toppings ( + toppings_id, + donut_id +) values ( + 1, + 1 +); +insert into donut_toppings ( + toppings_id, + donut_id +) values ( + 3, + 2 +); +insert into donut_toppings ( + toppings_id, + donut_id +) values ( + 2, + 2 +); + +commit; + + +-- Generated by Quick SQL development 1/5/2024, 1:51:48 PM + +/* +donuts /insert 2 + id vc100 /pk + type + donut_batters /insert 5 + >batters /insert 3 + id /pk + type + donut_toppings /insert 7 + >toppings /insert 4 + id /pk + type + + + + + + Non-default options: +# settings = {"genpk":false,"pk":"none"} + +*/ \ No newline at end of file From 97c1a9caedf8b4d7b038b2d300f40a6a71a4eda0 Mon Sep 17 00:00:00 2001 From: Vadim Tropashko Date: Tue, 16 Jan 2024 18:21:33 -0800 Subject: [PATCH 08/22] reimplemented json2qsql --- dist/quick-sql.js | 1845 ++++++++++--------- dist/quick-sql.umd.cjs | 250 +-- src/ddl.js | 7 +- src/json2qsql.js | 270 ++- src/sample.js | 2 + src/tree.js | 87 +- test/{experimental => JSON}/donuts.json | 0 test/JSON/donuts.qsql | 319 ++++ test/JSON/donuts.sql | 681 +++++++ test/{DV => experimental}/car_racing/1.json | 0 test/{DV => experimental}/car_racing/1.qsql | 0 test/{DV => experimental}/car_racing/1.sql | 0 test/{DV => experimental}/car_racing/2.json | 0 test/{DV => experimental}/car_racing/2.qsql | 0 test/{DV => experimental}/car_racing/2.sql | 0 test/experimental/donuts.qsql | 151 -- test/regression_test.js | 2 +- test/single_test.js | 15 +- test/star/donuts.sql | 32 +- 19 files changed, 2345 insertions(+), 1316 deletions(-) rename test/{experimental => JSON}/donuts.json (100%) create mode 100644 test/JSON/donuts.qsql create mode 100644 test/JSON/donuts.sql rename test/{DV => experimental}/car_racing/1.json (100%) rename test/{DV => experimental}/car_racing/1.qsql (100%) rename test/{DV => experimental}/car_racing/1.sql (100%) rename test/{DV => experimental}/car_racing/2.json (100%) rename test/{DV => experimental}/car_racing/2.qsql (100%) rename test/{DV => experimental}/car_racing/2.sql (100%) delete mode 100644 test/experimental/donuts.qsql diff --git a/dist/quick-sql.js b/dist/quick-sql.js index f6f26b9..ab6df15 100644 --- a/dist/quick-sql.js +++ b/dist/quick-sql.js @@ -1,26 +1,26 @@ -function z(d) { +function _(d) { return d == null ? d : d.toUpperCase().endsWith("IES") ? d.substring(0, d.length - 3) + "y" : d.toUpperCase().endsWith("ES") || d.toUpperCase().endsWith("S") ? d.substring(0, d.length - 1) : d; } function fe(d, h) { - let E = '"'; + let k = '"'; if (d == null) return null; - let L = !1; - const T = "$#_ "; - if (!d.startsWith(E) && !L) { + let N = !1; + const I = "$#_ "; + if (!d.startsWith(k) && !N) { const D = d; if (D.length > 0 && "0" <= D[0] && D[0] <= "9") - L = !0; + N = !0; else - for (let f in D) { - const p = D[f]; - if (T.indexOf(p) < 0 && (p < "0" || "9" < p && p < "A" || "Z" < p && p < "a" || "z" < p)) { - L = !0; + for (let m in D) { + const b = D[m]; + if (I.indexOf(b) < 0 && (b < "0" || "9" < b && b < "A" || "Z" < b && b < "a" || "z" < b)) { + N = !0; break; } } } - return (d.startsWith("_") || d.startsWith("$") || d.startsWith("#")) && (L = !0), L || (E = ""), E + d + E; + return (d.startsWith("_") || d.startsWith("$") || d.startsWith("#")) && (N = !0), N || (k = ""), k + d + k; } function he(d) { if (d == null) @@ -30,11 +30,11 @@ function he(d) { let h = fe(d); return h.indexOf('"') == 0 || (h = h.replace(/ /g, "_")), h; } -function K(d, h, E) { - let L = !1; - E == null && (E = ""), d.indexOf('"') == 0 && (L = !0, d = d.substring(1, d.length - 1)), h.indexOf('"') == 0 && (L = !0, h = h.substring(1, h.length - 1)), E.indexOf('"') == 0 && (L = !0, E = E.substring(1, E.length - 1)); - let T = d + h + E; - return L ? T = '"' + T + '"' : T = T.toLowerCase(), T; +function K(d, h, k) { + let N = !1; + k == null && (k = ""), d.indexOf('"') == 0 && (N = !0, d = d.substring(1, d.length - 1)), h.indexOf('"') == 0 && (N = !0, h = h.substring(1, h.length - 1)), k.indexOf('"') == 0 && (N = !0, k = k.substring(1, k.length - 1)); + let I = d + h + k; + return N ? I = '"' + I + '"' : I = I.toLowerCase(), I; } var le = function() { var d = [ @@ -62,7 +62,7 @@ var le = function() { "\u300C\u30A2\u30CA\u30EA\u30B9\u30C8\u300D", "\u300C\u30B9\u30DA\u30B7\u30E3\u30EA\u30B9\u30C8\u300D", "\u300C\u30A8\u30D0\u30F3\u30B8\u30A7\u30EA\u30B9\u30C8\u300D" - ], E = [ + ], k = [ "\uC601\uC5C5", "\uAE08\uC735", "\uBC30\uC1A1", @@ -76,18 +76,18 @@ var le = function() { "\uC804\uB3C4\uC790", "\uD310\uB9E4\uC6D0" ]; - function L(T, D) { - if (typeof D != "string" || T.substring(0, 2).toLowerCase() == "en") + function N(I, D) { + if (typeof D != "string" || I.substring(0, 2).toLowerCase() == "en") return D; D.indexOf("'") == 0 && (D = D.substring(1, D.length - 1)); - for (var f = -1, p = 0; p < d.length; p++) - if (d[p] == D) { - f = p; + for (var m = -1, b = 0; b < d.length; b++) + if (d[b] == D) { + m = b; break; } - return 0 <= f && T.substring(0, 2).toLowerCase() == "jp" && f < h.length ? "'" + h[f] + "'" : 0 <= f && T.substring(0, 2).toLowerCase() == "kr" && f < E.length ? "'" + E[f] + "'" : D; + return 0 <= m && I.substring(0, 2).toLowerCase() == "jp" && m < h.length ? "'" + h[m] + "'" : 0 <= m && I.substring(0, 2).toLowerCase() == "kr" && m < k.length ? "'" + k[m] + "'" : D; } - return L; + return N; }(); function be(d) { return d && d.__esModule && Object.prototype.hasOwnProperty.call(d, "default") ? d.default : d; @@ -95,12 +95,12 @@ function be(d) { var re = { exports: {} }; (function(d, h) { (function() { - var E = 9007199254740992, L = -E, T = "0123456789", D = "abcdefghijklmnopqrstuvwxyz", f = D.toUpperCase(), p = T + "abcdef"; - function y(e) { + var k = 9007199254740992, N = -k, I = "0123456789", D = "abcdefghijklmnopqrstuvwxyz", m = D.toUpperCase(), b = I + "abcdef"; + function v(e) { this.name = "UnsupportedError", this.message = e || "This feature is not supported on this platform"; } - y.prototype = new Error(), y.prototype.constructor = y; - var I = Array.prototype.slice; + v.prototype = new Error(), v.prototype.constructor = v; + var M = Array.prototype.slice; function r(e) { if (!(this instanceof r)) return e || (e = null), e === null ? new r() : new r(e); @@ -166,13 +166,13 @@ var re = { exports: {} }; }, r.prototype.character = function(e) { e = s(e); var a = "!@#$%^&*()[]", n, c; - return e.casing === "lower" ? n = D : e.casing === "upper" ? n = f : n = D + f, e.pool ? c = e.pool : (c = "", e.alpha && (c += n), e.numeric && (c += T), e.symbols && (c += a), c || (c = n + T + a)), c.charAt(this.natural({ max: c.length - 1 })); + return e.casing === "lower" ? n = D : e.casing === "upper" ? n = m : n = D + m, e.pool ? c = e.pool : (c = "", e.alpha && (c += n), e.numeric && (c += I), e.symbols && (c += a), c || (c = n + I + a)), c.charAt(this.natural({ max: c.length - 1 })); }, r.prototype.floating = function(e) { e = s(e, { fixed: 4 }), t( e.fixed && e.precision, "Chance: Cannot specify both fixed and precision." ); - var a, n = Math.pow(10, e.fixed), c = E / n, u = -c; + var a, n = Math.pow(10, e.fixed), c = k / n, u = -c; t( e.min && e.fixed && e.min < u, "Chance: Min specified is out of range with fixed. Min should be, at least, " + u @@ -183,9 +183,9 @@ var re = { exports: {} }; var g = (a / n).toFixed(e.fixed); return parseFloat(g); }, r.prototype.integer = function(e) { - return e = s(e, { min: L, max: E }), t(e.min > e.max, "Chance: Min cannot be greater than Max."), Math.floor(this.random() * (e.max - e.min + 1) + e.min); + return e = s(e, { min: N, max: k }), t(e.min > e.max, "Chance: Min cannot be greater than Max."), Math.floor(this.random() * (e.max - e.min + 1) + e.min); }, r.prototype.natural = function(e) { - if (e = s(e, { min: 0, max: E }), typeof e.numerals == "number" && (t(e.numerals < 1, "Chance: Numerals cannot be less than one."), e.min = Math.pow(10, e.numerals - 1), e.max = Math.pow(10, e.numerals) - 1), t(e.min < 0, "Chance: Min cannot be less than zero."), e.exclude) { + if (e = s(e, { min: 0, max: k }), typeof e.numerals == "number" && (t(e.numerals < 1, "Chance: Numerals cannot be less than one."), e.min = Math.pow(10, e.numerals - 1), e.max = Math.pow(10, e.numerals) - 1), t(e.min < 0, "Chance: Min cannot be less than zero."), e.exclude) { t(!Array.isArray(e.exclude), "Chance: exclude must be an array."); for (var a in e.exclude) t(!Number.isInteger(e.exclude[a]), "Chance: exclude must be numbers."); @@ -200,11 +200,11 @@ var re = { exports: {} }; return this.integer(e); }, r.prototype.prime = function(e) { e = s(e, { min: 0, max: 1e4 }), t(e.min < 0, "Chance: Min cannot be less than zero."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); - var a = N.primes[N.primes.length - 1]; + var a = E.primes[E.primes.length - 1]; if (e.max > a) for (var n = a + 2; n <= e.max; ++n) - this.is_prime(n) && N.primes.push(n); - var c = N.primes.filter(function(u) { + this.is_prime(n) && E.primes.push(n); + var c = E.primes.filter(function(u) { return u >= e.min && u <= e.max; }); return this.pick(c); @@ -220,7 +220,7 @@ var re = { exports: {} }; return !1; return !0; }, r.prototype.hex = function(e) { - e = s(e, { min: 0, max: E, casing: "lower" }), t(e.min < 0, "Chance: Min cannot be less than zero."); + e = s(e, { min: 0, max: k, casing: "lower" }), t(e.min < 0, "Chance: Min cannot be less than zero."); var a = this.natural({ min: e.min, max: e.max }); return e.casing === "upper" ? a.toString(16).toUpperCase() : a.toString(16); }, r.prototype.letter = function(e) { @@ -240,26 +240,26 @@ var re = { exports: {} }; return this.c; } }; - function m(e) { + function f(e) { this.c = e; } - m.prototype = { + f.prototype = { substitute: function() { if (!/[{}\\]/.test(this.c)) throw new Error('Invalid escape sequence: "\\' + this.c + '".'); return this.c; } }; - function S(e) { + function y(e) { this.c = e; } - S.prototype = { + y.prototype = { replacers: { "#": function(e) { - return e.character({ pool: T }); + return e.character({ pool: I }); }, A: function(e) { - return e.character({ pool: f }); + return e.character({ pool: m }); }, a: function(e) { return e.character({ pool: D }); @@ -272,18 +272,18 @@ var re = { exports: {} }; return a(e); } }; - function B(e) { + function P(e) { for (var a = [], n = "identity", c = 0; c < e.length; c++) { var u = e[c]; switch (n) { case "escape": - a.push(new m(u)), n = "identity"; + a.push(new f(u)), n = "identity"; break; case "identity": u === "{" ? n = "replace" : u === "\\" ? n = "escape" : a.push(new l(u)); break; case "replace": - u === "}" ? n = "identity" : a.push(new S(u)); + u === "}" ? n = "identity" : a.push(new y(u)); break; } } @@ -293,12 +293,12 @@ var re = { exports: {} }; if (!e) throw new Error("Template string is required"); var a = this; - return B(e).map(function(n) { + return P(e).map(function(n) { return n.substitute(a); }).join(""); }, r.prototype.buffer = function(e) { if (typeof Buffer > "u") - throw new y("Sorry, the buffer() function is not supported on your platform"); + throw new v("Sorry, the buffer() function is not supported on your platform"); e = s(e, { length: this.natural({ min: 5, max: 20 }) }), t(e.length < 0, "Chance: Length cannot be less than zero."); var a = e.length, n = this.n(this.character, a, e); return Buffer.from(n); @@ -313,13 +313,13 @@ var re = { exports: {} }; typeof e != "function", "Chance: The first argument must be a function." ); - var c = function(A, H) { - return A.indexOf(H) !== -1; + var c = function(S, O) { + return S.indexOf(O) !== -1; }; n && (c = n.comparator || c); - for (var u = [], g = 0, P, b = a * 50, v = I.call(arguments, 2); u.length < a; ) { - var C = JSON.parse(JSON.stringify(v)); - if (P = e.apply(this, C), c(u, P) || (u.push(P), g = 0), ++g > b) + for (var u = [], g = 0, B, p = a * 50, A = M.call(arguments, 2); u.length < a; ) { + var C = JSON.parse(JSON.stringify(A)); + if (B = e.apply(this, C), c(u, B) || (u.push(B), g = 0), ++g > p) throw new RangeError("Chance: num is likely too large for sample set"); } return u; @@ -328,7 +328,7 @@ var re = { exports: {} }; typeof e != "function", "Chance: The first argument must be a function." ), typeof a > "u" && (a = 1); - var n = a, c = [], u = I.call(arguments, 2); + var n = a, c = [], u = M.call(arguments, 2); for (n = Math.max(0, n), null; n--; null) c.push(e.apply(this, u)); return c; @@ -357,8 +357,8 @@ var re = { exports: {} }; return n[u] = n[c], g; }, Math.min(c, a)); }, r.prototype.shuffle = function(e) { - for (var a = [], n = 0, c = Number(e.length), u = i(c), g = c - 1, P, b = 0; b < c; b++) - P = this.natural({ max: g }), n = u[P], a[b] = e[n], u[P] = u[g], g -= 1; + for (var a = [], n = 0, c = Number(e.length), u = i(c), g = c - 1, B, p = 0; p < c; p++) + B = this.natural({ max: g }), n = u[B], a[p] = e[n], u[B] = u[g], g -= 1; return a; }, r.prototype.weighted = function(e, a, n) { if (e.length !== a.length) @@ -370,19 +370,19 @@ var re = { exports: {} }; } if (c === 0) throw new RangeError("Chance: No valid entries in array weights"); - var P = this.random() * c, b = 0, v = -1, C; + var B = this.random() * c, p = 0, A = -1, C; for (g = 0; g < a.length; ++g) { - if (u = a[g], b += u, u > 0) { - if (P <= b) { + if (u = a[g], p += u, u > 0) { + if (B <= p) { C = g; break; } - v = g; + A = g; } - g === a.length - 1 && (C = v); + g === a.length - 1 && (C = A); } - var A = e[C]; - return n = typeof n > "u" ? !1 : n, n && (e.splice(C, 1), a.splice(C, 1)), A; + var S = e[C]; + return n = typeof n > "u" ? !1 : n, n && (e.splice(C, 1), a.splice(C, 1)), S; }, r.prototype.paragraph = function(e) { e = s(e); var a = e.sentences || this.natural({ min: 3, max: 7 }), n = this.n(this.sentence, a), c = e.linebreak === !0 ? ` @@ -394,8 +394,8 @@ var re = { exports: {} }; return c = u.join(" "), c = this.capitalize(c), n !== !1 && !/^[.?;!:]$/.test(n) && (n = "."), n && (c += n), c; }, r.prototype.syllable = function(e) { e = s(e); - for (var a = e.length || this.natural({ min: 2, max: 3 }), n = "bcdfghjklmnprstvwz", c = "aeiou", u = n + c, g = "", P, b = 0; b < a; b++) - b === 0 ? P = this.character({ pool: u }) : n.indexOf(P) === -1 ? P = this.character({ pool: n }) : P = this.character({ pool: c }), g += P; + for (var a = e.length || this.natural({ min: 2, max: 3 }), n = "bcdfghjklmnprstvwz", c = "aeiou", u = n + c, g = "", B, p = 0; p < a; p++) + p === 0 ? B = this.character({ pool: u }) : n.indexOf(B) === -1 ? B = this.character({ pool: n }) : B = this.character({ pool: c }), g += B; return e.capitalize && (g = this.capitalize(g)), g; }, r.prototype.word = function(e) { e = s(e), t( @@ -446,9 +446,9 @@ var re = { exports: {} }; }); } else if (e && (e.minAge !== void 0 || e.maxAge !== void 0)) { t(e.minAge < 0, "Chance: MinAge cannot be less than zero."), t(e.minAge > e.maxAge, "Chance: MinAge cannot be greater than MaxAge."); - var P = e.minAge !== void 0 ? e.minAge : 0, b = e.maxAge !== void 0 ? e.maxAge : 100, v = new Date(c - b - 1, n.getMonth(), n.getDate()), C = new Date(c - P, n.getMonth(), n.getDate()); - v.setDate(v.getDate() + 1), C.setDate(C.getDate() + 1), C.setMilliseconds(C.getMilliseconds() - 1), e = s(e, { - min: v, + var B = e.minAge !== void 0 ? e.minAge : 0, p = e.maxAge !== void 0 ? e.maxAge : 100, A = new Date(c - p - 1, n.getMonth(), n.getDate()), C = new Date(c - B, n.getMonth(), n.getDate()); + A.setDate(A.getDate() + 1), C.setDate(C.getDate() + 1), C.setMilliseconds(C.getMilliseconds() - 1), e = s(e, { + min: A, max: C }); } else @@ -500,15 +500,15 @@ var re = { exports: {} }; return e = e + (10 - parseInt(a.toString().slice(-1))).toString().slice(-1), e; }, r.prototype.mrz = function(e) { var a = function(u) { - var g = " 3 && (H ? O = O.substr(0, 3) : O = O[0] + O.substr(2, 2)), O.length < 3 && (W = O, O = A.toUpperCase().split("").map(function(J) { + }).join(""), G.length > 3 && (O ? G = G.substr(0, 3) : G = G[0] + G.substr(2, 2)), G.length < 3 && (z = G, G = S.toUpperCase().split("").map(function(J) { return "AEIOU".indexOf(J) !== -1 ? J : void 0; - }).join("").substr(0, 3 - W.length)), W = W + O), W; - }, v = function(A, H, O) { - var W = ["A", "B", "C", "D", "E", "H", "L", "M", "P", "R", "S", "T"]; - return A.getFullYear().toString().substr(2) + W[A.getMonth()] + O.pad(A.getDate() + (H.toLowerCase() === "female" ? 40 : 0), 2); - }, C = function(A) { - for (var H = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ", O = "ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ", W = "ABCDEFGHIJKLMNOPQRSTUVWXYZ", J = "BAKPLCQDREVOSFTGUHMINJWZYX", V = 0, U = 0; U < 15; U++) - U % 2 !== 0 ? V += W.indexOf(O[H.indexOf(A[U])]) : V += J.indexOf(O[H.indexOf(A[U])]); - return W[V % 26]; + }).join("").substr(0, 3 - z.length)), z = z + G), z; + }, A = function(S, O, G) { + var z = ["A", "B", "C", "D", "E", "H", "L", "M", "P", "R", "S", "T"]; + return S.getFullYear().toString().substr(2) + z[S.getMonth()] + G.pad(S.getDate() + (O.toLowerCase() === "female" ? 40 : 0), 2); + }, C = function(S) { + for (var O = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ", G = "ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ", z = "ABCDEFGHIJKLMNOPQRSTUVWXYZ", J = "BAKPLCQDREVOSFTGUHMINJWZYX", V = 0, U = 0; U < 15; U++) + U % 2 !== 0 ? V += z.indexOf(G[O.indexOf(S[U])]) : V += J.indexOf(G[O.indexOf(S[U])]); + return z[V % 26]; }; - return P = P.concat(b(c, !0), b(n), v(u, a, this), g.toUpperCase().split("")).join(""), P += C(P.toUpperCase()), P.toUpperCase(); + return B = B.concat(p(c, !0), p(n), A(u, a, this), g.toUpperCase().split("")).join(""), B += C(B.toUpperCase()), B.toUpperCase(); }, r.prototype.pl_pesel = function() { for (var e = this.natural({ min: 1, max: 9999999999 }), a = this.pad(e, 10).split(""), n = 0; n < a.length; n++) a[n] = parseInt(a[n]); @@ -1137,20 +1137,20 @@ var re = { exports: {} }; }, r.prototype.coin = function() { return this.bool() ? "heads" : "tails"; }; - function M(e) { + function T(e) { return function() { return this.natural(e); }; } - r.prototype.d4 = M({ min: 1, max: 4 }), r.prototype.d6 = M({ min: 1, max: 6 }), r.prototype.d8 = M({ min: 1, max: 8 }), r.prototype.d10 = M({ min: 1, max: 10 }), r.prototype.d12 = M({ min: 1, max: 12 }), r.prototype.d20 = M({ min: 1, max: 20 }), r.prototype.d30 = M({ min: 1, max: 30 }), r.prototype.d100 = M({ min: 1, max: 100 }), r.prototype.rpg = function(e, a) { + r.prototype.d4 = T({ min: 1, max: 4 }), r.prototype.d6 = T({ min: 1, max: 6 }), r.prototype.d8 = T({ min: 1, max: 8 }), r.prototype.d10 = T({ min: 1, max: 10 }), r.prototype.d12 = T({ min: 1, max: 12 }), r.prototype.d20 = T({ min: 1, max: 20 }), r.prototype.d30 = T({ min: 1, max: 30 }), r.prototype.d100 = T({ min: 1, max: 100 }), r.prototype.rpg = function(e, a) { if (a = s(a), e) { var n = e.toLowerCase().split("d"), c = []; if (n.length !== 2 || !parseInt(n[0], 10) || !parseInt(n[1], 10)) throw new Error("Chance: Invalid format provided. Please provide #d# where the first # is the number of dice to roll, the second # is the max of each die"); for (var u = n[0]; u > 0; u--) c[u - 1] = this.natural({ min: 1, max: n[1] }); - return typeof a.sum < "u" && a.sum ? c.reduce(function(g, P) { - return g + P; + return typeof a.sum < "u" && a.sum ? c.reduce(function(g, B) { + return g + B; }) : c; } else throw new RangeError("Chance: A type of die roll must be included"); @@ -1162,7 +1162,7 @@ var re = { exports: {} }; return c; }, r.prototype.hash = function(e) { e = s(e, { length: 40, casing: "lower" }); - var a = e.casing === "upper" ? p.toUpperCase() : p; + var a = e.casing === "upper" ? b.toUpperCase() : b; return this.string({ pool: a, length: e.length }); }, r.prototype.luhn_check = function(e) { var a = e.toString(), n = +a.substring(a.length - 1); @@ -1194,15 +1194,15 @@ var re = { exports: {} }; if (Array.isArray(a.extensions)) return g = this.pickone(a.extensions), u + "." + g; if (a.extensions.constructor === Object) { - var P = a.extensions, b = Object.keys(P); - return g = this.pickone(P[this.pickone(b)]), u + "." + g; + var B = a.extensions, p = Object.keys(B); + return g = this.pickone(B[this.pickone(p)]), u + "." + g; } throw new Error("Chance: Extensions must be an Array or Object"); } if (a.fileType) { - var v = a.fileType; - if (c.indexOf(v) !== -1) - return g = this.pickone(this.get(n)[v]), u + "." + g; + var A = a.fileType; + if (c.indexOf(A) !== -1) + return g = this.pickone(this.get(n)[A]), u + "." + g; throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'"); } return g = this.pickone(this.get(n)[this.pickone(c)]), u + "." + g; @@ -1216,7 +1216,7 @@ var re = { exports: {} }; }; return c; }; - var N = { + var E = { firstNames: { male: { en: ["James", "John", "Robert", "Michael", "William", "David", "Richard", "Joseph", "Charles", "Thomas", "Christopher", "Daniel", "Matthew", "George", "Donald", "Anthony", "Paul", "Mark", "Edward", "Steven", "Kenneth", "Andrew", "Brian", "Joshua", "Kevin", "Ronald", "Timothy", "Jason", "Jeffrey", "Frank", "Gary", "Ryan", "Nicholas", "Eric", "Stephen", "Jacob", "Larry", "Jonathan", "Scott", "Raymond", "Justin", "Brandon", "Gregory", "Samuel", "Benjamin", "Patrick", "Jack", "Henry", "Walter", "Dennis", "Jerry", "Alexander", "Peter", "Tyler", "Douglas", "Harold", "Aaron", "Jose", "Adam", "Arthur", "Zachary", "Carl", "Nathan", "Albert", "Kyle", "Lawrence", "Joe", "Willie", "Gerald", "Roger", "Keith", "Jeremy", "Terry", "Harry", "Ralph", "Sean", "Jesse", "Roy", "Louis", "Billy", "Austin", "Bruce", "Eugene", "Christian", "Bryan", "Wayne", "Russell", "Howard", "Fred", "Ethan", "Jordan", "Philip", "Alan", "Juan", "Randy", "Vincent", "Bobby", "Dylan", "Johnny", "Phillip", "Victor", "Clarence", "Ernest", "Martin", "Craig", "Stanley", "Shawn", "Travis", "Bradley", "Leonard", "Earl", "Gabriel", "Jimmy", "Francis", "Todd", "Noah", "Danny", "Dale", "Cody", "Carlos", "Allen", "Frederick", "Logan", "Curtis", "Alex", "Joel", "Luis", "Norman", "Marvin", "Glenn", "Tony", "Nathaniel", "Rodney", "Melvin", "Alfred", "Steve", "Cameron", "Chad", "Edwin", "Caleb", "Evan", "Antonio", "Lee", "Herbert", "Jeffery", "Isaac", "Derek", "Ricky", "Marcus", "Theodore", "Elijah", "Luke", "Jesus", "Eddie", "Troy", "Mike", "Dustin", "Ray", "Adrian", "Bernard", "Leroy", "Angel", "Randall", "Wesley", "Ian", "Jared", "Mason", "Hunter", "Calvin", "Oscar", "Clifford", "Jay", "Shane", "Ronnie", "Barry", "Lucas", "Corey", "Manuel", "Leo", "Tommy", "Warren", "Jackson", "Isaiah", "Connor", "Don", "Dean", "Jon", "Julian", "Miguel", "Bill", "Lloyd", "Charlie", "Mitchell", "Leon", "Jerome", "Darrell", "Jeremiah", "Alvin", "Brett", "Seth", "Floyd", "Jim", "Blake", "Micheal", "Gordon", "Trevor", "Lewis", "Erik", "Edgar", "Vernon", "Devin", "Gavin", "Jayden", "Chris", "Clyde", "Tom", "Derrick", "Mario", "Brent", "Marc", "Herman", "Chase", "Dominic", "Ricardo", "Franklin", "Maurice", "Max", "Aiden", "Owen", "Lester", "Gilbert", "Elmer", "Gene", "Francisco", "Glen", "Cory", "Garrett", "Clayton", "Sam", "Jorge", "Chester", "Alejandro", "Jeff", "Harvey", "Milton", "Cole", "Ivan", "Andre", "Duane", "Landon"], @@ -7027,26 +7027,26 @@ var re = { exports: {} }; "sadness", "fear" ] - }, k = Object.prototype.hasOwnProperty, x = Object.keys || function(e) { + }, L = Object.prototype.hasOwnProperty, x = Object.keys || function(e) { var a = []; for (var n in e) - k.call(e, n) && a.push(n); + L.call(e, n) && a.push(n); return a; }; function w(e, a) { for (var n = x(e), c, u = 0, g = n.length; u < g; u++) c = n[u], a[c] = e[c] || a[c]; } - function R(e, a) { + function H(e, a) { for (var n = 0, c = e.length; n < c; n++) a[n] = e[n]; } - function _(e, a) { + function F(e, a) { var n = Array.isArray(e), c = a || (n ? new Array(e.length) : {}); - return n ? R(e, c) : w(e, c), c; + return n ? H(e, c) : w(e, c), c; } r.prototype.get = function(e) { - return _(N[e]); + return F(E[e]); }, r.prototype.mac_address = function(e) { e = s(e), e.separator || (e.separator = e.networkVersion ? "." : ":"); var a = "ABCDEF1234567890", n = ""; @@ -7063,11 +7063,11 @@ var re = { exports: {} }; "Chance: Standard deviation (dev) must be a number" ), e.pool.length > 0) return this.normal_pool(e); - var a, n, c, u, g = e.mean, P = e.dev; + var a, n, c, u, g = e.mean, B = e.dev; do n = this.random() * 2 - 1, c = this.random() * 2 - 1, a = n * n + c * c; while (a >= 1); - return u = n * Math.sqrt(-2 * Math.log(a) / a), P * u + g; + return u = n * Math.sqrt(-2 * Math.log(a) / a), B * u + g; }, r.prototype.normal_pool = function(e) { var a = 0; do { @@ -7095,7 +7095,7 @@ var re = { exports: {} }; } return a + this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }); }, r.prototype.set = function(e, a) { - typeof e == "string" ? N[e] = a : N = _(e, N); + typeof e == "string" ? E[e] = a : E = F(e, E); }, r.prototype.tv = function(e) { return this.radio(e); }, r.prototype.cnpj = function() { @@ -7106,24 +7106,24 @@ var re = { exports: {} }; }, r.prototype.emotion = function() { return this.pick(this.get("emotions")); }, r.prototype.mersenne_twister = function(e) { - return new F(e); + return new W(e); }, r.prototype.blueimp_md5 = function() { - return new G(); + return new R(); }; - var F = function(e) { + var W = function(e) { e === void 0 && (e = Math.floor(Math.random() * Math.pow(10, 13))), this.N = 624, this.M = 397, this.MATRIX_A = 2567483615, this.UPPER_MASK = 2147483648, this.LOWER_MASK = 2147483647, this.mt = new Array(this.N), this.mti = this.N + 1, this.init_genrand(e); }; - F.prototype.init_genrand = function(e) { + W.prototype.init_genrand = function(e) { for (this.mt[0] = e >>> 0, this.mti = 1; this.mti < this.N; this.mti++) e = this.mt[this.mti - 1] ^ this.mt[this.mti - 1] >>> 30, this.mt[this.mti] = (((e & 4294901760) >>> 16) * 1812433253 << 16) + (e & 65535) * 1812433253 + this.mti, this.mt[this.mti] >>>= 0; - }, F.prototype.init_by_array = function(e, a) { + }, W.prototype.init_by_array = function(e, a) { var n = 1, c = 0, u, g; for (this.init_genrand(19650218), u = this.N > a ? this.N : a; u; u--) g = this.mt[n - 1] ^ this.mt[n - 1] >>> 30, this.mt[n] = (this.mt[n] ^ (((g & 4294901760) >>> 16) * 1664525 << 16) + (g & 65535) * 1664525) + e[c] + c, this.mt[n] >>>= 0, n++, c++, n >= this.N && (this.mt[0] = this.mt[this.N - 1], n = 1), c >= a && (c = 0); for (u = this.N - 1; u; u--) g = this.mt[n - 1] ^ this.mt[n - 1] >>> 30, this.mt[n] = (this.mt[n] ^ (((g & 4294901760) >>> 16) * 1566083941 << 16) + (g & 65535) * 1566083941) - n, this.mt[n] >>>= 0, n++, n >= this.N && (this.mt[0] = this.mt[this.N - 1], n = 1); this.mt[0] = 2147483648; - }, F.prototype.genrand_int32 = function() { + }, W.prototype.genrand_int32 = function() { var e, a = new Array(0, this.MATRIX_A); if (this.mti >= this.N) { var n; @@ -7134,76 +7134,76 @@ var re = { exports: {} }; e = this.mt[this.N - 1] & this.UPPER_MASK | this.mt[0] & this.LOWER_MASK, this.mt[this.N - 1] = this.mt[this.M - 1] ^ e >>> 1 ^ a[e & 1], this.mti = 0; } return e = this.mt[this.mti++], e ^= e >>> 11, e ^= e << 7 & 2636928640, e ^= e << 15 & 4022730752, e ^= e >>> 18, e >>> 0; - }, F.prototype.genrand_int31 = function() { + }, W.prototype.genrand_int31 = function() { return this.genrand_int32() >>> 1; - }, F.prototype.genrand_real1 = function() { + }, W.prototype.genrand_real1 = function() { return this.genrand_int32() * (1 / 4294967295); - }, F.prototype.random = function() { + }, W.prototype.random = function() { return this.genrand_int32() * (1 / 4294967296); - }, F.prototype.genrand_real3 = function() { + }, W.prototype.genrand_real3 = function() { return (this.genrand_int32() + 0.5) * (1 / 4294967296); - }, F.prototype.genrand_res53 = function() { + }, W.prototype.genrand_res53 = function() { var e = this.genrand_int32() >>> 5, a = this.genrand_int32() >>> 6; return (e * 67108864 + a) * (1 / 9007199254740992); }; - var G = function() { + var R = function() { }; - G.prototype.VERSION = "1.0.1", G.prototype.safe_add = function(a, n) { + R.prototype.VERSION = "1.0.1", R.prototype.safe_add = function(a, n) { var c = (a & 65535) + (n & 65535), u = (a >> 16) + (n >> 16) + (c >> 16); return u << 16 | c & 65535; - }, G.prototype.bit_roll = function(e, a) { + }, R.prototype.bit_roll = function(e, a) { return e << a | e >>> 32 - a; - }, G.prototype.md5_cmn = function(e, a, n, c, u, g) { + }, R.prototype.md5_cmn = function(e, a, n, c, u, g) { return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a, e), this.safe_add(c, g)), u), n); - }, G.prototype.md5_ff = function(e, a, n, c, u, g, P) { - return this.md5_cmn(a & n | ~a & c, e, a, u, g, P); - }, G.prototype.md5_gg = function(e, a, n, c, u, g, P) { - return this.md5_cmn(a & c | n & ~c, e, a, u, g, P); - }, G.prototype.md5_hh = function(e, a, n, c, u, g, P) { - return this.md5_cmn(a ^ n ^ c, e, a, u, g, P); - }, G.prototype.md5_ii = function(e, a, n, c, u, g, P) { - return this.md5_cmn(n ^ (a | ~c), e, a, u, g, P); - }, G.prototype.binl_md5 = function(e, a) { + }, R.prototype.md5_ff = function(e, a, n, c, u, g, B) { + return this.md5_cmn(a & n | ~a & c, e, a, u, g, B); + }, R.prototype.md5_gg = function(e, a, n, c, u, g, B) { + return this.md5_cmn(a & c | n & ~c, e, a, u, g, B); + }, R.prototype.md5_hh = function(e, a, n, c, u, g, B) { + return this.md5_cmn(a ^ n ^ c, e, a, u, g, B); + }, R.prototype.md5_ii = function(e, a, n, c, u, g, B) { + return this.md5_cmn(n ^ (a | ~c), e, a, u, g, B); + }, R.prototype.binl_md5 = function(e, a) { e[a >> 5] |= 128 << a % 32, e[(a + 64 >>> 9 << 4) + 14] = a; - var n, c, u, g, P, b = 1732584193, v = -271733879, C = -1732584194, A = 271733878; + var n, c, u, g, B, p = 1732584193, A = -271733879, C = -1732584194, S = 271733878; for (n = 0; n < e.length; n += 16) - c = b, u = v, g = C, P = A, b = this.md5_ff(b, v, C, A, e[n], 7, -680876936), A = this.md5_ff(A, b, v, C, e[n + 1], 12, -389564586), C = this.md5_ff(C, A, b, v, e[n + 2], 17, 606105819), v = this.md5_ff(v, C, A, b, e[n + 3], 22, -1044525330), b = this.md5_ff(b, v, C, A, e[n + 4], 7, -176418897), A = this.md5_ff(A, b, v, C, e[n + 5], 12, 1200080426), C = this.md5_ff(C, A, b, v, e[n + 6], 17, -1473231341), v = this.md5_ff(v, C, A, b, e[n + 7], 22, -45705983), b = this.md5_ff(b, v, C, A, e[n + 8], 7, 1770035416), A = this.md5_ff(A, b, v, C, e[n + 9], 12, -1958414417), C = this.md5_ff(C, A, b, v, e[n + 10], 17, -42063), v = this.md5_ff(v, C, A, b, e[n + 11], 22, -1990404162), b = this.md5_ff(b, v, C, A, e[n + 12], 7, 1804603682), A = this.md5_ff(A, b, v, C, e[n + 13], 12, -40341101), C = this.md5_ff(C, A, b, v, e[n + 14], 17, -1502002290), v = this.md5_ff(v, C, A, b, e[n + 15], 22, 1236535329), b = this.md5_gg(b, v, C, A, e[n + 1], 5, -165796510), A = this.md5_gg(A, b, v, C, e[n + 6], 9, -1069501632), C = this.md5_gg(C, A, b, v, e[n + 11], 14, 643717713), v = this.md5_gg(v, C, A, b, e[n], 20, -373897302), b = this.md5_gg(b, v, C, A, e[n + 5], 5, -701558691), A = this.md5_gg(A, b, v, C, e[n + 10], 9, 38016083), C = this.md5_gg(C, A, b, v, e[n + 15], 14, -660478335), v = this.md5_gg(v, C, A, b, e[n + 4], 20, -405537848), b = this.md5_gg(b, v, C, A, e[n + 9], 5, 568446438), A = this.md5_gg(A, b, v, C, e[n + 14], 9, -1019803690), C = this.md5_gg(C, A, b, v, e[n + 3], 14, -187363961), v = this.md5_gg(v, C, A, b, e[n + 8], 20, 1163531501), b = this.md5_gg(b, v, C, A, e[n + 13], 5, -1444681467), A = this.md5_gg(A, b, v, C, e[n + 2], 9, -51403784), C = this.md5_gg(C, A, b, v, e[n + 7], 14, 1735328473), v = this.md5_gg(v, C, A, b, e[n + 12], 20, -1926607734), b = this.md5_hh(b, v, C, A, e[n + 5], 4, -378558), A = this.md5_hh(A, b, v, C, e[n + 8], 11, -2022574463), C = this.md5_hh(C, A, b, v, e[n + 11], 16, 1839030562), v = this.md5_hh(v, C, A, b, e[n + 14], 23, -35309556), b = this.md5_hh(b, v, C, A, e[n + 1], 4, -1530992060), A = this.md5_hh(A, b, v, C, e[n + 4], 11, 1272893353), C = this.md5_hh(C, A, b, v, e[n + 7], 16, -155497632), v = this.md5_hh(v, C, A, b, e[n + 10], 23, -1094730640), b = this.md5_hh(b, v, C, A, e[n + 13], 4, 681279174), A = this.md5_hh(A, b, v, C, e[n], 11, -358537222), C = this.md5_hh(C, A, b, v, e[n + 3], 16, -722521979), v = this.md5_hh(v, C, A, b, e[n + 6], 23, 76029189), b = this.md5_hh(b, v, C, A, e[n + 9], 4, -640364487), A = this.md5_hh(A, b, v, C, e[n + 12], 11, -421815835), C = this.md5_hh(C, A, b, v, e[n + 15], 16, 530742520), v = this.md5_hh(v, C, A, b, e[n + 2], 23, -995338651), b = this.md5_ii(b, v, C, A, e[n], 6, -198630844), A = this.md5_ii(A, b, v, C, e[n + 7], 10, 1126891415), C = this.md5_ii(C, A, b, v, e[n + 14], 15, -1416354905), v = this.md5_ii(v, C, A, b, e[n + 5], 21, -57434055), b = this.md5_ii(b, v, C, A, e[n + 12], 6, 1700485571), A = this.md5_ii(A, b, v, C, e[n + 3], 10, -1894986606), C = this.md5_ii(C, A, b, v, e[n + 10], 15, -1051523), v = this.md5_ii(v, C, A, b, e[n + 1], 21, -2054922799), b = this.md5_ii(b, v, C, A, e[n + 8], 6, 1873313359), A = this.md5_ii(A, b, v, C, e[n + 15], 10, -30611744), C = this.md5_ii(C, A, b, v, e[n + 6], 15, -1560198380), v = this.md5_ii(v, C, A, b, e[n + 13], 21, 1309151649), b = this.md5_ii(b, v, C, A, e[n + 4], 6, -145523070), A = this.md5_ii(A, b, v, C, e[n + 11], 10, -1120210379), C = this.md5_ii(C, A, b, v, e[n + 2], 15, 718787259), v = this.md5_ii(v, C, A, b, e[n + 9], 21, -343485551), b = this.safe_add(b, c), v = this.safe_add(v, u), C = this.safe_add(C, g), A = this.safe_add(A, P); - return [b, v, C, A]; - }, G.prototype.binl2rstr = function(e) { + c = p, u = A, g = C, B = S, p = this.md5_ff(p, A, C, S, e[n], 7, -680876936), S = this.md5_ff(S, p, A, C, e[n + 1], 12, -389564586), C = this.md5_ff(C, S, p, A, e[n + 2], 17, 606105819), A = this.md5_ff(A, C, S, p, e[n + 3], 22, -1044525330), p = this.md5_ff(p, A, C, S, e[n + 4], 7, -176418897), S = this.md5_ff(S, p, A, C, e[n + 5], 12, 1200080426), C = this.md5_ff(C, S, p, A, e[n + 6], 17, -1473231341), A = this.md5_ff(A, C, S, p, e[n + 7], 22, -45705983), p = this.md5_ff(p, A, C, S, e[n + 8], 7, 1770035416), S = this.md5_ff(S, p, A, C, e[n + 9], 12, -1958414417), C = this.md5_ff(C, S, p, A, e[n + 10], 17, -42063), A = this.md5_ff(A, C, S, p, e[n + 11], 22, -1990404162), p = this.md5_ff(p, A, C, S, e[n + 12], 7, 1804603682), S = this.md5_ff(S, p, A, C, e[n + 13], 12, -40341101), C = this.md5_ff(C, S, p, A, e[n + 14], 17, -1502002290), A = this.md5_ff(A, C, S, p, e[n + 15], 22, 1236535329), p = this.md5_gg(p, A, C, S, e[n + 1], 5, -165796510), S = this.md5_gg(S, p, A, C, e[n + 6], 9, -1069501632), C = this.md5_gg(C, S, p, A, e[n + 11], 14, 643717713), A = this.md5_gg(A, C, S, p, e[n], 20, -373897302), p = this.md5_gg(p, A, C, S, e[n + 5], 5, -701558691), S = this.md5_gg(S, p, A, C, e[n + 10], 9, 38016083), C = this.md5_gg(C, S, p, A, e[n + 15], 14, -660478335), A = this.md5_gg(A, C, S, p, e[n + 4], 20, -405537848), p = this.md5_gg(p, A, C, S, e[n + 9], 5, 568446438), S = this.md5_gg(S, p, A, C, e[n + 14], 9, -1019803690), C = this.md5_gg(C, S, p, A, e[n + 3], 14, -187363961), A = this.md5_gg(A, C, S, p, e[n + 8], 20, 1163531501), p = this.md5_gg(p, A, C, S, e[n + 13], 5, -1444681467), S = this.md5_gg(S, p, A, C, e[n + 2], 9, -51403784), C = this.md5_gg(C, S, p, A, e[n + 7], 14, 1735328473), A = this.md5_gg(A, C, S, p, e[n + 12], 20, -1926607734), p = this.md5_hh(p, A, C, S, e[n + 5], 4, -378558), S = this.md5_hh(S, p, A, C, e[n + 8], 11, -2022574463), C = this.md5_hh(C, S, p, A, e[n + 11], 16, 1839030562), A = this.md5_hh(A, C, S, p, e[n + 14], 23, -35309556), p = this.md5_hh(p, A, C, S, e[n + 1], 4, -1530992060), S = this.md5_hh(S, p, A, C, e[n + 4], 11, 1272893353), C = this.md5_hh(C, S, p, A, e[n + 7], 16, -155497632), A = this.md5_hh(A, C, S, p, e[n + 10], 23, -1094730640), p = this.md5_hh(p, A, C, S, e[n + 13], 4, 681279174), S = this.md5_hh(S, p, A, C, e[n], 11, -358537222), C = this.md5_hh(C, S, p, A, e[n + 3], 16, -722521979), A = this.md5_hh(A, C, S, p, e[n + 6], 23, 76029189), p = this.md5_hh(p, A, C, S, e[n + 9], 4, -640364487), S = this.md5_hh(S, p, A, C, e[n + 12], 11, -421815835), C = this.md5_hh(C, S, p, A, e[n + 15], 16, 530742520), A = this.md5_hh(A, C, S, p, e[n + 2], 23, -995338651), p = this.md5_ii(p, A, C, S, e[n], 6, -198630844), S = this.md5_ii(S, p, A, C, e[n + 7], 10, 1126891415), C = this.md5_ii(C, S, p, A, e[n + 14], 15, -1416354905), A = this.md5_ii(A, C, S, p, e[n + 5], 21, -57434055), p = this.md5_ii(p, A, C, S, e[n + 12], 6, 1700485571), S = this.md5_ii(S, p, A, C, e[n + 3], 10, -1894986606), C = this.md5_ii(C, S, p, A, e[n + 10], 15, -1051523), A = this.md5_ii(A, C, S, p, e[n + 1], 21, -2054922799), p = this.md5_ii(p, A, C, S, e[n + 8], 6, 1873313359), S = this.md5_ii(S, p, A, C, e[n + 15], 10, -30611744), C = this.md5_ii(C, S, p, A, e[n + 6], 15, -1560198380), A = this.md5_ii(A, C, S, p, e[n + 13], 21, 1309151649), p = this.md5_ii(p, A, C, S, e[n + 4], 6, -145523070), S = this.md5_ii(S, p, A, C, e[n + 11], 10, -1120210379), C = this.md5_ii(C, S, p, A, e[n + 2], 15, 718787259), A = this.md5_ii(A, C, S, p, e[n + 9], 21, -343485551), p = this.safe_add(p, c), A = this.safe_add(A, u), C = this.safe_add(C, g), S = this.safe_add(S, B); + return [p, A, C, S]; + }, R.prototype.binl2rstr = function(e) { var a, n = ""; for (a = 0; a < e.length * 32; a += 8) n += String.fromCharCode(e[a >> 5] >>> a % 32 & 255); return n; - }, G.prototype.rstr2binl = function(e) { + }, R.prototype.rstr2binl = function(e) { var a, n = []; for (n[(e.length >> 2) - 1] = void 0, a = 0; a < n.length; a += 1) n[a] = 0; for (a = 0; a < e.length * 8; a += 8) n[a >> 5] |= (e.charCodeAt(a / 8) & 255) << a % 32; return n; - }, G.prototype.rstr_md5 = function(e) { + }, R.prototype.rstr_md5 = function(e) { return this.binl2rstr(this.binl_md5(this.rstr2binl(e), e.length * 8)); - }, G.prototype.rstr_hmac_md5 = function(e, a) { - var n, c = this.rstr2binl(e), u = [], g = [], P; + }, R.prototype.rstr_hmac_md5 = function(e, a) { + var n, c = this.rstr2binl(e), u = [], g = [], B; for (u[15] = g[15] = void 0, c.length > 16 && (c = this.binl_md5(c, e.length * 8)), n = 0; n < 16; n += 1) u[n] = c[n] ^ 909522486, g[n] = c[n] ^ 1549556828; - return P = this.binl_md5(u.concat(this.rstr2binl(a)), 512 + a.length * 8), this.binl2rstr(this.binl_md5(g.concat(P), 512 + 128)); - }, G.prototype.rstr2hex = function(e) { + return B = this.binl_md5(u.concat(this.rstr2binl(a)), 512 + a.length * 8), this.binl2rstr(this.binl_md5(g.concat(B), 512 + 128)); + }, R.prototype.rstr2hex = function(e) { var a = "0123456789abcdef", n = "", c, u; for (u = 0; u < e.length; u += 1) c = e.charCodeAt(u), n += a.charAt(c >>> 4 & 15) + a.charAt(c & 15); return n; - }, G.prototype.str2rstr_utf8 = function(e) { + }, R.prototype.str2rstr_utf8 = function(e) { return unescape(encodeURIComponent(e)); - }, G.prototype.raw_md5 = function(e) { + }, R.prototype.raw_md5 = function(e) { return this.rstr_md5(this.str2rstr_utf8(e)); - }, G.prototype.hex_md5 = function(e) { + }, R.prototype.hex_md5 = function(e) { return this.rstr2hex(this.raw_md5(e)); - }, G.prototype.raw_hmac_md5 = function(e, a) { + }, R.prototype.raw_hmac_md5 = function(e, a) { return this.rstr_hmac_md5(this.str2rstr_utf8(e), this.str2rstr_utf8(a)); - }, G.prototype.hex_hmac_md5 = function(e, a) { + }, R.prototype.hex_hmac_md5 = function(e, a) { return this.rstr2hex(this.raw_hmac_md5(e, a)); - }, G.prototype.md5 = function(e, a, n) { + }, R.prototype.md5 = function(e, a, n) { return a ? n ? this.raw_hmac_md5(a, e) : this.hex_hmac_md5(a, e) : n ? this.raw_md5(e) : this.hex_md5(e); }, d.exports && (h = d.exports = r), h.Chance = r, typeof importScripts < "u" && (chance = new r(), self.Chance = r), typeof window == "object" && typeof window.document == "object" && (window.Chance = r, window.chance = new r()); })(); @@ -7211,45 +7211,45 @@ var re = { exports: {} }; var pe = re.exports; const ge = /* @__PURE__ */ be(pe); var Y = new ge(); -function se(d, h, E, L) { - E == null && console.log(); - let T = E.toUpperCase(), D = d.toUpperCase(), f = h.toUpperCase(); - if (L != null && 0 < L.length) { - let s = 0, i = L.length; - var p = "'"; - (T.startsWith("INTEGER") || T.startsWith("NUMBER") || T.startsWith("DATE")) && (p = ""); - let t = L[Math.floor(Z() * (i - s)) + s]; - return t.toLowerCase && t.toLowerCase() == "null" && (p = ""), p + t + p; +function se(d, h, k, N) { + k == null && console.log(); + let I = k.toUpperCase(), D = d.toUpperCase(), m = h.toUpperCase(); + if (N != null && 0 < N.length) { + let s = 0, i = N.length; + var b = "'"; + (I.startsWith("INTEGER") || I.startsWith("NUMBER") || I.startsWith("DATE")) && (b = ""); + let t = N[Math.floor(Z() * (i - s)) + s]; + return t.toLowerCase && t.toLowerCase() == "null" && (b = ""), t.replaceAll && (t = t.replaceAll("'", "''")), b + t + b; } - if (f == "NAME" && 0 <= D.indexOf("DEPARTMENT")) { - var y = ["Sales", "Finance", "Delivery", "Manufacturing"]; - let s = 0, i = y.length; - return "'" + y[Math.floor(Z() * (i - s)) + s] + "'"; + if (m == "NAME" && 0 <= D.indexOf("DEPARTMENT")) { + var v = ["Sales", "Finance", "Delivery", "Manufacturing"]; + let s = 0, i = v.length; + return "'" + v[Math.floor(Z() * (i - s)) + s] + "'"; } - if (Y[f.toLowerCase()] != null && f.indexOf("NAME") < 0) - return "'" + Y[f.toLowerCase()]() + "'"; - if (f == "FIRST_NAME") + if (Y[m.toLowerCase()] != null && m.indexOf("NAME") < 0) + return "'" + Y[m.toLowerCase()]() + "'"; + if (m == "FIRST_NAME") return "'" + Y.first() + "'"; - if (f == "LAST_NAME") + if (m == "LAST_NAME") return "'" + Y.last() + "'"; - if (0 <= f.indexOf("NAME")) + if (0 <= m.indexOf("NAME")) return "'" + Y.name() + "'"; - if (0 < f.indexOf("ADDRESS")) + if (0 < m.indexOf("ADDRESS")) return "'" + Y.address() + "'"; - if (f == "LOCATION") + if (m == "LOCATION") return "'" + Y.city() + "'"; - if (f == "DESCRIPTION") + if (m == "DESCRIPTION") return "'" + Y.paragraph({ sentences: 2 }) + "'"; - if (f == "JOB") { - var I = ["Engineer", "Consultant", "Architect", "Manager", "Analyst", "Specialist", "Evangelist", "Salesman"]; - let s = 0, i = I.length; - return "'" + I[Math.floor(Z() * (i - s)) + s] + "'"; + if (m == "JOB") { + var M = ["Engineer", "Consultant", "Architect", "Manager", "Analyst", "Specialist", "Evangelist", "Salesman"]; + let s = 0, i = M.length; + return "'" + M[Math.floor(Z() * (i - s)) + s] + "'"; } - if (T.startsWith("INTEGER") || T.startsWith("NUMBER")) { + if (I.startsWith("INTEGER") || I.startsWith("NUMBER")) { let s = 0, i = 100; return Math.floor(Z() * (i - s)) + s; } - if (T.startsWith("DATE") || T.startsWith("TIMESTAMP")) { + if (I.startsWith("DATE") || I.startsWith("TIMESTAMP")) { let s = 0, i = 100; var r = Math.floor(Z() * (i - s)) + s; return "sysdate-" + r; @@ -7262,24 +7262,24 @@ function Z() { return d - Math.floor(d); } var ee = function() { - function d(h, E) { - for (var L = [], T = "", D = 0; D < h.length; D++) { - for (var f = h.charAt(D), p = L.length, y = 0; y < E.length; y++) { - var I = E.charAt(y); - if (f == I) { - 0 < T.length && L.push(T), L.push(f), T = ""; + function d(h, k) { + for (var N = [], I = "", D = 0; D < h.length; D++) { + for (var m = h.charAt(D), b = N.length, v = 0; v < k.length; v++) { + var M = k.charAt(v); + if (m == M) { + 0 < I.length && N.push(I), N.push(m), I = ""; continue; } } - p == L.length && (T = T + f); + b == N.length && (I = I + m); } - return 0 < T.length && L.push(T), L; + return 0 < I.length && N.push(I), N; } return d; }(), Q = function() { - function d(T, D, f, p, y, I) { - this.type = p, this.value = T, this.begin = D, this.end = f, this.line = y, this.col = I, this.toString = function() { - return "{type:" + p + ",value:" + T + "}"; + function d(I, D, m, b, v, M) { + this.type = b, this.value = I, this.begin = D, this.end = m, this.line = v, this.col = M, this.toString = function() { + return "{type:" + b + ",value:" + I + "}"; }, this.isStandardLiteral = function() { if (this.value.length < 2 || !(this.value.charAt(0) == "'" || this.value.charAt(0) == "n" || this.value.charAt(0) == "N")) return !1; @@ -7315,116 +7315,116 @@ var ee = function() { return s == "<" ? ">" : s == "[" ? "]" : s == "{" ? "}" : s == "(" ? ")" : s; } } - function h(T, D, f) { - for (var p = [], y = `(){}[]^-|!*+.><='",;:%@?/\\#~` + f, I = ` + function h(I, D, m) { + for (var b = [], v = `(){}[]^-|!*+.><='",;:%@?/\\#~` + m, M = ` \r `, r = ee( - T, + I, //".*-+/|><=()\'\", \n\r\t" - y + I + v + M ), s = 0, i = 0, t = 0, o = 0; o < r.length; o++) { - var l = r[o], m = null; - if (p.length > 0 && (m = p[p.length - 1]), l == ` + var l = r[o], f = null; + if (b.length > 0 && (f = b[b.length - 1]), l == ` ` ? (i++, t = 0) : o > 0 && r[o - 1] !== ` -` ? t = t + r[o - 1].length : t = 0, s += l.length, m != null && m.type == "comment" && (m.value.lastIndexOf("*/") != m.value.length - 2 || m.value == "/*/")) { - l == "*" || l == "/" ? m.value = m.value + l : m.value = "/* ... ", m.end = s, m != null && m.type == "comment" && m.value.lastIndexOf("*/") == m.value.length - 2 && m.value != "/*/" && (m.value = T.substring(m.begin, m.end)); +` ? t = t + r[o - 1].length : t = 0, s += l.length, f != null && f.type == "comment" && (f.value.lastIndexOf("*/") != f.value.length - 2 || f.value == "/*/")) { + l == "*" || l == "/" ? f.value = f.value + l : f.value = "/* ... ", f.end = s, f != null && f.type == "comment" && f.value.lastIndexOf("*/") == f.value.length - 2 && f.value != "/*/" && (f.value = I.substring(f.begin, f.end)); continue; } - if (m != null && (m.type == "line-comment" || m.type == "dbtools-command") && l != ` + if (f != null && (f.type == "line-comment" || f.type == "dbtools-command") && l != ` `) { - m.value = m.value + l; + f.value = f.value + l; continue; } - if (m != null && (m.type == "line-comment" || m.type == "dbtools-command") && l == ` -` && (m.end = m.begin + m.value.length), m != null && m.type == "quoted-string" && !(m.isStandardLiteral() || m.isAltLiteral())) { - m.value = m.value + l, m.end = m.begin + m.value.length; + if (f != null && (f.type == "line-comment" || f.type == "dbtools-command") && l == ` +` && (f.end = f.begin + f.value.length), f != null && f.type == "quoted-string" && !(f.isStandardLiteral() || f.isAltLiteral())) { + f.value = f.value + l, f.end = f.begin + f.value.length; continue; } - if (!(m != null && m.type == "dquoted-string" && l != '"' && !(m.value.endsWith('"') && m.value.length > 1))) { - if (m != null && m.type == "dquoted-string" && l == '"') { - m.end = s, m.value = T.substring(m.begin, m.end); + if (!(f != null && f.type == "dquoted-string" && l != '"' && !(f.value.endsWith('"') && f.value.length > 1))) { + if (f != null && f.type == "dquoted-string" && l == '"') { + f.end = s, f.value = I.substring(f.begin, f.end); continue; } - if (!(m != null && m.type == "bquoted-string" && l != "`" && !(m.value.endsWith("`") && m.value.length > 1))) { - if (m != null && m.type == "bquoted-string" && l == "`") { - m.end = s, m.value = T.substring(m.begin, m.end); + if (!(f != null && f.type == "bquoted-string" && l != "`" && !(f.value.endsWith("`") && f.value.length > 1))) { + if (f != null && f.type == "bquoted-string" && l == "`") { + f.end = s, f.value = I.substring(f.begin, f.end); continue; } - if (l == "*" && m != null && m.value == "/") { - m.value = m.value + l, m.end = m.begin + m.value.length, m.type = "comment"; + if (l == "*" && f != null && f.value == "/") { + f.value = f.value + l, f.end = f.begin + f.value.length, f.type = "comment"; continue; } - if (l == "-" && m != null && m.value == "-") { - m.value = m.value + l, m.type = "line-comment"; + if (l == "-" && f != null && f.value == "-") { + f.value = f.value + l, f.type = "line-comment"; continue; } - if ((l.toUpperCase() == "REM" || l.toUpperCase() == "REMA" || l.toUpperCase() == "REMAR" || l.toUpperCase() == "REMARK" || l.toUpperCase() == "PRO" || l.toUpperCase() == "PROM" || l.toUpperCase() == "PROMP" || l.toUpperCase() == "PROMPT") && (m == null || m.value == ` -` || m.value == "\r")) { - p.push(new d(l, s - l.length, -9, "line-comment", i, t)); + if ((l.toUpperCase() == "REM" || l.toUpperCase() == "REMA" || l.toUpperCase() == "REMAR" || l.toUpperCase() == "REMARK" || l.toUpperCase() == "PRO" || l.toUpperCase() == "PROM" || l.toUpperCase() == "PROMP" || l.toUpperCase() == "PROMPT") && (f == null || f.value == ` +` || f.value == "\r")) { + b.push(new d(l, s - l.length, -9, "line-comment", i, t)); continue; } - if (l.toUpperCase() == "SODA" && (m == null || m.value == ` -` || m.value == "\r")) { - p.push(new d(l, s - l.length, -9, "dbtools-command", i, t)); + if (l.toUpperCase() == "SODA" && (f == null || f.value == ` +` || f.value == "\r")) { + b.push(new d(l, s - l.length, -9, "dbtools-command", i, t)); continue; } - if (m != null && m.type == "identifier" && m.end == -11 && m.value.indexOf("@") == 0 && !(l == ` + if (f != null && f.type == "identifier" && f.end == -11 && f.value.indexOf("@") == 0 && !(l == ` ` || l == "\r")) { - m.value = m.value + l; + f.value = f.value + l; continue; } - if (m != null && m.type == "identifier" && m.end == -11 && m.value.indexOf("@") == 0 && (l == ` + if (f != null && f.type == "identifier" && f.end == -11 && f.value.indexOf("@") == 0 && (l == ` ` || l == "\r")) { - m.end = s - 1, p.push(new d(l, s - 1, s, "ws", i, t)); + f.end = s - 1, b.push(new d(l, s - 1, s, "ws", i, t)); continue; } if (D && l == "'") { - m != null && (m.value.toUpperCase() == "Q" || m.value.toUpperCase() == "N" || m.value.toUpperCase() == "U" || m.value.toUpperCase() == "NQ") ? (m.value += l, m.type = "quoted-string") : p.push(new d(l, s - 1, -10, "quoted-string", i, t)); + f != null && (f.value.toUpperCase() == "Q" || f.value.toUpperCase() == "N" || f.value.toUpperCase() == "U" || f.value.toUpperCase() == "NQ") ? (f.value += l, f.type = "quoted-string") : b.push(new d(l, s - 1, -10, "quoted-string", i, t)); continue; } if (D && l == '"') { - p.push(new d(l, s - 1, -11, "dquoted-string", i, t)); + b.push(new d(l, s - 1, -11, "dquoted-string", i, t)); continue; } - if (l == "`" && 0 <= y.indexOf("`")) { - p.push(new d(l, s - 1, -11, "bquoted-string", i, t)); + if (l == "`" && 0 <= v.indexOf("`")) { + b.push(new d(l, s - 1, -11, "bquoted-string", i, t)); continue; } - if (l.length == 1 && 0 <= y.indexOf(l)) { - p.push(new d(l, s - 1, s, "operation", i, t)); + if (l.length == 1 && 0 <= v.indexOf(l)) { + b.push(new d(l, s - 1, s, "operation", i, t)); continue; } - if (l.length == 1 && 0 <= I.indexOf(l)) { - p.push(new d(l, s - 1, s, "ws", i, t)); + if (l.length == 1 && 0 <= M.indexOf(l)) { + b.push(new d(l, s - 1, s, "ws", i, t)); continue; } if ("0" <= l.charAt(0) && l.charAt(0) <= "9") { - E(l, p, s - l.length, i) || (l.charAt(l.length - 1) == "K" || l.charAt(l.length - 1) == "k" || l.charAt(l.length - 1) == "M" || l.charAt(l.length - 1) == "m" || l.charAt(l.length - 1) == "G" || l.charAt(l.length - 1) == "g" || l.charAt(l.length - 1) == "T" || l.charAt(l.length - 1) == "t" || l.charAt(l.length - 1) == "P" || l.charAt(l.length - 1) == "p" || l.charAt(l.length - 1) == "E" || l.charAt(l.length - 1) == "e" ? (p.push(new d(l.substring(0, l.length - 1), s - l.length, s - 1, "constant.numeric", i, t)), p.push(new d(l.substring(l.length - 1), s - 1, s, "constant.numeric", i, t))) : p.push(new d(l, s - l.length, s, "constant.numeric", i, t))); + k(l, b, s - l.length, i) || (l.charAt(l.length - 1) == "K" || l.charAt(l.length - 1) == "k" || l.charAt(l.length - 1) == "M" || l.charAt(l.length - 1) == "m" || l.charAt(l.length - 1) == "G" || l.charAt(l.length - 1) == "g" || l.charAt(l.length - 1) == "T" || l.charAt(l.length - 1) == "t" || l.charAt(l.length - 1) == "P" || l.charAt(l.length - 1) == "p" || l.charAt(l.length - 1) == "E" || l.charAt(l.length - 1) == "e" ? (b.push(new d(l.substring(0, l.length - 1), s - l.length, s - 1, "constant.numeric", i, t)), b.push(new d(l.substring(l.length - 1), s - 1, s, "constant.numeric", i, t))) : b.push(new d(l, s - l.length, s, "constant.numeric", i, t))); continue; } - var S = "identifier"; - o + 1 < r.length && r[o + 1], p.push(new d(l, s - l.length, s, S, i, t)); + var y = "identifier"; + o + 1 < r.length && r[o + 1], b.push(new d(l, s - l.length, s, y, i, t)); } } } - if (p.length > 0) { - var m = p[p.length - 1]; - m.end = T.length; + if (b.length > 0) { + var f = b[b.length - 1]; + f.end = I.length; } - return p; + return b; } - function E(T, D, f, p) { - if (0 > T.indexOf("e") && 0 > T.indexOf("f") && 0 > T.indexOf("d")) + function k(I, D, m, b) { + if (0 > I.indexOf("e") && 0 > I.indexOf("f") && 0 > I.indexOf("d")) return !1; - 0 <= T.indexOf("e"), 0 <= T.indexOf("e"), !(0 <= T.indexOf("e")) && 0 <= T.indexOf("f"); - for (var y = ee(T, "efd"), I = 0; I < y.length; I++) { - var r = y[I]; - f += r.length, "0" <= r.charAt(0) && r.charAt(0) <= "9" ? D.push(new d(r, f - r.length, f, "constant.numeric", p)) : D.push(new d(r, f - r.length, f, "identifier", p)); + 0 <= I.indexOf("e"), 0 <= I.indexOf("e"), !(0 <= I.indexOf("e")) && 0 <= I.indexOf("f"); + for (var v = ee(I, "efd"), M = 0; M < v.length; M++) { + var r = v[M]; + m += r.length, "0" <= r.charAt(0) && r.charAt(0) <= "9" ? D.push(new d(r, m - r.length, m, "constant.numeric", b)) : D.push(new d(r, m - r.length, m, "identifier", b)); } return !0; } - function L(T, D, f, p) { - for (var y = [], I = h(T, f, p), r = null, s = 0; s < I.length; s++) { - var i = I[s]; + function N(I, D, m, b) { + for (var v = [], M = h(I, m, b), r = null, s = 0; s < M.length; s++) { + var i = M[s]; if (i.type == "quoted-string") { if (r != null && r.type == "quoted-string") { r.value = r.value + i.value, r.end = i.end; @@ -7449,11 +7449,11 @@ var ee = function() { || token.value.equals("$ELSE") || token.value.equals("$THEN") ||*/ - i.value.indexOf("$$") == 0 && (i.value = "$$VAR"), (D || i.type != "ws" && i.type != "comment" && i.type != "line-comment") && y.push(i), r = i; + i.value.indexOf("$$") == 0 && (i.value = "$$VAR"), (D || i.type != "ws" && i.type != "comment" && i.type != "line-comment") && v.push(i), r = i; } - return y; + return v; } - return L; + return N; }(); function ve(d) { const h = { @@ -7567,14 +7567,14 @@ function ve(d) { WHERE: "Y", WITH: "Y" }; - let E = d.toUpperCase(); - return h[E] != null ? "the_" + d : d; + let k = d.toUpperCase(); + return h[k] != null ? "the_" + d : d; } let ce = function() { - let d, h = " ", E = ["string", "varchar2", "varchar", "vc", "char"]; - var L = ["yn", "boolean", "bool"]; - function T(y, I, r) { - this.line = y, this.parent = r, this.children = [], r != null && r.children.push(this), this.fks = null, this.descendants = function() { + let d, h = " ", k = ["string", "varchar2", "varchar", "vc", "char"]; + var N = ["yn", "boolean", "bool"]; + function I(v, M, r) { + this.line = v, this.parent = r, this.children = [], r != null && r.children.push(this), this.fks = null, this.descendants = function() { var i = []; i.push(this); for (var t = 0; t < this.children.length; t++) @@ -7583,26 +7583,26 @@ let ce = function() { }, this.maxChildNameLen = function() { var i = 2, t = this.trimmedContent().toUpperCase(); if ((d.optionEQvalue("rowkey", !0) || 0 < t.indexOf("/ROWKEY")) && (i = 7), (d.optionEQvalue("Row Version Number", "yes") || 0 < t.indexOf("/ROWVERSION")) && (i = 11), d.optionEQvalue("Audit Columns", "yes") || 0 < t.indexOf("/AUDITCOLS") || 0 < t.indexOf("/AUDIT COL")) { - let B = d.getOptionValue("createdcol").length; - i < B && (i = B), B = d.getOptionValue("createdbycol").length, i < B && (i = B), B = d.getOptionValue("updatedcol").length, i < B && (i = B), B = d.getOptionValue("updatedbycol").length, i < B && (i = B); + let P = d.getOptionValue("createdcol").length; + i < P && (i = P), P = d.getOptionValue("createdbycol").length, i < P && (i = P), P = d.getOptionValue("updatedcol").length, i < P && (i = P), P = d.getOptionValue("updatedbycol").length, i < P && (i = P); } if (this.fks != null) for (var o in this.fks) { var l = o.length; - let B = d.find(o); - B != null && B.isMany2One() && (l += 3), i < l && (i = l); + let P = d.find(o); + P != null && P.isMany2One() && (l += 3), i < l && (i = l); } - for (var m = 0; m < this.children.length; m++) { - let B = this.children[m]; - if (0 < B.children.length) + for (var f = 0; f < this.children.length; f++) { + let P = this.children[f]; + if (0 < P.children.length) continue; - let M = B.parseName().length; - 0 < B.indexOf("file") && (M += 9), i < M && (i = M); + let T = P.parseName().length; + 0 < P.indexOf("file") && (T += 9), i < T && (i = T); } - var S = d.additionalColumns(); - for (let B in S) { - let M = B.length; - i < M && (i = M); + var y = d.additionalColumns(); + for (let P in y) { + let T = P.length; + i < T && (i = T); } return i; }; @@ -7610,7 +7610,7 @@ let ce = function() { let t = i; return t = t.replace(/ timestamp with local time zone/gi, " tswltz"), t = t.replace(/ timestamp with time zone/gi, " tswtz"), t = t.replace(/ timestamp/gi, " ts"), t; } - this.content = s(I), this.comment, this.indexOf = function(i, t) { + this.content = s(M), this.comment, this.indexOf = function(i, t) { for (let o = 0; o < this.src.length; o++) { if (t && this.src[o].value.indexOf(i) == 0) return o; @@ -7630,29 +7630,29 @@ let ce = function() { (i.indexOf(">") == 0 || i.indexOf("<") == 0) && (i = i.substring(1).trim()); const l = i.toLowerCase(); if (l.indexOf("view ") == 0) { - var m = i.split(" "); - return m[1]; + var f = i.split(" "); + return f[1]; } - i = f(i, " d"); - var S = i.indexOf("/"); - 0 < S && (i = i.substring(0, S)), i = i.trim(), i = f(i, " integer"), i = f(i, " number"), i = f(i, " int"), i = f(i, " num"), i = f(i, " clob"), i = f(i, " blob"), i = f(i, " json"), i = f(i, " file"), i = f(i, " date"), i = f(i, " tstz"), i = f(i, " tswtz"), i = f(i, " tswltz"), i = f(i, " ts"), i = i.replace(/ vc\d+k/g, ""), i = i.replace(/ vc\(\d+\)/g, ""), i = i.replace(/ vc\d+/g, ""); - for (let M in E) { - let N = l.indexOf(" " + E[M]); - if (0 < N) { - i = i.substring(0, N) + i.substring(N + E[M].length + 1); + i = m(i, " d"); + var y = i.indexOf("/"); + 0 < y && (i = i.substring(0, y)), i = i.trim(), i = m(i, " integer"), i = m(i, " number"), i = m(i, " int"), i = m(i, " num"), i = m(i, " clob"), i = m(i, " blob"), i = m(i, " json"), i = m(i, " file"), i = m(i, " date"), i = m(i, " tstz"), i = m(i, " tswtz"), i = m(i, " tswltz"), i = m(i, " ts"), i = i.replace(/ vc\d+k/g, ""), i = i.replace(/ vc\(\d+\)/g, ""), i = i.replace(/ vc\d+/g, ""); + for (let T in k) { + let E = l.indexOf(" " + k[T]); + if (0 < E) { + i = i.substring(0, E) + i.substring(E + k[T].length + 1); break; } } - for (let M in L) { - let N = l.indexOf(" " + L[M]); - if (0 < N) { - i = i.substring(0, N) + i.substring(N + L[M].length + 1); + for (let T in N) { + let E = l.indexOf(" " + N[T]); + if (0 < E) { + i = i.substring(0, E) + i.substring(E + N[T].length + 1); break; } } i = i.replace(/ num(ber)?\(\d+\)/g, ""), i = i.replace(/ num(ber)?\(\d+,\d+\)/g, ""), i = i.replace(/ num(ber)?\d+/g, ""), i = i.trim(), this.children.length == 0 && this.parent != null && this.parent.colprefix != null && (i = this.parent.colprefix + "_" + i); - var B = i.substr(0, 1); - return B >= "0" && B <= "9" && (i = "x" + i), ve(he(i)); + var P = i.substr(0, 1); + return P >= "0" && P <= "9" && (i = "x" + i), ve(he(i)); }, this.parseType = function(i) { if (this.children != null && 0 < this.children.length) return "table"; @@ -7665,68 +7665,68 @@ let ce = function() { return "table"; var o = d.semantics(), l = 4e3; (t[0].value.startsWith("name") || t[0].value.startsWith("email")) && (l = 255); - const m = this.indexOf("vc", !0); - if (0 < m) { - t[m].begin, t[m].end; - let x = t[m].value.substring(2); - x == "" && this.indexOf("(") == m + 1 && (x = t[m + 2].value), x != "" && (l = parseInt(x)), t[m].value.endsWith("k") && (l < 32 ? l = l * 1024 : l = l * 1024 - 1); + const f = this.indexOf("vc", !0); + if (0 < f) { + t[f].begin, t[f].end; + let x = t[f].value.substring(2); + x == "" && this.indexOf("(") == f + 1 && (x = t[f + 2].value), x != "" && (l = parseInt(x)), t[f].value.endsWith("k") && (l < 32 ? l = l * 1024 : l = l * 1024 - 1); } - var S = "varchar2(" + l + o + ")"; - i == "plsql" && (S = "varchar2"), 0 < this.indexOf("int", !0) && (S = "integer"), t[0].value.endsWith("_id") && m < 0 && this.indexOf("date") < 0 && (S = "number"), t[0].value.endsWith("id") && m < 0 && this.indexOf("/") + 1 == this.indexOf("pk") && (S = "number"); - const B = K(r.parseName(), "_", this.parseName()); - (t[0].value.endsWith("_yn") || t[0].value.startsWith("is_")) && (S = "varchar2(1 char) constraint " + K(d.objPrefix(), B) + ` -`, S += h + h + " ".repeat(r.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"); - for (let x in L) - if (0 < this.indexOf(L[x])) { - S = "varchar2(1 char) constraint " + K(d.objPrefix(), B) + ` -`, S += h + h + " ".repeat(r.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"; + var y = "varchar2(" + l + o + ")"; + i == "plsql" && (y = "varchar2"), 0 < this.indexOf("int", !0) && (y = "integer"), t[0].value.endsWith("_id") && f < 0 && this.indexOf("date") < 0 && (y = "number"), t[0].value.endsWith("id") && f < 0 && this.indexOf("/") + 1 == this.indexOf("pk") && (y = "number"); + const P = K(r.parseName(), "_", this.parseName()); + (t[0].value.endsWith("_yn") || t[0].value.startsWith("is_")) && (y = "varchar2(1 char) constraint " + K(d.objPrefix(), P) + ` +`, y += h + h + " ".repeat(r.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"); + for (let x in N) + if (0 < this.indexOf(N[x])) { + y = "varchar2(1 char) constraint " + K(d.objPrefix(), P) + ` +`, y += h + h + " ".repeat(r.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"; break; } - this.indexOf("phone_number") == 0 && (S = "number"); - let M = this.indexOf("num", !0); - 0 < M && (S = "number"); - let N = this.indexOf(")"); - if (0 < M && 0 < N && (S += this.content.toLowerCase().substring(t[M + 1].begin, t[N].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value.startsWith("created") || t[0].value.startsWith("updated")) && (S = d.getOptionValue("Date Data Type").toLowerCase()), m < 0 && (0 < this.indexOf("clob") && (S = "clob"), (0 < this.indexOf("blob") || 0 < this.indexOf("file")) && (S = "blob"), 0 < this.indexOf("json") && (S = "clob check (" + this.parseName() + " is json)")), 0 < this.indexOf("tswltz") ? S = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : 0 < this.indexOf("tswtz") || 0 < this.indexOf("tstz") ? S = "TIMESTAMP WITH TIME ZONE".toLowerCase() : 0 < this.indexOf("ts") && (S = "TIMESTAMP".toLowerCase()), i) { + this.indexOf("phone_number") == 0 && (y = "number"); + let T = this.indexOf("num", !0); + 0 < T && (y = "number"); + let E = this.indexOf(")"); + if (0 < T && 0 < E && (y += this.content.toLowerCase().substring(t[T + 1].begin, t[E].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value.startsWith("created") || t[0].value.startsWith("updated")) && (y = d.getOptionValue("Date Data Type").toLowerCase()), f < 0 && (0 < this.indexOf("clob") && (y = "clob"), (0 < this.indexOf("blob") || 0 < this.indexOf("file")) && (y = "blob"), 0 < this.indexOf("json") && (y = "clob check (" + this.parseName() + " is json)")), 0 < this.indexOf("tswltz") ? y = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : 0 < this.indexOf("tswtz") || 0 < this.indexOf("tstz") ? y = "TIMESTAMP WITH TIME ZONE".toLowerCase() : 0 < this.indexOf("ts") && (y = "TIMESTAMP".toLowerCase()), i) { if (0 < this.indexOf("fk") || 0 < this.indexOf("reference")) { const x = this.refId(); - let w = "number", R = d.find(x); - return R != null && R.getExplicitPkNode() != null && (w = R.getExplicitPkNode().parseType((_) => !0)), w; + let w = "number", H = d.find(x); + return H != null && H.getExplicitPkNode() != null && (w = H.getExplicitPkNode().parseType((F) => !0)), w; } - return S; + return y; } - 0 < this.indexOf("unique") && (S += ` -`, S += h + h + " ".repeat(r.maxChildNameLen()) + "constraint " + B + "_unq unique"); - var k = "'"; - if ((S.startsWith("integer") || S.startsWith("number") || S.startsWith("date")) && (k = ""), 0 < this.indexOf("default")) { + 0 < this.indexOf("unique") && (y += ` +`, y += h + h + " ".repeat(r.maxChildNameLen()) + "constraint " + P + "_unq unique"); + var L = "'"; + if ((y.startsWith("integer") || y.startsWith("number") || y.startsWith("date")) && (L = ""), 0 < this.indexOf("default")) { const x = t[this.indexOf("default") + 1].value; - S += " default on null " + k + x + k; + y += " default on null " + L + x + L; } - if ((0 < this.indexOf("nn") || this.indexOf("not") + 1 == this.indexOf("null")) && this.indexOf("pk") < 0 && (S += " not null"), (0 < this.indexOf("hidden") || 0 < this.indexOf("invincible")) && (S += " invisible"), S += this.genConstraint(k), 0 < this.indexOf("between")) { + if ((0 < this.indexOf("nn") || this.indexOf("not") + 1 == this.indexOf("null")) && this.indexOf("pk") < 0 && (y += " not null"), (0 < this.indexOf("hidden") || 0 < this.indexOf("invincible")) && (y += " invisible"), y += this.genConstraint(L), 0 < this.indexOf("between")) { const x = this.indexOf("between"), w = t[x + 1].value + " and " + t[x + 3].value; - S += " constraint " + K(B, "_bet") + ` -`, S += " check (" + this.parseName() + " between " + w + ")"; + y += " constraint " + K(P, "_bet") + ` +`, y += " check (" + this.parseName() + " between " + w + ")"; } if (0 < this.indexOf("pk")) { let x = " not null"; - S.startsWith("number") && d.optionEQvalue("pk", "identityDataType") && (x = " GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), S.startsWith("number") && d.optionEQvalue("pk", "seq") && (x = " default on null " + (d.objPrefix() + this.parent.parseName()) + "_seq.NEXTVAL ".toLowerCase()), S.startsWith("number") && d.optionEQvalue("pk", "guid") && (x = " default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), S += x + ` -`, S += h + h + " ".repeat(r.maxChildNameLen()) + "constraint " + K(d.objPrefix(), B, "_pk") + " primary key"; + y.startsWith("number") && d.optionEQvalue("pk", "identityDataType") && (x = " GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), y.startsWith("number") && d.optionEQvalue("pk", "seq") && (x = " default on null " + (d.objPrefix() + this.parent.parseName()) + "_seq.NEXTVAL ".toLowerCase()), y.startsWith("number") && d.optionEQvalue("pk", "guid") && (x = " default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), y += x + ` +`, y += h + h + " ".repeat(r.maxChildNameLen()) + "constraint " + K(d.objPrefix(), P, "_pk") + " primary key"; } - return S; + return y; }, this.genConstraint = function(i) { let t = ""; if (0 < this.indexOf("check")) { let o = ""; r != null && (o = r.parseName() + "_"); - const l = K(o, this.parseName()), m = this.trimmedContent().toLowerCase(), S = m.indexOf("/check"); - let B = m.lastIndexOf("/"); - B == S && (B = m.length); - let M = this.trimmedContent().substr(S + 6, B - S - 6).trim(); - const N = Q(M, !1, !0, ""); - let k = h; - r != null && (k = " ".repeat(r.maxChildNameLen())), this.children != null && 0 < this.children.length ? (N[0].value != "(" && (M = "( " + M + ")"), t += h + "constraint " + K(d.objPrefix(), l, "_ck"), t += " check " + M + `, -`) : N[0].value == "(" && N[N.length - 1].value == ")" ? (t += " constraint " + K(d.objPrefix(), l, "_ck") + ` -`, t += h + h + k + "check " + M) : (0 < M.indexOf(", ") ? M = M.replace(/, /g, i + "," + i) : 0 < M.indexOf(",") ? M = M.replace(/,/g, i + "," + i) : M = M.replace(/ /g, i + "," + i), t += " constraint " + K(d.objPrefix(), l, "_ck") + ` -`, t += h + h + k + "check (" + this.parseName() + " in (" + i + M + i + "))", t = t.replace(/''/gm, "'")); + const l = K(o, this.parseName()), f = this.trimmedContent().toLowerCase(), y = f.indexOf("/check"); + let P = f.lastIndexOf("/"); + P == y && (P = f.length); + let T = this.trimmedContent().substr(y + 6, P - y - 6).trim(); + const E = Q(T, !1, !0, ""); + let L = h; + r != null && (L = " ".repeat(r.maxChildNameLen())), this.children != null && 0 < this.children.length ? (E[0].value != "(" && (T = "( " + T + ")"), t += h + "constraint " + K(d.objPrefix(), l, "_ck"), t += " check " + T + `, +`) : E[0].value == "(" && E[E.length - 1].value == ")" ? (t += " constraint " + K(d.objPrefix(), l, "_ck") + ` +`, t += h + h + L + "check " + T) : (0 < T.indexOf(", ") ? T = T.replace(/, /g, i + "," + i) : 0 < T.indexOf(",") ? T = T.replace(/,/g, i + "," + i) : T = T.replace(/ /g, i + "," + i), t += " constraint " + K(d.objPrefix(), l, "_ck") + ` +`, t += h + h + L + "check (" + this.parseName() + " in (" + i + T + i + "))", t = t.replace(/''/gm, "'")); } return t; }, this.isMany2One = function() { @@ -7752,14 +7752,14 @@ let ce = function() { }, this.parseValues = function() { var i = this.trimmedContent().toUpperCase(), t, o, l; if (0 <= i.indexOf("/CHECK") || 0 <= i.indexOf("/VALUES")) { - var m = "/CHECK"; - return t = i.indexOf(m), t < 0 && (m = "/VALUES", t = i.indexOf(m)), o = i.lastIndexOf("/"), o == t && (o = i.length), l = i.substr(t + m.length, o - t - m.length).trim(), 0 < l.indexOf(",") ? (l = l.replace(/ /g, ""), l.split(",")) : l.split(" "); + var f = "/CHECK"; + return t = i.indexOf(f), t < 0 && (f = "/VALUES", t = i.indexOf(f)), o = i.lastIndexOf("/"), o == t && (o = i.length), l = i.substr(t + f.length, o - t - f.length).trim(), 0 < l.indexOf(",") ? (l = l.replace(/ /g, ""), l.split(",")) : l.split(" "); } if (0 <= i.indexOf("/BETWEEN")) { t = i.indexOf("/BETWEEN"), o = i.lastIndexOf("/"), o == t && (o = i.length), l = i.substr(t + 8, o - t - 8).trim(), l = l.replace(" AND ", " "); - for (var S = [], B = parseInt(l.split(" ")[0]); B <= parseInt(l.split(" ")[1]); B++) - S.push(B); - return S; + for (var y = [], P = parseInt(l.split(" ")[0]); P <= parseInt(l.split(" ")[1]); P++) + y.push(P); + return y; } return null; }, this.apparentDepth = function() { @@ -7786,7 +7786,7 @@ let ce = function() { return null; if (d.optionEQvalue("Auto Primary Key", "yes")) { let t = ""; - return this.colprefix != null && (t = this.colprefix + "_"), d.optionEQvalue("prefixPKwithTname", "yes") && (t = z(this.parseName()) + "_"), t + "id"; + return this.colprefix != null && (t = this.colprefix + "_"), d.optionEQvalue("prefixPKwithTname", "yes") && (t = _(this.parseName()) + "_"), t + "id"; } return null; }, this.getPkName = function() { @@ -7802,7 +7802,7 @@ let ce = function() { return this.parent != null && (a += " ".repeat(this.parent.maxChildNameLen() - this.parseName().length)), this.parseName() + a + this.parseType(); } if (this.fks == null && (this.fks = []), !this.isMany2One()) { - this.parent != null && this.parseType() == "table" && (this.fks[z(this.parent.parseName()) + "_id"] = this.parent.parseName()); + this.parent != null && this.parseType() == "table" && (this.fks[_(this.parent.parseName()) + "_id"] = this.parent.parseName()); for (let a = 0; a < this.children.length; a++) this.children[a].refId() != null && (this.fks[this.children[a].parseName()] = this.children[a].refId()); } @@ -7818,13 +7818,13 @@ let ce = function() { `), o = o + "create table " + l + ` ( `; - var m = h + " ".repeat(this.maxChildNameLen() - 2); - let S = this.getGenIdColName(); - if (S != null) { + var f = h + " ".repeat(this.maxChildNameLen() - 2); + let y = this.getGenIdColName(); + if (y != null) { let a = "not null"; - d.optionEQvalue("pk", "identityDataType") && (a = "GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), d.optionEQvalue("pk", "seq") && (a = "default on null " + l + "_seq.NEXTVAL ".toLowerCase()), d.optionEQvalue("pk", "guid") && (a = "default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), o += h + S + m + "number " + a + ` + d.optionEQvalue("pk", "identityDataType") && (a = "GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), d.optionEQvalue("pk", "seq") && (a = "default on null " + l + "_seq.NEXTVAL ".toLowerCase()), d.optionEQvalue("pk", "guid") && (a = "default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), o += h + y + f + "number " + a + ` `; - const n = K(d.objPrefix("no schema") + this.parseName(), "_", S); + const n = K(d.objPrefix("no schema") + this.parseName(), "_", y); o += h + h + " ".repeat(this.maxChildNameLen()) + "constraint " + K(n, "_pk") + ` primary key, `; } else { @@ -7837,21 +7837,21 @@ let ce = function() { } for (let a in this.fks) { let n = this.fks[a], c = "number", u = d.find(n), g = ""; - u != null && u.getExplicitPkNode() != null ? c = u.getExplicitPkNode().parseType((v) => !0) : u == null && (u = d.find(a), u.isMany2One() & !a.endsWith("_id") && (n = a, a = z(a), g = "_id")), m = h + " ".repeat(this.maxChildNameLen() - a.length), o += h + a + g + m + c + ` + u != null && u.getExplicitPkNode() != null ? c = u.getExplicitPkNode().parseType((A) => !0) : u == null && (u = d.find(a), u.isMany2One() & !a.endsWith("_id") && (n = a, a = _(a), g = "_id")), f = h + " ".repeat(this.maxChildNameLen() - a.length), o += h + a + g + f + c + ` `, o += h + h + " ".repeat(this.maxChildNameLen()) + "constraint " + l + "_" + a + `_fk `; - let P = ""; - 0 <= i.indexOf("/CASCADE") && (P = " on delete cascade"); - let b = ""; - for (let v in this.children) { - let C = this.children[v]; + let B = ""; + 0 <= i.indexOf("/CASCADE") && (B = " on delete cascade"); + let p = ""; + for (let A in this.children) { + let C = this.children[A]; if (a == C.parseName()) { - let A = C.trimmedContent().toUpperCase(); - (0 <= A.indexOf("/NN") || 0 <= A.indexOf("/NOTNULL")) && (b = " NOT NULL".toLowerCase()), 0 <= A.indexOf("/CASCADE") && (P = " on delete cascade"); + let S = C.trimmedContent().toUpperCase(); + (0 <= S.indexOf("/NN") || 0 <= S.indexOf("/NOTNULL")) && (p = " NOT NULL".toLowerCase()), 0 <= S.indexOf("/CASCADE") && (B = " on delete cascade"); break; } } - o += h + h + " ".repeat(this.maxChildNameLen()) + "references " + d.objPrefix() + n + P + b + `, + o += h + h + " ".repeat(this.maxChildNameLen()) + "references " + d.objPrefix() + n + B + p + `, `; } if (d.optionEQvalue("rowkey", !0) || 0 < i.indexOf("/ROWKEY")) { @@ -7862,7 +7862,7 @@ let ce = function() { } for (let a = 0; a < this.children.length; a++) { let n = this.children[a]; - if (!(S != null && n.parseName() == "id") && !(0 < n.children.length) && n.refId() == null) { + if (!(y != null && n.parseName() == "id") && !(0 < n.children.length) && n.refId() == null) { if (n == this.getExplicitPkNode()) continue; if (o += h + n.singleDDL() + `, @@ -7896,10 +7896,10 @@ let ce = function() { n = h + " ".repeat(this.maxChildNameLen() - g.length), o += h + g + n + "varchar2(255" + d.semantics() + `) not null, `; } - var B = d.additionalColumns(); - for (let a in B) { - var M = B[a]; - m = h + " ".repeat(this.maxChildNameLen() - a.length), o += h + a.toUpperCase() + m + M + ` not null, + var P = d.additionalColumns(); + for (let a in P) { + var T = P[a]; + f = h + " ".repeat(this.maxChildNameLen() - a.length), o += h + a.toUpperCase() + f + T + ` not null, `; } o += this.genConstraint(), o.lastIndexOf(`, @@ -7907,22 +7907,22 @@ let ce = function() { `), o += ")" + (d.optionEQvalue("compress", "yes") || 0 < i.indexOf("/COMPRESS") ? " compress" : "") + `; `; - const N = i.indexOf("/AUDIT"), k = i.indexOf("/AUDITCOLS"), x = i.indexOf("/AUDIT COL"); - 0 < N && k < 0 && x < 0 && (o += "audit all on " + l + `; + const E = i.indexOf("/AUDIT"), L = i.indexOf("/AUDITCOLS"), x = i.indexOf("/AUDIT COL"); + 0 < E && L < 0 && x < 0 && (o += "audit all on " + l + `; `); let w = 1; for (let a in this.fks) if (!this.isMany2One()) { - var R = this.fks[a], _ = R, F = a; - F == null && (F = z(_) + "_id"), w == 1 && (o += `-- table index -`), o += "create index " + l + "_i" + w++ + " on " + l + " (" + F + `); + var H = this.fks[a], F = H, W = a; + W == null && (W = _(F) + "_id"), w == 1 && (o += `-- table index +`), o += "create index " + l + "_i" + w++ + " on " + l + " (" + W + `); `; } - let G = i.indexOf("/UNIQUE "); - if (0 < G) { - let a = i.substr(G + 8), n = a.indexOf("/"); + let R = i.indexOf("/UNIQUE "); + if (0 < R) { + let a = i.substr(R + 8), n = a.indexOf("/"); 0 < n && (a = a.substring(0, n).trim()), o += "alter table " + l + " add constraint " + l + "_uk unique (" + a + `); `; @@ -7981,65 +7981,65 @@ let ce = function() { `; l += `select `; - for (var m = 0, S = 2; S < o.length; S++) { - let u = d.find(o[S]); + for (var f = 0, y = 2; y < o.length; y++) { + let u = d.find(o[y]); if (u == null) return ""; - var B = (o[S] + ".id").length; - m < B && (m = B); - for (var M = 0; M < u.children.length; M++) { - var N = u.children[M]; - B = (o[S] + "." + N.parseName()).length, m < B && (m = B); + var P = (o[y] + ".id").length; + f < P && (f = P); + for (var T = 0; T < u.children.length; T++) { + var E = u.children[T]; + P = (o[y] + "." + E.parseName()).length, f < P && (f = P); } } - var k = {}; + var L = {}; for (let u = 2; u < o.length; u++) { let g = d.find(o[u]); if (g != null) - for (let P = 0; P < g.children.length; P++) { - var x = g.children[P].parseName(), w = k[x]; - w == null && (w = 0), k[x] = w + 1; + for (let B = 0; B < g.children.length; B++) { + var x = g.children[B].parseName(), w = L[x]; + w == null && (w = 0), L[x] = w + 1; } } for (let u = 2; u < o.length; u++) { let g = d.find(o[u]); if (g == null) continue; - let P = " ".repeat(m - (o[u] + ".id").length); - l += h + o[u] + ".id" + h + P + z(o[u]) + `_id, + let B = " ".repeat(f - (o[u] + ".id").length); + l += h + o[u] + ".id" + h + B + _(o[u]) + `_id, `; - for (let v = 0; v < g.children.length; v++) { - let C = g.children[v]; + for (let A = 0; A < g.children.length; A++) { + let C = g.children[A]; if (C.children.length == 0) { - P = " ".repeat(m - (o[u] + "." + C.parseName()).length); - var R = ""; - 1 < k[C.parseName()] && (R = z(o[u]) + "_"), l += h + o[u] + "." + C.parseName() + h + P + R + C.parseName() + `, + B = " ".repeat(f - (o[u] + "." + C.parseName()).length); + var H = ""; + 1 < L[C.parseName()] && (H = _(o[u]) + "_"), l += h + o[u] + "." + C.parseName() + h + B + H + C.parseName() + `, `; } } - let b = g.trimmedContent().toUpperCase(); - if (d.optionEQvalue("rowVersion", "yes") || 0 < b.indexOf("/ROWVERSION")) { - let v = h + " ".repeat(g.maxChildNameLen() - 11); - l += h + o[u] + ".row_version" + z(v + o[u]) + `_row_version, + let p = g.trimmedContent().toUpperCase(); + if (d.optionEQvalue("rowVersion", "yes") || 0 < p.indexOf("/ROWVERSION")) { + let A = h + " ".repeat(g.maxChildNameLen() - 11); + l += h + o[u] + ".row_version" + _(A + o[u]) + `_row_version, `; } - if (d.optionEQvalue("rowkey", "yes") || 0 < b.indexOf("/ROWKEY")) { - let v = h + " ".repeat(g.maxChildNameLen() - 7); - l += h + o[u] + ".ROW_KEY" + z(v + o[u]) + `_ROW_KEY, + if (d.optionEQvalue("rowkey", "yes") || 0 < p.indexOf("/ROWKEY")) { + let A = h + " ".repeat(g.maxChildNameLen() - 7); + l += h + o[u] + ".ROW_KEY" + _(A + o[u]) + `_ROW_KEY, `; } - if (d.optionEQvalue("Audit Columns", "yes") || 0 < b.indexOf("/AUDITCOLS") || 0 < b.indexOf("/AUDIT COL")) { - let v = d.getOptionValue("createdcol"), C = h + " ".repeat(g.maxChildNameLen() - v.length); - l += h + o[u] + "." + v + z(C + o[u]) + "_" + v + `, + if (d.optionEQvalue("Audit Columns", "yes") || 0 < p.indexOf("/AUDITCOLS") || 0 < p.indexOf("/AUDIT COL")) { + let A = d.getOptionValue("createdcol"), C = h + " ".repeat(g.maxChildNameLen() - A.length); + l += h + o[u] + "." + A + _(C + o[u]) + "_" + A + `, `; - let A = d.getOptionValue("createdbycol"); - C = h + " ".repeat(g.maxChildNameLen() - A.length), l += h + o[u] + "." + A + z(C + o[u]) + "_" + A + `, + let S = d.getOptionValue("createdbycol"); + C = h + " ".repeat(g.maxChildNameLen() - S.length), l += h + o[u] + "." + S + _(C + o[u]) + "_" + S + `, `; - let H = d.getOptionValue("updatedcol"); - C = h + " ".repeat(g.maxChildNameLen() - H.length), l += h + o[u] + "." + H + z(C + o[u]) + "_" + H + `, + let O = d.getOptionValue("updatedcol"); + C = h + " ".repeat(g.maxChildNameLen() - O.length), l += h + o[u] + "." + O + _(C + o[u]) + "_" + O + `, `; - let O = d.getOptionValue("updatedbycol"); - C = h + " ".repeat(g.maxChildNameLen() - O.length), l += h + o[u] + "." + O + z(C + o[u]) + "_" + O + `, + let G = d.getOptionValue("updatedbycol"); + C = h + " ".repeat(g.maxChildNameLen() - G.length), l += h + o[u] + "." + G + _(C + o[u]) + "_" + G + `, `; } } @@ -8048,9 +8048,9 @@ let ce = function() { `), l += `from `; for (let u = 2; u < o.length; u++) { - let g = " ".repeat(m - o[u].length); - var _ = o[u]; - d.objPrefix() != null && d.objPrefix() != "" && (_ = d.objPrefix() + o[u] + g + o[u]), l += h + _ + `, + let g = " ".repeat(f - o[u].length); + var F = o[u]; + d.objPrefix() != null && d.objPrefix() != "" && (F = d.objPrefix() + o[u] + g + o[u]), l += h + F + `, `; } l.lastIndexOf(`, @@ -8060,18 +8060,18 @@ let ce = function() { for (let u = 2; u < o.length; u++) for (let g = 2; g < o.length; g++) if (g != u) { - var F = o[u], G = o[g], e = d.find(F); + var W = o[u], R = o[g], e = d.find(W); if (e != null) { - var a = d.find(G); + var a = d.find(R); if (a != null) for (var n in e.fks) { var c = e.fks[n]; - c == G && (l += h + F + "." + z(c) + "_id(+) = " + G + `.id and + c == R && (l += h + W + "." + _(c) + "_id(+) = " + R + `.id and `); } } } - return l = f(l, `where + return l = m(l, `where `), l.lastIndexOf(" and") == l.length - 4 && (l = l.substring(0, l.length - 4) + ` `), l += `/ `, l.toLowerCase(); @@ -8080,9 +8080,9 @@ let ce = function() { return ""; let o = this.parseName(); const l = o.indexOf('"') == 0; - let m = d.objPrefix() + o; - return l ? m = d.objPrefix() + o.substring(1, o.length - 1) : m = (d.objPrefix() + o).toUpperCase(), `begin -` + h + "ords.enable_object(p_enabled=>TRUE, p_object=>'" + m + `'); + let f = d.objPrefix() + o; + return l ? f = d.objPrefix() + o.substring(1, o.length - 1) : f = (d.objPrefix() + o).toUpperCase(), `begin +` + h + "ords.enable_object(p_enabled=>TRUE, p_object=>'" + f + `'); end; / `; @@ -8124,39 +8124,39 @@ end; end compress_int; `), o += `begin `; - var m = !1, S = "user"; - d.optionEQvalue("apex", "yes") && (S = "coalesce(sys_context('APEX$SESSION','APP_USER'),user)"), (d.optionEQvalue("rowkey", "yes") || 0 < l.indexOf("/ROWKEY")) && (o += ` if inserting then + var f = !1, y = "user"; + d.optionEQvalue("apex", "yes") && (y = "coalesce(sys_context('APEX$SESSION','APP_USER'),user)"), (d.optionEQvalue("rowkey", "yes") || 0 < l.indexOf("/ROWKEY")) && (o += ` if inserting then `, o += ` :new.row_key := compress_int(row_key_seq.nextval); `, o += ` end if; -`, m = !0); - for (var B = 0; B < this.children.length; B++) { - var M = this.children[B]; +`, f = !0); + for (var P = 0; P < this.children.length; P++) { + var T = this.children[P]; let w = null; - 0 < M.content.indexOf("/lower") ? w = "LOWER".toLowerCase() : 0 < M.content.indexOf("/upper") && (w = "UPPER".toLowerCase()), w != null && (o += " :new." + M.parseName().toLowerCase() + " := " + w + "(:new." + M.parseName().toLowerCase() + `); -`, m = !0); + 0 < T.content.indexOf("/lower") ? w = "LOWER".toLowerCase() : 0 < T.content.indexOf("/upper") && (w = "UPPER".toLowerCase()), w != null && (o += " :new." + T.parseName().toLowerCase() + " := " + w + "(:new." + T.parseName().toLowerCase() + `); +`, f = !0); } (d.optionEQvalue("Row Version Number", "yes") || 0 < l.indexOf("/ROWVERSION")) && (o += ` if inserting then `, o += ` :new.row_version := 1; `, o += ` elsif updating then `, o += ` :new.row_version := NVL(:old.row_version, 0) + 1; `, o += ` end if; -`, m = !0), (d.optionEQvalue("Audit Columns", "yes") || 0 < l.indexOf("/AUDITCOLS") || 0 < l.indexOf("/AUDIT COL")) && (o += ` if inserting then +`, f = !0), (d.optionEQvalue("Audit Columns", "yes") || 0 < l.indexOf("/AUDITCOLS") || 0 < l.indexOf("/AUDIT COL")) && (o += ` if inserting then `, o += " :new." + d.getOptionValue("createdcol") + ` := SYSDATE; -`.toLowerCase(), o += " :new." + d.getOptionValue("createdbycol") + " := " + S + `; +`.toLowerCase(), o += " :new." + d.getOptionValue("createdbycol") + " := " + y + `; `.toLowerCase(), o += ` end if; `, o += " :new." + d.getOptionValue("updatedcol") + ` := SYSDATE; -`.toLowerCase(), o += " :new." + d.getOptionValue("updatedbycol") + " := " + S + `; -`.toLowerCase(), m = !0); - var N = d.additionalColumns(); - for (var k in N) { - var x = N[k]; - o += " if :new." + k + ` is null then -`, x.startsWith("INT") ? o += " " + k + ` := 0; -` : o += " " + k + ` := 'N/A'; +`.toLowerCase(), o += " :new." + d.getOptionValue("updatedbycol") + " := " + y + `; +`.toLowerCase(), f = !0); + var E = d.additionalColumns(); + for (var L in E) { + var x = E[L]; + o += " if :new." + L + ` is null then +`, x.startsWith("INT") ? o += " " + L + ` := 0; +` : o += " " + L + ` := 'N/A'; `, o += ` end if; -`, m = !0; +`, f = !0; } - return m ? (o += "end " + t.toLowerCase() + `_BIU; + return f ? (o += "end " + t.toLowerCase() + `_BIU; / `.toLowerCase(), o) : ""; @@ -8168,15 +8168,15 @@ end; let l = h + "procedure " + i + `_row ( `; l += h + h + "p_id in number" + t; - for (var m in this.fks) { - let B = this.fks[m], M = "number", N = d.find(B); - N != null && N.getExplicitPkNode() != null && (M = N.getExplicitPkNode().parseType((k) => !0)), l += `, -`, l += h + h + "P_" + m + " " + o + " " + M + t; + for (var f in this.fks) { + let P = this.fks[f], T = "number", E = d.find(P); + E != null && E.getExplicitPkNode() != null && (T = E.getExplicitPkNode().parseType((L) => !0)), l += `, +`, l += h + h + "P_" + f + " " + o + " " + T + t; } - for (let B = 0; B < this.children.length; B++) { - var S = this.children[B]; - S.refId() == null && S.children.length == 0 && (l += `, -`, l += h + h + "P_" + S.parseName() + " " + o + " " + S.parseType("plsql") + t); + for (let P = 0; P < this.children.length; P++) { + var y = this.children[P]; + y.refId() == null && y.children.length == 0 && (l += `, +`, l += h + h + "P_" + y.parseName() + " " + o + " " + y.parseType("plsql") + t); } return l += ` )`, l; @@ -8190,44 +8190,44 @@ end; i == "insert" && (l = h + h + "insert into " + t + ` ( `, l += h + h + h + "id"), i == "update" && (l = h + h + "update " + t + ` set `, l += h + h + h + "id = p_id"), o += l; - for (let M in this.fks) { - let N = this.fks[M], k = d.find(N); - k != null && k.getExplicitPkNode() != null && k.getExplicitPkNode().parseType((w) => !0), (i == "insert" || i == "update") && (o += `, + for (let T in this.fks) { + let E = this.fks[T], L = d.find(E); + L != null && L.getExplicitPkNode() != null && L.getExplicitPkNode().parseType((w) => !0), (i == "insert" || i == "update") && (o += `, `); - let x = h + h + h + "P_" + M + " := c1." + M + `; + let x = h + h + h + "P_" + T + " := c1." + T + `; `; - i == "insert" && (x = h + h + h + M), i == "update" && (x = h + h + h + M + " = P_" + M + ` + i == "insert" && (x = h + h + h + T), i == "update" && (x = h + h + h + T + " = P_" + T + ` `), o += x; } - for (var m = 0; m < this.children.length; m++) { - var S = this.children[m]; - if (S.refId() != null || S.children.length != 0) + for (var f = 0; f < this.children.length; f++) { + var y = this.children[f]; + if (y.refId() != null || y.children.length != 0) continue; (i == "insert" || i == "update") && (o += `, `); - let M = h + h + h + "P_" + S.parseName().toLowerCase() + " := c1." + S.parseName().toLowerCase() + `; + let T = h + h + h + "P_" + y.parseName().toLowerCase() + " := c1." + y.parseName().toLowerCase() + `; `; - i == "insert" && (M = h + h + h + S.parseName().toLowerCase()), i == "update" && (M = h + h + h + S.parseName().toLowerCase() + " = P_" + S.parseName().toLowerCase() + ` -`), o += M; + i == "insert" && (T = h + h + h + y.parseName().toLowerCase()), i == "update" && (T = h + h + h + y.parseName().toLowerCase() + " = P_" + y.parseName().toLowerCase() + ` +`), o += T; } if (i == "insert") { o += ` ` + h + h + `) values ( `, o += h + h + h + "p_id"; - for (let M in this.fks) + for (let T in this.fks) o += `, -`, o += h + h + h + "p_" + M; - for (let M = 0; M < this.children.length; M++) { - let N = this.children[M]; - N.refId() == null && N.children.length == 0 && (o += `, -`, o += h + h + h + "p_" + N.parseName()); +`, o += h + h + h + "p_" + T; + for (let T = 0; T < this.children.length; T++) { + let E = this.children[T]; + E.refId() == null && E.children.length == 0 && (o += `, +`, o += h + h + h + "p_" + E.parseName()); } } - let B = ` + let P = ` end loop; `; - return i == "insert" && (B = ` -` + h + h + ");"), i == "update" && (B = h + h + "where id = p_id;"), o += B, o += ` + return i == "insert" && (P = ` +` + h + h + ");"), i == "update" && (P = h + h + "where id = p_id;"), o += P, o += ` ` + h + "end " + i + `_row; `, o += ` `, o; @@ -8272,134 +8272,118 @@ is if (0 < t) { i = i.substr(t + 8); let o = i.split(" "), l = parseInt(o[0]); - const m = d.getOptionValue("datalimit"); - return m < l && (l = m), l; + const f = d.getOptionValue("datalimit"); + return f < l && (l = f), l; } return 0; - }, this.generateData = function(i, t) { + }, this.generateData = function(i) { if (d.optionEQvalue("inserts", !1)) return ""; - const o = this.inserts4tbl(i, t), l = this.orderedTableNodes(); - let m = ""; - for (let S = 0; S < l.length; S++) { - const B = o[l[S].parseName()]; - B != null && (m += B); + const t = this.inserts4tbl(i), o = this.orderedTableNodes(); + let l = ""; + for (let f = 0; f < o.length; f++) { + const y = t[o[f].parseName()]; + y != null && (l += y); } - return m; - }, this.inserts4tbl = function(i, t) { - let o = {}; + return l; + }, this.inserts4tbl = function(i) { + let t = {}; if (d.optionEQvalue("inserts", !1)) return ""; - let l = d.objPrefix() + this.parseName(), m = ""; - for (let B = 0; B < this.cardinality(); B++) { - let M = i; - i != null && Array.isArray(i) && (M = i[B]), m += "insert into " + l + ` ( + let o = d.objPrefix() + this.parseName(), l = ""; + for (let y = 0; y < this.cardinality(); y++) { + let P = null; + if (i != null) { + const E = i[o]; + E != null && Array.isArray(E) && (P = E[y]); + } + l += "insert into " + o + ` ( `; - let N = this.getGenIdColName(); - if (N != null) - m += h + N + `, + let T = this.getGenIdColName(); + if (T != null) + l += h + T + `, `; else { - let k = this.getExplicitPkNode(); - k != null && (m += h + k.parseName() + `, + let E = this.getExplicitPkNode(); + E != null && (l += h + E.parseName() + `, `); } - for (let k in this.fks) { - let x = this.fks[k], w = d.find(x), R = ""; - w == null && (w = d.find(k), w.isMany2One() & !k.endsWith("_id") && (x = k, k = z(k), R = "_id")), m += h + k + R + `, + for (let E in this.fks) { + let L = this.fks[E], x = d.find(L), w = ""; + x == null && (x = d.find(E), x.isMany2One() & !E.endsWith("_id") && (L = E, E = _(E), w = "_id")), l += h + E + w + `, `; } - for (let k = 0; k < this.children.length; k++) { - let x = this.children[k]; - if (!(N != null && x.parseName() == "id") && x.refId() == null) { - if (x == this.getExplicitPkNode()) + for (let E = 0; E < this.children.length; E++) { + let L = this.children[E]; + if (!(T != null && L.parseName() == "id") && L.refId() == null) { + if (L == this.getExplicitPkNode()) continue; - x.children.length == 0 && (m += h + x.parseName() + `, + L.children.length == 0 && (l += h + L.parseName() + `, `); } } - if (m.lastIndexOf(`, -`) == m.length - 2 && (m = m.substr(0, m.length - 2) + ` -`), m += `) values ( -`, N != null) - m += h + (B + 1) + `, + if (l.lastIndexOf(`, +`) == l.length - 2 && (l = l.substr(0, l.length - 2) + ` +`), l += `) values ( +`, T != null) + l += h + (y + 1) + `, `; else { - let k = this.getExplicitPkNode(); - if (k != null) { - const x = k.parseName(); - let w = p(d.data, null, x, this.parseName()), R = -1; - M != null && (R = M[x]), w != null && w[B] != null && (R = w[B]), m += h + (R != -1 ? R : B + 1) + `, + let E = this.getExplicitPkNode(); + if (E != null) { + const L = E.parseName(); + let x = b(d.data, null, L, this.parseName()), w = -1; + P != null && (w = P[L]), x != null && x[y] != null && (w = x[y]), w.replaceAll && (w = "'" + w + "'"), l += h + (w != -1 ? w : y + 1) + `, `; } } - this.parseName() == "donut_batters" && console.log(""); - for (let k in this.fks) { - let x = this.fks[k], w = d.find(x), R = []; - for (let _ = 1; _ <= w.cardinality(); _++) - R.push(_); - if (t != null && w != null) { - const _ = w.getPkName(); - if (_ == null) - continue; - let F = t[_]; - F != null && (R = [], R[0] = F); + for (let E in this.fks) { + let L = this.fks[E], x = d.find(L), w = [], H = "INTEGER"; + for (let F = 1; F <= x.cardinality(); F++) + w.push(F); + if (P != null) { + let F = P[E]; + F != null && (typeof F == "string" && (H = "STRING"), w = [], w[0] = F); } - if (M != null) { - let _ = M[x]; - if (_ != null) { - const F = w.getPkName(); - if (F == null) - continue; - let G = _[F]; - G != null && (R = [], R[0] = G); - } - } - m += h + le(d.getOptionValue("Data Language"), se(l, z(x) + "_id", "INTEGER", R)) + `, + l += h + le(d.getOptionValue("Data Language"), se(o, _(L) + "_id", H, w)) + `, `; } - for (let k = 0; k < this.children.length; k++) { - let x = this.children[k]; - if (!(N != null && x.parseName() == "id") && x.refId() == null) { - if (x == this.getExplicitPkNode()) + for (let E = 0; E < this.children.length; E++) { + let L = this.children[E]; + if (!(T != null && L.parseName() == "id") && L.refId() == null) { + if (L == this.getExplicitPkNode()) continue; - if (x.children.length == 0) { - let w = x.parseValues(), R = x.parseName(); - if (M != null) { - let G = M[R]; - G != null && (w = [], w[0] = G); + if (L.children.length == 0) { + let x = L.parseValues(), w = L.parseName(); + if (P != null) { + let F = P[w]; + F != null && (x = [], x[0] = F); } - let _ = p(d.data, null, R, this.parseName()); - _ != null && _[B] != null && (w = [], w[0] = _[B]); - let F = se(l, R, x.parseType(), w); - m += h + le(d.getOptionValue("Data Language"), F) + `, + let H = se(o, w, L.parseType(), x); + l += h + le(d.getOptionValue("Data Language"), H) + `, `; } } } - m.lastIndexOf(`, -`) == m.length - 2 && (m = m.substr(0, m.length - 2) + ` -`), m += `); + l.lastIndexOf(`, +`) == l.length - 2 && (l = l.substr(0, l.length - 2) + ` +`), l += `); `; } - m != "" && (m += ` + l != "" && (l += ` commit; `); - let S = this.getGenIdColName(); - S != null && 1 < this.cardinality() && !d.optionEQvalue("pk", "guid") && (m += "alter table " + l + ` -modify ` + S + " generated always as identity restart start with " + (this.cardinality() + 1) + `; + let f = this.getGenIdColName(); + f != null && 1 < this.cardinality() && !d.optionEQvalue("pk", "guid") && (l += "alter table " + o + ` +modify ` + f + " generated always as identity restart start with " + (this.cardinality() + 1) + `; -`), o[l] = m; - for (let B = 0; B < this.children.length; B++) { - const M = this.children[B]; - if (0 < M.children.length) { - const N = i; - let k = null; - i != null && (k = i[M.parseName()]), o = { ...o, ...M.inserts4tbl(k, N) }; - } +`), t[o] = l; + for (let y = 0; y < this.children.length; y++) { + const P = this.children[y]; + 0 < P.children.length && (t = { ...t, ...P.inserts4tbl(i) }); } - return o; + return t; }, this.isArray = function() { return !this.isMany2One() && this.parent != null; }, this.hasNonArrayChildId = function(i) { @@ -8415,28 +8399,28 @@ modify ` + S + " generated always as identity restart start with " + (this.card this.getExplicitPkNode == null && (o += i + "'" + this.getGenIdColName() + "' : " + t + "." + this.getGenIdColName() + `, `); for (var l = 0; l < this.children.length; l++) { - var m = this.children[l], S = m.parseName(); - if (m.children.length == 0) { - if (this.hasNonArrayChildId(S)) + var f = this.children[l], y = f.parseName(); + if (f.children.length == 0) { + if (this.hasNonArrayChildId(y)) continue; - o += i + "'" + S + "' : " + t + "." + S; + o += i + "'" + y + "' : " + t + "." + y; } else { - if (o += i + "'" + S + `' : [ -`, m.isMany2One(), i += " ", o += i + `select JSON { + if (o += i + "'" + y + `' : [ +`, f.isMany2One(), i += " ", o += i + `select JSON { `, this.isMany2One()) throw new Error(this.one2many2oneUnsupoported); - o += m.generateSelectJsonTopDown(i + " "), o += i + " WITH NOCHECK } from " + S + ` with INSERT UPDATE + o += f.generateSelectJsonTopDown(i + " "), o += i + " WITH NOCHECK } from " + y + ` with INSERT UPDATE `; - let N = null; - for (var B in m.fks) { - var M = m.fks[B]; - if (M == t) { - N = B; + let E = null; + for (var P in f.fks) { + var T = f.fks[P]; + if (T == t) { + E = P; break; } } - const k = t + "." + this.getPkName(), x = S + "." + N; - o += i + "where " + x + " = " + k + ` + const L = t + "." + this.getPkName(), x = y + "." + E; + o += i + "where " + x + " = " + L + ` `, i = i.slice(0, -2), o += i + "]"; } o += l < this.children.length - 1 ? `, @@ -8457,260 +8441,318 @@ modify ` + S + " generated always as identity restart start with " + (this.card `), o; }; } - function D(y) { - d = y; - const I = y.input; + function D(v) { + d = v; + const M = v.input; let r = [], s = []; - const i = Q(I + ` + const i = Q(M + ` `, !0, !0, ""); d.data = null; let t = null, o = "", l = 0; e: - for (let m in i) { - const S = i[m]; - if (S.value == ` + for (let f in i) { + const y = i[f]; + if (y.value == ` ` && t == null) { if (o = o.replace(/\r/g, ""), o.replace(/\r/g, "").replace(/ /g, "") == "") { o = "", l++; continue; } - let M = new T(l, o, null), N = !1; - for (let k = 0; k < r.length; k++) { - let x = r[k]; - if (M.apparentDepth() <= x.apparentDepth()) - if (0 < k) { - let w = r[k - 1]; - M = new T(l, o, w), r[k] = M, r = r.slice(0, k + 1), N = !0; + let T = new I(l, o, null), E = !1; + for (let L = 0; L < r.length; L++) { + let x = r[L]; + if (T.apparentDepth() <= x.apparentDepth()) + if (0 < L) { + let w = r[L - 1]; + T = new I(l, o, w), r[L] = T, r = r.slice(0, L + 1), E = !0; break; } else - r[0] = M, r = r.slice(0, 1), s.push(M), N = !0; + r[0] = T, r = r.slice(0, 1), s.push(T), E = !0; } - if (!N) { + if (!E) { if (0 < r.length) { - let k = r[r.length - 1]; - M = new T(l, o, k); + let L = r[r.length - 1]; + T = new I(l, o, L); } - r.push(M), M.apparentDepth() == 0 && s.push(M); + r.push(T), T.apparentDepth() == 0 && s.push(T); } - if (M.isMany2One()) { - const k = M.parent; - k.fks == null && (k.fks = []); - let x = M.refId(); - x == null && (x = M.parseName()), k.fks[M.parseName() + "_id"] = x; + if (T.isMany2One()) { + const L = T.parent; + L.fks == null && (L.fks = []); + let x = T.refId(); + x == null && (x = T.parseName()), L.fks[T.parseName() + "_id"] = x; } l++, o = ""; continue; } - if (t == null && S.value == "#") { + if (t == null && y.value == "#") { t = ""; continue; } if (t != null) { - if (t += S.value, S.value != ` -` && S.value != "}") + if (t += y.value, y.value != ` +` && y.value != "}") continue; - const B = Q(t, !1, !0, ""); - if (B.length % 4 == 3 && B[1].value == ":") { - y.setOptions(t), t = null, o = ""; + const P = Q(t, !1, !0, ""); + if (P.length % 4 == 3 && P[1].value == ":") { + v.setOptions(t), t = null, o = ""; continue; } - let M = null, N = null; - for (let k in B) { - const x = B[k]; - if (M == null && x.value == "document") { - M = ""; + let T = null, E = null; + for (let L in P) { + const x = P[L]; + if (T == null && x.value == "flattened") { + T = ""; continue; } - if (M != null) { - if (M += x.value, M == "=") + if (T != null) { + if (T += x.value, T == "=" || T.charAt(T.length - 1) != "}") continue; - let w = M.substring(1); + let w = T.substring(1); + w.length == 57 && w.length == 57; try { d.data = JSON.parse(w), t = null, o = ""; continue e; } catch { } } - if (N == null && x.value == "settings") { - N = ""; + if (E == null && x.value == "settings") { + E = ""; continue; } - if (N != null) { - N += x.value, N.substring(1); + if (E != null) { + E += x.value, E.substring(1); try { - y.setOptions(N), t = null, o = ""; + v.setOptions(E), t = null, o = ""; continue e; } catch { } } } } - if (S.type != "comment") { - if (S.type == "line-comment") { - 0 < o.trim().length && (o += S.value); + if (y.type != "comment") { + if (y.type == "line-comment") { + 0 < o.trim().length && (o += y.value); continue; } - o += S.value; + o += y.value; } } return s; } - function f(y, I) { - let r = I.toLowerCase(); - return 0 < y.indexOf(r) && y.indexOf(r) == y.length - r.length ? y.substring(0, y.length - r.length) : y.trim(); + function m(v, M) { + let r = M.toLowerCase(); + return 0 < v.indexOf(r) && v.indexOf(r) == v.length - r.length ? v.substring(0, v.length - r.length) : v.trim(); } - function p(y, I, r, s) { + function b(v, M, r, s) { let i = []; - if (y == null || typeof y != "object") + if (v == null || typeof v != "object") return null; - let t = y[r]; - t != null && I == s && i.push(t); - for (var o in y) { - let l = y[o]; - t = p(l, o, r, s), t != null && (i = i.concat(t)); + let t = v[r]; + t != null && M == s && i.push(t); + for (var o in v) { + let l = v[o]; + t = b(l, o, r, s), t != null && (i = i.concat(t)); } return i; } return D; }(); var Ae = function() { - function d() { - this.aggrCounts = {}, this.calculateCounts = function(E, L) { - let T = this.aggrSizes[E]; - T == null && (T = 0); - let D = 1; - L.length != null && (D = L.length), this.aggrSizes[E] = T + D; - for (let f in L) - L[f] != null && typeof L[f] == "object" && this.calculateCounts(f, L[f]); - }, this.introspect = function(E, L, T, D) { - const f = this.aggrSizes == null; - if (f) { - if (this.aggrSizes = {}, T == 0) - for (let I in L) { - let r = ["_address", "_id", "_name", "Id"], s = !1, i = ""; - for (let t = 0; t < r.length; t++) { - const o = r[t]; - if (I.endsWith(o)) { - i += I.substring(0, I.length - o.length), s = !0; - break; - } - } - !s && E == null ? E = "unnamed_entity" : s && (E = i); - break; - } - this.calculateCounts(E, L); + function d(m) { + for (var b = "", v = 0; v < m; v++) + b = b + " "; + return b; + } + function h(m, b) { + for (const v in m) + if (JSON.stringify(m[v]) == JSON.stringify(b)) + return !0; + return !1; + } + function k(m) { + let b = ["_id", "Id"]; + if (m.id != null) + return m.id; + for (let v = 0; v < b.length; v++) { + const M = b[v]; + for (let r in m) + if (r.endsWith(M)) + return m[r]; + } + } + function N(m) { + for (let b in m) + if (!(m[b] != null && typeof m[b] == "object")) + return !0; + return !1; + } + function I(m, b) { + const v = JSON.parse(m), M = new D(); + M.duplicatesAndParents(b, v), M.flatten(b, v); + let r = M.output(b, v, 0); + return r += ` + +#settings = { genpk: false, drop: true }`, r += ` + +#flattened = +`, r += JSON.stringify(M.tables, null, 3), r += ` +`, r += ` + +-- Generated by json2qsql.js ${oe()} ` + (/* @__PURE__ */ new Date()).toLocaleString() + ` + +`, r += `#document = +`, r += JSON.stringify(v, null, 3), r += ` +`, r; + } + function D() { + this.tables = {}, this.notNormalized = [], this.allTables = [], this.child2parent = {}, this.objCounts = {}, this.output = function(m, b, v, M) { + if (M != !1 && this.notNormalized.includes(m)) { + const i = this.parent(m) + "_" + m, t = this.tables[i]; + if (t != null) { + let o = ` +` + d(v) + i + " /insert " + t.length; + return t[0], o += this.output(m, b, v + 1, !1), o; + } } - let p = ""; - D != null && D && (p = ">"); - let y = E; - if (0 < T && (y = ` -` + h(T) + p + E), typeof L == "number" && (y += " num", E.endsWith("_id") || E.endsWith("Id"))) - return y += " /pk", y; + let r = m, s = ""; + if (this.notNormalized.includes(m) && (s = ">"), 0 < v && (r = ` +` + d(v) + s + m), typeof b == "string" && (r += " vc"), typeof b == "number" && (r += " num", m.endsWith("_id") || m.endsWith("Id"))) + return r += " /pk", r; + if (m == "id") + return ` +` + d(v) + "id vc32 /pk"; e: - if (typeof L == "object") { - if (Array.isArray(L)) - for (let r in L) { - 1 <= r && console.log("1 <= property !"); - const s = L[r]; - y = this.introspect(E, s, T, !1); + if (typeof b == "object") { + if (Array.isArray(b)) + for (const t in b) { + 1 <= t && console.log("1 <= property !"); + const o = b[t]; + r = this.output(m, o, v, M); break e; } - else if (E != "") { - let r = this.aggrSizes[E]; - y += " /insert " + r; - } - let I = ""; - for (let r in L) { - const s = L[r]; - if (r != null) { - const o = z(E), l = r.toLowerCase(); - if (E != null && o + "_id" == l && 0 < T && (I = r), o + "_id" == l) + else + m != "" && (r += " /insert " + this.tables[m].length); + let i = ""; + for (let t in b) { + const o = b[t]; + if (t != null) { + const f = _(m), y = t.toLowerCase(); + if (m != null && f + "_id" == y && 0 < v && (i = t), f + "_id" == y) continue; } - let i = typeof s == "object"; - const t = this.introspect(r, s, T + 1, i); - y += t; + this.allTables.includes(m) || (r = "", v--); + const l = this.output(t, o, v + 1); + r += l; } - I != "" && (y += ` -` + h(T) + I); + i != "" && (r += ` +` + d(v) + i); } - return f && (y += ` - -dv ` + E + "_dv " + E, y += ` - -#settings = { genpk: false, drop: true }`, y += ` - --- Generated by json2qsql.js ${oe()} ` + (/* @__PURE__ */ new Date()).toLocaleString() + ` - -`, y += `#document = -`, y += JSON.stringify(L, null, 3), y += ` -`, this.aggrSizes = null), y; + return r; + }, this.flatten = function(m, b, v) { + let M = {}; + for (let i in b) + if (b[i] != null && typeof b[i] == "object") { + let t = m, o = v; + if (isNaN(i)) { + t = i; + const l = k(M); + l != null && (o = l); + } + this.flatten(t, b[i], o); + } else + M[i] = b[i]; + const r = 0 < Object.keys(M).length; + let s = this.tables[m]; + if (r) { + if (s == null && (s = []), h(s, M) || s.push(M), this.notNormalized.includes(m)) { + const i = this.parent(m); + if (i != null) { + const t = i + "_" + m; + let o = this.tables[t]; + o == null && (o = []); + const l = {}; + l[_(i) + "_id"] = v, l[_(m) + "_id"] = k(M), o.push(l), this.tables[t] = o; + } + } + this.tables[m] = s; + } else + s == null && (this.tables[m] = []); + }, this.duplicatesAndParents = function(m, b) { + const v = '"' + m + '":' + JSON.stringify(b); + let M = this.objCounts[v]; + M == null && (M = 0); + let r = !1; + for (let i in b) + if (b[i] != null && typeof b[i] == "object") { + let t = m; + isNaN(i) && (t = i), t != m && (this.child2parent[t] = m), this.duplicatesAndParents(t, b[i]), r = !0; + } + N(b) && !this.allTables.includes(m) && this.allTables.push(m), r || (this.objCounts[v] = M + 1), 1 < this.objCounts[v] && !this.notNormalized.includes(m) && this.notNormalized.push(m); + }, this.parent = function(m) { + let b = this.child2parent[m]; + return b != null && !this.allTables.includes(b) ? this.parent(b) : b; }; } - function h(E) { - for (var L = "", T = 0; T < E; T++) - L = L + " "; - return L; - } - return new d(); + return I; }(); const ye = function() { - function d(f, p, y, I) { - this.from = p, this.to = y, y == null && (this.to = new h(p.line, p.depth + 1)), this.message = f, this.severity = I, I == null && (this.severity = "error"); + function d(m, b, v, M) { + this.from = b, this.to = v, v == null && (this.to = new h(b.line, b.depth + 1)), this.message = m, this.severity = M, M == null && (this.severity = "error"); } - function h(f, p) { - this.line = f, this.depth = p; + function h(m, b) { + this.line = m, this.depth = b; } - function E(f) { - const p = f, y = f.input; - let I = []; - const r = y.split(` + function k(m) { + const b = m, v = m.input; + let M = []; + const r = v.split(` `); - I = I.concat(D(r)); - const s = p.descendants(); + M = M.concat(D(r)); + const s = b.descendants(); for (let i = 0; i < s.length; i++) { const t = s[i]; - if (p.optionEQvalue("genpk", !0) && s[i].parseName() == "id") { - const m = t.content.toLowerCase().indexOf("id"); - I.push(new d(q.duplicateId, new h(t.line, m))); + if (b.optionEQvalue("genpk", !0) && s[i].parseName() == "id") { + const f = t.content.toLowerCase().indexOf("id"); + M.push(new d(q.duplicateId, new h(t.line, f))); continue; } const o = t.src[2]; if (2 < t.src.length && o.value == "-") { - const m = o.begin; - I.push(new d(q.invalidDatatype, new h(t.line, m))); + const f = o.begin; + M.push(new d(q.invalidDatatype, new h(t.line, f))); continue; } const l = t.src[1]; if (1 < t.src.length && 0 < l.value.indexOf("0")) { - const m = l.begin; - I.push(new d(q.invalidDatatype, new h(t.line, m))); + const f = l.begin; + M.push(new d(q.invalidDatatype, new h(t.line, f))); continue; } - I = I.concat(L(p, t)), I = I.concat(T(p, t)); + M = M.concat(N(b, t)), M = M.concat(I(b, t)); } - return I; + return M; } - function L(f, p) { - var y = [], I = p.content.toLowerCase(); - if (p.parseType() == "view") { - var r = ee(I, " "); + function N(m, b) { + var v = [], M = b.content.toLowerCase(); + if (b.parseType() == "view") { + var r = ee(M, " "); let t = 0; for (var s = 0; s < r.length; s++) if (t += r[s].length, r[s] != " " && r[s] != "view" && s != 1) { - var i = f.find(r[s]); - i == null && y.push(new d( + var i = m.find(r[s]); + i == null && v.push(new d( q.undefinedObject + r[s], - new h(p.line, t - r[s].length) + new h(b.line, t - r[s].length) )); } } - return y; + return v; } - function T(f, p) { - var y = [], I = p.content.toLowerCase(); - if (0 < I.indexOf("/fk") || 0 < I.indexOf("/reference")) { - let i = ee(I, " "), t = 0, o = !1; + function I(m, b) { + var v = [], M = b.content.toLowerCase(); + if (0 < M.indexOf("/fk") || 0 < M.indexOf("/reference")) { + let i = ee(M, " "), t = 0, o = !1; for (var r = 0; r < i.length; r++) if (t += i[r].length, i[r] != " ") { if (i[r] == "/fk" || i[r].indexOf("/reference") == 0) { @@ -8718,68 +8760,68 @@ const ye = function() { continue; } if (o) { - var s = f.find(i[r]); + var s = m.find(i[r]); if (s == null) { - y.push(new d( + v.push(new d( q.undefinedObject + i[r], - new h(p.line, t - i[r].length) + new h(b.line, t - i[r].length) )); break; } } } } - return y; + return v; } - function D(f) { - for (var p = [], y = Se(f), I = 1; I < f.length; I++) { - var r = f[I - 1], s = f[I], i = te(r), t = te(s); - t != 0 && i < t && t < i + y && p.push( + function D(m) { + for (var b = [], v = Se(m), M = 1; M < m.length; M++) { + var r = m[M - 1], s = m[M], i = te(r), t = te(s); + t != 0 && i < t && t < i + v && b.push( new d( - q.misalignedAttribute + y, - new h(I, t) + q.misalignedAttribute + v, + new h(M, t) ) ); } - return p; + return b; } - return E; + return k; }(); function Se(d) { let h = []; - for (var E = 0; E < d.length; E++) { - var L = d[E]; - h[E] = te(L); + for (var k = 0; k < d.length; k++) { + var N = d[k]; + h[k] = te(N); } - let T = []; - for (let f = 0; f < h.length; f++) { - let p = Me(h, f); - if (p != null) { - let y = T[h[f] - h[p]]; - y == null && (y = 0), T[h[f] - h[p]] = y + 1; + let I = []; + for (let m = 0; m < h.length; m++) { + let b = Me(h, m); + if (b != null) { + let v = I[h[m] - h[b]]; + v == null && (v = 0), I[h[m] - h[b]] = v + 1; } } let D = null; - for (let f in T) - (D == null || T[D] <= T[f]) && (D = f); + for (let m in I) + (D == null || I[D] <= I[m]) && (D = m); return D; } function te(d) { - for (var h = d.split(/ |\t/), E = 0, L = 0; L < h.length; L++) { - var T = h[L]; - if (T == " " && (E += 4), T == "") { - E++; + for (var h = d.split(/ |\t/), k = 0, N = 0; N < h.length; N++) { + var I = h[N]; + if (I == " " && (k += 4), I == "") { + k++; continue; } - if (!/[^.a-zA-Z0-9_"]/.test(T)) - return E; + if (!/[^.a-zA-Z0-9_"]/.test(I)) + return k; } return 0; } function Me(d, h) { - for (let E = h; 0 <= E; E--) - if (d[E] < d[h]) - return E; + for (let k = h; 0 <= k; k--) + if (d[k] < d[h]) + return k; return null; } const q = { @@ -8821,238 +8863,237 @@ const q = { //"Auxiliary Columns": {label: "Auxiliary Columns", value:''}, // e.g. security_group_id integer //namecase: {label: 'Object and Field name convention', value:'canonic',check:['canonic','json']}, }; - function h(L) { - if (L == null) + function h(N) { + if (N == null) return null; - let T = L; - return typeof T == "string" && (T = T.toLowerCase()), T == "yes" ? !0 : T == "no" ? !1 : T == "y" ? !0 : T == "n" ? !1 : T == "true" ? !0 : T == "false" ? !1 : T == ie.toLowerCase() ? "identity" : T == ue.toLowerCase() ? "guid" : T == me.toLowerCase() ? "tswtz" : T == de.toLowerCase() ? "tswltz" : T; + let I = N; + return typeof I == "string" && (I = I.toLowerCase()), I == "yes" ? !0 : I == "no" ? !1 : I == "y" ? !0 : I == "n" ? !1 : I == "true" ? !0 : I == "false" ? !1 : I == ie.toLowerCase() ? "identity" : I == ue.toLowerCase() ? "guid" : I == me.toLowerCase() ? "tswtz" : I == de.toLowerCase() ? "tswltz" : I; } - function E(L, T) { - this.ddl = null, this.erd = null, this.errors = null, this.options = JSON.parse(JSON.stringify(d)), this.input = L, this.getOptionValue = function(f) { - const p = f.toLowerCase(); - let y = this.options[p]; - if (!(p in this.options)) - for (let I in this.options) { - const r = this.options[I].label; + function k(N, I) { + this.ddl = null, this.erd = null, this.errors = null, this.options = JSON.parse(JSON.stringify(d)), this.input = N, this.getOptionValue = function(m) { + const b = m.toLowerCase(); + let v = this.options[b]; + if (!(b in this.options)) + for (let M in this.options) { + const r = this.options[M].label; if (r == null) continue; - r.toLowerCase() == p && (y = this.options[I]); + r.toLowerCase() == b && (v = this.options[M]); } - return y == null ? null : y.value; - }, this.optionEQvalue = function(f, p) { - var y = this.getOptionValue(f); - return h(y) == h(p); + return v == null ? null : v.value; + }, this.optionEQvalue = function(m, b) { + var v = this.getOptionValue(m); + return h(v) == h(b); }, this.nonDefaultOptions = function() { - let f = {}; - for (let p in this.options) - d[p] && !this.optionEQvalue(p, d[p].value) && (f[p] = this.options[p].value); - return f; + let m = {}; + for (let b in this.options) + d[b] && !this.optionEQvalue(b, d[b].value) && (m[b] = this.options[b].value); + return m; }, this.unknownOptions = function() { - let f = []; - for (let p in this.options) - d[p] == null && f.push(p); - return f; - }, this.setOptionValue = function(f, p) { - let y = f.toLowerCase(); - if (!(y in this.options)) { + let m = []; + for (let b in this.options) + d[b] == null && m.push(b); + return m; + }, this.setOptionValue = function(m, b) { + let v = m.toLowerCase(); + if (!(v in this.options)) { for (let r in this.options) - if (this.options[r].label == f) { - this.options[r].value = p; + if (this.options[r].label == m) { + this.options[r].value = b; return; } } - p == null && (p = ""); - let I = this.options[y]; - I == null && (I = {}, this.options[y] = I), I.value = p; + b == null && (b = ""); + let M = this.options[v]; + M == null && (M = {}, this.options[v] = M), M.value = b; }, this.semantics = function() { - var f = ""; - return this.optionEQvalue("semantics", "CHAR") ? f = " char" : this.optionEQvalue("semantics", "BYTE") && (f = " byte"), f; - }, this.find = function(f) { - for (var p = 0; p < this.forest.length; p++) - for (var y = this.forest[p].descendants(), I = 0; I < y.length; I++) { - var r = y[I]; - if (r.parseName() == he(f)) + var m = ""; + return this.optionEQvalue("semantics", "CHAR") ? m = " char" : this.optionEQvalue("semantics", "BYTE") && (m = " byte"), m; + }, this.find = function(m) { + for (var b = 0; b < this.forest.length; b++) + for (var v = this.forest[b].descendants(), M = 0; M < v.length; M++) { + var r = v[M]; + if (r.parseName() == he(m)) return r; } return null; - }, this.setOptions = function(f) { - f = f.trim(), f.startsWith("#") && (f = f.substring(1).trim()); - const p = f.indexOf("="); - let y = f.substring(p + 1).trim(); - y.indexOf("{") < 0 && (y = "{" + f + "}"); - let I = "", r = Q(y, !0, !0, ""); + }, this.setOptions = function(m) { + m = m.trim(), m.startsWith("#") && (m = m.substring(1).trim()); + const b = m.indexOf("="); + let v = m.substring(b + 1).trim(); + v.indexOf("{") < 0 && (v = "{" + m + "}"); + let M = "", r = Q(v, !0, !0, ""); for (let i in r) { let t = r[i]; - t.type == "identifier" && t.value != "true" && t.value != "false" && t.value != "null" ? I += '"' + t.value + '"' : I += t.value; + t.type == "identifier" && t.value != "true" && t.value != "false" && t.value != "null" ? M += '"' + t.value + '"' : M += t.value; } - let s = JSON.parse(I); + let s = JSON.parse(M); for (let i in s) this.setOptionValue(i.toLowerCase(), s[i]); }, this.descendants = function() { - for (var f = [], p = 0; p < this.forest.length; p++) - f = f.concat(this.forest[p].descendants()); - return f; + for (var m = [], b = 0; b < this.forest.length; b++) + m = m.concat(this.forest[b].descendants()); + return m; }, this.additionalColumns = function() { - var f = [], p = this.getOptionValue("Auxiliary Columns"); - if (p == null) - return f; - for (var y = p.split(","), I = 0; I < y.length; I++) { - var r = y[I].trim(), s = "VARCHAR2(4000)", i = r.indexOf(" "); - 0 < i && (s = r.substring(i + 1).toUpperCase(), r = r.substring(0, i)), f[r] = s; + var m = [], b = this.getOptionValue("Auxiliary Columns"); + if (b == null) + return m; + for (var v = b.split(","), M = 0; M < v.length; M++) { + var r = v[M].trim(), s = "VARCHAR2(4000)", i = r.indexOf(" "); + 0 < i && (s = r.substring(i + 1).toUpperCase(), r = r.substring(0, i)), m[r] = s; } - return f; - }, this.objPrefix = function(f) { - var p = this.getOptionValue("schema"); - p == null && (p = ""), p != "" && f == null ? p = p + "." : p = ""; - var y = ""; - return this.getOptionValue("prefix") != null && (y = this.getOptionValue("prefix")), p = p + y, y != "" && (p = p + "_"), p.toLowerCase(); + return m; + }, this.objPrefix = function(m) { + var b = this.getOptionValue("schema"); + b == null && (b = ""), b != "" && m == null ? b = b + "." : b = ""; + var v = ""; + return this.getOptionValue("prefix") != null && (v = this.getOptionValue("prefix")), b = b + v, v != "" && (b = b + "_"), b.toLowerCase(); }; let D = ""; - 0 < L.toLowerCase().indexOf("overridesettings") && ce(this), T != null && this.optionEQvalue("overrideSettings", !1) && (D = "# settings = " + T + ` + 0 < N.toLowerCase().indexOf("overridesettings") && ce(this), I != null && this.optionEQvalue("overrideSettings", !1) && (D = "# settings = " + I + ` -`), this.input = D + L, this.forest = ce(this), this.getERD = function() { +`), this.input = D + N, this.forest = ce(this), this.getERD = function() { if (this.erd != null) return this.erd; - let f = this.descendants(), p = { items: [] }; - for (let r = 0; r < f.length; r++) { - if (f[r].parseType() != "table") + let m = this.descendants(), b = { items: [] }; + for (let r = 0; r < m.length; r++) { + if (m[r].parseType() != "table") continue; - let s = { name: this.objPrefix("no schema") + f[r].parseName("") }, i = this.getOptionValue("schema"); - i == "" && (i = null), s.schema = i, s.columns = [], p.items.push(s); - let t = f[r].getGenIdColName(); + let s = { name: this.objPrefix("no schema") + m[r].parseName("") }, i = this.getOptionValue("schema"); + i == "" && (i = null), s.schema = i, s.columns = [], b.items.push(s); + let t = m[r].getGenIdColName(); t != null && s.columns.push({ name: t, datatype: "number" }); - for (let l = 0; l < f[r].children.length; l++) { - let m = f[r].children[l]; - if (m.parseType() != "table" && (s.columns.push({ name: m.parseName(""), datatype: m.parseType((S) => !0) }), 0 < m.indexOf("file"))) { - const S = m.parseName(); - s.columns.push({ name: S + "_filename", datatype: "varchar2(255" + this.semantics() + ")" }), s.columns.push({ name: S + "_mimetype", datatype: "varchar2(255" + this.semantics() + ")" }), s.columns.push({ name: S + "_charset", datatype: "varchar2(255" + this.semantics() + ")" }), s.columns.push({ name: S + "_lastupd", datatype: "date" }); + for (let l = 0; l < m[r].children.length; l++) { + let f = m[r].children[l]; + if (f.parseType() != "table" && (s.columns.push({ name: f.parseName(""), datatype: f.parseType((y) => !0) }), 0 < f.indexOf("file"))) { + const y = f.parseName(); + s.columns.push({ name: y + "_filename", datatype: "varchar2(255" + this.semantics() + ")" }), s.columns.push({ name: y + "_mimetype", datatype: "varchar2(255" + this.semantics() + ")" }), s.columns.push({ name: y + "_charset", datatype: "varchar2(255" + this.semantics() + ")" }), s.columns.push({ name: y + "_lastupd", datatype: "date" }); } } - const o = f[r].trimmedContent().toUpperCase(); + const o = m[r].trimmedContent().toUpperCase(); if ((this.optionEQvalue("rowkey", !0) || 0 < o.indexOf("/ROWKEY")) && s.columns.push({ name: "row_key", datatype: "varchar2(30 char)" }), (this.optionEQvalue("rowVersion", "yes") || 0 < o.indexOf("/ROWVERSION")) && s.columns.push({ name: "row_version", datatype: "integer" }), this.optionEQvalue("Audit Columns", "yes") || 0 < o.indexOf("/AUDITCOLS")) { let l = this.getOptionValue("createdcol"); s.columns.push({ name: l, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); - let m = this.getOptionValue("createdbycol"); - s.columns.push({ name: m, datatype: "varchar2(255" + this.semantics() + ")" }); - let S = this.getOptionValue("updatedcol"); - s.columns.push({ name: S, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); - let B = this.getOptionValue("updatedbycol"); - s.columns.push({ name: B, datatype: "varchar2(255" + this.semantics() + ")" }); + let f = this.getOptionValue("createdbycol"); + s.columns.push({ name: f, datatype: "varchar2(255" + this.semantics() + ")" }); + let y = this.getOptionValue("updatedcol"); + s.columns.push({ name: y, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); + let P = this.getOptionValue("updatedbycol"); + s.columns.push({ name: P, datatype: "varchar2(255" + this.semantics() + ")" }); } - var y = this.additionalColumns(); - for (let l in y) { - var I = y[l]; - pad = tab + " ".repeat(this.maxChildNameLen() - l.length), ret += tab + l.toUpperCase() + pad + I + ` not null, + var v = this.additionalColumns(); + for (let l in v) { + var M = v[l]; + pad = tab + " ".repeat(this.maxChildNameLen() - l.length), ret += tab + l.toUpperCase() + pad + M + ` not null, `; } } - p.links = []; - for (let r = 0; r < f.length; r++) - if (f[r].parseType() == "table") { - f[r].toDDL(); - for (let s in f[r].fks) { - let i = f[r].fks[s], t = this.find(i); + b.links = []; + for (let r = 0; r < m.length; r++) + if (m[r].parseType() == "table") { + m[r].toDDL(); + for (let s in m[r].fks) { + let i = m[r].fks[s], t = this.find(i); if (t == null) continue; let o = "id"; - t.getExplicitPkNode() != null && (o = t.getExplicitPkNode().parseName()), p.links.push({ + t.getExplicitPkNode() != null && (o = t.getExplicitPkNode().parseName()), b.links.push({ source: this.objPrefix() + i, source_id: o, - target: this.objPrefix() + f[r].parseName(""), + target: this.objPrefix() + m[r].parseName(""), target_id: s }); } } - return this.erd = p, p; + return this.erd = b, b; }, this.getDDL = function() { if (this.ddl != null) return this.ddl; - var f = "", p = this.descendants(); + var m = "", b = this.descendants(); if (this.optionEQvalue("Include Drops", "yes")) - for (let r = 0; r < p.length; r++) { - let s = p[r].generateDrop(); - s != "" && (f += s); + for (let r = 0; r < b.length; r++) { + let s = b[r].generateDrop(); + s != "" && (m += s); } if (this.optionEQvalue("rowkey", !0)) - f += `create sequence row_key_seq; + m += `create sequence row_key_seq; `; else for (let r = 0; r < this.forest.length; r++) if (0 < this.forest[r].trimmedContent().toUpperCase().indexOf("/ROWKEY")) { - f += `create sequence row_key_seq; + m += `create sequence row_key_seq; `; break; } - f += `-- create tables + m += `-- create tables `; for (let r = 0; r < this.forest.length; r++) - f += this.forest[r].toDDL() + ` + m += this.forest[r].toDDL() + ` `; - let y = 0; - for (let r = 0; r < p.length; r++) { - let s = p[r].generateTrigger(); - s != "" && (y++ == 0 && (f += `-- triggers -`), f += s + ` + let v = 0; + for (let r = 0; r < b.length; r++) { + let s = b[r].generateTrigger(); + s != "" && (v++ == 0 && (m += `-- triggers +`), m += s + ` `); } - y = 0; - for (let r = 0; r < p.length; r++) { - let s = p[r].restEnable(); - s != "" && (f += s + ` + v = 0; + for (let r = 0; r < b.length; r++) { + let s = b[r].restEnable(); + s != "" && (m += s + ` `); } - y = 0; - for (let r = 0; r < p.length; r++) { - if (this.optionEQvalue("api", !1) && p[r].trimmedContent().toLowerCase().indexOf("/api") < 0) + v = 0; + for (let r = 0; r < b.length; r++) { + if (this.optionEQvalue("api", !1) && b[r].trimmedContent().toLowerCase().indexOf("/api") < 0) continue; - let s = p[r].generateTAPI(); - s != "" && (y++ == 0 && (f += `-- APIs -`), f += s + ` + let s = b[r].generateTAPI(); + s != "" && (v++ == 0 && (m += `-- APIs +`), m += s + ` `); } - y = 0; + v = 0; for (let r = 0; r < this.forest.length; r++) { let s = this.forest[r].generateView(); - s != "" && (y++ == 0 && (f += `-- create views -`), f += s + ` + s != "" && (v++ == 0 && (m += `-- create views +`), m += s + ` `); } - y = 0; + v = 0; for (let r = 0; r < this.forest.length; r++) { let s = this.forest[r].generateData(this.data); - s != "" && (y++ == 0 && (f += `-- load data + s != "" && (v++ == 0 && (m += `-- load data -`), f += s + ` +`), m += s + ` `); } - y = 0, f += `-- Generated by Quick SQL ${this.version()} ` + (/* @__PURE__ */ new Date()).toLocaleString() + ` + v = 0, m += `-- Generated by Quick SQL ${this.version()} ` + (/* @__PURE__ */ new Date()).toLocaleString() + ` -`, f += `/* +`, m += `/* `; - let I = L; - I = I.replace(/#.+/g, ` -`), I = I.replace(/\/\*/g, "--<--"), I = I.replace(/\*\//g, "-->--"), I = I.replace(/\/* Non-default options:/g, ""), f += I, f += ` + let M = N; + M = M.replace(/#.+/g, ` +`), M = M.replace(/\/\*/g, "--<--"), M = M.replace(/\*\//g, "-->--"), M = M.replace(/\/* Non-default options:/g, ""), m += M, m += ` `; for (let r = 0; r < this.unknownOptions().length; r++) - f += "*** Unknown setting: " + this.unknownOptions()[r] + ` + m += "*** Unknown setting: " + this.unknownOptions()[r] + ` `; - return f += ` + return m += ` Non-default options: # settings = ` + JSON.stringify(this.nonDefaultOptions()) + ` -`, f += ` -*/`, this.ddl = f, f; +`, m += ` +*/`, this.ddl = m, m; }, this.getErrors = function() { return this.errors != null ? this.errors : (this.errors = Te.findErrors(this, this.fullInput), this.errors); }, this.version = oe; } - return E; + return k; }(); function Ie(d, h) { - const E = JSON.parse(d); - return Ae.introspect(h, E, 0); + return Ae(d, h); } function Be(d, h) { return new j(d, h).getERD(); diff --git a/dist/quick-sql.umd.cjs b/dist/quick-sql.umd.cjs index c1b35d4..aa107b3 100644 --- a/dist/quick-sql.umd.cjs +++ b/dist/quick-sql.umd.cjs @@ -1,33 +1,33 @@ -(function(V,W){typeof exports=="object"&&typeof module<"u"?W(exports):typeof define=="function"&&define.amd?define(["exports"],W):(V=typeof globalThis<"u"?globalThis:V||self,W(V.quickSQL={}))})(this,function(V){"use strict";function W(d){return d==null?d:d.toUpperCase().endsWith("IES")?d.substring(0,d.length-3)+"y":d.toUpperCase().endsWith("ES")||d.toUpperCase().endsWith("S")?d.substring(0,d.length-1):d}function ve(d,h){let E='"';if(d==null)return null;let L=!1;const T="$#_ ";if(!d.startsWith(E)&&!L){const D=d;if(D.length>0&&"0"<=D[0]&&D[0]<="9")L=!0;else for(let f in D){const p=D[f];if(T.indexOf(p)<0&&(p<"0"||"9""u"&&(e[n]=a[n]);return e}function i(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var o=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?o=btoa:typeof Buffer=="function"&&(o=function(a){return new Buffer(a).toString("base64")})})(),r.prototype.bool=function(e){return e=s(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100c,"Chance: Max specified is out of range with fixed. Max should be, at most, "+c),e=s(e,{min:u,max:c}),a=this.integer({min:e.min*n,max:e.max*n});var g=(a/n).toFixed(e.fixed);return parseFloat(g)},r.prototype.integer=function(e){return e=s(e,{min:L,max:E}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},r.prototype.natural=function(e){if(e=s(e,{min:0,max:E}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),c=e.exclude.sort();for(var u in c){if(ne.max,"Chance: Min cannot be greater than Max.");var a=N.primes[N.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&N.primes.push(n);var c=N.primes.filter(function(u){return u>=e.min&&u<=e.max});return this.pick(c)},r.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},r.prototype.hex=function(e){e=s(e,{min:0,max:E,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},r.prototype.letter=function(e){e=s(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},r.prototype.string=function(e){e=s(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function m(e){this.c=e}m.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function S(e){this.c=e}S.prototype={replacers:{"#":function(e){return e.character({pool:T})},A:function(e){return e.character({pool:f})},a:function(e){return e.character({pool:D})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function B(e){for(var a=[],n="identity",c=0;c"u")throw new y("Sorry, the buffer() function is not supported on your platform");e=s(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},r.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},r.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},r.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var c=function(A,H){return A.indexOf(H)!==-1};n&&(c=n.comparator||c);for(var u=[],g=0,P,b=a*50,v=I.call(arguments,2);u.lengthb)throw new RangeError("Chance: num is likely too large for sample set")}return u},r.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,c=[],u=I.call(arguments,2);for(n=Math.max(0,n),null;n--;null)c.push(e.apply(this,u));return c},r.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},r.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},r.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},r.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),c=n.length;return this.n(function(){var u=this.natural({max:--c}),g=n[u];return n[u]=n[c],g},Math.min(c,a))},r.prototype.shuffle=function(e){for(var a=[],n=0,c=Number(e.length),u=i(c),g=c-1,P,b=0;b0&&(c+=u)}if(c===0)throw new RangeError("Chance: No valid entries in array weights");var P=this.random()*c,b=0,v=-1,C;for(g=0;g0){if(P<=b){C=g;break}v=g}g===a.length-1&&(C=v)}var A=e[C];return n=typeof n>"u"?!1:n,n&&(e.splice(C,1),a.splice(C,1)),A},r.prototype.paragraph=function(e){e=s(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),c=e.linebreak===!0?` -`:" ";return n.join(c)},r.prototype.sentence=function(e){e=s(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,c,u=this.n(this.word,a);return c=u.join(" "),c=this.capitalize(c),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(c+=n),c},r.prototype.syllable=function(e){e=s(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",c="aeiou",u=n+c,g="",P,b=0;be.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var P=e.minAge!==void 0?e.minAge:0,b=e.maxAge!==void 0?e.maxAge:100,v=new Date(c-b-1,n.getMonth(),n.getDate()),C=new Date(c-P,n.getMonth(),n.getDate());v.setDate(v.getDate()+1),C.setDate(C.getDate()+1),C.setMilliseconds(C.getMilliseconds()-1),e=s(e,{min:v,max:C})}else e=s(e,{year:c-a});return this.date(e)},r.prototype.cpf=function(e){e=s(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var c=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;c=11-c%11,c>=10&&(c=0);var u=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+c;return e.formatted?u:u.replace(/\D/g,"")},r.prototype.cnpj=function(e){e=s(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var c=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;c=11-c%11,c<2&&(c=0);var u=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+c;return e.formatted?u:u.replace(/\D/g,"")},r.prototype.first=function(e){return e=s(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},r.prototype.profession=function(e){return e=s(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},r.prototype.company=function(){return this.pick(this.get("company"))},r.prototype.gender=function(e){return e=s(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},r.prototype.last=function(e){if(e=s(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(c){a=a.concat(n[c])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},r.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},r.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},r.prototype.tld=function(){return this.pick(this.tlds())},r.prototype.twitter=function(){return"@"+this.word()},r.prototype.url=function(e){e=s(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},r.prototype.port=function(){return this.integer({min:0,max:65535})},r.prototype.locale=function(e){return e=s(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},r.prototype.locales=function(e){return e=s(e),e.region?this.get("locale_regions"):this.get("locale_languages")},r.prototype.loremPicsum=function(e){e=s(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},r.prototype.address=function(e){return e=s(e),this.natural({min:5,max:2e3})+" "+this.street(e)},r.prototype.altitude=function(e){return e=s(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.areacode=function(e){e=s(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},r.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},r.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},r.prototype.countries=function(){return this.get("countries")},r.prototype.country=function(e){e=s(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},r.prototype.depth=function(e){return e=s(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.geohash=function(e){return e=s(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},r.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},r.prototype.latitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=s(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:c});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.longitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=s(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:c});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.phone=function(e){var a=this,n,c=function(H){var O=[];return H.sections.forEach(function(z){O.push(a.string({pool:"0123456789",length:z}))}),H.area+O.join(" ")};e=s(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var u;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),u=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),u=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),u=e.formatted?c(n):c(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),u=e.formatted?c(n):c(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n);break;case"us":var g=this.areacode(e).toString(),P=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),b=this.natural({min:1e3,max:9999}).toString();u=e.formatted?g+" "+P+"-"+b:g+P+b;break;case"br":var v=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),C;e.mobile?C="9"+a.string({pool:"0123456789",length:4}):C=this.natural({min:2e3,max:5999}).toString();var A=a.string({pool:"0123456789",length:4});u=e.formatted?"("+v+") "+C+"-"+A:v+C+A;break}return u},r.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},r.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",c=e+a+n,u=this.natural({max:9}),g=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),P=u+g;return c+" "+P},r.prototype.counties=function(e){return e=s(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},r.prototype.county=function(e){return this.pick(this.counties(e)).name},r.prototype.provinces=function(e){return e=s(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},r.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},r.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},r.prototype.states=function(e){e=s(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),c=this.get("territories"),u=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(c)),e.armed_forces&&(a=a.concat(u));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},r.prototype.street=function(e){e=s(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},r.prototype.street_suffix=function(e){return e=s(e,{country:"us"}),this.pick(this.street_suffixes(e))},r.prototype.street_suffixes=function(e){return e=s(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},r.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},r.prototype.ampm=function(){return this.bool()?"am":"pm"},r.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=s(e,{american:!0,string:!1});var c=typeof e.min<"u"?e.min.getTime():1,u=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:c,max:u}))}else{var g=this.month({raw:!0}),P=g.days;e&&e.month&&(P=this.get("months")[(e.month%12+12)%12].days),e=s(e,{year:parseInt(this.year(),10),month:g.numeric-1,day:this.natural({min:1,max:P}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},r.prototype.hammertime=function(e){return this.date(e).getTime()},r.prototype.hour=function(e){return e=s(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.millisecond=function(){return this.natural({max:999})},r.prototype.minute=r.prototype.second=function(e){return e=s(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.month=function(e){e=s(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},r.prototype.months=function(){return this.get("months")},r.prototype.second=function(){return this.natural({max:59})},r.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},r.prototype.weekday=function(e){e=s(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},r.prototype.year=function(e){return e=s(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},r.prototype.cc=function(e){e=s(e);var a,n,c;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),c=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,c,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},r.prototype.cc_types=function(){return this.get("cc_types")},r.prototype.cc_type=function(e){e=s(e);var a=this.cc_types(),n=null;if(e.name){for(var c=0;c3&&(H?O=O.substr(0,3):O=O[0]+O.substr(2,2)),O.length<3&&(z=O,O=A.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+O),z},v=function(A,H,O){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return A.getFullYear().toString().substr(2)+z[A.getMonth()]+O.pad(A.getDate()+(H.toLowerCase()==="female"?40:0),2)},C=function(A){for(var H="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",O="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(O[H.indexOf(A[U])]):K+=j.indexOf(O[H.indexOf(A[U])]);return z[K%26]};return P=P.concat(b(c,!0),b(n),v(u,a,this),g.toUpperCase().split("")).join(""),P+=C(P.toUpperCase()),P.toUpperCase()},r.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;u--)c[u-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?c.reduce(function(g,P){return g+P}):c}else throw new RangeError("Chance: A type of die roll must be included")},r.prototype.guid=function(e){e=s(e,{version:5});var a="abcdef1234567890",n="ab89",c=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return c},r.prototype.hash=function(e){e=s(e,{length:40,casing:"lower"});var a=e.casing==="upper"?p.toUpperCase():p;return this.string({pool:a,length:e.length})},r.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},r.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,c,u=0,g=a.length;g>u;++u)c=+a[u],u%2===0&&(c*=2,c>9&&(c-=9)),n+=c;return n*9%10},r.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=s(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},r.prototype.file=function(e){var a=e||{},n="fileExtension",c=Object.keys(this.get("fileExtension")),u,g;if(u=this.word({length:a.length}),a.extension)return g=a.extension,u+"."+g;if(a.extensions){if(Array.isArray(a.extensions))return g=this.pickone(a.extensions),u+"."+g;if(a.extensions.constructor===Object){var P=a.extensions,b=Object.keys(P);return g=this.pickone(P[this.pickone(b)]),u+"."+g}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var v=a.fileType;if(c.indexOf(v)!==-1)return g=this.pickone(this.get(n)[v]),u+"."+g;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return g=this.pickone(this.get(n)[this.pickone(c)]),u+"."+g},r.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var c={fileData:this.buffer({length:a.fileSize}),fileName:n};return c};var N={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},k=Object.prototype.hasOwnProperty,x=Object.keys||function(e){var a=[];for(var n in e)k.call(e,n)&&a.push(n);return a};function w(e,a){for(var n=x(e),c,u=0,g=n.length;u0)return this.normal_pool(e);var a,n,c,u,g=e.mean,P=e.dev;do n=this.random()*2-1,c=this.random()*2-1,a=n*n+c*c;while(a>=1);return u=n*Math.sqrt(-2*Math.log(a)/a),P*u+g},r.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},r.prototype.radio=function(e){e=s(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},r.prototype.set=function(e,a){typeof e=="string"?N[e]=a:N=_(e,N)},r.prototype.tv=function(e){return this.radio(e)},r.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},r.prototype.emotion=function(){return this.pick(this.get("emotions"))},r.prototype.mersenne_twister=function(e){return new F(e)},r.prototype.blueimp_md5=function(){return new G};var F=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};F.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},F.prototype.init_by_array=function(e,a){var n=1,c=0,u,g;for(this.init_genrand(19650218),u=this.N>a?this.N:a;u;u--)g=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((g&4294901760)>>>16)*1664525<<16)+(g&65535)*1664525)+e[c]+c,this.mt[n]>>>=0,n++,c++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),c>=a&&(c=0);for(u=this.N-1;u;u--)g=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((g&4294901760)>>>16)*1566083941<<16)+(g&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},F.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},F.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},F.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},F.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},F.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},F.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var G=function(){};G.prototype.VERSION="1.0.1",G.prototype.safe_add=function(a,n){var c=(a&65535)+(n&65535),u=(a>>16)+(n>>16)+(c>>16);return u<<16|c&65535},G.prototype.bit_roll=function(e,a){return e<>>32-a},G.prototype.md5_cmn=function(e,a,n,c,u,g){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(c,g)),u),n)},G.prototype.md5_ff=function(e,a,n,c,u,g,P){return this.md5_cmn(a&n|~a&c,e,a,u,g,P)},G.prototype.md5_gg=function(e,a,n,c,u,g,P){return this.md5_cmn(a&c|n&~c,e,a,u,g,P)},G.prototype.md5_hh=function(e,a,n,c,u,g,P){return this.md5_cmn(a^n^c,e,a,u,g,P)},G.prototype.md5_ii=function(e,a,n,c,u,g,P){return this.md5_cmn(n^(a|~c),e,a,u,g,P)},G.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,c,u,g,P,b=1732584193,v=-271733879,C=-1732584194,A=271733878;for(n=0;n>5]>>>a%32&255);return n},G.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(c=this.binl_md5(c,e.length*8)),n=0;n<16;n+=1)u[n]=c[n]^909522486,g[n]=c[n]^1549556828;return P=this.binl_md5(u.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(g.concat(P),512+128))},G.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",c,u;for(u=0;u>>4&15)+a.charAt(c&15);return n},G.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},G.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},G.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},G.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},G.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},G.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},d.exports&&(h=d.exports=r),h.Chance=r,typeof importScripts<"u"&&(chance=new r,self.Chance=r),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=r,window.chance=new r)})()})(ie,ie.exports);var ye=ie.exports;const Se=Ae(ye);var q=new Se;function ue(d,h,E,L){E==null&&console.log();let T=E.toUpperCase(),D=d.toUpperCase(),f=h.toUpperCase();if(L!=null&&0":s=="["?"]":s=="{"?"}":s=="("?")":s}}function h(T,D,f){for(var p=[],y=`(){}[]^-|!*+.><='",;:%@?/\\#~`+f,I=` -\r `,r=ee(T,y+I),s=0,i=0,t=0,o=0;o0&&(m=p[p.length-1]),l==` +(function(V,O){typeof exports=="object"&&typeof module<"u"?O(exports):typeof define=="function"&&define.amd?define(["exports"],O):(V=typeof globalThis<"u"?globalThis:V||self,O(V.quickSQL={}))})(this,function(V){"use strict";function O(d){return d==null?d:d.toUpperCase().endsWith("IES")?d.substring(0,d.length-3)+"y":d.toUpperCase().endsWith("ES")||d.toUpperCase().endsWith("S")?d.substring(0,d.length-1):d}function ve(d,h){let x='"';if(d==null)return null;let N=!1;const I="$#_ ";if(!d.startsWith(x)&&!N){const D=d;if(D.length>0&&"0"<=D[0]&&D[0]<="9")N=!0;else for(let m in D){const b=D[m];if(I.indexOf(b)<0&&(b<"0"||"9""u"&&(e[n]=a[n]);return e}function i(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var o=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?o=btoa:typeof Buffer=="function"&&(o=function(a){return new Buffer(a).toString("base64")})})(),r.prototype.bool=function(e){return e=s(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100c,"Chance: Max specified is out of range with fixed. Max should be, at most, "+c),e=s(e,{min:u,max:c}),a=this.integer({min:e.min*n,max:e.max*n});var g=(a/n).toFixed(e.fixed);return parseFloat(g)},r.prototype.integer=function(e){return e=s(e,{min:N,max:x}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},r.prototype.natural=function(e){if(e=s(e,{min:0,max:x}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),c=e.exclude.sort();for(var u in c){if(ne.max,"Chance: Min cannot be greater than Max.");var a=E.primes[E.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&E.primes.push(n);var c=E.primes.filter(function(u){return u>=e.min&&u<=e.max});return this.pick(c)},r.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},r.prototype.hex=function(e){e=s(e,{min:0,max:x,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},r.prototype.letter=function(e){e=s(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},r.prototype.string=function(e){e=s(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function f(e){this.c=e}f.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function y(e){this.c=e}y.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:m})},a:function(e){return e.character({pool:D})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function P(e){for(var a=[],n="identity",c=0;c"u")throw new v("Sorry, the buffer() function is not supported on your platform");e=s(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},r.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},r.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},r.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var c=function(S,F){return S.indexOf(F)!==-1};n&&(c=n.comparator||c);for(var u=[],g=0,B,p=a*50,A=M.call(arguments,2);u.lengthp)throw new RangeError("Chance: num is likely too large for sample set")}return u},r.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,c=[],u=M.call(arguments,2);for(n=Math.max(0,n),null;n--;null)c.push(e.apply(this,u));return c},r.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},r.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},r.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},r.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),c=n.length;return this.n(function(){var u=this.natural({max:--c}),g=n[u];return n[u]=n[c],g},Math.min(c,a))},r.prototype.shuffle=function(e){for(var a=[],n=0,c=Number(e.length),u=i(c),g=c-1,B,p=0;p0&&(c+=u)}if(c===0)throw new RangeError("Chance: No valid entries in array weights");var B=this.random()*c,p=0,A=-1,C;for(g=0;g0){if(B<=p){C=g;break}A=g}g===a.length-1&&(C=A)}var S=e[C];return n=typeof n>"u"?!1:n,n&&(e.splice(C,1),a.splice(C,1)),S},r.prototype.paragraph=function(e){e=s(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),c=e.linebreak===!0?` +`:" ";return n.join(c)},r.prototype.sentence=function(e){e=s(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,c,u=this.n(this.word,a);return c=u.join(" "),c=this.capitalize(c),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(c+=n),c},r.prototype.syllable=function(e){e=s(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",c="aeiou",u=n+c,g="",B,p=0;pe.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var B=e.minAge!==void 0?e.minAge:0,p=e.maxAge!==void 0?e.maxAge:100,A=new Date(c-p-1,n.getMonth(),n.getDate()),C=new Date(c-B,n.getMonth(),n.getDate());A.setDate(A.getDate()+1),C.setDate(C.getDate()+1),C.setMilliseconds(C.getMilliseconds()-1),e=s(e,{min:A,max:C})}else e=s(e,{year:c-a});return this.date(e)},r.prototype.cpf=function(e){e=s(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var c=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;c=11-c%11,c>=10&&(c=0);var u=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+c;return e.formatted?u:u.replace(/\D/g,"")},r.prototype.cnpj=function(e){e=s(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var c=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;c=11-c%11,c<2&&(c=0);var u=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+c;return e.formatted?u:u.replace(/\D/g,"")},r.prototype.first=function(e){return e=s(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},r.prototype.profession=function(e){return e=s(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},r.prototype.company=function(){return this.pick(this.get("company"))},r.prototype.gender=function(e){return e=s(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},r.prototype.last=function(e){if(e=s(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(c){a=a.concat(n[c])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},r.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},r.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},r.prototype.tld=function(){return this.pick(this.tlds())},r.prototype.twitter=function(){return"@"+this.word()},r.prototype.url=function(e){e=s(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},r.prototype.port=function(){return this.integer({min:0,max:65535})},r.prototype.locale=function(e){return e=s(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},r.prototype.locales=function(e){return e=s(e),e.region?this.get("locale_regions"):this.get("locale_languages")},r.prototype.loremPicsum=function(e){e=s(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},r.prototype.address=function(e){return e=s(e),this.natural({min:5,max:2e3})+" "+this.street(e)},r.prototype.altitude=function(e){return e=s(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.areacode=function(e){e=s(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},r.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},r.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},r.prototype.countries=function(){return this.get("countries")},r.prototype.country=function(e){e=s(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},r.prototype.depth=function(e){return e=s(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.geohash=function(e){return e=s(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},r.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},r.prototype.latitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=s(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:c});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.longitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=s(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:c});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.phone=function(e){var a=this,n,c=function(F){var G=[];return F.sections.forEach(function(z){G.push(a.string({pool:"0123456789",length:z}))}),F.area+G.join(" ")};e=s(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var u;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),u=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),u=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),u=e.formatted?c(n):c(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),u=e.formatted?c(n):c(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n);break;case"us":var g=this.areacode(e).toString(),B=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),p=this.natural({min:1e3,max:9999}).toString();u=e.formatted?g+" "+B+"-"+p:g+B+p;break;case"br":var A=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),C;e.mobile?C="9"+a.string({pool:"0123456789",length:4}):C=this.natural({min:2e3,max:5999}).toString();var S=a.string({pool:"0123456789",length:4});u=e.formatted?"("+A+") "+C+"-"+S:A+C+S;break}return u},r.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},r.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",c=e+a+n,u=this.natural({max:9}),g=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),B=u+g;return c+" "+B},r.prototype.counties=function(e){return e=s(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},r.prototype.county=function(e){return this.pick(this.counties(e)).name},r.prototype.provinces=function(e){return e=s(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},r.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},r.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},r.prototype.states=function(e){e=s(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),c=this.get("territories"),u=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(c)),e.armed_forces&&(a=a.concat(u));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},r.prototype.street=function(e){e=s(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},r.prototype.street_suffix=function(e){return e=s(e,{country:"us"}),this.pick(this.street_suffixes(e))},r.prototype.street_suffixes=function(e){return e=s(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},r.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},r.prototype.ampm=function(){return this.bool()?"am":"pm"},r.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=s(e,{american:!0,string:!1});var c=typeof e.min<"u"?e.min.getTime():1,u=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:c,max:u}))}else{var g=this.month({raw:!0}),B=g.days;e&&e.month&&(B=this.get("months")[(e.month%12+12)%12].days),e=s(e,{year:parseInt(this.year(),10),month:g.numeric-1,day:this.natural({min:1,max:B}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},r.prototype.hammertime=function(e){return this.date(e).getTime()},r.prototype.hour=function(e){return e=s(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.millisecond=function(){return this.natural({max:999})},r.prototype.minute=r.prototype.second=function(e){return e=s(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.month=function(e){e=s(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},r.prototype.months=function(){return this.get("months")},r.prototype.second=function(){return this.natural({max:59})},r.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},r.prototype.weekday=function(e){e=s(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},r.prototype.year=function(e){return e=s(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},r.prototype.cc=function(e){e=s(e);var a,n,c;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),c=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,c,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},r.prototype.cc_types=function(){return this.get("cc_types")},r.prototype.cc_type=function(e){e=s(e);var a=this.cc_types(),n=null;if(e.name){for(var c=0;c3&&(F?G=G.substr(0,3):G=G[0]+G.substr(2,2)),G.length<3&&(z=G,G=S.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+G),z},A=function(S,F,G){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return S.getFullYear().toString().substr(2)+z[S.getMonth()]+G.pad(S.getDate()+(F.toLowerCase()==="female"?40:0),2)},C=function(S){for(var F="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",G="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(G[F.indexOf(S[U])]):K+=j.indexOf(G[F.indexOf(S[U])]);return z[K%26]};return B=B.concat(p(c,!0),p(n),A(u,a,this),g.toUpperCase().split("")).join(""),B+=C(B.toUpperCase()),B.toUpperCase()},r.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;u--)c[u-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?c.reduce(function(g,B){return g+B}):c}else throw new RangeError("Chance: A type of die roll must be included")},r.prototype.guid=function(e){e=s(e,{version:5});var a="abcdef1234567890",n="ab89",c=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return c},r.prototype.hash=function(e){e=s(e,{length:40,casing:"lower"});var a=e.casing==="upper"?b.toUpperCase():b;return this.string({pool:a,length:e.length})},r.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},r.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,c,u=0,g=a.length;g>u;++u)c=+a[u],u%2===0&&(c*=2,c>9&&(c-=9)),n+=c;return n*9%10},r.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=s(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},r.prototype.file=function(e){var a=e||{},n="fileExtension",c=Object.keys(this.get("fileExtension")),u,g;if(u=this.word({length:a.length}),a.extension)return g=a.extension,u+"."+g;if(a.extensions){if(Array.isArray(a.extensions))return g=this.pickone(a.extensions),u+"."+g;if(a.extensions.constructor===Object){var B=a.extensions,p=Object.keys(B);return g=this.pickone(B[this.pickone(p)]),u+"."+g}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var A=a.fileType;if(c.indexOf(A)!==-1)return g=this.pickone(this.get(n)[A]),u+"."+g;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return g=this.pickone(this.get(n)[this.pickone(c)]),u+"."+g},r.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var c={fileData:this.buffer({length:a.fileSize}),fileName:n};return c};var E={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},L=Object.prototype.hasOwnProperty,k=Object.keys||function(e){var a=[];for(var n in e)L.call(e,n)&&a.push(n);return a};function w(e,a){for(var n=k(e),c,u=0,g=n.length;u0)return this.normal_pool(e);var a,n,c,u,g=e.mean,B=e.dev;do n=this.random()*2-1,c=this.random()*2-1,a=n*n+c*c;while(a>=1);return u=n*Math.sqrt(-2*Math.log(a)/a),B*u+g},r.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},r.prototype.radio=function(e){e=s(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},r.prototype.set=function(e,a){typeof e=="string"?E[e]=a:E=_(e,E)},r.prototype.tv=function(e){return this.radio(e)},r.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},r.prototype.emotion=function(){return this.pick(this.get("emotions"))},r.prototype.mersenne_twister=function(e){return new W(e)},r.prototype.blueimp_md5=function(){return new R};var W=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};W.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},W.prototype.init_by_array=function(e,a){var n=1,c=0,u,g;for(this.init_genrand(19650218),u=this.N>a?this.N:a;u;u--)g=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((g&4294901760)>>>16)*1664525<<16)+(g&65535)*1664525)+e[c]+c,this.mt[n]>>>=0,n++,c++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),c>=a&&(c=0);for(u=this.N-1;u;u--)g=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((g&4294901760)>>>16)*1566083941<<16)+(g&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},W.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},W.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},W.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},W.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},W.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},W.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var R=function(){};R.prototype.VERSION="1.0.1",R.prototype.safe_add=function(a,n){var c=(a&65535)+(n&65535),u=(a>>16)+(n>>16)+(c>>16);return u<<16|c&65535},R.prototype.bit_roll=function(e,a){return e<>>32-a},R.prototype.md5_cmn=function(e,a,n,c,u,g){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(c,g)),u),n)},R.prototype.md5_ff=function(e,a,n,c,u,g,B){return this.md5_cmn(a&n|~a&c,e,a,u,g,B)},R.prototype.md5_gg=function(e,a,n,c,u,g,B){return this.md5_cmn(a&c|n&~c,e,a,u,g,B)},R.prototype.md5_hh=function(e,a,n,c,u,g,B){return this.md5_cmn(a^n^c,e,a,u,g,B)},R.prototype.md5_ii=function(e,a,n,c,u,g,B){return this.md5_cmn(n^(a|~c),e,a,u,g,B)},R.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,c,u,g,B,p=1732584193,A=-271733879,C=-1732584194,S=271733878;for(n=0;n>5]>>>a%32&255);return n},R.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(c=this.binl_md5(c,e.length*8)),n=0;n<16;n+=1)u[n]=c[n]^909522486,g[n]=c[n]^1549556828;return B=this.binl_md5(u.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(g.concat(B),512+128))},R.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",c,u;for(u=0;u>>4&15)+a.charAt(c&15);return n},R.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},R.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},R.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},R.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},R.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},R.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},d.exports&&(h=d.exports=r),h.Chance=r,typeof importScripts<"u"&&(chance=new r,self.Chance=r),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=r,window.chance=new r)})()})(ie,ie.exports);var ye=ie.exports;const Se=Ae(ye);var q=new Se;function ue(d,h,x,N){x==null&&console.log();let I=x.toUpperCase(),D=d.toUpperCase(),m=h.toUpperCase();if(N!=null&&0":s=="["?"]":s=="{"?"}":s=="("?")":s}}function h(I,D,m){for(var b=[],v=`(){}[]^-|!*+.><='",;:%@?/\\#~`+m,M=` +\r `,r=ee(I,v+M),s=0,i=0,t=0,o=0;o0&&(f=b[b.length-1]),l==` `?(i++,t=0):o>0&&r[o-1]!==` -`?t=t+r[o-1].length:t=0,s+=l.length,m!=null&&m.type=="comment"&&(m.value.lastIndexOf("*/")!=m.value.length-2||m.value=="/*/")){l=="*"||l=="/"?m.value=m.value+l:m.value="/* ... ",m.end=s,m!=null&&m.type=="comment"&&m.value.lastIndexOf("*/")==m.value.length-2&&m.value!="/*/"&&(m.value=T.substring(m.begin,m.end));continue}if(m!=null&&(m.type=="line-comment"||m.type=="dbtools-command")&&l!=` -`){m.value=m.value+l;continue}if(m!=null&&(m.type=="line-comment"||m.type=="dbtools-command")&&l==` -`&&(m.end=m.begin+m.value.length),m!=null&&m.type=="quoted-string"&&!(m.isStandardLiteral()||m.isAltLiteral())){m.value=m.value+l,m.end=m.begin+m.value.length;continue}if(!(m!=null&&m.type=="dquoted-string"&&l!='"'&&!(m.value.endsWith('"')&&m.value.length>1))){if(m!=null&&m.type=="dquoted-string"&&l=='"'){m.end=s,m.value=T.substring(m.begin,m.end);continue}if(!(m!=null&&m.type=="bquoted-string"&&l!="`"&&!(m.value.endsWith("`")&&m.value.length>1))){if(m!=null&&m.type=="bquoted-string"&&l=="`"){m.end=s,m.value=T.substring(m.begin,m.end);continue}if(l=="*"&&m!=null&&m.value=="/"){m.value=m.value+l,m.end=m.begin+m.value.length,m.type="comment";continue}if(l=="-"&&m!=null&&m.value=="-"){m.value=m.value+l,m.type="line-comment";continue}if((l.toUpperCase()=="REM"||l.toUpperCase()=="REMA"||l.toUpperCase()=="REMAR"||l.toUpperCase()=="REMARK"||l.toUpperCase()=="PRO"||l.toUpperCase()=="PROM"||l.toUpperCase()=="PROMP"||l.toUpperCase()=="PROMPT")&&(m==null||m.value==` -`||m.value=="\r")){p.push(new d(l,s-l.length,-9,"line-comment",i,t));continue}if(l.toUpperCase()=="SODA"&&(m==null||m.value==` -`||m.value=="\r")){p.push(new d(l,s-l.length,-9,"dbtools-command",i,t));continue}if(m!=null&&m.type=="identifier"&&m.end==-11&&m.value.indexOf("@")==0&&!(l==` -`||l=="\r")){m.value=m.value+l;continue}if(m!=null&&m.type=="identifier"&&m.end==-11&&m.value.indexOf("@")==0&&(l==` -`||l=="\r")){m.end=s-1,p.push(new d(l,s-1,s,"ws",i,t));continue}if(D&&l=="'"){m!=null&&(m.value.toUpperCase()=="Q"||m.value.toUpperCase()=="N"||m.value.toUpperCase()=="U"||m.value.toUpperCase()=="NQ")?(m.value+=l,m.type="quoted-string"):p.push(new d(l,s-1,-10,"quoted-string",i,t));continue}if(D&&l=='"'){p.push(new d(l,s-1,-11,"dquoted-string",i,t));continue}if(l=="`"&&0<=y.indexOf("`")){p.push(new d(l,s-1,-11,"bquoted-string",i,t));continue}if(l.length==1&&0<=y.indexOf(l)){p.push(new d(l,s-1,s,"operation",i,t));continue}if(l.length==1&&0<=I.indexOf(l)){p.push(new d(l,s-1,s,"ws",i,t));continue}if("0"<=l.charAt(0)&&l.charAt(0)<="9"){E(l,p,s-l.length,i)||(l.charAt(l.length-1)=="K"||l.charAt(l.length-1)=="k"||l.charAt(l.length-1)=="M"||l.charAt(l.length-1)=="m"||l.charAt(l.length-1)=="G"||l.charAt(l.length-1)=="g"||l.charAt(l.length-1)=="T"||l.charAt(l.length-1)=="t"||l.charAt(l.length-1)=="P"||l.charAt(l.length-1)=="p"||l.charAt(l.length-1)=="E"||l.charAt(l.length-1)=="e"?(p.push(new d(l.substring(0,l.length-1),s-l.length,s-1,"constant.numeric",i,t)),p.push(new d(l.substring(l.length-1),s-1,s,"constant.numeric",i,t))):p.push(new d(l,s-l.length,s,"constant.numeric",i,t)));continue}var S="identifier";o+10){var m=p[p.length-1];m.end=T.length}return p}function E(T,D,f,p){if(0>T.indexOf("e")&&0>T.indexOf("f")&&0>T.indexOf("d"))return!1;0<=T.indexOf("e"),0<=T.indexOf("e"),!(0<=T.indexOf("e"))&&0<=T.indexOf("f");for(var y=ee(T,"efd"),I=0;I")==0||i.indexOf("<")==0)&&(i=i.substring(1).trim());const l=i.toLowerCase();if(l.indexOf("view ")==0){var m=i.split(" ");return m[1]}i=f(i," d");var S=i.indexOf("/");0="0"&&B<="9"&&(i="x"+i),Te(se(i))},this.parseType=function(i){if(this.children!=null&&0!0)),w}return S}0");return t==0},this.getExplicitPkNode=function(){for(var i=0;ii.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(d.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),d.optionEQvalue("prefixPKwithTname","yes")&&(t=W(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let i=this.getGenIdColName();if(i==null){let t=this.getExplicitPkNode();return t==null?null:t.parseName()}return i},this.singleDDL=function(){if(this.children.length==0&&01))){if(f!=null&&f.type=="dquoted-string"&&l=='"'){f.end=s,f.value=I.substring(f.begin,f.end);continue}if(!(f!=null&&f.type=="bquoted-string"&&l!="`"&&!(f.value.endsWith("`")&&f.value.length>1))){if(f!=null&&f.type=="bquoted-string"&&l=="`"){f.end=s,f.value=I.substring(f.begin,f.end);continue}if(l=="*"&&f!=null&&f.value=="/"){f.value=f.value+l,f.end=f.begin+f.value.length,f.type="comment";continue}if(l=="-"&&f!=null&&f.value=="-"){f.value=f.value+l,f.type="line-comment";continue}if((l.toUpperCase()=="REM"||l.toUpperCase()=="REMA"||l.toUpperCase()=="REMAR"||l.toUpperCase()=="REMARK"||l.toUpperCase()=="PRO"||l.toUpperCase()=="PROM"||l.toUpperCase()=="PROMP"||l.toUpperCase()=="PROMPT")&&(f==null||f.value==` +`||f.value=="\r")){b.push(new d(l,s-l.length,-9,"line-comment",i,t));continue}if(l.toUpperCase()=="SODA"&&(f==null||f.value==` +`||f.value=="\r")){b.push(new d(l,s-l.length,-9,"dbtools-command",i,t));continue}if(f!=null&&f.type=="identifier"&&f.end==-11&&f.value.indexOf("@")==0&&!(l==` +`||l=="\r")){f.value=f.value+l;continue}if(f!=null&&f.type=="identifier"&&f.end==-11&&f.value.indexOf("@")==0&&(l==` +`||l=="\r")){f.end=s-1,b.push(new d(l,s-1,s,"ws",i,t));continue}if(D&&l=="'"){f!=null&&(f.value.toUpperCase()=="Q"||f.value.toUpperCase()=="N"||f.value.toUpperCase()=="U"||f.value.toUpperCase()=="NQ")?(f.value+=l,f.type="quoted-string"):b.push(new d(l,s-1,-10,"quoted-string",i,t));continue}if(D&&l=='"'){b.push(new d(l,s-1,-11,"dquoted-string",i,t));continue}if(l=="`"&&0<=v.indexOf("`")){b.push(new d(l,s-1,-11,"bquoted-string",i,t));continue}if(l.length==1&&0<=v.indexOf(l)){b.push(new d(l,s-1,s,"operation",i,t));continue}if(l.length==1&&0<=M.indexOf(l)){b.push(new d(l,s-1,s,"ws",i,t));continue}if("0"<=l.charAt(0)&&l.charAt(0)<="9"){x(l,b,s-l.length,i)||(l.charAt(l.length-1)=="K"||l.charAt(l.length-1)=="k"||l.charAt(l.length-1)=="M"||l.charAt(l.length-1)=="m"||l.charAt(l.length-1)=="G"||l.charAt(l.length-1)=="g"||l.charAt(l.length-1)=="T"||l.charAt(l.length-1)=="t"||l.charAt(l.length-1)=="P"||l.charAt(l.length-1)=="p"||l.charAt(l.length-1)=="E"||l.charAt(l.length-1)=="e"?(b.push(new d(l.substring(0,l.length-1),s-l.length,s-1,"constant.numeric",i,t)),b.push(new d(l.substring(l.length-1),s-1,s,"constant.numeric",i,t))):b.push(new d(l,s-l.length,s,"constant.numeric",i,t)));continue}var y="identifier";o+10){var f=b[b.length-1];f.end=I.length}return b}function x(I,D,m,b){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var v=ee(I,"efd"),M=0;M")==0||i.indexOf("<")==0)&&(i=i.substring(1).trim());const l=i.toLowerCase();if(l.indexOf("view ")==0){var f=i.split(" ");return f[1]}i=m(i," d");var y=i.indexOf("/");0="0"&&P<="9"&&(i="x"+i),Te(se(i))},this.parseType=function(i){if(this.children!=null&&0!0)),w}return y}0");return t==0},this.getExplicitPkNode=function(){for(var i=0;ii.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(d.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),d.optionEQvalue("prefixPKwithTname","yes")&&(t=O(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let i=this.getGenIdColName();if(i==null){let t=this.getExplicitPkNode();return t==null?null:t.parseName()}return i},this.singleDDL=function(){if(this.children.length==0&&0!0):u==null&&(u=d.find(a),u.isMany2One()&!a.endsWith("_id")&&(n=a,a=W(a),g="_id")),m=h+" ".repeat(this.maxChildNameLen()-a.length),o+=h+a+g+m+c+` +`}}for(let a in this.fks){let n=this.fks[a],c="number",u=d.find(n),g="";u!=null&&u.getExplicitPkNode()!=null?c=u.getExplicitPkNode().parseType(A=>!0):u==null&&(u=d.find(a),u.isMany2One()&!a.endsWith("_id")&&(n=a,a=O(a),g="_id")),f=h+" ".repeat(this.maxChildNameLen()-a.length),o+=h+a+g+f+c+` `,o+=h+h+" ".repeat(this.maxChildNameLen())+"constraint "+l+"_"+a+`_fk -`;let P="";0<=i.indexOf("/CASCADE")&&(P=" on delete cascade");let b="";for(let v in this.children){let C=this.children[v];if(a==C.parseName()){let A=C.trimmedContent().toUpperCase();(0<=A.indexOf("/NN")||0<=A.indexOf("/NOTNULL"))&&(b=" NOT NULL".toLowerCase()),0<=A.indexOf("/CASCADE")&&(P=" on delete cascade");break}}o+=h+h+" ".repeat(this.maxChildNameLen())+"references "+d.objPrefix()+n+P+b+`, +`;let B="";0<=i.indexOf("/CASCADE")&&(B=" on delete cascade");let p="";for(let A in this.children){let C=this.children[A];if(a==C.parseName()){let S=C.trimmedContent().toUpperCase();(0<=S.indexOf("/NN")||0<=S.indexOf("/NOTNULL"))&&(p=" NOT NULL".toLowerCase()),0<=S.indexOf("/CASCADE")&&(B=" on delete cascade");break}}o+=h+h+" ".repeat(this.maxChildNameLen())+"references "+d.objPrefix()+n+B+p+`, `}if(d.optionEQvalue("rowkey",!0)||0TRUE, p_object=>'"+m+`'); +`,l.toLowerCase()},this.restEnable=function(){if(this.parseType()!="table"||this.trimmedContent().toUpperCase().indexOf("/REST")<0)return"";let o=this.parseName();const l=o.indexOf('"')==0;let f=d.objPrefix()+o;return l?f=d.objPrefix()+o.substring(1,o.length-1):f=(d.objPrefix()+o).toUpperCase(),`begin +`+h+"ords.enable_object(p_enabled=>TRUE, p_object=>'"+f+`'); end; / `},this.generateTrigger=function(){if(this.parseType()!="table")return"";let i="";d.optionEQvalue("editionable","yes")&&(i=" editionable");let t=d.objPrefix()+this.parseName();var o="create or replace"+i+" trigger "+t.toLowerCase()+`_BIU @@ -111,51 +111,51 @@ end; return upper(ret); end compress_int; `),o+=`begin -`;var m=!1,S="user";d.optionEQvalue("apex","yes")&&(S="coalesce(sys_context('APEX$SESSION','APP_USER'),user)"),(d.optionEQvalue("rowkey","yes")||0!0)),l+=`, -`,l+=h+h+"P_"+m+" "+o+" "+M+t}for(let B=0;B!0)),l+=`, +`,l+=h+h+"P_"+f+" "+o+" "+T+t}for(let P=0;P!0),(i=="insert"||i=="update")&&(o+=`, -`);let x=h+h+h+"P_"+M+" := c1."+M+`; -`;i=="insert"&&(x=h+h+h+M),i=="update"&&(x=h+h+h+M+" = P_"+M+` -`),o+=x}for(var m=0;m!0),(i=="insert"||i=="update")&&(o+=`, +`);let k=h+h+h+"P_"+T+" := c1."+T+`; +`;i=="insert"&&(k=h+h+h+T),i=="update"&&(k=h+h+h+T+" = P_"+T+` +`),o+=k}for(var f=0;fo.children.length>0&&o.parseName()==t&&!o.isArray())},this.generateSelectJsonBottomUp=function(i){throw new Error("generateSelectJsonBottomUp() not implemented yet")},this.one2many2oneUnsupoported="one to many to one is not supported",this.generateSelectJsonTopDown=function(i){var t=this.parseName();let o="";this.getExplicitPkNode==null&&(o+=i+"'"+this.getGenIdColName()+"' : "+t+"."+this.getGenIdColName()+`, -`);for(var l=0;lo.children.length>0&&o.parseName()==t&&!o.isArray())},this.generateSelectJsonBottomUp=function(i){throw new Error("generateSelectJsonBottomUp() not implemented yet")},this.one2many2oneUnsupoported="one to many to one is not supported",this.generateSelectJsonTopDown=function(i){var t=this.parseName();let o="";this.getExplicitPkNode==null&&(o+=i+"'"+this.getGenIdColName()+"' : "+t+"."+this.getGenIdColName()+`, +`);for(var l=0;l");let y=E;if(0"),0!0)}),0!0)}),0--"),I=I.replace(/\/* Non-default options:/g,""),f+=I,f+=` -`;for(let r=0;r--"),M=M.replace(/\/* Non-default options:/g,""),m+=M,m+=` +`;for(let r=0;r #of insert starements - this.calculateCounts = function ( key, value ) { + function indent( depth ) { + var s = ""; + for (var i = 0; i < depth; i++) + s = s + " "; + return s; + } - let tmp = this.aggrSizes[key]; - if( tmp == null ) - tmp = 0; - let incr = 1; - if( value.length != null ) - incr = value.length; - this.aggrSizes[key] = tmp + incr; + function isPrimitive( value ) { + return typeof value == 'number' || typeof value == 'string' || typeof value == 'boolean' ; + } - for( let property in value ) { - if( value[property] != null && typeof value[property] == "object" ) - this.calculateCounts( property, value[property] ) + function typeOf( value ) { + const t = typeof value; + if( typeof value == 'string') + return 'vc255'; + return ''; + } + + + function hasEntry( array, entry ) { + for( const i in array ) + if( JSON.stringify(array[i]) == JSON.stringify(entry) ) + return true; + return false; + } + + function getId( record ) { + let suffixes = ["_id", "Id"]; + if( record['id'] != null ) + return record['id']; + let found = false; + for( let i = 0; i < suffixes.length; i++ ) { + const suffix = suffixes[i]; + for( let property in record ) { + if( property.endsWith(suffix) ) { + return record[property]; + } } - } + } - this.introspect = function( key, value, level, isM2O ) { - const isTopCall = this.aggrSizes == null; - if( isTopCall ) { - this.aggrSizes = {}; - if( level == 0 ) { - for( let property in value ) { - //const field = value[property]; - let suffixes = ["_address", "_id", "_name", "Id"]; - let found = false; - let tmp = ""; - for( let i = 0; i < suffixes.length; i++ ) { - const suffix = suffixes[i]; - if( property.endsWith(suffix) ) { - tmp += property.substring(0,property.length-suffix.length)/*+'s'*/; - found = true; - break; - } - } - if( !found && key == null ) - key = "unnamed_entity"; - else if( found ) - key = tmp; - break; - } + function hasPrimitiveAttr( value ) { + for( let property in value ) { + if( value[property] != null && typeof value[property] == "object" ) + continue; + return true; + } + return false; + } + + /** + * @param {*} input JSON document + * @param {*} name optional file name, will be the tip attribute if none in JSON + * @returns + */ + function translate( input, name ) { + const obj = JSON.parse(input); + + const tc = new TableContent(); + tc.duplicatesAndParents(name, obj); + tc.flatten(name, obj); + + /*for( const t in tc.tables ) { + console.log('***'+t+'***'); + for( const i in tc.tables[t] ) + console.log(JSON.stringify(tc.tables[t][i])); + }*/ + + let output = tc.output(name, obj, 0); + + //output += "\n\ndv "+name+"_dv "+name +""; + output += '\n\n#settings = { genpk: false, drop: true }'; + + output += '\n\n#flattened = \n'; + output += JSON.stringify(tc.tables, null, 3); + output += '\n'; + + output += '\n\n-- Generated by json2qsql.js ' + `${ qsql_version() } ` + new Date().toLocaleString() +'\n\n'; + + output += '#document = \n'; + output += JSON.stringify(obj, null, 3); + output += '\n'; + + return output; + } + + function TableContent() { + + this.tables = {}; // e.g. {'batter' -> [{"id":"1001","type":"Regular"},...], ... } + this.notNormalized = []; // e.g. ['batter', 'topping'] + this.allTables = []; + this.child2parent = {} // e.g. 'topping' -> 'donut' + + this.objCounts = {}; + + this.output = function( key, value, level, m2m ) { + if( m2m != false && this.notNormalized.includes(key) ) { + const auxTable =this.parent(key)+'_'+key; + const tContent = this.tables[auxTable]; + if( tContent != null ) { + let output = '\n'+indent(level)+auxTable+" /insert "+tContent.length; + const record = tContent[0]; + //for( const attr in record ) + //output += '\n'+indent(level+1)+attr+' '+typeOf(record[attr]); + output += this.output(key, value, level+1, false); + return output; } - this.calculateCounts(key, value); - } - let m2o = ''; - if( isM2O != null && isM2O ) { - m2o = '>' } let output = key; + let m2o = ''; + if( this.notNormalized.includes(key) ) + m2o = '>' if( 0 < level ) output = '\n'+indent(level)+m2o+key; + if( typeof value == 'string' ) { + output += ' vc'; + } if( typeof value == 'number' ) { output += ' num'; if( key.endsWith('_id') || key.endsWith('Id') ) { - output += ' /pk' + output += ' /pk'; return output; } } - + if( 'id' == key ) { + return '\n'+indent(level)+'id vc32 /pk'; + } tofinal: if( typeof value == "object" ) { if( Array.isArray(value) ) { - for( let property in value ) { + for( const property in value ) { if( 1 <= property ) console.log('1 <= property !'); const field = value[property]; - output = this.introspect(key, field, level, false); + output = this.output(key, field, level, m2m); break tofinal; } } else { if( key != "" ) { - let arraySize = this.aggrSizes[key]; - output += ' /insert '+arraySize; + output += ' /insert '+this.tables[key].length; } } let promotedField = ""; @@ -92,8 +157,11 @@ var json2qsql = (function () { if( fld + "_id" == cmp ) continue; } - let isM2O = typeof field == 'object'; - const subtree = this.introspect(property, field, level + 1, isM2O); + if( !this.allTables.includes(key) ) { + output = ''; + level--; + } + const subtree = this.output(property, field, level + 1); output += subtree; } if( promotedField != "" ) @@ -101,36 +169,94 @@ var json2qsql = (function () { } else { //output += '=' + value; } + return output; + } - if( isTopCall ) { - output += "\n\ndv "+key+"_dv "+key +""; - output += '\n\n#settings = { genpk: false, drop: true }'; + this.flatten = function( key, value, parentId ) { + let record = {} + + for( let property in value ) { + if( value[property] != null && typeof value[property] == "object" ) { + let k = key; + let pId = parentId; + if( isNaN(property) ) { + k = property; + const tmp = getId(record); + if( tmp != null ) + pId = tmp; + } + this.flatten( k, value[property], pId ); + } else { + record[property] = value[property]; + } + } + + const hasKeys = 0 < Object.keys(record).length; + let array = this.tables[key]; + if( hasKeys ) { + if( array == null ) + array = []; + if( !hasEntry(array, record) ) { + array.push(record); + } + if( this.notNormalized.includes(key) ) { + const parent = this.parent(key); + if( parent != null ) { + const m2m = parent+'_'+key; + let array2 = this.tables[m2m]; + if( array2 == null ) + array2 = []; + const newObj = {}; + newObj[singular(parent)+"_id"] = parentId; + newObj[singular(key)+"_id"] = getId(record); + array2.push(newObj); + this.tables[m2m] = array2; + } + } + this.tables[key] = array; + } else if( array == null ) + this.tables[key] = []; + } - output += '\n\n-- Generated by json2qsql.js ' + `${ qsql_version() } ` + new Date().toLocaleString() +'\n\n'; + this.duplicatesAndParents = function ( attr, value ) { + const key = '"'+attr+'":'+JSON.stringify(value); + let tmp = this.objCounts[key]; + if( tmp == null ) + tmp = 0; - output += '#document = \n'; - output += JSON.stringify(value, null, 3); - output += '\n'; - this.aggrSizes = null; + let isComposite = false; + for( let property in value ) { + if( value[property] != null && typeof value[property] == "object" ) { + let k = attr; + if( isNaN(property) ) + k = property; + if( k != attr ) + this.child2parent[k] = attr; + this.duplicatesAndParents( k, value[property] ); + isComposite = true; + } } - return output; - }; - } + const hasPrimAttr = hasPrimitiveAttr(value); + if( hasPrimAttr && !this.allTables.includes(attr) ) + this.allTables.push(attr); + if( !isComposite ) { + this.objCounts[key] = tmp + 1; + } + if( 1 < this.objCounts[key] && !this.notNormalized.includes(attr) ) + this.notNormalized.push(attr); + } - function indent( depth ) { - var s = ""; - for (var i = 0; i < depth; i++) - s = s + " "; - return s; - } + this.parent = function ( table ) { + let ret = this.child2parent[table]; + if( ret != null && !this.allTables.includes(ret) ) + return this.parent(ret); + return ret; + } - function isPrimitive( value ) { - return typeof value == 'number' || typeof value == 'string' || typeof value == 'boolean' ; } - - return new JSON2QSQL(); + return translate; }()); export default json2qsql; \ No newline at end of file diff --git a/src/sample.js b/src/sample.js index d072519..a28e420 100644 --- a/src/sample.js +++ b/src/sample.js @@ -16,6 +16,8 @@ export function generateSample( lTable, lColumn, lType, values ) { let value = values[Math.floor(seededRandom() * (max - min)) + min]; if( value.toLowerCase && value.toLowerCase() == 'null' ) optQuote = ''; + if( value.replaceAll ) + value = value.replaceAll('\'','\'\''); return optQuote+value+optQuote; } diff --git a/src/tree.js b/src/tree.js index caa4fdd..8361ca0 100644 --- a/src/tree.js +++ b/src/tree.js @@ -1253,10 +1253,10 @@ let tree = (function(){ return 0; } - this.generateData = function( curObj, parObj ) { + this.generateData = function( dataObj ) { if( ddl.optionEQvalue('inserts',false) ) return ''; - const tab2inserts = this.inserts4tbl(curObj, parObj); + const tab2inserts = this.inserts4tbl(dataObj); const tables = this.orderedTableNodes(); let ret = ''; for( let i = 0; i < tables.length; i++ ) { @@ -1267,7 +1267,7 @@ let tree = (function(){ return ret; } - this.inserts4tbl = function( curObj, parObj ) { + this.inserts4tbl = function( dataObj ) { let tab2inserts = {}; @@ -1277,10 +1277,14 @@ let tree = (function(){ let objName = ddl.objPrefix() + this.parseName(); let insert = ''; for( let i = 0; i < this.cardinality(); i++ ) { - let elem = curObj; - if( curObj != null && Array.isArray(curObj) ) - //val('elem = curObj['+i+']'); - elem = curObj[i]; + let elem = null; + if( dataObj != null ) { + const tbl = dataObj[objName]; + if( tbl != null && Array.isArray(tbl) ) { + const record = tbl[i]; + elem = record; + } + } insert += 'insert into '+objName+' (\n'; @@ -1336,42 +1340,29 @@ let tree = (function(){ if( tmp != null && tmp[i] != null ) { v = tmp[i]; } + if( v.replaceAll ) + v = "'"+v+"'"; insert += tab + (v != -1 ? v : i+1)+ ',\n'; } } - if( this.parseName()=='donut_batters' ) - console.log(''); for( let fk in this.fks ) { let ref = this.fks[fk]; let refNode = ddl.find(ref); let values = []; + let type = 'INTEGER'; for( let k = 1; k <= refNode.cardinality() ; k++ ) - values.push(k); - if( parObj != null && refNode != null ) { - const field = refNode.getPkName(); - if( field == null ) - continue; - let v = parObj[field]; - if( v != null ) { - values = []; - values[0] = v; - } - } + values.push(k); if( elem != null ) { - let refData = elem[ref]; + let refData = elem[fk]; if( refData != null ) { - const field = refNode.getPkName(); - if( field == null ) - continue; - let v = refData[field]; - if( v != null ) { - values = []; - values[0] = v; - } + if( typeof refData == 'string' ) + type = "STRING"; // not INTEGER + values = []; + values[0] = refData; } } - insert += tab+translate(ddl.getOptionValue('Data Language'),generateSample(objName,singular(ref)+'_id', 'INTEGER', values))+',\n'; + insert += tab+translate(ddl.getOptionValue('Data Language'),generateSample(objName,singular(ref)+'_id', type, values))+',\n'; } for( let j = 0; j < this.children.length; j++ ) { let child = this.children[j]; @@ -1390,11 +1381,11 @@ let tree = (function(){ values[0] = v; } } - let tmp = getValue(ddl.data, null /*no name at level 0*/, cname, this.parseName()); + /*let tmp = getValue(ddl.data, null no name at level 0, cname, this.parseName()); if( tmp != null && tmp[i] != null ) { values = []; values[0] = tmp[i]; - } + }*/ let datum = generateSample(objName, cname, child.parseType(), values); insert += tab + translate(ddl.getOptionValue('Data Language'), datum)+',\n'; } @@ -1419,11 +1410,7 @@ let tree = (function(){ for( let i = 0; i < this.children.length; i++ ) { const child = this.children[i]; if( 0 < child.children.length ) { - const prt = curObj; - let newCurObj = null; - if( curObj != null ) - newCurObj = curObj[child.parseName()]; - const merged = {...tab2inserts , ...child.inserts4tbl( newCurObj, prt )}; + const merged = {...tab2inserts , ...child.inserts4tbl( dataObj )}; tab2inserts = merged; } } @@ -1623,11 +1610,32 @@ let tree = (function(){ line = ''; continue; } + let flattened = null; let document = null; let settings = null; for( let j in src1 ) { const t1 = src1[j]; - if( document == null && t1.value == 'document' ) { + if( flattened == null && t1.value == 'flattened' ) { + flattened = ''; + continue; + } + if( flattened != null ) { + flattened += t1.value; + if( flattened == '=' ) + continue; + if( flattened.charAt(flattened.length-1)!='}' ) + continue; + let jsonStr = flattened.substring(1); +if( jsonStr.length == 57 ) + jsonStr.length == 57; + try { + ddl.data = JSON.parse(jsonStr); + poundDirective = null; + line = ''; + continue OUTER; + } catch( error ) {} + } + /*if( document == null && t1.value == 'document' ) { document = ''; continue; } @@ -1642,7 +1650,7 @@ let tree = (function(){ line = ''; continue OUTER; } catch( error ) {} - } + }*/ if( settings == null && t1.value == 'settings' ) { settings = ''; continue; @@ -1660,6 +1668,7 @@ let tree = (function(){ } catch( error ) {} } } + //poundDirective = null; } if( t.type == 'comment' ) { continue; diff --git a/test/experimental/donuts.json b/test/JSON/donuts.json similarity index 100% rename from test/experimental/donuts.json rename to test/JSON/donuts.json diff --git a/test/JSON/donuts.qsql b/test/JSON/donuts.qsql new file mode 100644 index 0000000..0ab7f8e --- /dev/null +++ b/test/JSON/donuts.qsql @@ -0,0 +1,319 @@ +donuts /insert 3 + id vc32 /pk + type vc + name vc + ppu num + donuts_batter /insert 7 + >batter /insert 4 + id vc32 /pk + type vc + donuts_topping /insert 16 + >topping /insert 7 + id vc32 /pk + type vc + +#settings = { genpk: false, drop: true } + +#flattened = +{ + "donuts_batter": [ + { + "donut_id": "0001", + "batter_id": "1001" + }, + { + "donut_id": "0001", + "batter_id": "1002" + }, + { + "donut_id": "0001", + "batter_id": "1003" + }, + { + "donut_id": "0001", + "batter_id": "1004" + }, + { + "donut_id": "0002", + "batter_id": "1001" + }, + { + "donut_id": "0003", + "batter_id": "1001" + }, + { + "donut_id": "0003", + "batter_id": "1002" + } + ], + "batter": [ + { + "id": "1001", + "type": "Regular" + }, + { + "id": "1002", + "type": "Chocolate" + }, + { + "id": "1003", + "type": "Blueberry" + }, + { + "id": "1004", + "type": "Devil's Food" + } + ], + "batters": [], + "donuts_topping": [ + { + "donut_id": "0001", + "topping_id": "5001" + }, + { + "donut_id": "0001", + "topping_id": "5002" + }, + { + "donut_id": "0001", + "topping_id": "5005" + }, + { + "donut_id": "0001", + "topping_id": "5007" + }, + { + "donut_id": "0001", + "topping_id": "5006" + }, + { + "donut_id": "0001", + "topping_id": "5003" + }, + { + "donut_id": "0001", + "topping_id": "5004" + }, + { + "donut_id": "0002", + "topping_id": "5001" + }, + { + "donut_id": "0002", + "topping_id": "5002" + }, + { + "donut_id": "0002", + "topping_id": "5005" + }, + { + "donut_id": "0002", + "topping_id": "5003" + }, + { + "donut_id": "0002", + "topping_id": "5004" + }, + { + "donut_id": "0003", + "topping_id": "5001" + }, + { + "donut_id": "0003", + "topping_id": "5002" + }, + { + "donut_id": "0003", + "topping_id": "5003" + }, + { + "donut_id": "0003", + "topping_id": "5004" + } + ], + "topping": [ + { + "id": "5001", + "type": "None" + }, + { + "id": "5002", + "type": "Glazed" + }, + { + "id": "5005", + "type": "Sugar" + }, + { + "id": "5007", + "type": "Powdered Sugar" + }, + { + "id": "5006", + "type": "Chocolate with Sprinkles" + }, + { + "id": "5003", + "type": "Chocolate" + }, + { + "id": "5004", + "type": "Maple" + } + ], + "donuts": [ + { + "id": "0001", + "type": "donut", + "name": "Cake", + "ppu": 0.55 + }, + { + "id": "0002", + "type": "donut", + "name": "Raised", + "ppu": 0.55 + }, + { + "id": "0003", + "type": "donut", + "name": "Old Fashioned", + "ppu": 0.55 + } + ] +} + + +-- Generated by json2qsql.js development 1/16/2024, 5:44:50 PM + +#document = +[ + { + "id": "0001", + "type": "donut", + "name": "Cake", + "ppu": 0.55, + "batters": { + "batter": [ + { + "id": "1001", + "type": "Regular" + }, + { + "id": "1002", + "type": "Chocolate" + }, + { + "id": "1003", + "type": "Blueberry" + }, + { + "id": "1004", + "type": "Devil's Food" + } + ] + }, + "topping": [ + { + "id": "5001", + "type": "None" + }, + { + "id": "5002", + "type": "Glazed" + }, + { + "id": "5005", + "type": "Sugar" + }, + { + "id": "5007", + "type": "Powdered Sugar" + }, + { + "id": "5006", + "type": "Chocolate with Sprinkles" + }, + { + "id": "5003", + "type": "Chocolate" + }, + { + "id": "5004", + "type": "Maple" + } + ] + }, + { + "id": "0002", + "type": "donut", + "name": "Raised", + "ppu": 0.55, + "batters": { + "batter": [ + { + "id": "1001", + "type": "Regular" + } + ] + }, + "topping": [ + { + "id": "5001", + "type": "None" + }, + { + "id": "5002", + "type": "Glazed" + }, + { + "id": "5005", + "type": "Sugar" + }, + { + "id": "5003", + "type": "Chocolate" + }, + { + "id": "5004", + "type": "Maple" + } + ] + }, + { + "id": "0003", + "type": "donut", + "name": "Old Fashioned", + "ppu": 0.55, + "batters": { + "batter": [ + { + "id": "1001", + "type": "Regular" + }, + { + "id": "1002", + "type": "Chocolate" + } + ] + }, + "topping": [ + { + "id": "5001", + "type": "None" + }, + { + "id": "5002", + "type": "Glazed" + }, + { + "id": "5003", + "type": "Chocolate" + }, + { + "id": "5004", + "type": "Maple" + } + ] + } +] diff --git a/test/JSON/donuts.sql b/test/JSON/donuts.sql new file mode 100644 index 0000000..a34d37c --- /dev/null +++ b/test/JSON/donuts.sql @@ -0,0 +1,681 @@ +drop table donuts cascade constraints; +drop table donuts_batter cascade constraints; +drop table batter cascade constraints; +drop table donuts_topping cascade constraints; +drop table topping cascade constraints; +-- create tables + +create table topping ( + id varchar2(32 char) not null + constraint topping_id_pk primary key, + type varchar2(4000 char) +); + + +create table batter ( + id varchar2(32 char) not null + constraint batter_id_pk primary key, + type varchar2(4000 char) +); + + +create table donuts ( + id varchar2(32 char) not null + constraint donuts_id_pk primary key, + type varchar2(4000 char), + name varchar2(255 char), + ppu number +); + + +create table donuts_batter ( + batter_id varchar2(32 char) + constraint donuts_batter_batter_id_fk + references batter, + donut_id varchar2(32 char) + constraint donuts_batter_donut_id_fk + references donuts +); + +-- table index +create index donuts_batter_i1 on donuts_batter (batter_id); + +create index donuts_batter_i2 on donuts_batter (donut_id); + + +create table donuts_topping ( + topping_id varchar2(32 char) + constraint donuts_topping_topping_id_fk + references topping, + donut_id varchar2(32 char) + constraint donuts_topping_donut_id_fk + references donuts +); + +-- table index +create index donuts_topping_i1 on donuts_topping (topping_id); + +create index donuts_topping_i2 on donuts_topping (donut_id); + + + +-- load data + +insert into topping ( + id, + type +) values ( + '5001', + 'None' +); +insert into topping ( + id, + type +) values ( + '5002', + 'Glazed' +); +insert into topping ( + id, + type +) values ( + '5005', + 'Sugar' +); +insert into topping ( + id, + type +) values ( + '5007', + 'Powdered Sugar' +); +insert into topping ( + id, + type +) values ( + '5006', + 'Chocolate with Sprinkles' +); +insert into topping ( + id, + type +) values ( + '5003', + 'Chocolate' +); +insert into topping ( + id, + type +) values ( + '5004', + 'Maple' +); + +commit; + +insert into batter ( + id, + type +) values ( + '1001', + 'Regular' +); +insert into batter ( + id, + type +) values ( + '1002', + 'Chocolate' +); +insert into batter ( + id, + type +) values ( + '1003', + 'Blueberry' +); +insert into batter ( + id, + type +) values ( + '1004', + 'Devil''s Food' +); + +commit; + +insert into donuts ( + id, + type, + name, + ppu +) values ( + '0001', + 'donut', + 'Cake', + 0.55 +); +insert into donuts ( + id, + type, + name, + ppu +) values ( + '0002', + 'donut', + 'Raised', + 0.55 +); +insert into donuts ( + id, + type, + name, + ppu +) values ( + '0003', + 'donut', + 'Old Fashioned', + 0.55 +); + +commit; + +insert into donuts_batter ( + batter_id, + donut_id +) values ( + '1001', + '0001' +); +insert into donuts_batter ( + batter_id, + donut_id +) values ( + '1002', + '0001' +); +insert into donuts_batter ( + batter_id, + donut_id +) values ( + '1003', + '0001' +); +insert into donuts_batter ( + batter_id, + donut_id +) values ( + '1004', + '0001' +); +insert into donuts_batter ( + batter_id, + donut_id +) values ( + '1001', + '0002' +); +insert into donuts_batter ( + batter_id, + donut_id +) values ( + '1001', + '0003' +); +insert into donuts_batter ( + batter_id, + donut_id +) values ( + '1002', + '0003' +); + +commit; + +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5001', + '0001' +); +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5002', + '0001' +); +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5005', + '0001' +); +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5007', + '0001' +); +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5006', + '0001' +); +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5003', + '0001' +); +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5004', + '0001' +); +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5001', + '0002' +); +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5002', + '0002' +); +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5005', + '0002' +); +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5003', + '0002' +); +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5004', + '0002' +); +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5001', + '0003' +); +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5002', + '0003' +); +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5003', + '0003' +); +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5004', + '0003' +); + +commit; + + +-- Generated by Quick SQL development 1/16/2024, 5:44:50 PM + +/* +donuts /insert 3 + id vc32 /pk + type vc + name vc + ppu num + donuts_batter /insert 7 + >batter /insert 4 + id vc32 /pk + type vc + donuts_topping /insert 16 + >topping /insert 7 + id vc32 /pk + type vc + + + + + + +{ + "donuts_batter": [ + { + "donut_id": "0001", + "batter_id": "1001" + }, + { + "donut_id": "0001", + "batter_id": "1002" + }, + { + "donut_id": "0001", + "batter_id": "1003" + }, + { + "donut_id": "0001", + "batter_id": "1004" + }, + { + "donut_id": "0002", + "batter_id": "1001" + }, + { + "donut_id": "0003", + "batter_id": "1001" + }, + { + "donut_id": "0003", + "batter_id": "1002" + } + ], + "batter": [ + { + "id": "1001", + "type": "Regular" + }, + { + "id": "1002", + "type": "Chocolate" + }, + { + "id": "1003", + "type": "Blueberry" + }, + { + "id": "1004", + "type": "Devil's Food" + } + ], + "batters": [], + "donuts_topping": [ + { + "donut_id": "0001", + "topping_id": "5001" + }, + { + "donut_id": "0001", + "topping_id": "5002" + }, + { + "donut_id": "0001", + "topping_id": "5005" + }, + { + "donut_id": "0001", + "topping_id": "5007" + }, + { + "donut_id": "0001", + "topping_id": "5006" + }, + { + "donut_id": "0001", + "topping_id": "5003" + }, + { + "donut_id": "0001", + "topping_id": "5004" + }, + { + "donut_id": "0002", + "topping_id": "5001" + }, + { + "donut_id": "0002", + "topping_id": "5002" + }, + { + "donut_id": "0002", + "topping_id": "5005" + }, + { + "donut_id": "0002", + "topping_id": "5003" + }, + { + "donut_id": "0002", + "topping_id": "5004" + }, + { + "donut_id": "0003", + "topping_id": "5001" + }, + { + "donut_id": "0003", + "topping_id": "5002" + }, + { + "donut_id": "0003", + "topping_id": "5003" + }, + { + "donut_id": "0003", + "topping_id": "5004" + } + ], + "topping": [ + { + "id": "5001", + "type": "None" + }, + { + "id": "5002", + "type": "Glazed" + }, + { + "id": "5005", + "type": "Sugar" + }, + { + "id": "5007", + "type": "Powdered Sugar" + }, + { + "id": "5006", + "type": "Chocolate with Sprinkles" + }, + { + "id": "5003", + "type": "Chocolate" + }, + { + "id": "5004", + "type": "Maple" + } + ], + "donuts": [ + { + "id": "0001", + "type": "donut", + "name": "Cake", + "ppu": 0.55 + }, + { + "id": "0002", + "type": "donut", + "name": "Raised", + "ppu": 0.55 + }, + { + "id": "0003", + "type": "donut", + "name": "Old Fashioned", + "ppu": 0.55 + } + ] +} + + +-- Generated by json2qsql.js development 1/16/2024, 5:44:50 PM + + + +[ + { + "id": "0001", + "type": "donut", + "name": "Cake", + "ppu": 0.55, + "batters": { + "batter": [ + { + "id": "1001", + "type": "Regular" + }, + { + "id": "1002", + "type": "Chocolate" + }, + { + "id": "1003", + "type": "Blueberry" + }, + { + "id": "1004", + "type": "Devil's Food" + } + ] + }, + "topping": [ + { + "id": "5001", + "type": "None" + }, + { + "id": "5002", + "type": "Glazed" + }, + { + "id": "5005", + "type": "Sugar" + }, + { + "id": "5007", + "type": "Powdered Sugar" + }, + { + "id": "5006", + "type": "Chocolate with Sprinkles" + }, + { + "id": "5003", + "type": "Chocolate" + }, + { + "id": "5004", + "type": "Maple" + } + ] + }, + { + "id": "0002", + "type": "donut", + "name": "Raised", + "ppu": 0.55, + "batters": { + "batter": [ + { + "id": "1001", + "type": "Regular" + } + ] + }, + "topping": [ + { + "id": "5001", + "type": "None" + }, + { + "id": "5002", + "type": "Glazed" + }, + { + "id": "5005", + "type": "Sugar" + }, + { + "id": "5003", + "type": "Chocolate" + }, + { + "id": "5004", + "type": "Maple" + } + ] + }, + { + "id": "0003", + "type": "donut", + "name": "Old Fashioned", + "ppu": 0.55, + "batters": { + "batter": [ + { + "id": "1001", + "type": "Regular" + }, + { + "id": "1002", + "type": "Chocolate" + } + ] + }, + "topping": [ + { + "id": "5001", + "type": "None" + }, + { + "id": "5002", + "type": "Glazed" + }, + { + "id": "5003", + "type": "Chocolate" + }, + { + "id": "5004", + "type": "Maple" + } + ] + } +] + + + Non-default options: +# settings = {"genpk":false,"drop":true} + +*/ \ No newline at end of file diff --git a/test/DV/car_racing/1.json b/test/experimental/car_racing/1.json similarity index 100% rename from test/DV/car_racing/1.json rename to test/experimental/car_racing/1.json diff --git a/test/DV/car_racing/1.qsql b/test/experimental/car_racing/1.qsql similarity index 100% rename from test/DV/car_racing/1.qsql rename to test/experimental/car_racing/1.qsql diff --git a/test/DV/car_racing/1.sql b/test/experimental/car_racing/1.sql similarity index 100% rename from test/DV/car_racing/1.sql rename to test/experimental/car_racing/1.sql diff --git a/test/DV/car_racing/2.json b/test/experimental/car_racing/2.json similarity index 100% rename from test/DV/car_racing/2.json rename to test/experimental/car_racing/2.json diff --git a/test/DV/car_racing/2.qsql b/test/experimental/car_racing/2.qsql similarity index 100% rename from test/DV/car_racing/2.qsql rename to test/experimental/car_racing/2.qsql diff --git a/test/DV/car_racing/2.sql b/test/experimental/car_racing/2.sql similarity index 100% rename from test/DV/car_racing/2.sql rename to test/experimental/car_racing/2.sql diff --git a/test/experimental/donuts.qsql b/test/experimental/donuts.qsql deleted file mode 100644 index 0f3c603..0000000 --- a/test/experimental/donuts.qsql +++ /dev/null @@ -1,151 +0,0 @@ - -donuts /insert 3 - id - type - name - ppu num - >batters /insert 3 - batter /insert 7 - id - type - topping /insert 16 - id - type - -dv donuts_dv donuts - -#settings = { genpk: false, drop: true } - --- Generated by json2qsql.js development 1/5/2024, 10:56:49 AM - -#document = -[ - { - "id": "0001", - "type": "donut", - "name": "Cake", - "ppu": 0.55, - "batters": { - "batter": [ - { - "id": "1001", - "type": "Regular" - }, - { - "id": "1002", - "type": "Chocolate" - }, - { - "id": "1003", - "type": "Blueberry" - }, - { - "id": "1004", - "type": "Devil's Food" - } - ] - }, - "topping": [ - { - "id": "5001", - "type": "None" - }, - { - "id": "5002", - "type": "Glazed" - }, - { - "id": "5005", - "type": "Sugar" - }, - { - "id": "5007", - "type": "Powdered Sugar" - }, - { - "id": "5006", - "type": "Chocolate with Sprinkles" - }, - { - "id": "5003", - "type": "Chocolate" - }, - { - "id": "5004", - "type": "Maple" - } - ] - }, - { - "id": "0002", - "type": "donut", - "name": "Raised", - "ppu": 0.55, - "batters": { - "batter": [ - { - "id": "1001", - "type": "Regular" - } - ] - }, - "topping": [ - { - "id": "5001", - "type": "None" - }, - { - "id": "5002", - "type": "Glazed" - }, - { - "id": "5005", - "type": "Sugar" - }, - { - "id": "5003", - "type": "Chocolate" - }, - { - "id": "5004", - "type": "Maple" - } - ] - }, - { - "id": "0003", - "type": "donut", - "name": "Old Fashioned", - "ppu": 0.55, - "batters": { - "batter": [ - { - "id": "1001", - "type": "Regular" - }, - { - "id": "1002", - "type": "Chocolate" - } - ] - }, - "topping": [ - { - "id": "5001", - "type": "None" - }, - { - "id": "5002", - "type": "Glazed" - }, - { - "id": "5003", - "type": "Chocolate" - }, - { - "id": "5004", - "type": "Maple" - } - ] - } -] diff --git a/test/regression_test.js b/test/regression_test.js index 0ae1328..6df71ca 100755 --- a/test/regression_test.js +++ b/test/regression_test.js @@ -92,7 +92,7 @@ function processFile( subdir, file ) { if( 0 < subdir.indexOf('/erd/') ) output = JSON.stringify(new quicksql(text).getERD(),null,3); else if( ext == '.json' ) - output = fromJSON(text); + output = fromJSON(text, file); else { const p = new quicksql(text); output = p.getDDL(); diff --git a/test/single_test.js b/test/single_test.js index 4259a46..b95d2f7 100644 --- a/test/single_test.js +++ b/test/single_test.js @@ -1,6 +1,4 @@ -import parsed from "../src/ddl.js"; -import json2qsql from "../src/json2qsql.js"; - +import {quicksql,fromJSON} from "../src/ddl.js"; import fs from "fs"; @@ -8,11 +6,13 @@ try { let file = '//Bug35756025/1.qsql'; //file = '//DV/car_racing/2.qsql'; file = '//star/donuts.qsql'; - //file = '//experimental/donuts1.qsql'; + file = '//experimental/donuts.json'; + let args = process.argv.slice(2); if( 0 < args.length ) file = args[0]; //console.log(file); + const text = fs.readFileSync('./test/'+file) let input = text.toString(); @@ -22,12 +22,11 @@ try { let output = null; if( file.endsWith('.json') ) { - const obj = JSON.parse(input); let key = file.substring(0,file.length-'.json'.length); const sp = file.lastIndexOf('/'); if( 0 < sp ) key = key.substring(sp+1); - output = json2qsql.introspect(key, obj, 0); + output = fromJSON(input, key); if( 0 <= ofile.indexOf('/experimental/') ) fs.writeFileSync(ofile+'.qsql', output); else { @@ -39,9 +38,9 @@ try { if( 0 <= file.indexOf('/erd/') ) { output = JSON.stringify(new quicksql(input).toERD(), null, 4); } else - output = new parsed(input).getDDL(); + output = new quicksql(input).getDDL(); - if( 0 <= ofile.indexOf('/experimental/') ) + if( 0 <= ofile.indexOf('/experimental/') ) fs.writeFileSync(ofile+'.sql', output); else console.log(output); diff --git a/test/star/donuts.sql b/test/star/donuts.sql index 724a689..b918264 100644 --- a/test/star/donuts.sql +++ b/test/star/donuts.sql @@ -131,27 +131,27 @@ insert into donut_batters ( donut_id ) values ( 2, - 2 + 1 ); insert into donut_batters ( batters_id, donut_id ) values ( - 1, + 2, 2 ); insert into donut_batters ( batters_id, donut_id ) values ( - 2, + 1, 2 ); insert into donut_batters ( batters_id, donut_id ) values ( - 1, + 3, 2 ); insert into donut_batters ( @@ -159,7 +159,7 @@ insert into donut_batters ( donut_id ) values ( 3, - 1 + 2 ); commit; @@ -168,28 +168,21 @@ insert into donut_toppings ( toppings_id, donut_id ) values ( - 4, + 3, 2 ); insert into donut_toppings ( toppings_id, donut_id ) values ( - 2, + 4, 2 ); insert into donut_toppings ( toppings_id, donut_id ) values ( - 3, - 1 -); -insert into donut_toppings ( - toppings_id, - donut_id -) values ( - 2, + 4, 2 ); insert into donut_toppings ( @@ -211,7 +204,14 @@ insert into donut_toppings ( donut_id ) values ( 2, - 2 + 1 +); +insert into donut_toppings ( + toppings_id, + donut_id +) values ( + 3, + 1 ); commit; From c1b3b18fd51e464fb0498264bd4f50159747717e Mon Sep 17 00:00:00 2001 From: Vadim Tropashko Date: Wed, 17 Jan 2024 15:08:36 -0800 Subject: [PATCH 09/22] Fixed JSON DV example 1 --- dist/quick-sql.js | 1786 +++++++++-------- dist/quick-sql.umd.cjs | 288 +-- src/json2qsql.js | 30 + src/sample.js | 3 +- src/tree.js | 5 +- test/{experimental => JSON}/car_racing/1.json | 0 test/{experimental => JSON}/car_racing/1.qsql | 29 +- test/{experimental => JSON}/car_racing/1.sql | 4 +- test/regression_test.js | 2 +- test/single_test.js | 4 +- test/star/donuts.qsql | 8 +- test/star/donuts.sql | 69 +- test/star/sales_product_customers.sql | 21 +- 13 files changed, 1131 insertions(+), 1118 deletions(-) rename test/{experimental => JSON}/car_racing/1.json (100%) rename test/{experimental => JSON}/car_racing/1.qsql (56%) rename test/{experimental => JSON}/car_racing/1.sql (100%) diff --git a/dist/quick-sql.js b/dist/quick-sql.js index ab6df15..3890bb3 100644 --- a/dist/quick-sql.js +++ b/dist/quick-sql.js @@ -1,43 +1,43 @@ -function _(d) { - return d == null ? d : d.toUpperCase().endsWith("IES") ? d.substring(0, d.length - 3) + "y" : d.toUpperCase().endsWith("ES") || d.toUpperCase().endsWith("S") ? d.substring(0, d.length - 1) : d; +function _(m) { + return m == null ? m : m.toUpperCase().endsWith("IES") ? m.substring(0, m.length - 3) + "y" : m.toUpperCase().endsWith("ES") || m.toUpperCase().endsWith("S") ? m.substring(0, m.length - 1) : m; } -function fe(d, h) { +function fe(m, f) { let k = '"'; - if (d == null) + if (m == null) return null; - let N = !1; + let D = !1; const I = "$#_ "; - if (!d.startsWith(k) && !N) { - const D = d; - if (D.length > 0 && "0" <= D[0] && D[0] <= "9") - N = !0; + if (!m.startsWith(k) && !D) { + const N = m; + if (N.length > 0 && "0" <= N[0] && N[0] <= "9") + D = !0; else - for (let m in D) { - const b = D[m]; - if (I.indexOf(b) < 0 && (b < "0" || "9" < b && b < "A" || "Z" < b && b < "a" || "z" < b)) { - N = !0; + for (let g in N) { + const d = N[g]; + if (I.indexOf(d) < 0 && (d < "0" || "9" < d && d < "A" || "Z" < d && d < "a" || "z" < d)) { + D = !0; break; } } } - return (d.startsWith("_") || d.startsWith("$") || d.startsWith("#")) && (N = !0), N || (k = ""), k + d + k; + return (m.startsWith("_") || m.startsWith("$") || m.startsWith("#")) && (D = !0), D || (k = ""), k + m + k; } -function he(d) { - if (d == null) +function he(m) { + if (m == null) return null; - if (d.indexOf('"') == 0) - return d; - let h = fe(d); - return h.indexOf('"') == 0 || (h = h.replace(/ /g, "_")), h; + if (m.indexOf('"') == 0) + return m; + let f = fe(m); + return f.indexOf('"') == 0 || (f = f.replace(/ /g, "_")), f; } -function K(d, h, k) { - let N = !1; - k == null && (k = ""), d.indexOf('"') == 0 && (N = !0, d = d.substring(1, d.length - 1)), h.indexOf('"') == 0 && (N = !0, h = h.substring(1, h.length - 1)), k.indexOf('"') == 0 && (N = !0, k = k.substring(1, k.length - 1)); - let I = d + h + k; - return N ? I = '"' + I + '"' : I = I.toLowerCase(), I; +function K(m, f, k) { + let D = !1; + k == null && (k = ""), m.indexOf('"') == 0 && (D = !0, m = m.substring(1, m.length - 1)), f.indexOf('"') == 0 && (D = !0, f = f.substring(1, f.length - 1)), k.indexOf('"') == 0 && (D = !0, k = k.substring(1, k.length - 1)); + let I = m + f + k; + return D ? I = '"' + I + '"' : I = I.toLowerCase(), I; } var le = function() { - var d = [ + var m = [ "Sales", "Finance", "Delivery", @@ -50,7 +50,7 @@ var le = function() { "Specialist", "Evangelist", "Salesman" - ], h = [ + ], f = [ "\u300C\u8CA9\u58F2\u300D", "\u300C\u8CA1\u52D9\u300D", "\u300C\u914D\u9001\u300D", @@ -76,31 +76,31 @@ var le = function() { "\uC804\uB3C4\uC790", "\uD310\uB9E4\uC6D0" ]; - function N(I, D) { - if (typeof D != "string" || I.substring(0, 2).toLowerCase() == "en") - return D; - D.indexOf("'") == 0 && (D = D.substring(1, D.length - 1)); - for (var m = -1, b = 0; b < d.length; b++) - if (d[b] == D) { - m = b; + function D(I, N) { + if (typeof N != "string" || I.substring(0, 2).toLowerCase() == "en") + return N; + N.indexOf("'") == 0 && (N = N.substring(1, N.length - 1)); + for (var g = -1, d = 0; d < m.length; d++) + if (m[d] == N) { + g = d; break; } - return 0 <= m && I.substring(0, 2).toLowerCase() == "jp" && m < h.length ? "'" + h[m] + "'" : 0 <= m && I.substring(0, 2).toLowerCase() == "kr" && m < k.length ? "'" + k[m] + "'" : D; + return 0 <= g && I.substring(0, 2).toLowerCase() == "jp" && g < f.length ? "'" + f[g] + "'" : 0 <= g && I.substring(0, 2).toLowerCase() == "kr" && g < k.length ? "'" + k[g] + "'" : N; } - return N; + return D; }(); -function be(d) { - return d && d.__esModule && Object.prototype.hasOwnProperty.call(d, "default") ? d.default : d; +function be(m) { + return m && m.__esModule && Object.prototype.hasOwnProperty.call(m, "default") ? m.default : m; } -var re = { exports: {} }; -(function(d, h) { +var ie = { exports: {} }; +(function(m, f) { (function() { - var k = 9007199254740992, N = -k, I = "0123456789", D = "abcdefghijklmnopqrstuvwxyz", m = D.toUpperCase(), b = I + "abcdef"; - function v(e) { + var k = 9007199254740992, D = -k, I = "0123456789", N = "abcdefghijklmnopqrstuvwxyz", g = N.toUpperCase(), d = I + "abcdef"; + function p(e) { this.name = "UnsupportedError", this.message = e || "This feature is not supported on this platform"; } - v.prototype = new Error(), v.prototype.constructor = v; - var M = Array.prototype.slice; + p.prototype = new Error(), p.prototype.constructor = p; + var S = Array.prototype.slice; function r(e) { if (!(this instanceof r)) return e || (e = null), e === null ? new r() : new r(e); @@ -111,8 +111,8 @@ var re = { exports: {} }; var n = 0; if (Object.prototype.toString.call(arguments[a]) === "[object String]") for (var c = 0; c < arguments[a].length; c++) { - for (var u = 0, g = 0; g < arguments[a].length; g++) - u = arguments[a].charCodeAt(g) + (u << 6) + (u << 16) - u; + for (var u = 0, C = 0; C < arguments[a].length; C++) + u = arguments[a].charCodeAt(C) + (u << 6) + (u << 16) - u; n += u; } else @@ -166,7 +166,7 @@ var re = { exports: {} }; }, r.prototype.character = function(e) { e = s(e); var a = "!@#$%^&*()[]", n, c; - return e.casing === "lower" ? n = D : e.casing === "upper" ? n = m : n = D + m, e.pool ? c = e.pool : (c = "", e.alpha && (c += n), e.numeric && (c += I), e.symbols && (c += a), c || (c = n + I + a)), c.charAt(this.natural({ max: c.length - 1 })); + return e.casing === "lower" ? n = N : e.casing === "upper" ? n = g : n = N + g, e.pool ? c = e.pool : (c = "", e.alpha && (c += n), e.numeric && (c += I), e.symbols && (c += a), c || (c = n + I + a)), c.charAt(this.natural({ max: c.length - 1 })); }, r.prototype.floating = function(e) { e = s(e, { fixed: 4 }), t( e.fixed && e.precision, @@ -180,10 +180,10 @@ var re = { exports: {} }; e.max && e.fixed && e.max > c, "Chance: Max specified is out of range with fixed. Max should be, at most, " + c ), e = s(e, { min: u, max: c }), a = this.integer({ min: e.min * n, max: e.max * n }); - var g = (a / n).toFixed(e.fixed); - return parseFloat(g); + var C = (a / n).toFixed(e.fixed); + return parseFloat(C); }, r.prototype.integer = function(e) { - return e = s(e, { min: N, max: k }), t(e.min > e.max, "Chance: Min cannot be greater than Max."), Math.floor(this.random() * (e.max - e.min + 1) + e.min); + return e = s(e, { min: D, max: k }), t(e.min > e.max, "Chance: Min cannot be greater than Max."), Math.floor(this.random() * (e.max - e.min + 1) + e.min); }, r.prototype.natural = function(e) { if (e = s(e, { min: 0, max: k }), typeof e.numerals == "number" && (t(e.numerals < 1, "Chance: Numerals cannot be less than one."), e.min = Math.pow(10, e.numerals - 1), e.max = Math.pow(10, e.numerals) - 1), t(e.min < 0, "Chance: Min cannot be less than zero."), e.exclude) { t(!Array.isArray(e.exclude), "Chance: exclude must be an array."); @@ -240,10 +240,10 @@ var re = { exports: {} }; return this.c; } }; - function f(e) { + function h(e) { this.c = e; } - f.prototype = { + h.prototype = { substitute: function() { if (!/[{}\\]/.test(this.c)) throw new Error('Invalid escape sequence: "\\' + this.c + '".'); @@ -259,10 +259,10 @@ var re = { exports: {} }; return e.character({ pool: I }); }, A: function(e) { - return e.character({ pool: m }); + return e.character({ pool: g }); }, a: function(e) { - return e.character({ pool: D }); + return e.character({ pool: N }); } }, substitute: function(e) { @@ -272,12 +272,12 @@ var re = { exports: {} }; return a(e); } }; - function P(e) { + function B(e) { for (var a = [], n = "identity", c = 0; c < e.length; c++) { var u = e[c]; switch (n) { case "escape": - a.push(new f(u)), n = "identity"; + a.push(new h(u)), n = "identity"; break; case "identity": u === "{" ? n = "replace" : u === "\\" ? n = "escape" : a.push(new l(u)); @@ -293,12 +293,12 @@ var re = { exports: {} }; if (!e) throw new Error("Template string is required"); var a = this; - return P(e).map(function(n) { + return B(e).map(function(n) { return n.substitute(a); }).join(""); }, r.prototype.buffer = function(e) { if (typeof Buffer > "u") - throw new v("Sorry, the buffer() function is not supported on your platform"); + throw new p("Sorry, the buffer() function is not supported on your platform"); e = s(e, { length: this.natural({ min: 5, max: 20 }) }), t(e.length < 0, "Chance: Length cannot be less than zero."); var a = e.length, n = this.n(this.character, a, e); return Buffer.from(n); @@ -313,13 +313,13 @@ var re = { exports: {} }; typeof e != "function", "Chance: The first argument must be a function." ); - var c = function(S, O) { - return S.indexOf(O) !== -1; + var c = function(M, O) { + return M.indexOf(O) !== -1; }; n && (c = n.comparator || c); - for (var u = [], g = 0, B, p = a * 50, A = M.call(arguments, 2); u.length < a; ) { - var C = JSON.parse(JSON.stringify(A)); - if (B = e.apply(this, C), c(u, B) || (u.push(B), g = 0), ++g > p) + for (var u = [], C = 0, P, b = a * 50, A = S.call(arguments, 2); u.length < a; ) { + var v = JSON.parse(JSON.stringify(A)); + if (P = e.apply(this, v), c(u, P) || (u.push(P), C = 0), ++C > b) throw new RangeError("Chance: num is likely too large for sample set"); } return u; @@ -328,7 +328,7 @@ var re = { exports: {} }; typeof e != "function", "Chance: The first argument must be a function." ), typeof a > "u" && (a = 1); - var n = a, c = [], u = M.call(arguments, 2); + var n = a, c = [], u = S.call(arguments, 2); for (n = Math.max(0, n), null; n--; null) c.push(e.apply(this, u)); return c; @@ -353,36 +353,36 @@ var re = { exports: {} }; return [this.pickone(e)]; var n = e.slice(0), c = n.length; return this.n(function() { - var u = this.natural({ max: --c }), g = n[u]; - return n[u] = n[c], g; + var u = this.natural({ max: --c }), C = n[u]; + return n[u] = n[c], C; }, Math.min(c, a)); }, r.prototype.shuffle = function(e) { - for (var a = [], n = 0, c = Number(e.length), u = i(c), g = c - 1, B, p = 0; p < c; p++) - B = this.natural({ max: g }), n = u[B], a[p] = e[n], u[B] = u[g], g -= 1; + for (var a = [], n = 0, c = Number(e.length), u = i(c), C = c - 1, P, b = 0; b < c; b++) + P = this.natural({ max: C }), n = u[P], a[b] = e[n], u[P] = u[C], C -= 1; return a; }, r.prototype.weighted = function(e, a, n) { if (e.length !== a.length) throw new RangeError("Chance: Length of array and weights must match"); - for (var c = 0, u, g = 0; g < a.length; ++g) { - if (u = a[g], isNaN(u)) + for (var c = 0, u, C = 0; C < a.length; ++C) { + if (u = a[C], isNaN(u)) throw new RangeError("Chance: All weights must be numbers"); u > 0 && (c += u); } if (c === 0) throw new RangeError("Chance: No valid entries in array weights"); - var B = this.random() * c, p = 0, A = -1, C; - for (g = 0; g < a.length; ++g) { - if (u = a[g], p += u, u > 0) { - if (B <= p) { - C = g; + var P = this.random() * c, b = 0, A = -1, v; + for (C = 0; C < a.length; ++C) { + if (u = a[C], b += u, u > 0) { + if (P <= b) { + v = C; break; } - A = g; + A = C; } - g === a.length - 1 && (C = A); + C === a.length - 1 && (v = A); } - var S = e[C]; - return n = typeof n > "u" ? !1 : n, n && (e.splice(C, 1), a.splice(C, 1)), S; + var M = e[v]; + return n = typeof n > "u" ? !1 : n, n && (e.splice(v, 1), a.splice(v, 1)), M; }, r.prototype.paragraph = function(e) { e = s(e); var a = e.sentences || this.natural({ min: 3, max: 7 }), n = this.n(this.sentence, a), c = e.linebreak === !0 ? ` @@ -394,9 +394,9 @@ var re = { exports: {} }; return c = u.join(" "), c = this.capitalize(c), n !== !1 && !/^[.?;!:]$/.test(n) && (n = "."), n && (c += n), c; }, r.prototype.syllable = function(e) { e = s(e); - for (var a = e.length || this.natural({ min: 2, max: 3 }), n = "bcdfghjklmnprstvwz", c = "aeiou", u = n + c, g = "", B, p = 0; p < a; p++) - p === 0 ? B = this.character({ pool: u }) : n.indexOf(B) === -1 ? B = this.character({ pool: n }) : B = this.character({ pool: c }), g += B; - return e.capitalize && (g = this.capitalize(g)), g; + for (var a = e.length || this.natural({ min: 2, max: 3 }), n = "bcdfghjklmnprstvwz", c = "aeiou", u = n + c, C = "", P, b = 0; b < a; b++) + b === 0 ? P = this.character({ pool: u }) : n.indexOf(P) === -1 ? P = this.character({ pool: n }) : P = this.character({ pool: c }), C += P; + return e.capitalize && (C = this.capitalize(C)), C; }, r.prototype.word = function(e) { e = s(e), t( e.syllables && e.length, @@ -439,17 +439,17 @@ var re = { exports: {} }; }, r.prototype.birthday = function(e) { var a = this.age(e), n = /* @__PURE__ */ new Date(), c = n.getFullYear(); if (e && e.type) { - var u = /* @__PURE__ */ new Date(), g = /* @__PURE__ */ new Date(); - u.setFullYear(c - a - 1), g.setFullYear(c - a), e = s(e, { + var u = /* @__PURE__ */ new Date(), C = /* @__PURE__ */ new Date(); + u.setFullYear(c - a - 1), C.setFullYear(c - a), e = s(e, { min: u, - max: g + max: C }); } else if (e && (e.minAge !== void 0 || e.maxAge !== void 0)) { t(e.minAge < 0, "Chance: MinAge cannot be less than zero."), t(e.minAge > e.maxAge, "Chance: MinAge cannot be greater than MaxAge."); - var B = e.minAge !== void 0 ? e.minAge : 0, p = e.maxAge !== void 0 ? e.maxAge : 100, A = new Date(c - p - 1, n.getMonth(), n.getDate()), C = new Date(c - B, n.getMonth(), n.getDate()); - A.setDate(A.getDate() + 1), C.setDate(C.getDate() + 1), C.setMilliseconds(C.getMilliseconds() - 1), e = s(e, { + var P = e.minAge !== void 0 ? e.minAge : 0, b = e.maxAge !== void 0 ? e.maxAge : 100, A = new Date(c - b - 1, n.getMonth(), n.getDate()), v = new Date(c - P, n.getMonth(), n.getDate()); + A.setDate(A.getDate() + 1), v.setDate(v.getDate() + 1), v.setMilliseconds(v.getMilliseconds() - 1), e = s(e, { min: A, - max: C + max: v }); } else e = s(e, { @@ -500,21 +500,21 @@ var re = { exports: {} }; return e = e + (10 - parseInt(a.toString().slice(-1))).toString().slice(-1), e; }, r.prototype.mrz = function(e) { var a = function(u) { - var g = " 3 && (O ? G = G.substr(0, 3) : G = G[0] + G.substr(2, 2)), G.length < 3 && (z = G, G = S.toUpperCase().split("").map(function(J) { + }).join(""), G.length > 3 && (O ? G = G.substr(0, 3) : G = G[0] + G.substr(2, 2)), G.length < 3 && (z = G, G = M.toUpperCase().split("").map(function(J) { return "AEIOU".indexOf(J) !== -1 ? J : void 0; }).join("").substr(0, 3 - z.length)), z = z + G), z; - }, A = function(S, O, G) { + }, A = function(M, O, G) { var z = ["A", "B", "C", "D", "E", "H", "L", "M", "P", "R", "S", "T"]; - return S.getFullYear().toString().substr(2) + z[S.getMonth()] + G.pad(S.getDate() + (O.toLowerCase() === "female" ? 40 : 0), 2); - }, C = function(S) { + return M.getFullYear().toString().substr(2) + z[M.getMonth()] + G.pad(M.getDate() + (O.toLowerCase() === "female" ? 40 : 0), 2); + }, v = function(M) { for (var O = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ", G = "ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ", z = "ABCDEFGHIJKLMNOPQRSTUVWXYZ", J = "BAKPLCQDREVOSFTGUHMINJWZYX", V = 0, U = 0; U < 15; U++) - U % 2 !== 0 ? V += z.indexOf(G[O.indexOf(S[U])]) : V += J.indexOf(G[O.indexOf(S[U])]); + U % 2 !== 0 ? V += z.indexOf(G[O.indexOf(M[U])]) : V += J.indexOf(G[O.indexOf(M[U])]); return z[V % 26]; }; - return B = B.concat(p(c, !0), p(n), A(u, a, this), g.toUpperCase().split("")).join(""), B += C(B.toUpperCase()), B.toUpperCase(); + return P = P.concat(b(c, !0), b(n), A(u, a, this), C.toUpperCase().split("")).join(""), P += v(P.toUpperCase()), P.toUpperCase(); }, r.prototype.pl_pesel = function() { for (var e = this.natural({ min: 1, max: 9999999999 }), a = this.pad(e, 10).split(""), n = 0; n < a.length; n++) a[n] = parseInt(a[n]); @@ -1149,8 +1149,8 @@ var re = { exports: {} }; throw new Error("Chance: Invalid format provided. Please provide #d# where the first # is the number of dice to roll, the second # is the max of each die"); for (var u = n[0]; u > 0; u--) c[u - 1] = this.natural({ min: 1, max: n[1] }); - return typeof a.sum < "u" && a.sum ? c.reduce(function(g, B) { - return g + B; + return typeof a.sum < "u" && a.sum ? c.reduce(function(C, P) { + return C + P; }) : c; } else throw new RangeError("Chance: A type of die roll must be included"); @@ -1162,13 +1162,13 @@ var re = { exports: {} }; return c; }, r.prototype.hash = function(e) { e = s(e, { length: 40, casing: "lower" }); - var a = e.casing === "upper" ? b.toUpperCase() : b; + var a = e.casing === "upper" ? d.toUpperCase() : d; return this.string({ pool: a, length: e.length }); }, r.prototype.luhn_check = function(e) { var a = e.toString(), n = +a.substring(a.length - 1); return n === this.luhn_calculate(+a.substring(0, a.length - 1)); }, r.prototype.luhn_calculate = function(e) { - for (var a = e.toString().split("").reverse(), n = 0, c, u = 0, g = a.length; g > u; ++u) + for (var a = e.toString().split("").reverse(), n = 0, c, u = 0, C = a.length; C > u; ++u) c = +a[u], u % 2 === 0 && (c *= 2, c > 9 && (c -= 9)), n += c; return n * 9 % 10; }, r.prototype.md5 = function(e) { @@ -1187,25 +1187,25 @@ var re = { exports: {} }; throw new Error("A parameter is required to return an md5 hash."); return this.bimd5.md5(a.str, a.key, a.raw); }, r.prototype.file = function(e) { - var a = e || {}, n = "fileExtension", c = Object.keys(this.get("fileExtension")), u, g; + var a = e || {}, n = "fileExtension", c = Object.keys(this.get("fileExtension")), u, C; if (u = this.word({ length: a.length }), a.extension) - return g = a.extension, u + "." + g; + return C = a.extension, u + "." + C; if (a.extensions) { if (Array.isArray(a.extensions)) - return g = this.pickone(a.extensions), u + "." + g; + return C = this.pickone(a.extensions), u + "." + C; if (a.extensions.constructor === Object) { - var B = a.extensions, p = Object.keys(B); - return g = this.pickone(B[this.pickone(p)]), u + "." + g; + var P = a.extensions, b = Object.keys(P); + return C = this.pickone(P[this.pickone(b)]), u + "." + C; } throw new Error("Chance: Extensions must be an Array or Object"); } if (a.fileType) { var A = a.fileType; if (c.indexOf(A) !== -1) - return g = this.pickone(this.get(n)[A]), u + "." + g; + return C = this.pickone(this.get(n)[A]), u + "." + C; throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'"); } - return g = this.pickone(this.get(n)[this.pickone(c)]), u + "." + g; + return C = this.pickone(this.get(n)[this.pickone(c)]), u + "." + C; }, r.prototype.fileWithContent = function(e) { var a = e || {}, n = "fileName" in a ? a.fileName : this.file().split(".")[0]; if (n += "." + ("fileExtension" in a ? a.fileExtension : this.file().split(".")[1]), typeof a.fileSize != "number") @@ -7034,7 +7034,7 @@ var re = { exports: {} }; return a; }; function w(e, a) { - for (var n = x(e), c, u = 0, g = n.length; u < g; u++) + for (var n = x(e), c, u = 0, C = n.length; u < C; u++) c = n[u], a[c] = e[c] || a[c]; } function H(e, a) { @@ -7063,11 +7063,11 @@ var re = { exports: {} }; "Chance: Standard deviation (dev) must be a number" ), e.pool.length > 0) return this.normal_pool(e); - var a, n, c, u, g = e.mean, B = e.dev; + var a, n, c, u, C = e.mean, P = e.dev; do n = this.random() * 2 - 1, c = this.random() * 2 - 1, a = n * n + c * c; while (a >= 1); - return u = n * Math.sqrt(-2 * Math.log(a) / a), B * u + g; + return u = n * Math.sqrt(-2 * Math.log(a) / a), P * u + C; }, r.prototype.normal_pool = function(e) { var a = 0; do { @@ -7117,11 +7117,11 @@ var re = { exports: {} }; for (this.mt[0] = e >>> 0, this.mti = 1; this.mti < this.N; this.mti++) e = this.mt[this.mti - 1] ^ this.mt[this.mti - 1] >>> 30, this.mt[this.mti] = (((e & 4294901760) >>> 16) * 1812433253 << 16) + (e & 65535) * 1812433253 + this.mti, this.mt[this.mti] >>>= 0; }, W.prototype.init_by_array = function(e, a) { - var n = 1, c = 0, u, g; + var n = 1, c = 0, u, C; for (this.init_genrand(19650218), u = this.N > a ? this.N : a; u; u--) - g = this.mt[n - 1] ^ this.mt[n - 1] >>> 30, this.mt[n] = (this.mt[n] ^ (((g & 4294901760) >>> 16) * 1664525 << 16) + (g & 65535) * 1664525) + e[c] + c, this.mt[n] >>>= 0, n++, c++, n >= this.N && (this.mt[0] = this.mt[this.N - 1], n = 1), c >= a && (c = 0); + C = this.mt[n - 1] ^ this.mt[n - 1] >>> 30, this.mt[n] = (this.mt[n] ^ (((C & 4294901760) >>> 16) * 1664525 << 16) + (C & 65535) * 1664525) + e[c] + c, this.mt[n] >>>= 0, n++, c++, n >= this.N && (this.mt[0] = this.mt[this.N - 1], n = 1), c >= a && (c = 0); for (u = this.N - 1; u; u--) - g = this.mt[n - 1] ^ this.mt[n - 1] >>> 30, this.mt[n] = (this.mt[n] ^ (((g & 4294901760) >>> 16) * 1566083941 << 16) + (g & 65535) * 1566083941) - n, this.mt[n] >>>= 0, n++, n >= this.N && (this.mt[0] = this.mt[this.N - 1], n = 1); + C = this.mt[n - 1] ^ this.mt[n - 1] >>> 30, this.mt[n] = (this.mt[n] ^ (((C & 4294901760) >>> 16) * 1566083941 << 16) + (C & 65535) * 1566083941) - n, this.mt[n] >>>= 0, n++, n >= this.N && (this.mt[0] = this.mt[this.N - 1], n = 1); this.mt[0] = 2147483648; }, W.prototype.genrand_int32 = function() { var e, a = new Array(0, this.MATRIX_A); @@ -7153,22 +7153,22 @@ var re = { exports: {} }; return u << 16 | c & 65535; }, R.prototype.bit_roll = function(e, a) { return e << a | e >>> 32 - a; - }, R.prototype.md5_cmn = function(e, a, n, c, u, g) { - return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a, e), this.safe_add(c, g)), u), n); - }, R.prototype.md5_ff = function(e, a, n, c, u, g, B) { - return this.md5_cmn(a & n | ~a & c, e, a, u, g, B); - }, R.prototype.md5_gg = function(e, a, n, c, u, g, B) { - return this.md5_cmn(a & c | n & ~c, e, a, u, g, B); - }, R.prototype.md5_hh = function(e, a, n, c, u, g, B) { - return this.md5_cmn(a ^ n ^ c, e, a, u, g, B); - }, R.prototype.md5_ii = function(e, a, n, c, u, g, B) { - return this.md5_cmn(n ^ (a | ~c), e, a, u, g, B); + }, R.prototype.md5_cmn = function(e, a, n, c, u, C) { + return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a, e), this.safe_add(c, C)), u), n); + }, R.prototype.md5_ff = function(e, a, n, c, u, C, P) { + return this.md5_cmn(a & n | ~a & c, e, a, u, C, P); + }, R.prototype.md5_gg = function(e, a, n, c, u, C, P) { + return this.md5_cmn(a & c | n & ~c, e, a, u, C, P); + }, R.prototype.md5_hh = function(e, a, n, c, u, C, P) { + return this.md5_cmn(a ^ n ^ c, e, a, u, C, P); + }, R.prototype.md5_ii = function(e, a, n, c, u, C, P) { + return this.md5_cmn(n ^ (a | ~c), e, a, u, C, P); }, R.prototype.binl_md5 = function(e, a) { e[a >> 5] |= 128 << a % 32, e[(a + 64 >>> 9 << 4) + 14] = a; - var n, c, u, g, B, p = 1732584193, A = -271733879, C = -1732584194, S = 271733878; + var n, c, u, C, P, b = 1732584193, A = -271733879, v = -1732584194, M = 271733878; for (n = 0; n < e.length; n += 16) - c = p, u = A, g = C, B = S, p = this.md5_ff(p, A, C, S, e[n], 7, -680876936), S = this.md5_ff(S, p, A, C, e[n + 1], 12, -389564586), C = this.md5_ff(C, S, p, A, e[n + 2], 17, 606105819), A = this.md5_ff(A, C, S, p, e[n + 3], 22, -1044525330), p = this.md5_ff(p, A, C, S, e[n + 4], 7, -176418897), S = this.md5_ff(S, p, A, C, e[n + 5], 12, 1200080426), C = this.md5_ff(C, S, p, A, e[n + 6], 17, -1473231341), A = this.md5_ff(A, C, S, p, e[n + 7], 22, -45705983), p = this.md5_ff(p, A, C, S, e[n + 8], 7, 1770035416), S = this.md5_ff(S, p, A, C, e[n + 9], 12, -1958414417), C = this.md5_ff(C, S, p, A, e[n + 10], 17, -42063), A = this.md5_ff(A, C, S, p, e[n + 11], 22, -1990404162), p = this.md5_ff(p, A, C, S, e[n + 12], 7, 1804603682), S = this.md5_ff(S, p, A, C, e[n + 13], 12, -40341101), C = this.md5_ff(C, S, p, A, e[n + 14], 17, -1502002290), A = this.md5_ff(A, C, S, p, e[n + 15], 22, 1236535329), p = this.md5_gg(p, A, C, S, e[n + 1], 5, -165796510), S = this.md5_gg(S, p, A, C, e[n + 6], 9, -1069501632), C = this.md5_gg(C, S, p, A, e[n + 11], 14, 643717713), A = this.md5_gg(A, C, S, p, e[n], 20, -373897302), p = this.md5_gg(p, A, C, S, e[n + 5], 5, -701558691), S = this.md5_gg(S, p, A, C, e[n + 10], 9, 38016083), C = this.md5_gg(C, S, p, A, e[n + 15], 14, -660478335), A = this.md5_gg(A, C, S, p, e[n + 4], 20, -405537848), p = this.md5_gg(p, A, C, S, e[n + 9], 5, 568446438), S = this.md5_gg(S, p, A, C, e[n + 14], 9, -1019803690), C = this.md5_gg(C, S, p, A, e[n + 3], 14, -187363961), A = this.md5_gg(A, C, S, p, e[n + 8], 20, 1163531501), p = this.md5_gg(p, A, C, S, e[n + 13], 5, -1444681467), S = this.md5_gg(S, p, A, C, e[n + 2], 9, -51403784), C = this.md5_gg(C, S, p, A, e[n + 7], 14, 1735328473), A = this.md5_gg(A, C, S, p, e[n + 12], 20, -1926607734), p = this.md5_hh(p, A, C, S, e[n + 5], 4, -378558), S = this.md5_hh(S, p, A, C, e[n + 8], 11, -2022574463), C = this.md5_hh(C, S, p, A, e[n + 11], 16, 1839030562), A = this.md5_hh(A, C, S, p, e[n + 14], 23, -35309556), p = this.md5_hh(p, A, C, S, e[n + 1], 4, -1530992060), S = this.md5_hh(S, p, A, C, e[n + 4], 11, 1272893353), C = this.md5_hh(C, S, p, A, e[n + 7], 16, -155497632), A = this.md5_hh(A, C, S, p, e[n + 10], 23, -1094730640), p = this.md5_hh(p, A, C, S, e[n + 13], 4, 681279174), S = this.md5_hh(S, p, A, C, e[n], 11, -358537222), C = this.md5_hh(C, S, p, A, e[n + 3], 16, -722521979), A = this.md5_hh(A, C, S, p, e[n + 6], 23, 76029189), p = this.md5_hh(p, A, C, S, e[n + 9], 4, -640364487), S = this.md5_hh(S, p, A, C, e[n + 12], 11, -421815835), C = this.md5_hh(C, S, p, A, e[n + 15], 16, 530742520), A = this.md5_hh(A, C, S, p, e[n + 2], 23, -995338651), p = this.md5_ii(p, A, C, S, e[n], 6, -198630844), S = this.md5_ii(S, p, A, C, e[n + 7], 10, 1126891415), C = this.md5_ii(C, S, p, A, e[n + 14], 15, -1416354905), A = this.md5_ii(A, C, S, p, e[n + 5], 21, -57434055), p = this.md5_ii(p, A, C, S, e[n + 12], 6, 1700485571), S = this.md5_ii(S, p, A, C, e[n + 3], 10, -1894986606), C = this.md5_ii(C, S, p, A, e[n + 10], 15, -1051523), A = this.md5_ii(A, C, S, p, e[n + 1], 21, -2054922799), p = this.md5_ii(p, A, C, S, e[n + 8], 6, 1873313359), S = this.md5_ii(S, p, A, C, e[n + 15], 10, -30611744), C = this.md5_ii(C, S, p, A, e[n + 6], 15, -1560198380), A = this.md5_ii(A, C, S, p, e[n + 13], 21, 1309151649), p = this.md5_ii(p, A, C, S, e[n + 4], 6, -145523070), S = this.md5_ii(S, p, A, C, e[n + 11], 10, -1120210379), C = this.md5_ii(C, S, p, A, e[n + 2], 15, 718787259), A = this.md5_ii(A, C, S, p, e[n + 9], 21, -343485551), p = this.safe_add(p, c), A = this.safe_add(A, u), C = this.safe_add(C, g), S = this.safe_add(S, B); - return [p, A, C, S]; + c = b, u = A, C = v, P = M, b = this.md5_ff(b, A, v, M, e[n], 7, -680876936), M = this.md5_ff(M, b, A, v, e[n + 1], 12, -389564586), v = this.md5_ff(v, M, b, A, e[n + 2], 17, 606105819), A = this.md5_ff(A, v, M, b, e[n + 3], 22, -1044525330), b = this.md5_ff(b, A, v, M, e[n + 4], 7, -176418897), M = this.md5_ff(M, b, A, v, e[n + 5], 12, 1200080426), v = this.md5_ff(v, M, b, A, e[n + 6], 17, -1473231341), A = this.md5_ff(A, v, M, b, e[n + 7], 22, -45705983), b = this.md5_ff(b, A, v, M, e[n + 8], 7, 1770035416), M = this.md5_ff(M, b, A, v, e[n + 9], 12, -1958414417), v = this.md5_ff(v, M, b, A, e[n + 10], 17, -42063), A = this.md5_ff(A, v, M, b, e[n + 11], 22, -1990404162), b = this.md5_ff(b, A, v, M, e[n + 12], 7, 1804603682), M = this.md5_ff(M, b, A, v, e[n + 13], 12, -40341101), v = this.md5_ff(v, M, b, A, e[n + 14], 17, -1502002290), A = this.md5_ff(A, v, M, b, e[n + 15], 22, 1236535329), b = this.md5_gg(b, A, v, M, e[n + 1], 5, -165796510), M = this.md5_gg(M, b, A, v, e[n + 6], 9, -1069501632), v = this.md5_gg(v, M, b, A, e[n + 11], 14, 643717713), A = this.md5_gg(A, v, M, b, e[n], 20, -373897302), b = this.md5_gg(b, A, v, M, e[n + 5], 5, -701558691), M = this.md5_gg(M, b, A, v, e[n + 10], 9, 38016083), v = this.md5_gg(v, M, b, A, e[n + 15], 14, -660478335), A = this.md5_gg(A, v, M, b, e[n + 4], 20, -405537848), b = this.md5_gg(b, A, v, M, e[n + 9], 5, 568446438), M = this.md5_gg(M, b, A, v, e[n + 14], 9, -1019803690), v = this.md5_gg(v, M, b, A, e[n + 3], 14, -187363961), A = this.md5_gg(A, v, M, b, e[n + 8], 20, 1163531501), b = this.md5_gg(b, A, v, M, e[n + 13], 5, -1444681467), M = this.md5_gg(M, b, A, v, e[n + 2], 9, -51403784), v = this.md5_gg(v, M, b, A, e[n + 7], 14, 1735328473), A = this.md5_gg(A, v, M, b, e[n + 12], 20, -1926607734), b = this.md5_hh(b, A, v, M, e[n + 5], 4, -378558), M = this.md5_hh(M, b, A, v, e[n + 8], 11, -2022574463), v = this.md5_hh(v, M, b, A, e[n + 11], 16, 1839030562), A = this.md5_hh(A, v, M, b, e[n + 14], 23, -35309556), b = this.md5_hh(b, A, v, M, e[n + 1], 4, -1530992060), M = this.md5_hh(M, b, A, v, e[n + 4], 11, 1272893353), v = this.md5_hh(v, M, b, A, e[n + 7], 16, -155497632), A = this.md5_hh(A, v, M, b, e[n + 10], 23, -1094730640), b = this.md5_hh(b, A, v, M, e[n + 13], 4, 681279174), M = this.md5_hh(M, b, A, v, e[n], 11, -358537222), v = this.md5_hh(v, M, b, A, e[n + 3], 16, -722521979), A = this.md5_hh(A, v, M, b, e[n + 6], 23, 76029189), b = this.md5_hh(b, A, v, M, e[n + 9], 4, -640364487), M = this.md5_hh(M, b, A, v, e[n + 12], 11, -421815835), v = this.md5_hh(v, M, b, A, e[n + 15], 16, 530742520), A = this.md5_hh(A, v, M, b, e[n + 2], 23, -995338651), b = this.md5_ii(b, A, v, M, e[n], 6, -198630844), M = this.md5_ii(M, b, A, v, e[n + 7], 10, 1126891415), v = this.md5_ii(v, M, b, A, e[n + 14], 15, -1416354905), A = this.md5_ii(A, v, M, b, e[n + 5], 21, -57434055), b = this.md5_ii(b, A, v, M, e[n + 12], 6, 1700485571), M = this.md5_ii(M, b, A, v, e[n + 3], 10, -1894986606), v = this.md5_ii(v, M, b, A, e[n + 10], 15, -1051523), A = this.md5_ii(A, v, M, b, e[n + 1], 21, -2054922799), b = this.md5_ii(b, A, v, M, e[n + 8], 6, 1873313359), M = this.md5_ii(M, b, A, v, e[n + 15], 10, -30611744), v = this.md5_ii(v, M, b, A, e[n + 6], 15, -1560198380), A = this.md5_ii(A, v, M, b, e[n + 13], 21, 1309151649), b = this.md5_ii(b, A, v, M, e[n + 4], 6, -145523070), M = this.md5_ii(M, b, A, v, e[n + 11], 10, -1120210379), v = this.md5_ii(v, M, b, A, e[n + 2], 15, 718787259), A = this.md5_ii(A, v, M, b, e[n + 9], 21, -343485551), b = this.safe_add(b, c), A = this.safe_add(A, u), v = this.safe_add(v, C), M = this.safe_add(M, P); + return [b, A, v, M]; }, R.prototype.binl2rstr = function(e) { var a, n = ""; for (a = 0; a < e.length * 32; a += 8) @@ -7184,10 +7184,10 @@ var re = { exports: {} }; }, R.prototype.rstr_md5 = function(e) { return this.binl2rstr(this.binl_md5(this.rstr2binl(e), e.length * 8)); }, R.prototype.rstr_hmac_md5 = function(e, a) { - var n, c = this.rstr2binl(e), u = [], g = [], B; - for (u[15] = g[15] = void 0, c.length > 16 && (c = this.binl_md5(c, e.length * 8)), n = 0; n < 16; n += 1) - u[n] = c[n] ^ 909522486, g[n] = c[n] ^ 1549556828; - return B = this.binl_md5(u.concat(this.rstr2binl(a)), 512 + a.length * 8), this.binl2rstr(this.binl_md5(g.concat(B), 512 + 128)); + var n, c = this.rstr2binl(e), u = [], C = [], P; + for (u[15] = C[15] = void 0, c.length > 16 && (c = this.binl_md5(c, e.length * 8)), n = 0; n < 16; n += 1) + u[n] = c[n] ^ 909522486, C[n] = c[n] ^ 1549556828; + return P = this.binl_md5(u.concat(this.rstr2binl(a)), 512 + a.length * 8), this.binl2rstr(this.binl_md5(C.concat(P), 512 + 128)); }, R.prototype.rstr2hex = function(e) { var a = "0123456789abcdef", n = "", c, u; for (u = 0; u < e.length; u += 1) @@ -7205,81 +7205,84 @@ var re = { exports: {} }; return this.rstr2hex(this.raw_hmac_md5(e, a)); }, R.prototype.md5 = function(e, a, n) { return a ? n ? this.raw_hmac_md5(a, e) : this.hex_hmac_md5(a, e) : n ? this.raw_md5(e) : this.hex_md5(e); - }, d.exports && (h = d.exports = r), h.Chance = r, typeof importScripts < "u" && (chance = new r(), self.Chance = r), typeof window == "object" && typeof window.document == "object" && (window.Chance = r, window.chance = new r()); + }, m.exports && (f = m.exports = r), f.Chance = r, typeof importScripts < "u" && (chance = new r(), self.Chance = r), typeof window == "object" && typeof window.document == "object" && (window.Chance = r, window.chance = new r()); })(); -})(re, re.exports); -var pe = re.exports; +})(ie, ie.exports); +var pe = ie.exports; const ge = /* @__PURE__ */ be(pe); -var Y = new ge(); -function se(d, h, k, N) { +function se(m, f, k, D) { + var I = new ge(te); k == null && console.log(); - let I = k.toUpperCase(), D = d.toUpperCase(), m = h.toUpperCase(); - if (N != null && 0 < N.length) { - let s = 0, i = N.length; - var b = "'"; - (I.startsWith("INTEGER") || I.startsWith("NUMBER") || I.startsWith("DATE")) && (b = ""); - let t = N[Math.floor(Z() * (i - s)) + s]; - return t.toLowerCase && t.toLowerCase() == "null" && (b = ""), t.replaceAll && (t = t.replaceAll("'", "''")), b + t + b; + let N = k.toUpperCase(), g = m.toUpperCase(), d = f.toUpperCase(); + if (D != null && 0 < D.length) { + let i = 0, t = D.length; + var p = "'"; + (N.startsWith("INTEGER") || N.startsWith("NUMBER") || N.startsWith("DATE")) && (p = ""); + let o = D[Math.floor(X() * (t - i)) + i]; + return o.toLowerCase && o.toLowerCase() == "null" && (p = ""), o.replaceAll && (o = o.replaceAll("'", "''")), p + o + p; } - if (m == "NAME" && 0 <= D.indexOf("DEPARTMENT")) { - var v = ["Sales", "Finance", "Delivery", "Manufacturing"]; - let s = 0, i = v.length; - return "'" + v[Math.floor(Z() * (i - s)) + s] + "'"; + if (d == "NAME" && 0 <= g.indexOf("DEPARTMENT")) { + var S = ["Sales", "Finance", "Delivery", "Manufacturing"]; + let i = 0, t = S.length; + return "'" + S[Math.floor(X() * (t - i)) + i] + "'"; } - if (Y[m.toLowerCase()] != null && m.indexOf("NAME") < 0) - return "'" + Y[m.toLowerCase()]() + "'"; - if (m == "FIRST_NAME") - return "'" + Y.first() + "'"; - if (m == "LAST_NAME") - return "'" + Y.last() + "'"; - if (0 <= m.indexOf("NAME")) - return "'" + Y.name() + "'"; - if (0 < m.indexOf("ADDRESS")) - return "'" + Y.address() + "'"; - if (m == "LOCATION") - return "'" + Y.city() + "'"; - if (m == "DESCRIPTION") - return "'" + Y.paragraph({ sentences: 2 }) + "'"; - if (m == "JOB") { - var M = ["Engineer", "Consultant", "Architect", "Manager", "Analyst", "Specialist", "Evangelist", "Salesman"]; - let s = 0, i = M.length; - return "'" + M[Math.floor(Z() * (i - s)) + s] + "'"; + if (I[d.toLowerCase()] != null && d.indexOf("NAME") < 0) + return "'" + I[d.toLowerCase()]() + "'"; + if (d == "FIRST_NAME") + return "'" + I.first() + "'"; + if (d == "LAST_NAME") + return "'" + I.last() + "'"; + if (0 <= d.indexOf("NAME")) + return "'" + I.name() + "'"; + if (0 < d.indexOf("ADDRESS")) + return "'" + I.address() + "'"; + if (d == "LOCATION") + return "'" + I.city() + "'"; + if (d == "DESCRIPTION") + return "'" + I.paragraph({ sentences: 2 }) + "'"; + if (d == "JOB") { + var r = ["Engineer", "Consultant", "Architect", "Manager", "Analyst", "Specialist", "Evangelist", "Salesman"]; + let i = 0, t = r.length; + return "'" + r[Math.floor(X() * (t - i)) + i] + "'"; } - if (I.startsWith("INTEGER") || I.startsWith("NUMBER")) { - let s = 0, i = 100; - return Math.floor(Z() * (i - s)) + s; + if (N.startsWith("INTEGER") || N.startsWith("NUMBER")) { + let i = 0, t = 100; + return Math.floor(X() * (t - i)) + i; } - if (I.startsWith("DATE") || I.startsWith("TIMESTAMP")) { - let s = 0, i = 100; - var r = Math.floor(Z() * (i - s)) + s; - return "sysdate-" + r; + if (N.startsWith("DATE") || N.startsWith("TIMESTAMP")) { + let i = 0, t = 100; + var s = Math.floor(X() * (t - i)) + i; + return "sysdate-" + s; } return "'N/A'"; } -var Ce = 1; -function Z() { - var d = Math.sin(Ce++) * 1e4; - return d - Math.floor(d); +var te = 1; +function Ce() { + te = 1; +} +function X() { + var m = Math.sin(te++) * 1e4; + return m - Math.floor(m); } -var ee = function() { - function d(h, k) { - for (var N = [], I = "", D = 0; D < h.length; D++) { - for (var m = h.charAt(D), b = N.length, v = 0; v < k.length; v++) { - var M = k.charAt(v); - if (m == M) { - 0 < I.length && N.push(I), N.push(m), I = ""; +var $ = function() { + function m(f, k) { + for (var D = [], I = "", N = 0; N < f.length; N++) { + for (var g = f.charAt(N), d = D.length, p = 0; p < k.length; p++) { + var S = k.charAt(p); + if (g == S) { + 0 < I.length && D.push(I), D.push(g), I = ""; continue; } } - b == N.length && (I = I + m); + d == D.length && (I = I + g); } - return 0 < I.length && N.push(I), N; + return 0 < I.length && D.push(I), D; } - return d; -}(), Q = function() { - function d(I, D, m, b, v, M) { - this.type = b, this.value = I, this.begin = D, this.end = m, this.line = v, this.col = M, this.toString = function() { - return "{type:" + b + ",value:" + I + "}"; + return m; +}(), Z = function() { + function m(I, N, g, d, p, S) { + this.type = d, this.value = I, this.begin = N, this.end = g, this.line = p, this.col = S, this.toString = function() { + return "{type:" + d + ",value:" + I + "}"; }, this.isStandardLiteral = function() { if (this.value.length < 2 || !(this.value.charAt(0) == "'" || this.value.charAt(0) == "n" || this.value.charAt(0) == "N")) return !1; @@ -7315,116 +7318,116 @@ var ee = function() { return s == "<" ? ">" : s == "[" ? "]" : s == "{" ? "}" : s == "(" ? ")" : s; } } - function h(I, D, m) { - for (var b = [], v = `(){}[]^-|!*+.><='",;:%@?/\\#~` + m, M = ` -\r `, r = ee( + function f(I, N, g) { + for (var d = [], p = `(){}[]^-|!*+.><='",;:%@?/\\#~` + g, S = ` +\r `, r = $( I, //".*-+/|><=()\'\", \n\r\t" - v + M + p + S ), s = 0, i = 0, t = 0, o = 0; o < r.length; o++) { - var l = r[o], f = null; - if (b.length > 0 && (f = b[b.length - 1]), l == ` + var l = r[o], h = null; + if (d.length > 0 && (h = d[d.length - 1]), l == ` ` ? (i++, t = 0) : o > 0 && r[o - 1] !== ` -` ? t = t + r[o - 1].length : t = 0, s += l.length, f != null && f.type == "comment" && (f.value.lastIndexOf("*/") != f.value.length - 2 || f.value == "/*/")) { - l == "*" || l == "/" ? f.value = f.value + l : f.value = "/* ... ", f.end = s, f != null && f.type == "comment" && f.value.lastIndexOf("*/") == f.value.length - 2 && f.value != "/*/" && (f.value = I.substring(f.begin, f.end)); +` ? t = t + r[o - 1].length : t = 0, s += l.length, h != null && h.type == "comment" && (h.value.lastIndexOf("*/") != h.value.length - 2 || h.value == "/*/")) { + l == "*" || l == "/" ? h.value = h.value + l : h.value = "/* ... ", h.end = s, h != null && h.type == "comment" && h.value.lastIndexOf("*/") == h.value.length - 2 && h.value != "/*/" && (h.value = I.substring(h.begin, h.end)); continue; } - if (f != null && (f.type == "line-comment" || f.type == "dbtools-command") && l != ` + if (h != null && (h.type == "line-comment" || h.type == "dbtools-command") && l != ` `) { - f.value = f.value + l; + h.value = h.value + l; continue; } - if (f != null && (f.type == "line-comment" || f.type == "dbtools-command") && l == ` -` && (f.end = f.begin + f.value.length), f != null && f.type == "quoted-string" && !(f.isStandardLiteral() || f.isAltLiteral())) { - f.value = f.value + l, f.end = f.begin + f.value.length; + if (h != null && (h.type == "line-comment" || h.type == "dbtools-command") && l == ` +` && (h.end = h.begin + h.value.length), h != null && h.type == "quoted-string" && !(h.isStandardLiteral() || h.isAltLiteral())) { + h.value = h.value + l, h.end = h.begin + h.value.length; continue; } - if (!(f != null && f.type == "dquoted-string" && l != '"' && !(f.value.endsWith('"') && f.value.length > 1))) { - if (f != null && f.type == "dquoted-string" && l == '"') { - f.end = s, f.value = I.substring(f.begin, f.end); + if (!(h != null && h.type == "dquoted-string" && l != '"' && !(h.value.endsWith('"') && h.value.length > 1))) { + if (h != null && h.type == "dquoted-string" && l == '"') { + h.end = s, h.value = I.substring(h.begin, h.end); continue; } - if (!(f != null && f.type == "bquoted-string" && l != "`" && !(f.value.endsWith("`") && f.value.length > 1))) { - if (f != null && f.type == "bquoted-string" && l == "`") { - f.end = s, f.value = I.substring(f.begin, f.end); + if (!(h != null && h.type == "bquoted-string" && l != "`" && !(h.value.endsWith("`") && h.value.length > 1))) { + if (h != null && h.type == "bquoted-string" && l == "`") { + h.end = s, h.value = I.substring(h.begin, h.end); continue; } - if (l == "*" && f != null && f.value == "/") { - f.value = f.value + l, f.end = f.begin + f.value.length, f.type = "comment"; + if (l == "*" && h != null && h.value == "/") { + h.value = h.value + l, h.end = h.begin + h.value.length, h.type = "comment"; continue; } - if (l == "-" && f != null && f.value == "-") { - f.value = f.value + l, f.type = "line-comment"; + if (l == "-" && h != null && h.value == "-") { + h.value = h.value + l, h.type = "line-comment"; continue; } - if ((l.toUpperCase() == "REM" || l.toUpperCase() == "REMA" || l.toUpperCase() == "REMAR" || l.toUpperCase() == "REMARK" || l.toUpperCase() == "PRO" || l.toUpperCase() == "PROM" || l.toUpperCase() == "PROMP" || l.toUpperCase() == "PROMPT") && (f == null || f.value == ` -` || f.value == "\r")) { - b.push(new d(l, s - l.length, -9, "line-comment", i, t)); + if ((l.toUpperCase() == "REM" || l.toUpperCase() == "REMA" || l.toUpperCase() == "REMAR" || l.toUpperCase() == "REMARK" || l.toUpperCase() == "PRO" || l.toUpperCase() == "PROM" || l.toUpperCase() == "PROMP" || l.toUpperCase() == "PROMPT") && (h == null || h.value == ` +` || h.value == "\r")) { + d.push(new m(l, s - l.length, -9, "line-comment", i, t)); continue; } - if (l.toUpperCase() == "SODA" && (f == null || f.value == ` -` || f.value == "\r")) { - b.push(new d(l, s - l.length, -9, "dbtools-command", i, t)); + if (l.toUpperCase() == "SODA" && (h == null || h.value == ` +` || h.value == "\r")) { + d.push(new m(l, s - l.length, -9, "dbtools-command", i, t)); continue; } - if (f != null && f.type == "identifier" && f.end == -11 && f.value.indexOf("@") == 0 && !(l == ` + if (h != null && h.type == "identifier" && h.end == -11 && h.value.indexOf("@") == 0 && !(l == ` ` || l == "\r")) { - f.value = f.value + l; + h.value = h.value + l; continue; } - if (f != null && f.type == "identifier" && f.end == -11 && f.value.indexOf("@") == 0 && (l == ` + if (h != null && h.type == "identifier" && h.end == -11 && h.value.indexOf("@") == 0 && (l == ` ` || l == "\r")) { - f.end = s - 1, b.push(new d(l, s - 1, s, "ws", i, t)); + h.end = s - 1, d.push(new m(l, s - 1, s, "ws", i, t)); continue; } - if (D && l == "'") { - f != null && (f.value.toUpperCase() == "Q" || f.value.toUpperCase() == "N" || f.value.toUpperCase() == "U" || f.value.toUpperCase() == "NQ") ? (f.value += l, f.type = "quoted-string") : b.push(new d(l, s - 1, -10, "quoted-string", i, t)); + if (N && l == "'") { + h != null && (h.value.toUpperCase() == "Q" || h.value.toUpperCase() == "N" || h.value.toUpperCase() == "U" || h.value.toUpperCase() == "NQ") ? (h.value += l, h.type = "quoted-string") : d.push(new m(l, s - 1, -10, "quoted-string", i, t)); continue; } - if (D && l == '"') { - b.push(new d(l, s - 1, -11, "dquoted-string", i, t)); + if (N && l == '"') { + d.push(new m(l, s - 1, -11, "dquoted-string", i, t)); continue; } - if (l == "`" && 0 <= v.indexOf("`")) { - b.push(new d(l, s - 1, -11, "bquoted-string", i, t)); + if (l == "`" && 0 <= p.indexOf("`")) { + d.push(new m(l, s - 1, -11, "bquoted-string", i, t)); continue; } - if (l.length == 1 && 0 <= v.indexOf(l)) { - b.push(new d(l, s - 1, s, "operation", i, t)); + if (l.length == 1 && 0 <= p.indexOf(l)) { + d.push(new m(l, s - 1, s, "operation", i, t)); continue; } - if (l.length == 1 && 0 <= M.indexOf(l)) { - b.push(new d(l, s - 1, s, "ws", i, t)); + if (l.length == 1 && 0 <= S.indexOf(l)) { + d.push(new m(l, s - 1, s, "ws", i, t)); continue; } if ("0" <= l.charAt(0) && l.charAt(0) <= "9") { - k(l, b, s - l.length, i) || (l.charAt(l.length - 1) == "K" || l.charAt(l.length - 1) == "k" || l.charAt(l.length - 1) == "M" || l.charAt(l.length - 1) == "m" || l.charAt(l.length - 1) == "G" || l.charAt(l.length - 1) == "g" || l.charAt(l.length - 1) == "T" || l.charAt(l.length - 1) == "t" || l.charAt(l.length - 1) == "P" || l.charAt(l.length - 1) == "p" || l.charAt(l.length - 1) == "E" || l.charAt(l.length - 1) == "e" ? (b.push(new d(l.substring(0, l.length - 1), s - l.length, s - 1, "constant.numeric", i, t)), b.push(new d(l.substring(l.length - 1), s - 1, s, "constant.numeric", i, t))) : b.push(new d(l, s - l.length, s, "constant.numeric", i, t))); + k(l, d, s - l.length, i) || (l.charAt(l.length - 1) == "K" || l.charAt(l.length - 1) == "k" || l.charAt(l.length - 1) == "M" || l.charAt(l.length - 1) == "m" || l.charAt(l.length - 1) == "G" || l.charAt(l.length - 1) == "g" || l.charAt(l.length - 1) == "T" || l.charAt(l.length - 1) == "t" || l.charAt(l.length - 1) == "P" || l.charAt(l.length - 1) == "p" || l.charAt(l.length - 1) == "E" || l.charAt(l.length - 1) == "e" ? (d.push(new m(l.substring(0, l.length - 1), s - l.length, s - 1, "constant.numeric", i, t)), d.push(new m(l.substring(l.length - 1), s - 1, s, "constant.numeric", i, t))) : d.push(new m(l, s - l.length, s, "constant.numeric", i, t))); continue; } var y = "identifier"; - o + 1 < r.length && r[o + 1], b.push(new d(l, s - l.length, s, y, i, t)); + o + 1 < r.length && r[o + 1], d.push(new m(l, s - l.length, s, y, i, t)); } } } - if (b.length > 0) { - var f = b[b.length - 1]; - f.end = I.length; + if (d.length > 0) { + var h = d[d.length - 1]; + h.end = I.length; } - return b; + return d; } - function k(I, D, m, b) { + function k(I, N, g, d) { if (0 > I.indexOf("e") && 0 > I.indexOf("f") && 0 > I.indexOf("d")) return !1; 0 <= I.indexOf("e"), 0 <= I.indexOf("e"), !(0 <= I.indexOf("e")) && 0 <= I.indexOf("f"); - for (var v = ee(I, "efd"), M = 0; M < v.length; M++) { - var r = v[M]; - m += r.length, "0" <= r.charAt(0) && r.charAt(0) <= "9" ? D.push(new d(r, m - r.length, m, "constant.numeric", b)) : D.push(new d(r, m - r.length, m, "identifier", b)); + for (var p = $(I, "efd"), S = 0; S < p.length; S++) { + var r = p[S]; + g += r.length, "0" <= r.charAt(0) && r.charAt(0) <= "9" ? N.push(new m(r, g - r.length, g, "constant.numeric", d)) : N.push(new m(r, g - r.length, g, "identifier", d)); } return !0; } - function N(I, D, m, b) { - for (var v = [], M = h(I, m, b), r = null, s = 0; s < M.length; s++) { - var i = M[s]; + function D(I, N, g, d) { + for (var p = [], S = f(I, g, d), r = null, s = 0; s < S.length; s++) { + var i = S[s]; if (i.type == "quoted-string") { if (r != null && r.type == "quoted-string") { r.value = r.value + i.value, r.end = i.end; @@ -7449,14 +7452,14 @@ var ee = function() { || token.value.equals("$ELSE") || token.value.equals("$THEN") ||*/ - i.value.indexOf("$$") == 0 && (i.value = "$$VAR"), (D || i.type != "ws" && i.type != "comment" && i.type != "line-comment") && v.push(i), r = i; + i.value.indexOf("$$") == 0 && (i.value = "$$VAR"), (N || i.type != "ws" && i.type != "comment" && i.type != "line-comment") && p.push(i), r = i; } - return v; + return p; } - return N; + return D; }(); -function ve(d) { - const h = { +function ve(m) { + const f = { ACCESS: "N", ADD: "N", ALL: "Y", @@ -7567,14 +7570,14 @@ function ve(d) { WHERE: "Y", WITH: "Y" }; - let k = d.toUpperCase(); - return h[k] != null ? "the_" + d : d; + let k = m.toUpperCase(); + return f[k] != null ? "the_" + m : m; } let ce = function() { - let d, h = " ", k = ["string", "varchar2", "varchar", "vc", "char"]; - var N = ["yn", "boolean", "bool"]; - function I(v, M, r) { - this.line = v, this.parent = r, this.children = [], r != null && r.children.push(this), this.fks = null, this.descendants = function() { + let m, f = " ", k = ["string", "varchar2", "varchar", "vc", "char"]; + var D = ["yn", "boolean", "bool"]; + function I(p, S, r) { + this.line = p, this.parent = r, this.children = [], r != null && r.children.push(this), this.fks = null, this.descendants = function() { var i = []; i.push(this); for (var t = 0; t < this.children.length; t++) @@ -7582,26 +7585,26 @@ let ce = function() { return i; }, this.maxChildNameLen = function() { var i = 2, t = this.trimmedContent().toUpperCase(); - if ((d.optionEQvalue("rowkey", !0) || 0 < t.indexOf("/ROWKEY")) && (i = 7), (d.optionEQvalue("Row Version Number", "yes") || 0 < t.indexOf("/ROWVERSION")) && (i = 11), d.optionEQvalue("Audit Columns", "yes") || 0 < t.indexOf("/AUDITCOLS") || 0 < t.indexOf("/AUDIT COL")) { - let P = d.getOptionValue("createdcol").length; - i < P && (i = P), P = d.getOptionValue("createdbycol").length, i < P && (i = P), P = d.getOptionValue("updatedcol").length, i < P && (i = P), P = d.getOptionValue("updatedbycol").length, i < P && (i = P); + if ((m.optionEQvalue("rowkey", !0) || 0 < t.indexOf("/ROWKEY")) && (i = 7), (m.optionEQvalue("Row Version Number", "yes") || 0 < t.indexOf("/ROWVERSION")) && (i = 11), m.optionEQvalue("Audit Columns", "yes") || 0 < t.indexOf("/AUDITCOLS") || 0 < t.indexOf("/AUDIT COL")) { + let B = m.getOptionValue("createdcol").length; + i < B && (i = B), B = m.getOptionValue("createdbycol").length, i < B && (i = B), B = m.getOptionValue("updatedcol").length, i < B && (i = B), B = m.getOptionValue("updatedbycol").length, i < B && (i = B); } if (this.fks != null) for (var o in this.fks) { var l = o.length; - let P = d.find(o); - P != null && P.isMany2One() && (l += 3), i < l && (i = l); + let B = m.find(o); + B != null && B.isMany2One() && (l += 3), i < l && (i = l); } - for (var f = 0; f < this.children.length; f++) { - let P = this.children[f]; - if (0 < P.children.length) + for (var h = 0; h < this.children.length; h++) { + let B = this.children[h]; + if (0 < B.children.length) continue; - let T = P.parseName().length; - 0 < P.indexOf("file") && (T += 9), i < T && (i = T); + let T = B.parseName().length; + 0 < B.indexOf("file") && (T += 9), i < T && (i = T); } - var y = d.additionalColumns(); - for (let P in y) { - let T = P.length; + var y = m.additionalColumns(); + for (let B in y) { + let T = B.length; i < T && (i = T); } return i; @@ -7610,7 +7613,7 @@ let ce = function() { let t = i; return t = t.replace(/ timestamp with local time zone/gi, " tswltz"), t = t.replace(/ timestamp with time zone/gi, " tswtz"), t = t.replace(/ timestamp/gi, " ts"), t; } - this.content = s(M), this.comment, this.indexOf = function(i, t) { + this.content = s(S), this.comment, this.indexOf = function(i, t) { for (let o = 0; o < this.src.length; o++) { if (t && this.src[o].value.indexOf(i) == 0) return o; @@ -7621,21 +7624,21 @@ let ce = function() { }, this.trimmedContent = function() { var i = this.content.trim(), t = i.indexOf("["), o = i.indexOf("]"); return this.comment == null && 0 < t && (this.comment = i.substr(t + 1, o - t - 1)), 0 < t && (i = i.substr(0, t) + i.substr(o + 2)), t = i.indexOf("--"), this.comment == null && 0 < t && (this.comment = i.substr(t + 2)), 0 < t && (i = i.substr(0, t)), i.trim(); - }, this.src = Q(this.content.toLowerCase(), !1, !0, ""), this.parseName = function() { + }, this.src = Z(this.content.toLowerCase(), !1, !0, ""), this.parseName = function() { let i = this.trimmedContent(); - i = i.replace(/\t/, h); + i = i.replace(/\t/, f); const t = i.indexOf('"'), o = i.indexOf('"', t + 1); if (0 <= t && t < o) return i.substring(t, o + 1); (i.indexOf(">") == 0 || i.indexOf("<") == 0) && (i = i.substring(1).trim()); const l = i.toLowerCase(); if (l.indexOf("view ") == 0) { - var f = i.split(" "); - return f[1]; + var h = i.split(" "); + return h[1]; } - i = m(i, " d"); + i = g(i, " d"); var y = i.indexOf("/"); - 0 < y && (i = i.substring(0, y)), i = i.trim(), i = m(i, " integer"), i = m(i, " number"), i = m(i, " int"), i = m(i, " num"), i = m(i, " clob"), i = m(i, " blob"), i = m(i, " json"), i = m(i, " file"), i = m(i, " date"), i = m(i, " tstz"), i = m(i, " tswtz"), i = m(i, " tswltz"), i = m(i, " ts"), i = i.replace(/ vc\d+k/g, ""), i = i.replace(/ vc\(\d+\)/g, ""), i = i.replace(/ vc\d+/g, ""); + 0 < y && (i = i.substring(0, y)), i = i.trim(), i = g(i, " integer"), i = g(i, " number"), i = g(i, " int"), i = g(i, " num"), i = g(i, " clob"), i = g(i, " blob"), i = g(i, " json"), i = g(i, " file"), i = g(i, " date"), i = g(i, " tstz"), i = g(i, " tswtz"), i = g(i, " tswltz"), i = g(i, " ts"), i = i.replace(/ vc\d+k/g, ""), i = i.replace(/ vc\(\d+\)/g, ""), i = i.replace(/ vc\d+/g, ""); for (let T in k) { let E = l.indexOf(" " + k[T]); if (0 < E) { @@ -7643,16 +7646,16 @@ let ce = function() { break; } } - for (let T in N) { - let E = l.indexOf(" " + N[T]); + for (let T in D) { + let E = l.indexOf(" " + D[T]); if (0 < E) { - i = i.substring(0, E) + i.substring(E + N[T].length + 1); + i = i.substring(0, E) + i.substring(E + D[T].length + 1); break; } } i = i.replace(/ num(ber)?\(\d+\)/g, ""), i = i.replace(/ num(ber)?\(\d+,\d+\)/g, ""), i = i.replace(/ num(ber)?\d+/g, ""), i = i.trim(), this.children.length == 0 && this.parent != null && this.parent.colprefix != null && (i = this.parent.colprefix + "_" + i); - var P = i.substr(0, 1); - return P >= "0" && P <= "9" && (i = "x" + i), ve(he(i)); + var B = i.substr(0, 1); + return B >= "0" && B <= "9" && (i = "x" + i), ve(he(i)); }, this.parseType = function(i) { if (this.children != null && 0 < this.children.length) return "table"; @@ -7663,39 +7666,39 @@ let ce = function() { return "dv"; if (this.parent == null) return "table"; - var o = d.semantics(), l = 4e3; + var o = m.semantics(), l = 4e3; (t[0].value.startsWith("name") || t[0].value.startsWith("email")) && (l = 255); - const f = this.indexOf("vc", !0); - if (0 < f) { - t[f].begin, t[f].end; - let x = t[f].value.substring(2); - x == "" && this.indexOf("(") == f + 1 && (x = t[f + 2].value), x != "" && (l = parseInt(x)), t[f].value.endsWith("k") && (l < 32 ? l = l * 1024 : l = l * 1024 - 1); + const h = this.indexOf("vc", !0); + if (0 < h) { + t[h].begin, t[h].end; + let x = t[h].value.substring(2); + x == "" && this.indexOf("(") == h + 1 && (x = t[h + 2].value), x != "" && (l = parseInt(x)), t[h].value.endsWith("k") && (l < 32 ? l = l * 1024 : l = l * 1024 - 1); } var y = "varchar2(" + l + o + ")"; - i == "plsql" && (y = "varchar2"), 0 < this.indexOf("int", !0) && (y = "integer"), t[0].value.endsWith("_id") && f < 0 && this.indexOf("date") < 0 && (y = "number"), t[0].value.endsWith("id") && f < 0 && this.indexOf("/") + 1 == this.indexOf("pk") && (y = "number"); - const P = K(r.parseName(), "_", this.parseName()); - (t[0].value.endsWith("_yn") || t[0].value.startsWith("is_")) && (y = "varchar2(1 char) constraint " + K(d.objPrefix(), P) + ` -`, y += h + h + " ".repeat(r.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"); - for (let x in N) - if (0 < this.indexOf(N[x])) { - y = "varchar2(1 char) constraint " + K(d.objPrefix(), P) + ` -`, y += h + h + " ".repeat(r.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"; + i == "plsql" && (y = "varchar2"), 0 < this.indexOf("int", !0) && (y = "integer"), t[0].value.endsWith("_id") && h < 0 && this.indexOf("date") < 0 && (y = "number"), t[0].value == "quantity" && (y = "number"), t[0].value.endsWith("id") && h < 0 && this.indexOf("/") + 1 == this.indexOf("pk") && (y = "number"); + const B = K(r.parseName(), "_", this.parseName()); + (t[0].value.endsWith("_yn") || t[0].value.startsWith("is_")) && (y = "varchar2(1 char) constraint " + K(m.objPrefix(), B) + ` +`, y += f + f + " ".repeat(r.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"); + for (let x in D) + if (0 < this.indexOf(D[x])) { + y = "varchar2(1 char) constraint " + K(m.objPrefix(), B) + ` +`, y += f + f + " ".repeat(r.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"; break; } this.indexOf("phone_number") == 0 && (y = "number"); let T = this.indexOf("num", !0); 0 < T && (y = "number"); let E = this.indexOf(")"); - if (0 < T && 0 < E && (y += this.content.toLowerCase().substring(t[T + 1].begin, t[E].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value.startsWith("created") || t[0].value.startsWith("updated")) && (y = d.getOptionValue("Date Data Type").toLowerCase()), f < 0 && (0 < this.indexOf("clob") && (y = "clob"), (0 < this.indexOf("blob") || 0 < this.indexOf("file")) && (y = "blob"), 0 < this.indexOf("json") && (y = "clob check (" + this.parseName() + " is json)")), 0 < this.indexOf("tswltz") ? y = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : 0 < this.indexOf("tswtz") || 0 < this.indexOf("tstz") ? y = "TIMESTAMP WITH TIME ZONE".toLowerCase() : 0 < this.indexOf("ts") && (y = "TIMESTAMP".toLowerCase()), i) { + if (0 < T && 0 < E && (y += this.content.toLowerCase().substring(t[T + 1].begin, t[E].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value.startsWith("created") || t[0].value.startsWith("updated")) && (y = m.getOptionValue("Date Data Type").toLowerCase()), h < 0 && (0 < this.indexOf("clob") && (y = "clob"), (0 < this.indexOf("blob") || 0 < this.indexOf("file")) && (y = "blob"), 0 < this.indexOf("json") && (y = "clob check (" + this.parseName() + " is json)")), 0 < this.indexOf("tswltz") ? y = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : 0 < this.indexOf("tswtz") || 0 < this.indexOf("tstz") ? y = "TIMESTAMP WITH TIME ZONE".toLowerCase() : 0 < this.indexOf("ts") && (y = "TIMESTAMP".toLowerCase()), i) { if (0 < this.indexOf("fk") || 0 < this.indexOf("reference")) { const x = this.refId(); - let w = "number", H = d.find(x); + let w = "number", H = m.find(x); return H != null && H.getExplicitPkNode() != null && (w = H.getExplicitPkNode().parseType((F) => !0)), w; } return y; } 0 < this.indexOf("unique") && (y += ` -`, y += h + h + " ".repeat(r.maxChildNameLen()) + "constraint " + P + "_unq unique"); +`, y += f + f + " ".repeat(r.maxChildNameLen()) + "constraint " + B + "_unq unique"); var L = "'"; if ((y.startsWith("integer") || y.startsWith("number") || y.startsWith("date")) && (L = ""), 0 < this.indexOf("default")) { const x = t[this.indexOf("default") + 1].value; @@ -7703,13 +7706,13 @@ let ce = function() { } if ((0 < this.indexOf("nn") || this.indexOf("not") + 1 == this.indexOf("null")) && this.indexOf("pk") < 0 && (y += " not null"), (0 < this.indexOf("hidden") || 0 < this.indexOf("invincible")) && (y += " invisible"), y += this.genConstraint(L), 0 < this.indexOf("between")) { const x = this.indexOf("between"), w = t[x + 1].value + " and " + t[x + 3].value; - y += " constraint " + K(P, "_bet") + ` + y += " constraint " + K(B, "_bet") + ` `, y += " check (" + this.parseName() + " between " + w + ")"; } if (0 < this.indexOf("pk")) { let x = " not null"; - y.startsWith("number") && d.optionEQvalue("pk", "identityDataType") && (x = " GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), y.startsWith("number") && d.optionEQvalue("pk", "seq") && (x = " default on null " + (d.objPrefix() + this.parent.parseName()) + "_seq.NEXTVAL ".toLowerCase()), y.startsWith("number") && d.optionEQvalue("pk", "guid") && (x = " default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), y += x + ` -`, y += h + h + " ".repeat(r.maxChildNameLen()) + "constraint " + K(d.objPrefix(), P, "_pk") + " primary key"; + y.startsWith("number") && m.optionEQvalue("pk", "identityDataType") && (x = " GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), y.startsWith("number") && m.optionEQvalue("pk", "seq") && (x = " default on null " + (m.objPrefix() + this.parent.parseName()) + "_seq.NEXTVAL ".toLowerCase()), y.startsWith("number") && m.optionEQvalue("pk", "guid") && (x = " default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), y += x + ` +`, y += f + f + " ".repeat(r.maxChildNameLen()) + "constraint " + K(m.objPrefix(), B, "_pk") + " primary key"; } return y; }, this.genConstraint = function(i) { @@ -7717,16 +7720,16 @@ let ce = function() { if (0 < this.indexOf("check")) { let o = ""; r != null && (o = r.parseName() + "_"); - const l = K(o, this.parseName()), f = this.trimmedContent().toLowerCase(), y = f.indexOf("/check"); - let P = f.lastIndexOf("/"); - P == y && (P = f.length); - let T = this.trimmedContent().substr(y + 6, P - y - 6).trim(); - const E = Q(T, !1, !0, ""); - let L = h; - r != null && (L = " ".repeat(r.maxChildNameLen())), this.children != null && 0 < this.children.length ? (E[0].value != "(" && (T = "( " + T + ")"), t += h + "constraint " + K(d.objPrefix(), l, "_ck"), t += " check " + T + `, -`) : E[0].value == "(" && E[E.length - 1].value == ")" ? (t += " constraint " + K(d.objPrefix(), l, "_ck") + ` -`, t += h + h + L + "check " + T) : (0 < T.indexOf(", ") ? T = T.replace(/, /g, i + "," + i) : 0 < T.indexOf(",") ? T = T.replace(/,/g, i + "," + i) : T = T.replace(/ /g, i + "," + i), t += " constraint " + K(d.objPrefix(), l, "_ck") + ` -`, t += h + h + L + "check (" + this.parseName() + " in (" + i + T + i + "))", t = t.replace(/''/gm, "'")); + const l = K(o, this.parseName()), h = this.trimmedContent().toLowerCase(), y = h.indexOf("/check"); + let B = h.lastIndexOf("/"); + B == y && (B = h.length); + let T = this.trimmedContent().substr(y + 6, B - y - 6).trim(); + const E = Z(T, !1, !0, ""); + let L = f; + r != null && (L = " ".repeat(r.maxChildNameLen())), this.children != null && 0 < this.children.length ? (E[0].value != "(" && (T = "( " + T + ")"), t += f + "constraint " + K(m.objPrefix(), l, "_ck"), t += " check " + T + `, +`) : E[0].value == "(" && E[E.length - 1].value == ")" ? (t += " constraint " + K(m.objPrefix(), l, "_ck") + ` +`, t += f + f + L + "check " + T) : (0 < T.indexOf(", ") ? T = T.replace(/, /g, i + "," + i) : 0 < T.indexOf(",") ? T = T.replace(/,/g, i + "," + i) : T = T.replace(/ /g, i + "," + i), t += " constraint " + K(m.objPrefix(), l, "_ck") + ` +`, t += f + f + L + "check (" + this.parseName() + " in (" + i + T + i + "))", t = t.replace(/''/gm, "'")); } return t; }, this.isMany2One = function() { @@ -7745,20 +7748,20 @@ let ce = function() { var t = i.indexOf(" id "); if (t < 0 && t == i.length - 3 && (t = i.indexOf(" id")), t < 0 && (t = i.indexOf(" id"), t != i.length - 3 && (t = -1)), t < 0 && (t = i.indexOf("_id "), t != i.length - 4 && (t = -1)), t < 0 && (t = i.indexOf("_id"), t != i.length - 3 && (t = -1)), t < 0 && (t = i.indexOf("Id "), t != i.length - 3 && (t = -1)), 0 < t) { let o = i.substr(0, t) + "s"; - if (d.find(o) != null || (o = i.substr(0, t), d.find(o) != null)) + if (m.find(o) != null || (o = i.substr(0, t), m.find(o) != null)) return o; } return t = i.indexOf("/fk"), 0 < t ? (i = i.substr(t + 3).trim(), t = i.indexOf("/"), 0 < t && (i = i.substring(0, t).trim()), i.replace(" ", "_")) : (t = i.indexOf("/reference"), 0 < t ? (i = i.substr(t + 10).trim(), i.indexOf("s") == 0 && (i = i.substring(1).trim()), t = i.indexOf("/"), 0 < t && (i = i.substring(0, t).trim()), i.replace(" ", "_")) : null); }, this.parseValues = function() { var i = this.trimmedContent().toUpperCase(), t, o, l; if (0 <= i.indexOf("/CHECK") || 0 <= i.indexOf("/VALUES")) { - var f = "/CHECK"; - return t = i.indexOf(f), t < 0 && (f = "/VALUES", t = i.indexOf(f)), o = i.lastIndexOf("/"), o == t && (o = i.length), l = i.substr(t + f.length, o - t - f.length).trim(), 0 < l.indexOf(",") ? (l = l.replace(/ /g, ""), l.split(",")) : l.split(" "); + var h = "/CHECK"; + return t = i.indexOf(h), t < 0 && (h = "/VALUES", t = i.indexOf(h)), o = i.lastIndexOf("/"), o == t && (o = i.length), l = i.substr(t + h.length, o - t - h.length).trim(), 0 < l.indexOf(",") ? (l = l.replace(/ /g, ""), l.split(",")) : l.split(" "); } if (0 <= i.indexOf("/BETWEEN")) { t = i.indexOf("/BETWEEN"), o = i.lastIndexOf("/"), o == t && (o = i.length), l = i.substr(t + 8, o - t - 8).trim(), l = l.replace(" AND ", " "); - for (var y = [], P = parseInt(l.split(" ")[0]); P <= parseInt(l.split(" ")[1]); P++) - y.push(P); + for (var y = [], B = parseInt(l.split(" ")[0]); B <= parseInt(l.split(" ")[1]); B++) + y.push(B); return y; } return null; @@ -7784,9 +7787,9 @@ let ce = function() { }, this.getGenIdColName = function() { if (this.parseType() != "table" || this.getExplicitPkNode() != null) return null; - if (d.optionEQvalue("Auto Primary Key", "yes")) { + if (m.optionEQvalue("Auto Primary Key", "yes")) { let t = ""; - return this.colprefix != null && (t = this.colprefix + "_"), d.optionEQvalue("prefixPKwithTname", "yes") && (t = _(this.parseName()) + "_"), t + "id"; + return this.colprefix != null && (t = this.colprefix + "_"), m.optionEQvalue("prefixPKwithTname", "yes") && (t = _(this.parseName()) + "_"), t + "id"; } return null; }, this.getPkName = function() { @@ -7798,7 +7801,7 @@ let ce = function() { return i; }, this.singleDDL = function() { if (this.children.length == 0 && 0 < this.apparentDepth()) { - let a = h; + let a = f; return this.parent != null && (a += " ".repeat(this.parent.maxChildNameLen() - this.parseName().length)), this.parseName() + a + this.parseType(); } if (this.fks == null && (this.fks = []), !this.isMany2One()) { @@ -7813,51 +7816,51 @@ let ce = function() { this.colprefix = n[0]; } var o = ""; - const l = d.objPrefix() + this.parseName(); - d.optionEQvalue("pk", "SEQ") && d.optionEQvalue("genpk", !0) && (o = o + "create sequence " + l + `_seq; + const l = m.objPrefix() + this.parseName(); + m.optionEQvalue("pk", "SEQ") && m.optionEQvalue("genpk", !0) && (o = o + "create sequence " + l + `_seq; `), o = o + "create table " + l + ` ( `; - var f = h + " ".repeat(this.maxChildNameLen() - 2); + var h = f + " ".repeat(this.maxChildNameLen() - 2); let y = this.getGenIdColName(); if (y != null) { let a = "not null"; - d.optionEQvalue("pk", "identityDataType") && (a = "GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), d.optionEQvalue("pk", "seq") && (a = "default on null " + l + "_seq.NEXTVAL ".toLowerCase()), d.optionEQvalue("pk", "guid") && (a = "default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), o += h + y + f + "number " + a + ` + m.optionEQvalue("pk", "identityDataType") && (a = "GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), m.optionEQvalue("pk", "seq") && (a = "default on null " + l + "_seq.NEXTVAL ".toLowerCase()), m.optionEQvalue("pk", "guid") && (a = "default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), o += f + y + h + "number " + a + ` `; - const n = K(d.objPrefix("no schema") + this.parseName(), "_", y); - o += h + h + " ".repeat(this.maxChildNameLen()) + "constraint " + K(n, "_pk") + ` primary key, + const n = K(m.objPrefix("no schema") + this.parseName(), "_", y); + o += f + f + " ".repeat(this.maxChildNameLen()) + "constraint " + K(n, "_pk") + ` primary key, `; } else { let a = this.getExplicitPkNode(); if (a != null) { - let n = h + " ".repeat(this.maxChildNameLen() - a.parseName().length); - o += h + a.parseName() + n + a.parseType() + `, + let n = f + " ".repeat(this.maxChildNameLen() - a.parseName().length); + o += f + a.parseName() + n + a.parseType() + `, `; } } for (let a in this.fks) { - let n = this.fks[a], c = "number", u = d.find(n), g = ""; - u != null && u.getExplicitPkNode() != null ? c = u.getExplicitPkNode().parseType((A) => !0) : u == null && (u = d.find(a), u.isMany2One() & !a.endsWith("_id") && (n = a, a = _(a), g = "_id")), f = h + " ".repeat(this.maxChildNameLen() - a.length), o += h + a + g + f + c + ` -`, o += h + h + " ".repeat(this.maxChildNameLen()) + "constraint " + l + "_" + a + `_fk + let n = this.fks[a], c = "number", u = m.find(n), C = ""; + u != null && u.getExplicitPkNode() != null ? c = u.getExplicitPkNode().parseType((A) => !0) : u == null && (u = m.find(a), u.isMany2One() & !a.endsWith("_id") && (n = a, a = _(a), C = "_id")), h = f + " ".repeat(this.maxChildNameLen() - a.length), o += f + a + C + h + c + ` +`, o += f + f + " ".repeat(this.maxChildNameLen()) + "constraint " + l + "_" + a + `_fk `; - let B = ""; - 0 <= i.indexOf("/CASCADE") && (B = " on delete cascade"); - let p = ""; + let P = ""; + 0 <= i.indexOf("/CASCADE") && (P = " on delete cascade"); + let b = ""; for (let A in this.children) { - let C = this.children[A]; - if (a == C.parseName()) { - let S = C.trimmedContent().toUpperCase(); - (0 <= S.indexOf("/NN") || 0 <= S.indexOf("/NOTNULL")) && (p = " NOT NULL".toLowerCase()), 0 <= S.indexOf("/CASCADE") && (B = " on delete cascade"); + let v = this.children[A]; + if (a == v.parseName()) { + let M = v.trimmedContent().toUpperCase(); + (0 <= M.indexOf("/NN") || 0 <= M.indexOf("/NOTNULL")) && (b = " NOT NULL".toLowerCase()), 0 <= M.indexOf("/CASCADE") && (P = " on delete cascade"); break; } } - o += h + h + " ".repeat(this.maxChildNameLen()) + "references " + d.objPrefix() + n + B + p + `, + o += f + f + " ".repeat(this.maxChildNameLen()) + "references " + m.objPrefix() + n + P + b + `, `; } - if (d.optionEQvalue("rowkey", !0) || 0 < i.indexOf("/ROWKEY")) { - let a = h + " ".repeat(this.maxChildNameLen() - 7); - o += h + "row_key" + a + `varchar2(30 char) -`, o += h + h + " ".repeat(this.maxChildNameLen()) + "constraint " + l + `_row_key_unq unique not null, + if (m.optionEQvalue("rowkey", !0) || 0 < i.indexOf("/ROWKEY")) { + let a = f + " ".repeat(this.maxChildNameLen() - 7); + o += f + "row_key" + a + `varchar2(30 char) +`, o += f + f + " ".repeat(this.maxChildNameLen()) + "constraint " + l + `_row_key_unq unique not null, `; } for (let a = 0; a < this.children.length; a++) { @@ -7865,46 +7868,46 @@ let ce = function() { if (!(y != null && n.parseName() == "id") && !(0 < n.children.length) && n.refId() == null) { if (n == this.getExplicitPkNode()) continue; - if (o += h + n.singleDDL() + `, + if (o += f + n.singleDDL() + `, `, 0 < n.indexOf("file")) { const c = n.parseName().toUpperCase(); - let u = c + "_FILENAME", g = h + " ".repeat(this.maxChildNameLen() - u.length); - o += h + u.toLowerCase() + g + "varchar2(255" + d.semantics() + `), -`, u = c + "_MIMETYPE", g = h + " ".repeat(this.maxChildNameLen() - u.length), o += h + u.toLowerCase() + g + "varchar2(255" + d.semantics() + `), -`, u = c + "_CHARSET", g = h + " ".repeat(this.maxChildNameLen() - u.length), o += h + u.toLowerCase() + g + "varchar2(255" + d.semantics() + `), -`, u = c + "_LASTUPD", g = h + " ".repeat(this.maxChildNameLen() - u.length), o += h + u.toLowerCase() + g + d.getOptionValue("Date Data Type").toLowerCase() + `, + let u = c + "_FILENAME", C = f + " ".repeat(this.maxChildNameLen() - u.length); + o += f + u.toLowerCase() + C + "varchar2(255" + m.semantics() + `), +`, u = c + "_MIMETYPE", C = f + " ".repeat(this.maxChildNameLen() - u.length), o += f + u.toLowerCase() + C + "varchar2(255" + m.semantics() + `), +`, u = c + "_CHARSET", C = f + " ".repeat(this.maxChildNameLen() - u.length), o += f + u.toLowerCase() + C + "varchar2(255" + m.semantics() + `), +`, u = c + "_LASTUPD", C = f + " ".repeat(this.maxChildNameLen() - u.length), o += f + u.toLowerCase() + C + m.getOptionValue("Date Data Type").toLowerCase() + `, `; } } } - if (d.optionEQvalue("rowVersion", "yes") || 0 < i.indexOf("/ROWVERSION")) { - let a = h + " ".repeat(this.maxChildNameLen() - 11); - o += h + "row_version" + a + `integer not null, + if (m.optionEQvalue("rowVersion", "yes") || 0 < i.indexOf("/ROWVERSION")) { + let a = f + " ".repeat(this.maxChildNameLen() - 11); + o += f + "row_version" + a + `integer not null, `; } - if (d.optionEQvalue("Audit Columns", "yes") || 0 < i.indexOf("/AUDITCOLS") || 0 < i.indexOf("/AUDIT COL")) { - let a = d.getOptionValue("createdcol"), n = h + " ".repeat(this.maxChildNameLen() - a.length); - o += h + a + n + d.getOptionValue("Date Data Type").toLowerCase() + ` not null, + if (m.optionEQvalue("Audit Columns", "yes") || 0 < i.indexOf("/AUDITCOLS") || 0 < i.indexOf("/AUDIT COL")) { + let a = m.getOptionValue("createdcol"), n = f + " ".repeat(this.maxChildNameLen() - a.length); + o += f + a + n + m.getOptionValue("Date Data Type").toLowerCase() + ` not null, `; - let c = d.getOptionValue("createdbycol"); - n = h + " ".repeat(this.maxChildNameLen() - c.length), o += h + c + n + "varchar2(255" + d.semantics() + `) not null, + let c = m.getOptionValue("createdbycol"); + n = f + " ".repeat(this.maxChildNameLen() - c.length), o += f + c + n + "varchar2(255" + m.semantics() + `) not null, `; - let u = d.getOptionValue("updatedcol"); - n = h + " ".repeat(this.maxChildNameLen() - u.length), o += h + u + n + d.getOptionValue("Date Data Type").toLowerCase() + ` not null, + let u = m.getOptionValue("updatedcol"); + n = f + " ".repeat(this.maxChildNameLen() - u.length), o += f + u + n + m.getOptionValue("Date Data Type").toLowerCase() + ` not null, `; - let g = d.getOptionValue("updatedbycol"); - n = h + " ".repeat(this.maxChildNameLen() - g.length), o += h + g + n + "varchar2(255" + d.semantics() + `) not null, + let C = m.getOptionValue("updatedbycol"); + n = f + " ".repeat(this.maxChildNameLen() - C.length), o += f + C + n + "varchar2(255" + m.semantics() + `) not null, `; } - var P = d.additionalColumns(); - for (let a in P) { - var T = P[a]; - f = h + " ".repeat(this.maxChildNameLen() - a.length), o += h + a.toUpperCase() + f + T + ` not null, + var B = m.additionalColumns(); + for (let a in B) { + var T = B[a]; + h = f + " ".repeat(this.maxChildNameLen() - a.length), o += f + a.toUpperCase() + h + T + ` not null, `; } o += this.genConstraint(), o.lastIndexOf(`, `) == o.length - 2 && (o = o.substr(0, o.length - 2) + ` -`), o += ")" + (d.optionEQvalue("compress", "yes") || 0 < i.indexOf("/COMPRESS") ? " compress" : "") + `; +`), o += ")" + (m.optionEQvalue("compress", "yes") || 0 < i.indexOf("/COMPRESS") ? " compress" : "") + `; `; const E = i.indexOf("/AUDIT"), L = i.indexOf("/AUDITCOLS"), x = i.indexOf("/AUDIT COL"); @@ -7959,16 +7962,16 @@ let ce = function() { } return i; }, this.generateDrop = function() { - let i = d.objPrefix() + this.parseName(), t = ""; + let i = m.objPrefix() + this.parseName(), t = ""; return this.parseType() == "view" && (t = "drop view " + i + `; `), this.parseType() == "table" && (t = "drop table " + i + ` cascade constraints; -`, d.optionEQvalue("api", "yes") && (t += "drop package " + i + `_api; -`), d.optionEQvalue("pk", "SEQ") && (t += "drop sequence " + i + `_seq; +`, m.optionEQvalue("api", "yes") && (t += "drop package " + i + `_api; +`), m.optionEQvalue("pk", "SEQ") && (t += "drop sequence " + i + `_seq; `)), t.toLowerCase(); }, this.generateView = function() { if (this.parseType() != "view" && this.parseType() != "dv") return ""; - if (d.optionEQvalue("Duality View", "yes") || this.parseType() == "dv") + if (m.optionEQvalue("Duality View", "yes") || this.parseType() == "dv") try { return this.generateDualityView(); } catch (u) { @@ -7976,70 +7979,70 @@ let ce = function() { return ""; throw u; } - let i = d.objPrefix() + this.parseName(); + let i = m.objPrefix() + this.parseName(); var o = this.trimmedContent().split(" "), l = "create or replace view " + i + ` as `; l += `select `; - for (var f = 0, y = 2; y < o.length; y++) { - let u = d.find(o[y]); + for (var h = 0, y = 2; y < o.length; y++) { + let u = m.find(o[y]); if (u == null) return ""; - var P = (o[y] + ".id").length; - f < P && (f = P); + var B = (o[y] + ".id").length; + h < B && (h = B); for (var T = 0; T < u.children.length; T++) { var E = u.children[T]; - P = (o[y] + "." + E.parseName()).length, f < P && (f = P); + B = (o[y] + "." + E.parseName()).length, h < B && (h = B); } } var L = {}; for (let u = 2; u < o.length; u++) { - let g = d.find(o[u]); - if (g != null) - for (let B = 0; B < g.children.length; B++) { - var x = g.children[B].parseName(), w = L[x]; + let C = m.find(o[u]); + if (C != null) + for (let P = 0; P < C.children.length; P++) { + var x = C.children[P].parseName(), w = L[x]; w == null && (w = 0), L[x] = w + 1; } } for (let u = 2; u < o.length; u++) { - let g = d.find(o[u]); - if (g == null) + let C = m.find(o[u]); + if (C == null) continue; - let B = " ".repeat(f - (o[u] + ".id").length); - l += h + o[u] + ".id" + h + B + _(o[u]) + `_id, + let P = " ".repeat(h - (o[u] + ".id").length); + l += f + o[u] + ".id" + f + P + _(o[u]) + `_id, `; - for (let A = 0; A < g.children.length; A++) { - let C = g.children[A]; - if (C.children.length == 0) { - B = " ".repeat(f - (o[u] + "." + C.parseName()).length); + for (let A = 0; A < C.children.length; A++) { + let v = C.children[A]; + if (v.children.length == 0) { + P = " ".repeat(h - (o[u] + "." + v.parseName()).length); var H = ""; - 1 < L[C.parseName()] && (H = _(o[u]) + "_"), l += h + o[u] + "." + C.parseName() + h + B + H + C.parseName() + `, + 1 < L[v.parseName()] && (H = _(o[u]) + "_"), l += f + o[u] + "." + v.parseName() + f + P + H + v.parseName() + `, `; } } - let p = g.trimmedContent().toUpperCase(); - if (d.optionEQvalue("rowVersion", "yes") || 0 < p.indexOf("/ROWVERSION")) { - let A = h + " ".repeat(g.maxChildNameLen() - 11); - l += h + o[u] + ".row_version" + _(A + o[u]) + `_row_version, + let b = C.trimmedContent().toUpperCase(); + if (m.optionEQvalue("rowVersion", "yes") || 0 < b.indexOf("/ROWVERSION")) { + let A = f + " ".repeat(C.maxChildNameLen() - 11); + l += f + o[u] + ".row_version" + _(A + o[u]) + `_row_version, `; } - if (d.optionEQvalue("rowkey", "yes") || 0 < p.indexOf("/ROWKEY")) { - let A = h + " ".repeat(g.maxChildNameLen() - 7); - l += h + o[u] + ".ROW_KEY" + _(A + o[u]) + `_ROW_KEY, + if (m.optionEQvalue("rowkey", "yes") || 0 < b.indexOf("/ROWKEY")) { + let A = f + " ".repeat(C.maxChildNameLen() - 7); + l += f + o[u] + ".ROW_KEY" + _(A + o[u]) + `_ROW_KEY, `; } - if (d.optionEQvalue("Audit Columns", "yes") || 0 < p.indexOf("/AUDITCOLS") || 0 < p.indexOf("/AUDIT COL")) { - let A = d.getOptionValue("createdcol"), C = h + " ".repeat(g.maxChildNameLen() - A.length); - l += h + o[u] + "." + A + _(C + o[u]) + "_" + A + `, + if (m.optionEQvalue("Audit Columns", "yes") || 0 < b.indexOf("/AUDITCOLS") || 0 < b.indexOf("/AUDIT COL")) { + let A = m.getOptionValue("createdcol"), v = f + " ".repeat(C.maxChildNameLen() - A.length); + l += f + o[u] + "." + A + _(v + o[u]) + "_" + A + `, `; - let S = d.getOptionValue("createdbycol"); - C = h + " ".repeat(g.maxChildNameLen() - S.length), l += h + o[u] + "." + S + _(C + o[u]) + "_" + S + `, + let M = m.getOptionValue("createdbycol"); + v = f + " ".repeat(C.maxChildNameLen() - M.length), l += f + o[u] + "." + M + _(v + o[u]) + "_" + M + `, `; - let O = d.getOptionValue("updatedcol"); - C = h + " ".repeat(g.maxChildNameLen() - O.length), l += h + o[u] + "." + O + _(C + o[u]) + "_" + O + `, + let O = m.getOptionValue("updatedcol"); + v = f + " ".repeat(C.maxChildNameLen() - O.length), l += f + o[u] + "." + O + _(v + o[u]) + "_" + O + `, `; - let G = d.getOptionValue("updatedbycol"); - C = h + " ".repeat(g.maxChildNameLen() - G.length), l += h + o[u] + "." + G + _(C + o[u]) + "_" + G + `, + let G = m.getOptionValue("updatedbycol"); + v = f + " ".repeat(C.maxChildNameLen() - G.length), l += f + o[u] + "." + G + _(v + o[u]) + "_" + G + `, `; } } @@ -8048,9 +8051,9 @@ let ce = function() { `), l += `from `; for (let u = 2; u < o.length; u++) { - let g = " ".repeat(f - o[u].length); + let C = " ".repeat(h - o[u].length); var F = o[u]; - d.objPrefix() != null && d.objPrefix() != "" && (F = d.objPrefix() + o[u] + g + o[u]), l += h + F + `, + m.objPrefix() != null && m.objPrefix() != "" && (F = m.objPrefix() + o[u] + C + o[u]), l += f + F + `, `; } l.lastIndexOf(`, @@ -8058,20 +8061,20 @@ let ce = function() { `), l += `where `; for (let u = 2; u < o.length; u++) - for (let g = 2; g < o.length; g++) - if (g != u) { - var W = o[u], R = o[g], e = d.find(W); + for (let C = 2; C < o.length; C++) + if (C != u) { + var W = o[u], R = o[C], e = m.find(W); if (e != null) { - var a = d.find(R); + var a = m.find(R); if (a != null) for (var n in e.fks) { var c = e.fks[n]; - c == R && (l += h + W + "." + _(c) + "_id(+) = " + R + `.id and + c == R && (l += f + W + "." + _(c) + "_id(+) = " + R + `.id and `); } } } - return l = m(l, `where + return l = g(l, `where `), l.lastIndexOf(" and") == l.length - 4 && (l = l.substring(0, l.length - 4) + ` `), l += `/ `, l.toLowerCase(); @@ -8080,9 +8083,9 @@ let ce = function() { return ""; let o = this.parseName(); const l = o.indexOf('"') == 0; - let f = d.objPrefix() + o; - return l ? f = d.objPrefix() + o.substring(1, o.length - 1) : f = (d.objPrefix() + o).toUpperCase(), `begin -` + h + "ords.enable_object(p_enabled=>TRUE, p_object=>'" + f + `'); + let h = m.objPrefix() + o; + return l ? h = m.objPrefix() + o.substring(1, o.length - 1) : h = (m.objPrefix() + o).toUpperCase(), `begin +` + f + "ords.enable_object(p_enabled=>TRUE, p_object=>'" + h + `'); end; / `; @@ -8090,8 +8093,8 @@ end; if (this.parseType() != "table") return ""; let i = ""; - d.optionEQvalue("editionable", "yes") && (i = " editionable"); - let t = d.objPrefix() + this.parseName(); + m.optionEQvalue("editionable", "yes") && (i = " editionable"); + let t = m.objPrefix() + this.parseName(); var o = "create or replace" + i + " trigger " + t.toLowerCase() + `_BIU `.toLowerCase(); o += ` before insert or update @@ -8099,7 +8102,7 @@ end; `, o += ` for each row `; let l = this.trimmedContent().toUpperCase(); - (d.optionEQvalue("Rowkey", "yes") || 0 < l.indexOf("/ROWKEY")) && (o += `declare + (m.optionEQvalue("Rowkey", "yes") || 0 < l.indexOf("/ROWKEY")) && (o += `declare function compress_int (n in integer ) return varchar2 as ret varchar2(30); @@ -8124,39 +8127,39 @@ end; end compress_int; `), o += `begin `; - var f = !1, y = "user"; - d.optionEQvalue("apex", "yes") && (y = "coalesce(sys_context('APEX$SESSION','APP_USER'),user)"), (d.optionEQvalue("rowkey", "yes") || 0 < l.indexOf("/ROWKEY")) && (o += ` if inserting then + var h = !1, y = "user"; + m.optionEQvalue("apex", "yes") && (y = "coalesce(sys_context('APEX$SESSION','APP_USER'),user)"), (m.optionEQvalue("rowkey", "yes") || 0 < l.indexOf("/ROWKEY")) && (o += ` if inserting then `, o += ` :new.row_key := compress_int(row_key_seq.nextval); `, o += ` end if; -`, f = !0); - for (var P = 0; P < this.children.length; P++) { - var T = this.children[P]; +`, h = !0); + for (var B = 0; B < this.children.length; B++) { + var T = this.children[B]; let w = null; 0 < T.content.indexOf("/lower") ? w = "LOWER".toLowerCase() : 0 < T.content.indexOf("/upper") && (w = "UPPER".toLowerCase()), w != null && (o += " :new." + T.parseName().toLowerCase() + " := " + w + "(:new." + T.parseName().toLowerCase() + `); -`, f = !0); +`, h = !0); } - (d.optionEQvalue("Row Version Number", "yes") || 0 < l.indexOf("/ROWVERSION")) && (o += ` if inserting then + (m.optionEQvalue("Row Version Number", "yes") || 0 < l.indexOf("/ROWVERSION")) && (o += ` if inserting then `, o += ` :new.row_version := 1; `, o += ` elsif updating then `, o += ` :new.row_version := NVL(:old.row_version, 0) + 1; `, o += ` end if; -`, f = !0), (d.optionEQvalue("Audit Columns", "yes") || 0 < l.indexOf("/AUDITCOLS") || 0 < l.indexOf("/AUDIT COL")) && (o += ` if inserting then -`, o += " :new." + d.getOptionValue("createdcol") + ` := SYSDATE; -`.toLowerCase(), o += " :new." + d.getOptionValue("createdbycol") + " := " + y + `; +`, h = !0), (m.optionEQvalue("Audit Columns", "yes") || 0 < l.indexOf("/AUDITCOLS") || 0 < l.indexOf("/AUDIT COL")) && (o += ` if inserting then +`, o += " :new." + m.getOptionValue("createdcol") + ` := SYSDATE; +`.toLowerCase(), o += " :new." + m.getOptionValue("createdbycol") + " := " + y + `; `.toLowerCase(), o += ` end if; -`, o += " :new." + d.getOptionValue("updatedcol") + ` := SYSDATE; -`.toLowerCase(), o += " :new." + d.getOptionValue("updatedbycol") + " := " + y + `; -`.toLowerCase(), f = !0); - var E = d.additionalColumns(); +`, o += " :new." + m.getOptionValue("updatedcol") + ` := SYSDATE; +`.toLowerCase(), o += " :new." + m.getOptionValue("updatedbycol") + " := " + y + `; +`.toLowerCase(), h = !0); + var E = m.additionalColumns(); for (var L in E) { var x = E[L]; o += " if :new." + L + ` is null then `, x.startsWith("INT") ? o += " " + L + ` := 0; ` : o += " " + L + ` := 'N/A'; `, o += ` end if; -`, f = !0; +`, h = !0; } - return f ? (o += "end " + t.toLowerCase() + `_BIU; + return h ? (o += "end " + t.toLowerCase() + `_BIU; / `.toLowerCase(), o) : ""; @@ -8165,76 +8168,76 @@ end; i != "get" && (t = " default null"); let o = "out"; i != "get" && (o = " in"); - let l = h + "procedure " + i + `_row ( + let l = f + "procedure " + i + `_row ( `; - l += h + h + "p_id in number" + t; - for (var f in this.fks) { - let P = this.fks[f], T = "number", E = d.find(P); + l += f + f + "p_id in number" + t; + for (var h in this.fks) { + let B = this.fks[h], T = "number", E = m.find(B); E != null && E.getExplicitPkNode() != null && (T = E.getExplicitPkNode().parseType((L) => !0)), l += `, -`, l += h + h + "P_" + f + " " + o + " " + T + t; +`, l += f + f + "P_" + h + " " + o + " " + T + t; } - for (let P = 0; P < this.children.length; P++) { - var y = this.children[P]; + for (let B = 0; B < this.children.length; B++) { + var y = this.children[B]; y.refId() == null && y.children.length == 0 && (l += `, -`, l += h + h + "P_" + y.parseName() + " " + o + " " + y.parseType("plsql") + t); +`, l += f + f + "P_" + y.parseName() + " " + o + " " + y.parseType("plsql") + t); } return l += ` )`, l; }, this.procBody = function(i) { - let t = d.objPrefix() + this.parseName(), o = h + `is + let t = m.objPrefix() + this.parseName(), o = f + `is `; - o += h + `begin + o += f + `begin `; - let l = h + h + "for c1 in (select * from " + t + ` where id = p_id) loop + let l = f + f + "for c1 in (select * from " + t + ` where id = p_id) loop `; - i == "insert" && (l = h + h + "insert into " + t + ` ( -`, l += h + h + h + "id"), i == "update" && (l = h + h + "update " + t + ` set -`, l += h + h + h + "id = p_id"), o += l; + i == "insert" && (l = f + f + "insert into " + t + ` ( +`, l += f + f + f + "id"), i == "update" && (l = f + f + "update " + t + ` set +`, l += f + f + f + "id = p_id"), o += l; for (let T in this.fks) { - let E = this.fks[T], L = d.find(E); + let E = this.fks[T], L = m.find(E); L != null && L.getExplicitPkNode() != null && L.getExplicitPkNode().parseType((w) => !0), (i == "insert" || i == "update") && (o += `, `); - let x = h + h + h + "P_" + T + " := c1." + T + `; + let x = f + f + f + "P_" + T + " := c1." + T + `; `; - i == "insert" && (x = h + h + h + T), i == "update" && (x = h + h + h + T + " = P_" + T + ` + i == "insert" && (x = f + f + f + T), i == "update" && (x = f + f + f + T + " = P_" + T + ` `), o += x; } - for (var f = 0; f < this.children.length; f++) { - var y = this.children[f]; + for (var h = 0; h < this.children.length; h++) { + var y = this.children[h]; if (y.refId() != null || y.children.length != 0) continue; (i == "insert" || i == "update") && (o += `, `); - let T = h + h + h + "P_" + y.parseName().toLowerCase() + " := c1." + y.parseName().toLowerCase() + `; + let T = f + f + f + "P_" + y.parseName().toLowerCase() + " := c1." + y.parseName().toLowerCase() + `; `; - i == "insert" && (T = h + h + h + y.parseName().toLowerCase()), i == "update" && (T = h + h + h + y.parseName().toLowerCase() + " = P_" + y.parseName().toLowerCase() + ` + i == "insert" && (T = f + f + f + y.parseName().toLowerCase()), i == "update" && (T = f + f + f + y.parseName().toLowerCase() + " = P_" + y.parseName().toLowerCase() + ` `), o += T; } if (i == "insert") { o += ` -` + h + h + `) values ( -`, o += h + h + h + "p_id"; +` + f + f + `) values ( +`, o += f + f + f + "p_id"; for (let T in this.fks) o += `, -`, o += h + h + h + "p_" + T; +`, o += f + f + f + "p_" + T; for (let T = 0; T < this.children.length; T++) { let E = this.children[T]; E.refId() == null && E.children.length == 0 && (o += `, -`, o += h + h + h + "p_" + E.parseName()); +`, o += f + f + f + "p_" + E.parseName()); } } - let P = ` + let B = ` end loop; `; - return i == "insert" && (P = ` -` + h + h + ");"), i == "update" && (P = h + h + "where id = p_id;"), o += P, o += ` -` + h + "end " + i + `_row; + return i == "insert" && (B = ` +` + f + f + ");"), i == "update" && (B = f + f + "where id = p_id;"), o += B, o += ` +` + f + "end " + i + `_row; `, o += ` `, o; }, this.generateTAPI = function() { if (this.children.length == 0) return ""; - let i = d.objPrefix() + this.parseName(); + let i = m.objPrefix() + this.parseName(); var t = "create or replace package " + i.toLowerCase() + `_API is @@ -8272,45 +8275,45 @@ is if (0 < t) { i = i.substr(t + 8); let o = i.split(" "), l = parseInt(o[0]); - const f = d.getOptionValue("datalimit"); - return f < l && (l = f), l; + const h = m.getOptionValue("datalimit"); + return h < l && (l = h), l; } return 0; }, this.generateData = function(i) { - if (d.optionEQvalue("inserts", !1)) + if (Ce(), m.optionEQvalue("inserts", !1)) return ""; const t = this.inserts4tbl(i), o = this.orderedTableNodes(); let l = ""; - for (let f = 0; f < o.length; f++) { - const y = t[o[f].parseName()]; + for (let h = 0; h < o.length; h++) { + const y = t[o[h].parseName()]; y != null && (l += y); } return l; }, this.inserts4tbl = function(i) { let t = {}; - if (d.optionEQvalue("inserts", !1)) + if (m.optionEQvalue("inserts", !1)) return ""; - let o = d.objPrefix() + this.parseName(), l = ""; + let o = m.objPrefix() + this.parseName(), l = ""; for (let y = 0; y < this.cardinality(); y++) { - let P = null; + let B = null; if (i != null) { const E = i[o]; - E != null && Array.isArray(E) && (P = E[y]); + E != null && Array.isArray(E) && (B = E[y]); } l += "insert into " + o + ` ( `; let T = this.getGenIdColName(); if (T != null) - l += h + T + `, + l += f + T + `, `; else { let E = this.getExplicitPkNode(); - E != null && (l += h + E.parseName() + `, + E != null && (l += f + E.parseName() + `, `); } for (let E in this.fks) { - let L = this.fks[E], x = d.find(L), w = ""; - x == null && (x = d.find(E), x.isMany2One() & !E.endsWith("_id") && (L = E, E = _(E), w = "_id")), l += h + E + w + `, + let L = this.fks[E], x = m.find(L), w = ""; + x == null && (x = m.find(E), x.isMany2One() & !E.endsWith("_id") && (L = E, E = _(E), w = "_id")), l += f + E + w + `, `; } for (let E = 0; E < this.children.length; E++) { @@ -8318,7 +8321,7 @@ is if (!(T != null && L.parseName() == "id") && L.refId() == null) { if (L == this.getExplicitPkNode()) continue; - L.children.length == 0 && (l += h + L.parseName() + `, + L.children.length == 0 && (l += f + L.parseName() + `, `); } } @@ -8326,26 +8329,26 @@ is `) == l.length - 2 && (l = l.substr(0, l.length - 2) + ` `), l += `) values ( `, T != null) - l += h + (y + 1) + `, + l += f + (y + 1) + `, `; else { let E = this.getExplicitPkNode(); if (E != null) { const L = E.parseName(); - let x = b(d.data, null, L, this.parseName()), w = -1; - P != null && (w = P[L]), x != null && x[y] != null && (w = x[y]), w.replaceAll && (w = "'" + w + "'"), l += h + (w != -1 ? w : y + 1) + `, + let x = d(m.data, null, L, this.parseName()), w = -1; + B != null && (w = B[L]), x != null && x[y] != null && (w = x[y]), w.replaceAll && (w = "'" + w + "'"), l += f + (w != -1 ? w : y + 1) + `, `; } } for (let E in this.fks) { - let L = this.fks[E], x = d.find(L), w = [], H = "INTEGER"; + let L = this.fks[E], x = m.find(L), w = [], H = "INTEGER"; for (let F = 1; F <= x.cardinality(); F++) w.push(F); - if (P != null) { - let F = P[E]; + if (B != null) { + let F = B[E]; F != null && (typeof F == "string" && (H = "STRING"), w = [], w[0] = F); } - l += h + le(d.getOptionValue("Data Language"), se(o, _(L) + "_id", H, w)) + `, + l += f + le(m.getOptionValue("Data Language"), se(o, _(L) + "_id", H, w)) + `, `; } for (let E = 0; E < this.children.length; E++) { @@ -8355,12 +8358,12 @@ is continue; if (L.children.length == 0) { let x = L.parseValues(), w = L.parseName(); - if (P != null) { - let F = P[w]; + if (B != null) { + let F = B[w]; F != null && (x = [], x[0] = F); } let H = se(o, w, L.parseType(), x); - l += h + le(d.getOptionValue("Data Language"), H) + `, + l += f + le(m.getOptionValue("Data Language"), H) + `, `; } } @@ -8374,14 +8377,14 @@ is commit; `); - let f = this.getGenIdColName(); - f != null && 1 < this.cardinality() && !d.optionEQvalue("pk", "guid") && (l += "alter table " + o + ` -modify ` + f + " generated always as identity restart start with " + (this.cardinality() + 1) + `; + let h = this.getGenIdColName(); + h != null && 1 < this.cardinality() && !m.optionEQvalue("pk", "guid") && (l += "alter table " + o + ` +modify ` + h + " generated always as identity restart start with " + (this.cardinality() + 1) + `; `), t[o] = l; for (let y = 0; y < this.children.length; y++) { - const P = this.children[y]; - 0 < P.children.length && (t = { ...t, ...P.inserts4tbl(i) }); + const B = this.children[y]; + 0 < B.children.length && (t = { ...t, ...B.inserts4tbl(i) }); } return t; }, this.isArray = function() { @@ -8399,23 +8402,23 @@ modify ` + f + " generated always as identity restart start with " + (this.card this.getExplicitPkNode == null && (o += i + "'" + this.getGenIdColName() + "' : " + t + "." + this.getGenIdColName() + `, `); for (var l = 0; l < this.children.length; l++) { - var f = this.children[l], y = f.parseName(); - if (f.children.length == 0) { + var h = this.children[l], y = h.parseName(); + if (h.children.length == 0) { if (this.hasNonArrayChildId(y)) continue; o += i + "'" + y + "' : " + t + "." + y; } else { if (o += i + "'" + y + `' : [ -`, f.isMany2One(), i += " ", o += i + `select JSON { +`, h.isMany2One(), i += " ", o += i + `select JSON { `, this.isMany2One()) throw new Error(this.one2many2oneUnsupoported); - o += f.generateSelectJsonTopDown(i + " "), o += i + " WITH NOCHECK } from " + y + ` with INSERT UPDATE + o += h.generateSelectJsonTopDown(i + " "), o += i + " WITH NOCHECK } from " + y + ` with INSERT UPDATE `; let E = null; - for (var P in f.fks) { - var T = f.fks[P]; + for (var B in h.fks) { + var T = h.fks[B]; if (T == t) { - E = P; + E = B; break; } } @@ -8433,7 +8436,7 @@ modify ` + f + " generated always as identity restart start with " + (this.card var i = this.trimmedContent(), t = i.split(" "); if (3 < t.length) throw "max 1 table is allowed in DV"; - var o = "", l = d.find(t[2]); + var o = "", l = m.find(t[2]); return l != null && (o += "create or replace json relational duality view " + t[1] + ` as `, o += `select JSON { `, o += l.isMany2One() ? l.generateSelectJsonBottomUp(" ") : l.generateSelectJsonTopDown(" "), o += "} from " + l.parseName() + ` with INSERT UPDATE DELETE; @@ -8441,17 +8444,17 @@ modify ` + f + " generated always as identity restart start with " + (this.card `), o; }; } - function D(v) { - d = v; - const M = v.input; + function N(p) { + m = p; + const S = p.input; let r = [], s = []; - const i = Q(M + ` + const i = Z(S + ` `, !0, !0, ""); - d.data = null; + m.data = null; let t = null, o = "", l = 0; e: - for (let f in i) { - const y = i[f]; + for (let h in i) { + const y = i[h]; if (y.value == ` ` && t == null) { if (o = o.replace(/\r/g, ""), o.replace(/\r/g, "").replace(/ /g, "") == "") { @@ -8493,14 +8496,14 @@ modify ` + f + " generated always as identity restart start with " + (this.card if (t += y.value, y.value != ` ` && y.value != "}") continue; - const P = Q(t, !1, !0, ""); - if (P.length % 4 == 3 && P[1].value == ":") { - v.setOptions(t), t = null, o = ""; + const B = Z(t, !1, !0, ""); + if (B.length % 4 == 3 && B[1].value == ":") { + p.setOptions(t), t = null, o = ""; continue; } let T = null, E = null; - for (let L in P) { - const x = P[L]; + for (let L in B) { + const x = B[L]; if (T == null && x.value == "flattened") { T = ""; continue; @@ -8511,7 +8514,7 @@ modify ` + f + " generated always as identity restart start with " + (this.card let w = T.substring(1); w.length == 57 && w.length == 57; try { - d.data = JSON.parse(w), t = null, o = ""; + m.data = JSON.parse(w), t = null, o = ""; continue e; } catch { } @@ -8523,7 +8526,7 @@ modify ` + f + " generated always as identity restart start with " + (this.card if (E != null) { E += x.value, E.substring(1); try { - v.setOptions(E), t = null, o = ""; + p.setOptions(E), t = null, o = ""; continue e; } catch { } @@ -8540,219 +8543,236 @@ modify ` + f + " generated always as identity restart start with " + (this.card } return s; } - function m(v, M) { - let r = M.toLowerCase(); - return 0 < v.indexOf(r) && v.indexOf(r) == v.length - r.length ? v.substring(0, v.length - r.length) : v.trim(); + function g(p, S) { + let r = S.toLowerCase(); + return 0 < p.indexOf(r) && p.indexOf(r) == p.length - r.length ? p.substring(0, p.length - r.length) : p.trim(); } - function b(v, M, r, s) { + function d(p, S, r, s) { let i = []; - if (v == null || typeof v != "object") + if (p == null || typeof p != "object") return null; - let t = v[r]; - t != null && M == s && i.push(t); - for (var o in v) { - let l = v[o]; - t = b(l, o, r, s), t != null && (i = i.concat(t)); + let t = p[r]; + t != null && S == s && i.push(t); + for (var o in p) { + let l = p[o]; + t = d(l, o, r, s), t != null && (i = i.concat(t)); } return i; } - return D; + return N; }(); var Ae = function() { - function d(m) { - for (var b = "", v = 0; v < m; v++) - b = b + " "; - return b; + function m(d) { + for (var p = "", S = 0; S < d; S++) + p = p + " "; + return p; } - function h(m, b) { - for (const v in m) - if (JSON.stringify(m[v]) == JSON.stringify(b)) + function f(d, p) { + for (const S in d) + if (JSON.stringify(d[S]) == JSON.stringify(p)) return !0; return !1; } - function k(m) { - let b = ["_id", "Id"]; - if (m.id != null) - return m.id; - for (let v = 0; v < b.length; v++) { - const M = b[v]; - for (let r in m) - if (r.endsWith(M)) - return m[r]; + function k(d) { + let p = ["_id", "Id"]; + if (d.id != null) + return d.id; + for (let S = 0; S < p.length; S++) { + const r = p[S]; + for (let s in d) + if (s.endsWith(r)) + return d[s]; } } - function N(m) { - for (let b in m) - if (!(m[b] != null && typeof m[b] == "object")) + function D(d) { + for (let p in d) + if (!(d[p] != null && typeof d[p] == "object")) return !0; return !1; } - function I(m, b) { - const v = JSON.parse(m), M = new D(); - M.duplicatesAndParents(b, v), M.flatten(b, v); - let r = M.output(b, v, 0); - return r += ` + function I(d) { + let p = null; + e: + for (const S in d) + if (S == 0) + for (const r in d[S]) { + p = r; + break e; + } + else { + p = S; + break e; + } + return p.toLowerCase() == "id" ? null : p.toLowerCase().endsWith("_id") ? p.substring(0, p.length - 3) : p.endsWith("Id") ? p.substring(0, p.length - 2) : null; + } + function N(d, p) { + const S = JSON.parse(d), r = I(S); + r != null && (p = r), p == null && (p = "root_tbl"); + const s = new g(); + s.duplicatesAndParents(p, S), s.flatten(p, S); + let i = s.output(p, S, 0); + return i += ` -#settings = { genpk: false, drop: true }`, r += ` +#settings = { genpk: false, drop: true }`, i += ` #flattened = -`, r += JSON.stringify(M.tables, null, 3), r += ` -`, r += ` +`, i += JSON.stringify(s.tables, null, 3), i += ` +`, i += ` -- Generated by json2qsql.js ${oe()} ` + (/* @__PURE__ */ new Date()).toLocaleString() + ` -`, r += `#document = -`, r += JSON.stringify(v, null, 3), r += ` -`, r; +`, i += `#document = +`, i += JSON.stringify(S, null, 3), i += ` +`, i; } - function D() { - this.tables = {}, this.notNormalized = [], this.allTables = [], this.child2parent = {}, this.objCounts = {}, this.output = function(m, b, v, M) { - if (M != !1 && this.notNormalized.includes(m)) { - const i = this.parent(m) + "_" + m, t = this.tables[i]; - if (t != null) { - let o = ` -` + d(v) + i + " /insert " + t.length; - return t[0], o += this.output(m, b, v + 1, !1), o; + function g() { + this.tables = {}, this.notNormalized = [], this.allTables = [], this.child2parent = {}, this.objCounts = {}, this.output = function(d, p, S, r) { + if (r != !1 && this.notNormalized.includes(d)) { + const t = this.parent(d) + "_" + d, o = this.tables[t]; + if (o != null) { + let l = ` +` + m(S) + t + " /insert " + o.length; + return o[0], l += this.output(d, p, S + 1, !1), l; } } - let r = m, s = ""; - if (this.notNormalized.includes(m) && (s = ">"), 0 < v && (r = ` -` + d(v) + s + m), typeof b == "string" && (r += " vc"), typeof b == "number" && (r += " num", m.endsWith("_id") || m.endsWith("Id"))) - return r += " /pk", r; - if (m == "id") + let s = d, i = ""; + if (this.notNormalized.includes(d) && (i = ">"), 0 < S && (s = ` +` + m(S) + i + d), typeof p == "string" && (s += " vc"), typeof p == "number" && (s += " num", d.endsWith("_id") || d.endsWith("Id"))) + return s += " /pk", s; + if (d == "id") return ` -` + d(v) + "id vc32 /pk"; +` + m(S) + "id vc32 /pk"; e: - if (typeof b == "object") { - if (Array.isArray(b)) - for (const t in b) { - 1 <= t && console.log("1 <= property !"); - const o = b[t]; - r = this.output(m, o, v, M); + if (typeof p == "object") { + if (Array.isArray(p)) + for (const o in p) { + 1 <= o && console.log("1 <= property !"); + const l = p[o]; + s = this.output(d, l, S, r); break e; } else - m != "" && (r += " /insert " + this.tables[m].length); - let i = ""; - for (let t in b) { - const o = b[t]; - if (t != null) { - const f = _(m), y = t.toLowerCase(); - if (m != null && f + "_id" == y && 0 < v && (i = t), f + "_id" == y) + d != "" && (s += " /insert " + this.tables[d].length); + let t = ""; + for (let o in p) { + const l = p[o]; + if (o != null) { + const y = _(d), B = o.toLowerCase(); + if (d != null && y + "_id" == B && 0 < S && (t = o), y + "_id" == B) continue; } - this.allTables.includes(m) || (r = "", v--); - const l = this.output(t, o, v + 1); - r += l; + this.allTables.includes(d) || (s = "", S--); + const h = this.output(o, l, S + 1); + s += h; } - i != "" && (r += ` -` + d(v) + i); + t != "" && (s += ` +` + m(S) + t); } - return r; - }, this.flatten = function(m, b, v) { - let M = {}; - for (let i in b) - if (b[i] != null && typeof b[i] == "object") { - let t = m, o = v; - if (isNaN(i)) { - t = i; - const l = k(M); - l != null && (o = l); + return s; + }, this.flatten = function(d, p, S) { + let r = {}; + for (let t in p) + if (p[t] != null && typeof p[t] == "object") { + let o = d, l = S; + if (isNaN(t)) { + o = t; + const h = k(r); + h != null && (l = h); } - this.flatten(t, b[i], o); + this.flatten(o, p[t], l); } else - M[i] = b[i]; - const r = 0 < Object.keys(M).length; - let s = this.tables[m]; - if (r) { - if (s == null && (s = []), h(s, M) || s.push(M), this.notNormalized.includes(m)) { - const i = this.parent(m); - if (i != null) { - const t = i + "_" + m; - let o = this.tables[t]; - o == null && (o = []); - const l = {}; - l[_(i) + "_id"] = v, l[_(m) + "_id"] = k(M), o.push(l), this.tables[t] = o; + r[t] = p[t]; + const s = 0 < Object.keys(r).length; + let i = this.tables[d]; + if (s) { + if (i == null && (i = []), f(i, r) || i.push(r), this.notNormalized.includes(d)) { + const t = this.parent(d); + if (t != null) { + const o = t + "_" + d; + let l = this.tables[o]; + l == null && (l = []); + const h = {}; + h[_(t) + "_id"] = S, h[_(d) + "_id"] = k(r), l.push(h), this.tables[o] = l; } } - this.tables[m] = s; + this.tables[d] = i; } else - s == null && (this.tables[m] = []); - }, this.duplicatesAndParents = function(m, b) { - const v = '"' + m + '":' + JSON.stringify(b); - let M = this.objCounts[v]; - M == null && (M = 0); - let r = !1; - for (let i in b) - if (b[i] != null && typeof b[i] == "object") { - let t = m; - isNaN(i) && (t = i), t != m && (this.child2parent[t] = m), this.duplicatesAndParents(t, b[i]), r = !0; + i == null && (this.tables[d] = []); + }, this.duplicatesAndParents = function(d, p) { + const S = '"' + d + '":' + JSON.stringify(p); + let r = this.objCounts[S]; + r == null && (r = 0); + let s = !1; + for (let t in p) + if (p[t] != null && typeof p[t] == "object") { + let o = d; + isNaN(t) && (o = t), o != d && (this.child2parent[o] = d), this.duplicatesAndParents(o, p[t]), s = !0; } - N(b) && !this.allTables.includes(m) && this.allTables.push(m), r || (this.objCounts[v] = M + 1), 1 < this.objCounts[v] && !this.notNormalized.includes(m) && this.notNormalized.push(m); - }, this.parent = function(m) { - let b = this.child2parent[m]; - return b != null && !this.allTables.includes(b) ? this.parent(b) : b; + D(p) && !this.allTables.includes(d) && this.allTables.push(d), s || (this.objCounts[S] = r + 1), 1 < this.objCounts[S] && !this.notNormalized.includes(d) && this.notNormalized.push(d); + }, this.parent = function(d) { + let p = this.child2parent[d]; + return p != null && !this.allTables.includes(p) ? this.parent(p) : p; }; } - return I; + return N; }(); const ye = function() { - function d(m, b, v, M) { - this.from = b, this.to = v, v == null && (this.to = new h(b.line, b.depth + 1)), this.message = m, this.severity = M, M == null && (this.severity = "error"); + function m(g, d, p, S) { + this.from = d, this.to = p, p == null && (this.to = new f(d.line, d.depth + 1)), this.message = g, this.severity = S, S == null && (this.severity = "error"); } - function h(m, b) { - this.line = m, this.depth = b; + function f(g, d) { + this.line = g, this.depth = d; } - function k(m) { - const b = m, v = m.input; - let M = []; - const r = v.split(` + function k(g) { + const d = g, p = g.input; + let S = []; + const r = p.split(` `); - M = M.concat(D(r)); - const s = b.descendants(); + S = S.concat(N(r)); + const s = d.descendants(); for (let i = 0; i < s.length; i++) { const t = s[i]; - if (b.optionEQvalue("genpk", !0) && s[i].parseName() == "id") { - const f = t.content.toLowerCase().indexOf("id"); - M.push(new d(q.duplicateId, new h(t.line, f))); + if (d.optionEQvalue("genpk", !0) && s[i].parseName() == "id") { + const h = t.content.toLowerCase().indexOf("id"); + S.push(new m(j.duplicateId, new f(t.line, h))); continue; } const o = t.src[2]; if (2 < t.src.length && o.value == "-") { - const f = o.begin; - M.push(new d(q.invalidDatatype, new h(t.line, f))); + const h = o.begin; + S.push(new m(j.invalidDatatype, new f(t.line, h))); continue; } const l = t.src[1]; if (1 < t.src.length && 0 < l.value.indexOf("0")) { - const f = l.begin; - M.push(new d(q.invalidDatatype, new h(t.line, f))); + const h = l.begin; + S.push(new m(j.invalidDatatype, new f(t.line, h))); continue; } - M = M.concat(N(b, t)), M = M.concat(I(b, t)); + S = S.concat(D(d, t)), S = S.concat(I(d, t)); } - return M; + return S; } - function N(m, b) { - var v = [], M = b.content.toLowerCase(); - if (b.parseType() == "view") { - var r = ee(M, " "); + function D(g, d) { + var p = [], S = d.content.toLowerCase(); + if (d.parseType() == "view") { + var r = $(S, " "); let t = 0; for (var s = 0; s < r.length; s++) if (t += r[s].length, r[s] != " " && r[s] != "view" && s != 1) { - var i = m.find(r[s]); - i == null && v.push(new d( - q.undefinedObject + r[s], - new h(b.line, t - r[s].length) + var i = g.find(r[s]); + i == null && p.push(new m( + j.undefinedObject + r[s], + new f(d.line, t - r[s].length) )); } } - return v; + return p; } - function I(m, b) { - var v = [], M = b.content.toLowerCase(); - if (0 < M.indexOf("/fk") || 0 < M.indexOf("/reference")) { - let i = ee(M, " "), t = 0, o = !1; + function I(g, d) { + var p = [], S = d.content.toLowerCase(); + if (0 < S.indexOf("/fk") || 0 < S.indexOf("/reference")) { + let i = $(S, " "), t = 0, o = !1; for (var r = 0; r < i.length; r++) if (t += i[r].length, i[r] != " ") { if (i[r] == "/fk" || i[r].indexOf("/reference") == 0) { @@ -8760,55 +8780,55 @@ const ye = function() { continue; } if (o) { - var s = m.find(i[r]); + var s = g.find(i[r]); if (s == null) { - v.push(new d( - q.undefinedObject + i[r], - new h(b.line, t - i[r].length) + p.push(new m( + j.undefinedObject + i[r], + new f(d.line, t - i[r].length) )); break; } } } } - return v; + return p; } - function D(m) { - for (var b = [], v = Se(m), M = 1; M < m.length; M++) { - var r = m[M - 1], s = m[M], i = te(r), t = te(s); - t != 0 && i < t && t < i + v && b.push( - new d( - q.misalignedAttribute + v, - new h(M, t) + function N(g) { + for (var d = [], p = Se(g), S = 1; S < g.length; S++) { + var r = g[S - 1], s = g[S], i = re(r), t = re(s); + t != 0 && i < t && t < i + p && d.push( + new m( + j.misalignedAttribute + p, + new f(S, t) ) ); } - return b; + return d; } return k; }(); -function Se(d) { - let h = []; - for (var k = 0; k < d.length; k++) { - var N = d[k]; - h[k] = te(N); +function Se(m) { + let f = []; + for (var k = 0; k < m.length; k++) { + var D = m[k]; + f[k] = re(D); } let I = []; - for (let m = 0; m < h.length; m++) { - let b = Me(h, m); - if (b != null) { - let v = I[h[m] - h[b]]; - v == null && (v = 0), I[h[m] - h[b]] = v + 1; + for (let g = 0; g < f.length; g++) { + let d = Me(f, g); + if (d != null) { + let p = I[f[g] - f[d]]; + p == null && (p = 0), I[f[g] - f[d]] = p + 1; } } - let D = null; - for (let m in I) - (D == null || I[D] <= I[m]) && (D = m); - return D; + let N = null; + for (let g in I) + (N == null || I[N] <= I[g]) && (N = g); + return N; } -function te(d) { - for (var h = d.split(/ |\t/), k = 0, N = 0; N < h.length; N++) { - var I = h[N]; +function re(m) { + for (var f = m.split(/ |\t/), k = 0, D = 0; D < f.length; D++) { + var I = f[D]; if (I == " " && (k += 4), I == "") { k++; continue; @@ -8818,19 +8838,19 @@ function te(d) { } return 0; } -function Me(d, h) { - for (let k = h; 0 <= k; k--) - if (d[k] < d[h]) +function Me(m, f) { + for (let k = f; 0 <= k; k--) + if (m[k] < m[f]) return k; return null; } -const q = { +const j = { duplicateId: "Explicit ID column conflicts with genpk", invalidDatatype: "Invalid Datatype", undefinedObject: "Undefined Object: ", misalignedAttribute: "Misaligned Table or Column; apparent indent = " -}, Te = { findErrors: ye, messages: q }, ie = "identityDataType", ue = "guid", me = "Timestamp with time zone", de = "Timestamp with local time zone", j = function() { - const d = { +}, Te = { findErrors: ye, messages: j }, ne = "identityDataType", ue = "guid", me = "Timestamp with time zone", de = "Timestamp with local time zone", Y = function() { + const m = { apex: { label: "APEX", value: "no", check: ["yes", "no"] }, auditcols: { label: "Audit Columns", value: "no", check: ["yes", "no"] }, createdcol: { label: "Created Column Name", value: "created" }, @@ -8853,7 +8873,7 @@ const q = { overridesettings: { label: "Ignore toDDL() second parameter", value: "no", check: ["yes", "no"] }, prefix: { label: "Object Prefix", value: "" }, //ondelete: {label: 'On Delete', value:'Cascade',check:['restrict','cascade','set null']}, - pk: { label: "Primary Key Maintenance", value: ie, check: [ie, ue, "SEQ", "NONE"] }, + pk: { label: "Primary Key Maintenance", value: ne, check: [ne, ue, "SEQ", "NONE"] }, prefixpkwithtname: { label: "Prefix primary keys with table name", value: "no", check: ["yes", "no"] }, rowkey: { label: "Alphanumeric Row Identifier", value: "no", check: ["yes", "no"] }, rowversion: { label: "Row Version Number", value: "no", check: ["yes", "no"] }, @@ -8863,260 +8883,260 @@ const q = { //"Auxiliary Columns": {label: "Auxiliary Columns", value:''}, // e.g. security_group_id integer //namecase: {label: 'Object and Field name convention', value:'canonic',check:['canonic','json']}, }; - function h(N) { - if (N == null) + function f(D) { + if (D == null) return null; - let I = N; - return typeof I == "string" && (I = I.toLowerCase()), I == "yes" ? !0 : I == "no" ? !1 : I == "y" ? !0 : I == "n" ? !1 : I == "true" ? !0 : I == "false" ? !1 : I == ie.toLowerCase() ? "identity" : I == ue.toLowerCase() ? "guid" : I == me.toLowerCase() ? "tswtz" : I == de.toLowerCase() ? "tswltz" : I; + let I = D; + return typeof I == "string" && (I = I.toLowerCase()), I == "yes" ? !0 : I == "no" ? !1 : I == "y" ? !0 : I == "n" ? !1 : I == "true" ? !0 : I == "false" ? !1 : I == ne.toLowerCase() ? "identity" : I == ue.toLowerCase() ? "guid" : I == me.toLowerCase() ? "tswtz" : I == de.toLowerCase() ? "tswltz" : I; } - function k(N, I) { - this.ddl = null, this.erd = null, this.errors = null, this.options = JSON.parse(JSON.stringify(d)), this.input = N, this.getOptionValue = function(m) { - const b = m.toLowerCase(); - let v = this.options[b]; - if (!(b in this.options)) - for (let M in this.options) { - const r = this.options[M].label; + function k(D, I) { + this.ddl = null, this.erd = null, this.errors = null, this.options = JSON.parse(JSON.stringify(m)), this.input = D, this.getOptionValue = function(g) { + const d = g.toLowerCase(); + let p = this.options[d]; + if (!(d in this.options)) + for (let S in this.options) { + const r = this.options[S].label; if (r == null) continue; - r.toLowerCase() == b && (v = this.options[M]); + r.toLowerCase() == d && (p = this.options[S]); } - return v == null ? null : v.value; - }, this.optionEQvalue = function(m, b) { - var v = this.getOptionValue(m); - return h(v) == h(b); + return p == null ? null : p.value; + }, this.optionEQvalue = function(g, d) { + var p = this.getOptionValue(g); + return f(p) == f(d); }, this.nonDefaultOptions = function() { - let m = {}; - for (let b in this.options) - d[b] && !this.optionEQvalue(b, d[b].value) && (m[b] = this.options[b].value); - return m; + let g = {}; + for (let d in this.options) + m[d] && !this.optionEQvalue(d, m[d].value) && (g[d] = this.options[d].value); + return g; }, this.unknownOptions = function() { - let m = []; - for (let b in this.options) - d[b] == null && m.push(b); - return m; - }, this.setOptionValue = function(m, b) { - let v = m.toLowerCase(); - if (!(v in this.options)) { + let g = []; + for (let d in this.options) + m[d] == null && g.push(d); + return g; + }, this.setOptionValue = function(g, d) { + let p = g.toLowerCase(); + if (!(p in this.options)) { for (let r in this.options) - if (this.options[r].label == m) { - this.options[r].value = b; + if (this.options[r].label == g) { + this.options[r].value = d; return; } } - b == null && (b = ""); - let M = this.options[v]; - M == null && (M = {}, this.options[v] = M), M.value = b; + d == null && (d = ""); + let S = this.options[p]; + S == null && (S = {}, this.options[p] = S), S.value = d; }, this.semantics = function() { - var m = ""; - return this.optionEQvalue("semantics", "CHAR") ? m = " char" : this.optionEQvalue("semantics", "BYTE") && (m = " byte"), m; - }, this.find = function(m) { - for (var b = 0; b < this.forest.length; b++) - for (var v = this.forest[b].descendants(), M = 0; M < v.length; M++) { - var r = v[M]; - if (r.parseName() == he(m)) + var g = ""; + return this.optionEQvalue("semantics", "CHAR") ? g = " char" : this.optionEQvalue("semantics", "BYTE") && (g = " byte"), g; + }, this.find = function(g) { + for (var d = 0; d < this.forest.length; d++) + for (var p = this.forest[d].descendants(), S = 0; S < p.length; S++) { + var r = p[S]; + if (r.parseName() == he(g)) return r; } return null; - }, this.setOptions = function(m) { - m = m.trim(), m.startsWith("#") && (m = m.substring(1).trim()); - const b = m.indexOf("="); - let v = m.substring(b + 1).trim(); - v.indexOf("{") < 0 && (v = "{" + m + "}"); - let M = "", r = Q(v, !0, !0, ""); + }, this.setOptions = function(g) { + g = g.trim(), g.startsWith("#") && (g = g.substring(1).trim()); + const d = g.indexOf("="); + let p = g.substring(d + 1).trim(); + p.indexOf("{") < 0 && (p = "{" + g + "}"); + let S = "", r = Z(p, !0, !0, ""); for (let i in r) { let t = r[i]; - t.type == "identifier" && t.value != "true" && t.value != "false" && t.value != "null" ? M += '"' + t.value + '"' : M += t.value; + t.type == "identifier" && t.value != "true" && t.value != "false" && t.value != "null" ? S += '"' + t.value + '"' : S += t.value; } - let s = JSON.parse(M); + let s = JSON.parse(S); for (let i in s) this.setOptionValue(i.toLowerCase(), s[i]); }, this.descendants = function() { - for (var m = [], b = 0; b < this.forest.length; b++) - m = m.concat(this.forest[b].descendants()); - return m; + for (var g = [], d = 0; d < this.forest.length; d++) + g = g.concat(this.forest[d].descendants()); + return g; }, this.additionalColumns = function() { - var m = [], b = this.getOptionValue("Auxiliary Columns"); - if (b == null) - return m; - for (var v = b.split(","), M = 0; M < v.length; M++) { - var r = v[M].trim(), s = "VARCHAR2(4000)", i = r.indexOf(" "); - 0 < i && (s = r.substring(i + 1).toUpperCase(), r = r.substring(0, i)), m[r] = s; + var g = [], d = this.getOptionValue("Auxiliary Columns"); + if (d == null) + return g; + for (var p = d.split(","), S = 0; S < p.length; S++) { + var r = p[S].trim(), s = "VARCHAR2(4000)", i = r.indexOf(" "); + 0 < i && (s = r.substring(i + 1).toUpperCase(), r = r.substring(0, i)), g[r] = s; } - return m; - }, this.objPrefix = function(m) { - var b = this.getOptionValue("schema"); - b == null && (b = ""), b != "" && m == null ? b = b + "." : b = ""; - var v = ""; - return this.getOptionValue("prefix") != null && (v = this.getOptionValue("prefix")), b = b + v, v != "" && (b = b + "_"), b.toLowerCase(); + return g; + }, this.objPrefix = function(g) { + var d = this.getOptionValue("schema"); + d == null && (d = ""), d != "" && g == null ? d = d + "." : d = ""; + var p = ""; + return this.getOptionValue("prefix") != null && (p = this.getOptionValue("prefix")), d = d + p, p != "" && (d = d + "_"), d.toLowerCase(); }; - let D = ""; - 0 < N.toLowerCase().indexOf("overridesettings") && ce(this), I != null && this.optionEQvalue("overrideSettings", !1) && (D = "# settings = " + I + ` + let N = ""; + 0 < D.toLowerCase().indexOf("overridesettings") && ce(this), I != null && this.optionEQvalue("overrideSettings", !1) && (N = "# settings = " + I + ` -`), this.input = D + N, this.forest = ce(this), this.getERD = function() { +`), this.input = N + D, this.forest = ce(this), this.getERD = function() { if (this.erd != null) return this.erd; - let m = this.descendants(), b = { items: [] }; - for (let r = 0; r < m.length; r++) { - if (m[r].parseType() != "table") + let g = this.descendants(), d = { items: [] }; + for (let r = 0; r < g.length; r++) { + if (g[r].parseType() != "table") continue; - let s = { name: this.objPrefix("no schema") + m[r].parseName("") }, i = this.getOptionValue("schema"); - i == "" && (i = null), s.schema = i, s.columns = [], b.items.push(s); - let t = m[r].getGenIdColName(); + let s = { name: this.objPrefix("no schema") + g[r].parseName("") }, i = this.getOptionValue("schema"); + i == "" && (i = null), s.schema = i, s.columns = [], d.items.push(s); + let t = g[r].getGenIdColName(); t != null && s.columns.push({ name: t, datatype: "number" }); - for (let l = 0; l < m[r].children.length; l++) { - let f = m[r].children[l]; - if (f.parseType() != "table" && (s.columns.push({ name: f.parseName(""), datatype: f.parseType((y) => !0) }), 0 < f.indexOf("file"))) { - const y = f.parseName(); + for (let l = 0; l < g[r].children.length; l++) { + let h = g[r].children[l]; + if (h.parseType() != "table" && (s.columns.push({ name: h.parseName(""), datatype: h.parseType((y) => !0) }), 0 < h.indexOf("file"))) { + const y = h.parseName(); s.columns.push({ name: y + "_filename", datatype: "varchar2(255" + this.semantics() + ")" }), s.columns.push({ name: y + "_mimetype", datatype: "varchar2(255" + this.semantics() + ")" }), s.columns.push({ name: y + "_charset", datatype: "varchar2(255" + this.semantics() + ")" }), s.columns.push({ name: y + "_lastupd", datatype: "date" }); } } - const o = m[r].trimmedContent().toUpperCase(); + const o = g[r].trimmedContent().toUpperCase(); if ((this.optionEQvalue("rowkey", !0) || 0 < o.indexOf("/ROWKEY")) && s.columns.push({ name: "row_key", datatype: "varchar2(30 char)" }), (this.optionEQvalue("rowVersion", "yes") || 0 < o.indexOf("/ROWVERSION")) && s.columns.push({ name: "row_version", datatype: "integer" }), this.optionEQvalue("Audit Columns", "yes") || 0 < o.indexOf("/AUDITCOLS")) { let l = this.getOptionValue("createdcol"); s.columns.push({ name: l, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); - let f = this.getOptionValue("createdbycol"); - s.columns.push({ name: f, datatype: "varchar2(255" + this.semantics() + ")" }); + let h = this.getOptionValue("createdbycol"); + s.columns.push({ name: h, datatype: "varchar2(255" + this.semantics() + ")" }); let y = this.getOptionValue("updatedcol"); s.columns.push({ name: y, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); - let P = this.getOptionValue("updatedbycol"); - s.columns.push({ name: P, datatype: "varchar2(255" + this.semantics() + ")" }); + let B = this.getOptionValue("updatedbycol"); + s.columns.push({ name: B, datatype: "varchar2(255" + this.semantics() + ")" }); } - var v = this.additionalColumns(); - for (let l in v) { - var M = v[l]; - pad = tab + " ".repeat(this.maxChildNameLen() - l.length), ret += tab + l.toUpperCase() + pad + M + ` not null, + var p = this.additionalColumns(); + for (let l in p) { + var S = p[l]; + pad = tab + " ".repeat(this.maxChildNameLen() - l.length), ret += tab + l.toUpperCase() + pad + S + ` not null, `; } } - b.links = []; - for (let r = 0; r < m.length; r++) - if (m[r].parseType() == "table") { - m[r].toDDL(); - for (let s in m[r].fks) { - let i = m[r].fks[s], t = this.find(i); + d.links = []; + for (let r = 0; r < g.length; r++) + if (g[r].parseType() == "table") { + g[r].toDDL(); + for (let s in g[r].fks) { + let i = g[r].fks[s], t = this.find(i); if (t == null) continue; let o = "id"; - t.getExplicitPkNode() != null && (o = t.getExplicitPkNode().parseName()), b.links.push({ + t.getExplicitPkNode() != null && (o = t.getExplicitPkNode().parseName()), d.links.push({ source: this.objPrefix() + i, source_id: o, - target: this.objPrefix() + m[r].parseName(""), + target: this.objPrefix() + g[r].parseName(""), target_id: s }); } } - return this.erd = b, b; + return this.erd = d, d; }, this.getDDL = function() { if (this.ddl != null) return this.ddl; - var m = "", b = this.descendants(); + var g = "", d = this.descendants(); if (this.optionEQvalue("Include Drops", "yes")) - for (let r = 0; r < b.length; r++) { - let s = b[r].generateDrop(); - s != "" && (m += s); + for (let r = 0; r < d.length; r++) { + let s = d[r].generateDrop(); + s != "" && (g += s); } if (this.optionEQvalue("rowkey", !0)) - m += `create sequence row_key_seq; + g += `create sequence row_key_seq; `; else for (let r = 0; r < this.forest.length; r++) if (0 < this.forest[r].trimmedContent().toUpperCase().indexOf("/ROWKEY")) { - m += `create sequence row_key_seq; + g += `create sequence row_key_seq; `; break; } - m += `-- create tables + g += `-- create tables `; for (let r = 0; r < this.forest.length; r++) - m += this.forest[r].toDDL() + ` + g += this.forest[r].toDDL() + ` `; - let v = 0; - for (let r = 0; r < b.length; r++) { - let s = b[r].generateTrigger(); - s != "" && (v++ == 0 && (m += `-- triggers -`), m += s + ` + let p = 0; + for (let r = 0; r < d.length; r++) { + let s = d[r].generateTrigger(); + s != "" && (p++ == 0 && (g += `-- triggers +`), g += s + ` `); } - v = 0; - for (let r = 0; r < b.length; r++) { - let s = b[r].restEnable(); - s != "" && (m += s + ` + p = 0; + for (let r = 0; r < d.length; r++) { + let s = d[r].restEnable(); + s != "" && (g += s + ` `); } - v = 0; - for (let r = 0; r < b.length; r++) { - if (this.optionEQvalue("api", !1) && b[r].trimmedContent().toLowerCase().indexOf("/api") < 0) + p = 0; + for (let r = 0; r < d.length; r++) { + if (this.optionEQvalue("api", !1) && d[r].trimmedContent().toLowerCase().indexOf("/api") < 0) continue; - let s = b[r].generateTAPI(); - s != "" && (v++ == 0 && (m += `-- APIs -`), m += s + ` + let s = d[r].generateTAPI(); + s != "" && (p++ == 0 && (g += `-- APIs +`), g += s + ` `); } - v = 0; + p = 0; for (let r = 0; r < this.forest.length; r++) { let s = this.forest[r].generateView(); - s != "" && (v++ == 0 && (m += `-- create views -`), m += s + ` + s != "" && (p++ == 0 && (g += `-- create views +`), g += s + ` `); } - v = 0; + p = 0; for (let r = 0; r < this.forest.length; r++) { let s = this.forest[r].generateData(this.data); - s != "" && (v++ == 0 && (m += `-- load data + s != "" && (p++ == 0 && (g += `-- load data -`), m += s + ` +`), g += s + ` `); } - v = 0, m += `-- Generated by Quick SQL ${this.version()} ` + (/* @__PURE__ */ new Date()).toLocaleString() + ` + p = 0, g += `-- Generated by Quick SQL ${this.version()} ` + (/* @__PURE__ */ new Date()).toLocaleString() + ` -`, m += `/* +`, g += `/* `; - let M = N; - M = M.replace(/#.+/g, ` -`), M = M.replace(/\/\*/g, "--<--"), M = M.replace(/\*\//g, "-->--"), M = M.replace(/\/* Non-default options:/g, ""), m += M, m += ` + let S = D; + S = S.replace(/#.+/g, ` +`), S = S.replace(/\/\*/g, "--<--"), S = S.replace(/\*\//g, "-->--"), S = S.replace(/\/* Non-default options:/g, ""), g += S, g += ` `; for (let r = 0; r < this.unknownOptions().length; r++) - m += "*** Unknown setting: " + this.unknownOptions()[r] + ` + g += "*** Unknown setting: " + this.unknownOptions()[r] + ` `; - return m += ` + return g += ` Non-default options: # settings = ` + JSON.stringify(this.nonDefaultOptions()) + ` -`, m += ` -*/`, this.ddl = m, m; +`, g += ` +*/`, this.ddl = g, g; }, this.getErrors = function() { return this.errors != null ? this.errors : (this.errors = Te.findErrors(this, this.fullInput), this.errors); }, this.version = oe; } return k; }(); -function Ie(d, h) { - return Ae(d, h); +function Ie(m, f) { + return Ae(m, f); } -function Be(d, h) { - return new j(d, h).getERD(); +function Be(m, f) { + return new Y(m, f).getERD(); } -function Pe(d, h) { - return new j(d, h).getDDL(); +function Pe(m, f) { + return new Y(m, f).getDDL(); } -function Ee(d, h) { - return new j(d, h).getErrors(); +function Ee(m, f) { + return new Y(m, f).getErrors(); } function oe() { return "1.2.1"; } -j.version = oe; -j.toDDL = Pe; -j.toERD = Be; -j.toErrors = Ee; -j.fromJSON = Ie; +Y.version = oe; +Y.toDDL = Pe; +Y.toERD = Be; +Y.toErrors = Ee; +Y.fromJSON = Ie; export { - j as default, + Y as default, Ie as fromJSON, oe as qsql_version, - j as quicksql, + Y as quicksql, Pe as toDDL, Be as toERD, Ee as toErrors diff --git a/dist/quick-sql.umd.cjs b/dist/quick-sql.umd.cjs index aa107b3..e3b424e 100644 --- a/dist/quick-sql.umd.cjs +++ b/dist/quick-sql.umd.cjs @@ -1,46 +1,46 @@ -(function(V,O){typeof exports=="object"&&typeof module<"u"?O(exports):typeof define=="function"&&define.amd?define(["exports"],O):(V=typeof globalThis<"u"?globalThis:V||self,O(V.quickSQL={}))})(this,function(V){"use strict";function O(d){return d==null?d:d.toUpperCase().endsWith("IES")?d.substring(0,d.length-3)+"y":d.toUpperCase().endsWith("ES")||d.toUpperCase().endsWith("S")?d.substring(0,d.length-1):d}function ve(d,h){let x='"';if(d==null)return null;let N=!1;const I="$#_ ";if(!d.startsWith(x)&&!N){const D=d;if(D.length>0&&"0"<=D[0]&&D[0]<="9")N=!0;else for(let m in D){const b=D[m];if(I.indexOf(b)<0&&(b<"0"||"9""u"&&(e[n]=a[n]);return e}function i(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var o=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?o=btoa:typeof Buffer=="function"&&(o=function(a){return new Buffer(a).toString("base64")})})(),r.prototype.bool=function(e){return e=s(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100c,"Chance: Max specified is out of range with fixed. Max should be, at most, "+c),e=s(e,{min:u,max:c}),a=this.integer({min:e.min*n,max:e.max*n});var g=(a/n).toFixed(e.fixed);return parseFloat(g)},r.prototype.integer=function(e){return e=s(e,{min:N,max:x}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},r.prototype.natural=function(e){if(e=s(e,{min:0,max:x}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),c=e.exclude.sort();for(var u in c){if(ne.max,"Chance: Min cannot be greater than Max.");var a=E.primes[E.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&E.primes.push(n);var c=E.primes.filter(function(u){return u>=e.min&&u<=e.max});return this.pick(c)},r.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},r.prototype.hex=function(e){e=s(e,{min:0,max:x,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},r.prototype.letter=function(e){e=s(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},r.prototype.string=function(e){e=s(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function f(e){this.c=e}f.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function y(e){this.c=e}y.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:m})},a:function(e){return e.character({pool:D})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function P(e){for(var a=[],n="identity",c=0;c"u")throw new v("Sorry, the buffer() function is not supported on your platform");e=s(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},r.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},r.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},r.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var c=function(S,F){return S.indexOf(F)!==-1};n&&(c=n.comparator||c);for(var u=[],g=0,B,p=a*50,A=M.call(arguments,2);u.lengthp)throw new RangeError("Chance: num is likely too large for sample set")}return u},r.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,c=[],u=M.call(arguments,2);for(n=Math.max(0,n),null;n--;null)c.push(e.apply(this,u));return c},r.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},r.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},r.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},r.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),c=n.length;return this.n(function(){var u=this.natural({max:--c}),g=n[u];return n[u]=n[c],g},Math.min(c,a))},r.prototype.shuffle=function(e){for(var a=[],n=0,c=Number(e.length),u=i(c),g=c-1,B,p=0;p0&&(c+=u)}if(c===0)throw new RangeError("Chance: No valid entries in array weights");var B=this.random()*c,p=0,A=-1,C;for(g=0;g0){if(B<=p){C=g;break}A=g}g===a.length-1&&(C=A)}var S=e[C];return n=typeof n>"u"?!1:n,n&&(e.splice(C,1),a.splice(C,1)),S},r.prototype.paragraph=function(e){e=s(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),c=e.linebreak===!0?` -`:" ";return n.join(c)},r.prototype.sentence=function(e){e=s(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,c,u=this.n(this.word,a);return c=u.join(" "),c=this.capitalize(c),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(c+=n),c},r.prototype.syllable=function(e){e=s(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",c="aeiou",u=n+c,g="",B,p=0;pe.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var B=e.minAge!==void 0?e.minAge:0,p=e.maxAge!==void 0?e.maxAge:100,A=new Date(c-p-1,n.getMonth(),n.getDate()),C=new Date(c-B,n.getMonth(),n.getDate());A.setDate(A.getDate()+1),C.setDate(C.getDate()+1),C.setMilliseconds(C.getMilliseconds()-1),e=s(e,{min:A,max:C})}else e=s(e,{year:c-a});return this.date(e)},r.prototype.cpf=function(e){e=s(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var c=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;c=11-c%11,c>=10&&(c=0);var u=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+c;return e.formatted?u:u.replace(/\D/g,"")},r.prototype.cnpj=function(e){e=s(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var c=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;c=11-c%11,c<2&&(c=0);var u=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+c;return e.formatted?u:u.replace(/\D/g,"")},r.prototype.first=function(e){return e=s(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},r.prototype.profession=function(e){return e=s(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},r.prototype.company=function(){return this.pick(this.get("company"))},r.prototype.gender=function(e){return e=s(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},r.prototype.last=function(e){if(e=s(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(c){a=a.concat(n[c])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},r.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},r.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},r.prototype.tld=function(){return this.pick(this.tlds())},r.prototype.twitter=function(){return"@"+this.word()},r.prototype.url=function(e){e=s(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},r.prototype.port=function(){return this.integer({min:0,max:65535})},r.prototype.locale=function(e){return e=s(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},r.prototype.locales=function(e){return e=s(e),e.region?this.get("locale_regions"):this.get("locale_languages")},r.prototype.loremPicsum=function(e){e=s(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},r.prototype.address=function(e){return e=s(e),this.natural({min:5,max:2e3})+" "+this.street(e)},r.prototype.altitude=function(e){return e=s(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.areacode=function(e){e=s(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},r.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},r.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},r.prototype.countries=function(){return this.get("countries")},r.prototype.country=function(e){e=s(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},r.prototype.depth=function(e){return e=s(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.geohash=function(e){return e=s(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},r.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},r.prototype.latitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=s(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:c});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.longitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=s(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:c});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.phone=function(e){var a=this,n,c=function(F){var G=[];return F.sections.forEach(function(z){G.push(a.string({pool:"0123456789",length:z}))}),F.area+G.join(" ")};e=s(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var u;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),u=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),u=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),u=e.formatted?c(n):c(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),u=e.formatted?c(n):c(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n);break;case"us":var g=this.areacode(e).toString(),B=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),p=this.natural({min:1e3,max:9999}).toString();u=e.formatted?g+" "+B+"-"+p:g+B+p;break;case"br":var A=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),C;e.mobile?C="9"+a.string({pool:"0123456789",length:4}):C=this.natural({min:2e3,max:5999}).toString();var S=a.string({pool:"0123456789",length:4});u=e.formatted?"("+A+") "+C+"-"+S:A+C+S;break}return u},r.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},r.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",c=e+a+n,u=this.natural({max:9}),g=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),B=u+g;return c+" "+B},r.prototype.counties=function(e){return e=s(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},r.prototype.county=function(e){return this.pick(this.counties(e)).name},r.prototype.provinces=function(e){return e=s(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},r.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},r.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},r.prototype.states=function(e){e=s(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),c=this.get("territories"),u=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(c)),e.armed_forces&&(a=a.concat(u));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},r.prototype.street=function(e){e=s(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},r.prototype.street_suffix=function(e){return e=s(e,{country:"us"}),this.pick(this.street_suffixes(e))},r.prototype.street_suffixes=function(e){return e=s(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},r.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},r.prototype.ampm=function(){return this.bool()?"am":"pm"},r.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=s(e,{american:!0,string:!1});var c=typeof e.min<"u"?e.min.getTime():1,u=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:c,max:u}))}else{var g=this.month({raw:!0}),B=g.days;e&&e.month&&(B=this.get("months")[(e.month%12+12)%12].days),e=s(e,{year:parseInt(this.year(),10),month:g.numeric-1,day:this.natural({min:1,max:B}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},r.prototype.hammertime=function(e){return this.date(e).getTime()},r.prototype.hour=function(e){return e=s(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.millisecond=function(){return this.natural({max:999})},r.prototype.minute=r.prototype.second=function(e){return e=s(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.month=function(e){e=s(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},r.prototype.months=function(){return this.get("months")},r.prototype.second=function(){return this.natural({max:59})},r.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},r.prototype.weekday=function(e){e=s(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},r.prototype.year=function(e){return e=s(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},r.prototype.cc=function(e){e=s(e);var a,n,c;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),c=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,c,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},r.prototype.cc_types=function(){return this.get("cc_types")},r.prototype.cc_type=function(e){e=s(e);var a=this.cc_types(),n=null;if(e.name){for(var c=0;c3&&(F?G=G.substr(0,3):G=G[0]+G.substr(2,2)),G.length<3&&(z=G,G=S.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+G),z},A=function(S,F,G){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return S.getFullYear().toString().substr(2)+z[S.getMonth()]+G.pad(S.getDate()+(F.toLowerCase()==="female"?40:0),2)},C=function(S){for(var F="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",G="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(G[F.indexOf(S[U])]):K+=j.indexOf(G[F.indexOf(S[U])]);return z[K%26]};return B=B.concat(p(c,!0),p(n),A(u,a,this),g.toUpperCase().split("")).join(""),B+=C(B.toUpperCase()),B.toUpperCase()},r.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;u--)c[u-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?c.reduce(function(g,B){return g+B}):c}else throw new RangeError("Chance: A type of die roll must be included")},r.prototype.guid=function(e){e=s(e,{version:5});var a="abcdef1234567890",n="ab89",c=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return c},r.prototype.hash=function(e){e=s(e,{length:40,casing:"lower"});var a=e.casing==="upper"?b.toUpperCase():b;return this.string({pool:a,length:e.length})},r.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},r.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,c,u=0,g=a.length;g>u;++u)c=+a[u],u%2===0&&(c*=2,c>9&&(c-=9)),n+=c;return n*9%10},r.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=s(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},r.prototype.file=function(e){var a=e||{},n="fileExtension",c=Object.keys(this.get("fileExtension")),u,g;if(u=this.word({length:a.length}),a.extension)return g=a.extension,u+"."+g;if(a.extensions){if(Array.isArray(a.extensions))return g=this.pickone(a.extensions),u+"."+g;if(a.extensions.constructor===Object){var B=a.extensions,p=Object.keys(B);return g=this.pickone(B[this.pickone(p)]),u+"."+g}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var A=a.fileType;if(c.indexOf(A)!==-1)return g=this.pickone(this.get(n)[A]),u+"."+g;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return g=this.pickone(this.get(n)[this.pickone(c)]),u+"."+g},r.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var c={fileData:this.buffer({length:a.fileSize}),fileName:n};return c};var E={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},L=Object.prototype.hasOwnProperty,k=Object.keys||function(e){var a=[];for(var n in e)L.call(e,n)&&a.push(n);return a};function w(e,a){for(var n=k(e),c,u=0,g=n.length;u0)return this.normal_pool(e);var a,n,c,u,g=e.mean,B=e.dev;do n=this.random()*2-1,c=this.random()*2-1,a=n*n+c*c;while(a>=1);return u=n*Math.sqrt(-2*Math.log(a)/a),B*u+g},r.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},r.prototype.radio=function(e){e=s(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},r.prototype.set=function(e,a){typeof e=="string"?E[e]=a:E=_(e,E)},r.prototype.tv=function(e){return this.radio(e)},r.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},r.prototype.emotion=function(){return this.pick(this.get("emotions"))},r.prototype.mersenne_twister=function(e){return new W(e)},r.prototype.blueimp_md5=function(){return new R};var W=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};W.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},W.prototype.init_by_array=function(e,a){var n=1,c=0,u,g;for(this.init_genrand(19650218),u=this.N>a?this.N:a;u;u--)g=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((g&4294901760)>>>16)*1664525<<16)+(g&65535)*1664525)+e[c]+c,this.mt[n]>>>=0,n++,c++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),c>=a&&(c=0);for(u=this.N-1;u;u--)g=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((g&4294901760)>>>16)*1566083941<<16)+(g&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},W.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},W.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},W.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},W.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},W.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},W.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var R=function(){};R.prototype.VERSION="1.0.1",R.prototype.safe_add=function(a,n){var c=(a&65535)+(n&65535),u=(a>>16)+(n>>16)+(c>>16);return u<<16|c&65535},R.prototype.bit_roll=function(e,a){return e<>>32-a},R.prototype.md5_cmn=function(e,a,n,c,u,g){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(c,g)),u),n)},R.prototype.md5_ff=function(e,a,n,c,u,g,B){return this.md5_cmn(a&n|~a&c,e,a,u,g,B)},R.prototype.md5_gg=function(e,a,n,c,u,g,B){return this.md5_cmn(a&c|n&~c,e,a,u,g,B)},R.prototype.md5_hh=function(e,a,n,c,u,g,B){return this.md5_cmn(a^n^c,e,a,u,g,B)},R.prototype.md5_ii=function(e,a,n,c,u,g,B){return this.md5_cmn(n^(a|~c),e,a,u,g,B)},R.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,c,u,g,B,p=1732584193,A=-271733879,C=-1732584194,S=271733878;for(n=0;n>5]>>>a%32&255);return n},R.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(c=this.binl_md5(c,e.length*8)),n=0;n<16;n+=1)u[n]=c[n]^909522486,g[n]=c[n]^1549556828;return B=this.binl_md5(u.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(g.concat(B),512+128))},R.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",c,u;for(u=0;u>>4&15)+a.charAt(c&15);return n},R.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},R.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},R.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},R.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},R.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},R.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},d.exports&&(h=d.exports=r),h.Chance=r,typeof importScripts<"u"&&(chance=new r,self.Chance=r),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=r,window.chance=new r)})()})(ie,ie.exports);var ye=ie.exports;const Se=Ae(ye);var q=new Se;function ue(d,h,x,N){x==null&&console.log();let I=x.toUpperCase(),D=d.toUpperCase(),m=h.toUpperCase();if(N!=null&&0":s=="["?"]":s=="{"?"}":s=="("?")":s}}function h(I,D,m){for(var b=[],v=`(){}[]^-|!*+.><='",;:%@?/\\#~`+m,M=` -\r `,r=ee(I,v+M),s=0,i=0,t=0,o=0;o0&&(f=b[b.length-1]),l==` +(function(V,O){typeof exports=="object"&&typeof module<"u"?O(exports):typeof define=="function"&&define.amd?define(["exports"],O):(V=typeof globalThis<"u"?globalThis:V||self,O(V.quickSQL={}))})(this,function(V){"use strict";function O(m){return m==null?m:m.toUpperCase().endsWith("IES")?m.substring(0,m.length-3)+"y":m.toUpperCase().endsWith("ES")||m.toUpperCase().endsWith("S")?m.substring(0,m.length-1):m}function ve(m,f){let x='"';if(m==null)return null;let D=!1;const I="$#_ ";if(!m.startsWith(x)&&!D){const N=m;if(N.length>0&&"0"<=N[0]&&N[0]<="9")D=!0;else for(let g in N){const d=N[g];if(I.indexOf(d)<0&&(d<"0"||"9""u"&&(e[n]=a[n]);return e}function i(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var o=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?o=btoa:typeof Buffer=="function"&&(o=function(a){return new Buffer(a).toString("base64")})})(),r.prototype.bool=function(e){return e=s(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100c,"Chance: Max specified is out of range with fixed. Max should be, at most, "+c),e=s(e,{min:u,max:c}),a=this.integer({min:e.min*n,max:e.max*n});var C=(a/n).toFixed(e.fixed);return parseFloat(C)},r.prototype.integer=function(e){return e=s(e,{min:D,max:x}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},r.prototype.natural=function(e){if(e=s(e,{min:0,max:x}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),c=e.exclude.sort();for(var u in c){if(ne.max,"Chance: Min cannot be greater than Max.");var a=E.primes[E.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&E.primes.push(n);var c=E.primes.filter(function(u){return u>=e.min&&u<=e.max});return this.pick(c)},r.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},r.prototype.hex=function(e){e=s(e,{min:0,max:x,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},r.prototype.letter=function(e){e=s(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},r.prototype.string=function(e){e=s(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function h(e){this.c=e}h.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function y(e){this.c=e}y.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:g})},a:function(e){return e.character({pool:N})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function B(e){for(var a=[],n="identity",c=0;c"u")throw new p("Sorry, the buffer() function is not supported on your platform");e=s(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},r.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},r.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},r.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var c=function(M,F){return M.indexOf(F)!==-1};n&&(c=n.comparator||c);for(var u=[],C=0,P,b=a*50,A=S.call(arguments,2);u.lengthb)throw new RangeError("Chance: num is likely too large for sample set")}return u},r.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,c=[],u=S.call(arguments,2);for(n=Math.max(0,n),null;n--;null)c.push(e.apply(this,u));return c},r.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},r.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},r.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},r.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),c=n.length;return this.n(function(){var u=this.natural({max:--c}),C=n[u];return n[u]=n[c],C},Math.min(c,a))},r.prototype.shuffle=function(e){for(var a=[],n=0,c=Number(e.length),u=i(c),C=c-1,P,b=0;b0&&(c+=u)}if(c===0)throw new RangeError("Chance: No valid entries in array weights");var P=this.random()*c,b=0,A=-1,v;for(C=0;C0){if(P<=b){v=C;break}A=C}C===a.length-1&&(v=A)}var M=e[v];return n=typeof n>"u"?!1:n,n&&(e.splice(v,1),a.splice(v,1)),M},r.prototype.paragraph=function(e){e=s(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),c=e.linebreak===!0?` +`:" ";return n.join(c)},r.prototype.sentence=function(e){e=s(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,c,u=this.n(this.word,a);return c=u.join(" "),c=this.capitalize(c),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(c+=n),c},r.prototype.syllable=function(e){e=s(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",c="aeiou",u=n+c,C="",P,b=0;be.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var P=e.minAge!==void 0?e.minAge:0,b=e.maxAge!==void 0?e.maxAge:100,A=new Date(c-b-1,n.getMonth(),n.getDate()),v=new Date(c-P,n.getMonth(),n.getDate());A.setDate(A.getDate()+1),v.setDate(v.getDate()+1),v.setMilliseconds(v.getMilliseconds()-1),e=s(e,{min:A,max:v})}else e=s(e,{year:c-a});return this.date(e)},r.prototype.cpf=function(e){e=s(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var c=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;c=11-c%11,c>=10&&(c=0);var u=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+c;return e.formatted?u:u.replace(/\D/g,"")},r.prototype.cnpj=function(e){e=s(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var c=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;c=11-c%11,c<2&&(c=0);var u=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+c;return e.formatted?u:u.replace(/\D/g,"")},r.prototype.first=function(e){return e=s(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},r.prototype.profession=function(e){return e=s(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},r.prototype.company=function(){return this.pick(this.get("company"))},r.prototype.gender=function(e){return e=s(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},r.prototype.last=function(e){if(e=s(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(c){a=a.concat(n[c])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},r.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},r.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},r.prototype.tld=function(){return this.pick(this.tlds())},r.prototype.twitter=function(){return"@"+this.word()},r.prototype.url=function(e){e=s(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},r.prototype.port=function(){return this.integer({min:0,max:65535})},r.prototype.locale=function(e){return e=s(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},r.prototype.locales=function(e){return e=s(e),e.region?this.get("locale_regions"):this.get("locale_languages")},r.prototype.loremPicsum=function(e){e=s(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},r.prototype.address=function(e){return e=s(e),this.natural({min:5,max:2e3})+" "+this.street(e)},r.prototype.altitude=function(e){return e=s(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.areacode=function(e){e=s(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},r.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},r.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},r.prototype.countries=function(){return this.get("countries")},r.prototype.country=function(e){e=s(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},r.prototype.depth=function(e){return e=s(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.geohash=function(e){return e=s(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},r.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},r.prototype.latitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=s(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:c});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.longitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=s(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:c});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.phone=function(e){var a=this,n,c=function(F){var G=[];return F.sections.forEach(function(z){G.push(a.string({pool:"0123456789",length:z}))}),F.area+G.join(" ")};e=s(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var u;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),u=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),u=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),u=e.formatted?c(n):c(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),u=e.formatted?c(n):c(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n);break;case"us":var C=this.areacode(e).toString(),P=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),b=this.natural({min:1e3,max:9999}).toString();u=e.formatted?C+" "+P+"-"+b:C+P+b;break;case"br":var A=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),v;e.mobile?v="9"+a.string({pool:"0123456789",length:4}):v=this.natural({min:2e3,max:5999}).toString();var M=a.string({pool:"0123456789",length:4});u=e.formatted?"("+A+") "+v+"-"+M:A+v+M;break}return u},r.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},r.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",c=e+a+n,u=this.natural({max:9}),C=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),P=u+C;return c+" "+P},r.prototype.counties=function(e){return e=s(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},r.prototype.county=function(e){return this.pick(this.counties(e)).name},r.prototype.provinces=function(e){return e=s(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},r.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},r.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},r.prototype.states=function(e){e=s(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),c=this.get("territories"),u=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(c)),e.armed_forces&&(a=a.concat(u));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},r.prototype.street=function(e){e=s(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},r.prototype.street_suffix=function(e){return e=s(e,{country:"us"}),this.pick(this.street_suffixes(e))},r.prototype.street_suffixes=function(e){return e=s(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},r.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},r.prototype.ampm=function(){return this.bool()?"am":"pm"},r.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=s(e,{american:!0,string:!1});var c=typeof e.min<"u"?e.min.getTime():1,u=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:c,max:u}))}else{var C=this.month({raw:!0}),P=C.days;e&&e.month&&(P=this.get("months")[(e.month%12+12)%12].days),e=s(e,{year:parseInt(this.year(),10),month:C.numeric-1,day:this.natural({min:1,max:P}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},r.prototype.hammertime=function(e){return this.date(e).getTime()},r.prototype.hour=function(e){return e=s(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.millisecond=function(){return this.natural({max:999})},r.prototype.minute=r.prototype.second=function(e){return e=s(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.month=function(e){e=s(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},r.prototype.months=function(){return this.get("months")},r.prototype.second=function(){return this.natural({max:59})},r.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},r.prototype.weekday=function(e){e=s(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},r.prototype.year=function(e){return e=s(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},r.prototype.cc=function(e){e=s(e);var a,n,c;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),c=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,c,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},r.prototype.cc_types=function(){return this.get("cc_types")},r.prototype.cc_type=function(e){e=s(e);var a=this.cc_types(),n=null;if(e.name){for(var c=0;c3&&(F?G=G.substr(0,3):G=G[0]+G.substr(2,2)),G.length<3&&(z=G,G=M.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+G),z},A=function(M,F,G){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return M.getFullYear().toString().substr(2)+z[M.getMonth()]+G.pad(M.getDate()+(F.toLowerCase()==="female"?40:0),2)},v=function(M){for(var F="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",G="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(G[F.indexOf(M[U])]):K+=j.indexOf(G[F.indexOf(M[U])]);return z[K%26]};return P=P.concat(b(c,!0),b(n),A(u,a,this),C.toUpperCase().split("")).join(""),P+=v(P.toUpperCase()),P.toUpperCase()},r.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;u--)c[u-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?c.reduce(function(C,P){return C+P}):c}else throw new RangeError("Chance: A type of die roll must be included")},r.prototype.guid=function(e){e=s(e,{version:5});var a="abcdef1234567890",n="ab89",c=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return c},r.prototype.hash=function(e){e=s(e,{length:40,casing:"lower"});var a=e.casing==="upper"?d.toUpperCase():d;return this.string({pool:a,length:e.length})},r.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},r.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,c,u=0,C=a.length;C>u;++u)c=+a[u],u%2===0&&(c*=2,c>9&&(c-=9)),n+=c;return n*9%10},r.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=s(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},r.prototype.file=function(e){var a=e||{},n="fileExtension",c=Object.keys(this.get("fileExtension")),u,C;if(u=this.word({length:a.length}),a.extension)return C=a.extension,u+"."+C;if(a.extensions){if(Array.isArray(a.extensions))return C=this.pickone(a.extensions),u+"."+C;if(a.extensions.constructor===Object){var P=a.extensions,b=Object.keys(P);return C=this.pickone(P[this.pickone(b)]),u+"."+C}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var A=a.fileType;if(c.indexOf(A)!==-1)return C=this.pickone(this.get(n)[A]),u+"."+C;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return C=this.pickone(this.get(n)[this.pickone(c)]),u+"."+C},r.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var c={fileData:this.buffer({length:a.fileSize}),fileName:n};return c};var E={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},L=Object.prototype.hasOwnProperty,k=Object.keys||function(e){var a=[];for(var n in e)L.call(e,n)&&a.push(n);return a};function w(e,a){for(var n=k(e),c,u=0,C=n.length;u0)return this.normal_pool(e);var a,n,c,u,C=e.mean,P=e.dev;do n=this.random()*2-1,c=this.random()*2-1,a=n*n+c*c;while(a>=1);return u=n*Math.sqrt(-2*Math.log(a)/a),P*u+C},r.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},r.prototype.radio=function(e){e=s(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},r.prototype.set=function(e,a){typeof e=="string"?E[e]=a:E=_(e,E)},r.prototype.tv=function(e){return this.radio(e)},r.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},r.prototype.emotion=function(){return this.pick(this.get("emotions"))},r.prototype.mersenne_twister=function(e){return new W(e)},r.prototype.blueimp_md5=function(){return new R};var W=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};W.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},W.prototype.init_by_array=function(e,a){var n=1,c=0,u,C;for(this.init_genrand(19650218),u=this.N>a?this.N:a;u;u--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1664525<<16)+(C&65535)*1664525)+e[c]+c,this.mt[n]>>>=0,n++,c++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),c>=a&&(c=0);for(u=this.N-1;u;u--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1566083941<<16)+(C&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},W.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},W.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},W.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},W.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},W.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},W.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var R=function(){};R.prototype.VERSION="1.0.1",R.prototype.safe_add=function(a,n){var c=(a&65535)+(n&65535),u=(a>>16)+(n>>16)+(c>>16);return u<<16|c&65535},R.prototype.bit_roll=function(e,a){return e<>>32-a},R.prototype.md5_cmn=function(e,a,n,c,u,C){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(c,C)),u),n)},R.prototype.md5_ff=function(e,a,n,c,u,C,P){return this.md5_cmn(a&n|~a&c,e,a,u,C,P)},R.prototype.md5_gg=function(e,a,n,c,u,C,P){return this.md5_cmn(a&c|n&~c,e,a,u,C,P)},R.prototype.md5_hh=function(e,a,n,c,u,C,P){return this.md5_cmn(a^n^c,e,a,u,C,P)},R.prototype.md5_ii=function(e,a,n,c,u,C,P){return this.md5_cmn(n^(a|~c),e,a,u,C,P)},R.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,c,u,C,P,b=1732584193,A=-271733879,v=-1732584194,M=271733878;for(n=0;n>5]>>>a%32&255);return n},R.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(c=this.binl_md5(c,e.length*8)),n=0;n<16;n+=1)u[n]=c[n]^909522486,C[n]=c[n]^1549556828;return P=this.binl_md5(u.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(C.concat(P),512+128))},R.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",c,u;for(u=0;u>>4&15)+a.charAt(c&15);return n},R.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},R.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},R.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},R.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},R.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},R.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},m.exports&&(f=m.exports=r),f.Chance=r,typeof importScripts<"u"&&(chance=new r,self.Chance=r),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=r,window.chance=new r)})()})(ne,ne.exports);var ye=ne.exports;const Se=Ae(ye);function ue(m,f,x,D){var I=new Se(ie);x==null&&console.log();let N=x.toUpperCase(),g=m.toUpperCase(),d=f.toUpperCase();if(D!=null&&0":s=="["?"]":s=="{"?"}":s=="("?")":s}}function f(I,N,g){for(var d=[],p=`(){}[]^-|!*+.><='",;:%@?/\\#~`+g,S=` +\r `,r=$(I,p+S),s=0,i=0,t=0,o=0;o0&&(h=d[d.length-1]),l==` `?(i++,t=0):o>0&&r[o-1]!==` -`?t=t+r[o-1].length:t=0,s+=l.length,f!=null&&f.type=="comment"&&(f.value.lastIndexOf("*/")!=f.value.length-2||f.value=="/*/")){l=="*"||l=="/"?f.value=f.value+l:f.value="/* ... ",f.end=s,f!=null&&f.type=="comment"&&f.value.lastIndexOf("*/")==f.value.length-2&&f.value!="/*/"&&(f.value=I.substring(f.begin,f.end));continue}if(f!=null&&(f.type=="line-comment"||f.type=="dbtools-command")&&l!=` -`){f.value=f.value+l;continue}if(f!=null&&(f.type=="line-comment"||f.type=="dbtools-command")&&l==` -`&&(f.end=f.begin+f.value.length),f!=null&&f.type=="quoted-string"&&!(f.isStandardLiteral()||f.isAltLiteral())){f.value=f.value+l,f.end=f.begin+f.value.length;continue}if(!(f!=null&&f.type=="dquoted-string"&&l!='"'&&!(f.value.endsWith('"')&&f.value.length>1))){if(f!=null&&f.type=="dquoted-string"&&l=='"'){f.end=s,f.value=I.substring(f.begin,f.end);continue}if(!(f!=null&&f.type=="bquoted-string"&&l!="`"&&!(f.value.endsWith("`")&&f.value.length>1))){if(f!=null&&f.type=="bquoted-string"&&l=="`"){f.end=s,f.value=I.substring(f.begin,f.end);continue}if(l=="*"&&f!=null&&f.value=="/"){f.value=f.value+l,f.end=f.begin+f.value.length,f.type="comment";continue}if(l=="-"&&f!=null&&f.value=="-"){f.value=f.value+l,f.type="line-comment";continue}if((l.toUpperCase()=="REM"||l.toUpperCase()=="REMA"||l.toUpperCase()=="REMAR"||l.toUpperCase()=="REMARK"||l.toUpperCase()=="PRO"||l.toUpperCase()=="PROM"||l.toUpperCase()=="PROMP"||l.toUpperCase()=="PROMPT")&&(f==null||f.value==` -`||f.value=="\r")){b.push(new d(l,s-l.length,-9,"line-comment",i,t));continue}if(l.toUpperCase()=="SODA"&&(f==null||f.value==` -`||f.value=="\r")){b.push(new d(l,s-l.length,-9,"dbtools-command",i,t));continue}if(f!=null&&f.type=="identifier"&&f.end==-11&&f.value.indexOf("@")==0&&!(l==` -`||l=="\r")){f.value=f.value+l;continue}if(f!=null&&f.type=="identifier"&&f.end==-11&&f.value.indexOf("@")==0&&(l==` -`||l=="\r")){f.end=s-1,b.push(new d(l,s-1,s,"ws",i,t));continue}if(D&&l=="'"){f!=null&&(f.value.toUpperCase()=="Q"||f.value.toUpperCase()=="N"||f.value.toUpperCase()=="U"||f.value.toUpperCase()=="NQ")?(f.value+=l,f.type="quoted-string"):b.push(new d(l,s-1,-10,"quoted-string",i,t));continue}if(D&&l=='"'){b.push(new d(l,s-1,-11,"dquoted-string",i,t));continue}if(l=="`"&&0<=v.indexOf("`")){b.push(new d(l,s-1,-11,"bquoted-string",i,t));continue}if(l.length==1&&0<=v.indexOf(l)){b.push(new d(l,s-1,s,"operation",i,t));continue}if(l.length==1&&0<=M.indexOf(l)){b.push(new d(l,s-1,s,"ws",i,t));continue}if("0"<=l.charAt(0)&&l.charAt(0)<="9"){x(l,b,s-l.length,i)||(l.charAt(l.length-1)=="K"||l.charAt(l.length-1)=="k"||l.charAt(l.length-1)=="M"||l.charAt(l.length-1)=="m"||l.charAt(l.length-1)=="G"||l.charAt(l.length-1)=="g"||l.charAt(l.length-1)=="T"||l.charAt(l.length-1)=="t"||l.charAt(l.length-1)=="P"||l.charAt(l.length-1)=="p"||l.charAt(l.length-1)=="E"||l.charAt(l.length-1)=="e"?(b.push(new d(l.substring(0,l.length-1),s-l.length,s-1,"constant.numeric",i,t)),b.push(new d(l.substring(l.length-1),s-1,s,"constant.numeric",i,t))):b.push(new d(l,s-l.length,s,"constant.numeric",i,t)));continue}var y="identifier";o+10){var f=b[b.length-1];f.end=I.length}return b}function x(I,D,m,b){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var v=ee(I,"efd"),M=0;M")==0||i.indexOf("<")==0)&&(i=i.substring(1).trim());const l=i.toLowerCase();if(l.indexOf("view ")==0){var f=i.split(" ");return f[1]}i=m(i," d");var y=i.indexOf("/");0="0"&&P<="9"&&(i="x"+i),Te(se(i))},this.parseType=function(i){if(this.children!=null&&0!0)),w}return y}0");return t==0},this.getExplicitPkNode=function(){for(var i=0;ii.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(d.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),d.optionEQvalue("prefixPKwithTname","yes")&&(t=O(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let i=this.getGenIdColName();if(i==null){let t=this.getExplicitPkNode();return t==null?null:t.parseName()}return i},this.singleDDL=function(){if(this.children.length==0&&01))){if(h!=null&&h.type=="dquoted-string"&&l=='"'){h.end=s,h.value=I.substring(h.begin,h.end);continue}if(!(h!=null&&h.type=="bquoted-string"&&l!="`"&&!(h.value.endsWith("`")&&h.value.length>1))){if(h!=null&&h.type=="bquoted-string"&&l=="`"){h.end=s,h.value=I.substring(h.begin,h.end);continue}if(l=="*"&&h!=null&&h.value=="/"){h.value=h.value+l,h.end=h.begin+h.value.length,h.type="comment";continue}if(l=="-"&&h!=null&&h.value=="-"){h.value=h.value+l,h.type="line-comment";continue}if((l.toUpperCase()=="REM"||l.toUpperCase()=="REMA"||l.toUpperCase()=="REMAR"||l.toUpperCase()=="REMARK"||l.toUpperCase()=="PRO"||l.toUpperCase()=="PROM"||l.toUpperCase()=="PROMP"||l.toUpperCase()=="PROMPT")&&(h==null||h.value==` +`||h.value=="\r")){d.push(new m(l,s-l.length,-9,"line-comment",i,t));continue}if(l.toUpperCase()=="SODA"&&(h==null||h.value==` +`||h.value=="\r")){d.push(new m(l,s-l.length,-9,"dbtools-command",i,t));continue}if(h!=null&&h.type=="identifier"&&h.end==-11&&h.value.indexOf("@")==0&&!(l==` +`||l=="\r")){h.value=h.value+l;continue}if(h!=null&&h.type=="identifier"&&h.end==-11&&h.value.indexOf("@")==0&&(l==` +`||l=="\r")){h.end=s-1,d.push(new m(l,s-1,s,"ws",i,t));continue}if(N&&l=="'"){h!=null&&(h.value.toUpperCase()=="Q"||h.value.toUpperCase()=="N"||h.value.toUpperCase()=="U"||h.value.toUpperCase()=="NQ")?(h.value+=l,h.type="quoted-string"):d.push(new m(l,s-1,-10,"quoted-string",i,t));continue}if(N&&l=='"'){d.push(new m(l,s-1,-11,"dquoted-string",i,t));continue}if(l=="`"&&0<=p.indexOf("`")){d.push(new m(l,s-1,-11,"bquoted-string",i,t));continue}if(l.length==1&&0<=p.indexOf(l)){d.push(new m(l,s-1,s,"operation",i,t));continue}if(l.length==1&&0<=S.indexOf(l)){d.push(new m(l,s-1,s,"ws",i,t));continue}if("0"<=l.charAt(0)&&l.charAt(0)<="9"){x(l,d,s-l.length,i)||(l.charAt(l.length-1)=="K"||l.charAt(l.length-1)=="k"||l.charAt(l.length-1)=="M"||l.charAt(l.length-1)=="m"||l.charAt(l.length-1)=="G"||l.charAt(l.length-1)=="g"||l.charAt(l.length-1)=="T"||l.charAt(l.length-1)=="t"||l.charAt(l.length-1)=="P"||l.charAt(l.length-1)=="p"||l.charAt(l.length-1)=="E"||l.charAt(l.length-1)=="e"?(d.push(new m(l.substring(0,l.length-1),s-l.length,s-1,"constant.numeric",i,t)),d.push(new m(l.substring(l.length-1),s-1,s,"constant.numeric",i,t))):d.push(new m(l,s-l.length,s,"constant.numeric",i,t)));continue}var y="identifier";o+10){var h=d[d.length-1];h.end=I.length}return d}function x(I,N,g,d){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var p=$(I,"efd"),S=0;S")==0||i.indexOf("<")==0)&&(i=i.substring(1).trim());const l=i.toLowerCase();if(l.indexOf("view ")==0){var h=i.split(" ");return h[1]}i=g(i," d");var y=i.indexOf("/");0="0"&&B<="9"&&(i="x"+i),Te(se(i))},this.parseType=function(i){if(this.children!=null&&0!0)),w}return y}0");return t==0},this.getExplicitPkNode=function(){for(var i=0;ii.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(m.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),m.optionEQvalue("prefixPKwithTname","yes")&&(t=O(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let i=this.getGenIdColName();if(i==null){let t=this.getExplicitPkNode();return t==null?null:t.parseName()}return i},this.singleDDL=function(){if(this.children.length==0&&0!0):u==null&&(u=d.find(a),u.isMany2One()&!a.endsWith("_id")&&(n=a,a=O(a),g="_id")),f=h+" ".repeat(this.maxChildNameLen()-a.length),o+=h+a+g+f+c+` -`,o+=h+h+" ".repeat(this.maxChildNameLen())+"constraint "+l+"_"+a+`_fk -`;let B="";0<=i.indexOf("/CASCADE")&&(B=" on delete cascade");let p="";for(let A in this.children){let C=this.children[A];if(a==C.parseName()){let S=C.trimmedContent().toUpperCase();(0<=S.indexOf("/NN")||0<=S.indexOf("/NOTNULL"))&&(p=" NOT NULL".toLowerCase()),0<=S.indexOf("/CASCADE")&&(B=" on delete cascade");break}}o+=h+h+" ".repeat(this.maxChildNameLen())+"references "+d.objPrefix()+n+B+p+`, -`}if(d.optionEQvalue("rowkey",!0)||0!0):u==null&&(u=m.find(a),u.isMany2One()&!a.endsWith("_id")&&(n=a,a=O(a),C="_id")),h=f+" ".repeat(this.maxChildNameLen()-a.length),o+=f+a+C+h+c+` +`,o+=f+f+" ".repeat(this.maxChildNameLen())+"constraint "+l+"_"+a+`_fk +`;let P="";0<=i.indexOf("/CASCADE")&&(P=" on delete cascade");let b="";for(let A in this.children){let v=this.children[A];if(a==v.parseName()){let M=v.trimmedContent().toUpperCase();(0<=M.indexOf("/NN")||0<=M.indexOf("/NOTNULL"))&&(b=" NOT NULL".toLowerCase()),0<=M.indexOf("/CASCADE")&&(P=" on delete cascade");break}}o+=f+f+" ".repeat(this.maxChildNameLen())+"references "+m.objPrefix()+n+P+b+`, +`}if(m.optionEQvalue("rowkey",!0)||0TRUE, p_object=>'"+f+`'); +`,l.toLowerCase()},this.restEnable=function(){if(this.parseType()!="table"||this.trimmedContent().toUpperCase().indexOf("/REST")<0)return"";let o=this.parseName();const l=o.indexOf('"')==0;let h=m.objPrefix()+o;return l?h=m.objPrefix()+o.substring(1,o.length-1):h=(m.objPrefix()+o).toUpperCase(),`begin +`+f+"ords.enable_object(p_enabled=>TRUE, p_object=>'"+h+`'); end; / -`},this.generateTrigger=function(){if(this.parseType()!="table")return"";let i="";d.optionEQvalue("editionable","yes")&&(i=" editionable");let t=d.objPrefix()+this.parseName();var o="create or replace"+i+" trigger "+t.toLowerCase()+`_BIU +`},this.generateTrigger=function(){if(this.parseType()!="table")return"";let i="";m.optionEQvalue("editionable","yes")&&(i=" editionable");let t=m.objPrefix()+this.parseName();var o="create or replace"+i+" trigger "+t.toLowerCase()+`_BIU `.toLowerCase();o+=` before insert or update `,o+=" on "+t.toLowerCase()+` `,o+=` for each row -`;let l=this.trimmedContent().toUpperCase();(d.optionEQvalue("Rowkey","yes")||0!0)),l+=`, -`,l+=h+h+"P_"+f+" "+o+" "+T+t}for(let P=0;P!0),(i=="insert"||i=="update")&&(o+=`, -`);let k=h+h+h+"P_"+T+" := c1."+T+`; -`;i=="insert"&&(k=h+h+h+T),i=="update"&&(k=h+h+h+T+" = P_"+T+` -`),o+=k}for(var f=0;f!0)),l+=`, +`,l+=f+f+"P_"+h+" "+o+" "+T+t}for(let B=0;B!0),(i=="insert"||i=="update")&&(o+=`, +`);let k=f+f+f+"P_"+T+" := c1."+T+`; +`;i=="insert"&&(k=f+f+f+T),i=="update"&&(k=f+f+f+T+" = P_"+T+` +`),o+=k}for(var h=0;ho.children.length>0&&o.parseName()==t&&!o.isArray())},this.generateSelectJsonBottomUp=function(i){throw new Error("generateSelectJsonBottomUp() not implemented yet")},this.one2many2oneUnsupoported="one to many to one is not supported",this.generateSelectJsonTopDown=function(i){var t=this.parseName();let o="";this.getExplicitPkNode==null&&(o+=i+"'"+this.getGenIdColName()+"' : "+t+"."+this.getGenIdColName()+`, -`);for(var l=0;lo.children.length>0&&o.parseName()==t&&!o.isArray())},this.generateSelectJsonBottomUp=function(i){throw new Error("generateSelectJsonBottomUp() not implemented yet")},this.one2many2oneUnsupoported="one to many to one is not supported",this.generateSelectJsonTopDown=function(i){var t=this.parseName();let o="";this.getExplicitPkNode==null&&(o+=i+"'"+this.getGenIdColName()+"' : "+t+"."+this.getGenIdColName()+`, +`);for(var l=0;l"),0"),0!0)}),0!0)}),0--"),M=M.replace(/\/* Non-default options:/g,""),m+=M,m+=` -`;for(let r=0;r--"),S=S.replace(/\/* Non-default options:/g,""),g+=S,g+=` +`;for(let r=0;rbatters /insert 3 + donut_batters /insert 3 + >batters /insert 2 id /pk type - donut_toppings /insert 7 - >toppings /insert 4 + donut_toppings /insert 3 + >toppings /insert 2 id vc100 /pk type diff --git a/test/star/donuts.sql b/test/star/donuts.sql index b918264..601492e 100644 --- a/test/star/donuts.sql +++ b/test/star/donuts.sql @@ -68,20 +68,6 @@ insert into toppings ( 2, 'N/A' ); -insert into toppings ( - id, - type -) values ( - 3, - 'N/A' -); -insert into toppings ( - id, - type -) values ( - 4, - 'N/A' -); commit; @@ -99,13 +85,6 @@ insert into batters ( 2, 'N/A' ); -insert into batters ( - id, - type -) values ( - 3, - 'N/A' -); commit; @@ -126,13 +105,6 @@ insert into donuts ( commit; -insert into donut_batters ( - batters_id, - donut_id -) values ( - 2, - 1 -); insert into donut_batters ( batters_id, donut_id @@ -151,14 +123,7 @@ insert into donut_batters ( batters_id, donut_id ) values ( - 3, - 2 -); -insert into donut_batters ( - batters_id, - donut_id -) values ( - 3, + 2, 2 ); @@ -168,21 +133,7 @@ insert into donut_toppings ( toppings_id, donut_id ) values ( - 3, - 2 -); -insert into donut_toppings ( - toppings_id, - donut_id -) values ( - 4, - 2 -); -insert into donut_toppings ( - toppings_id, - donut_id -) values ( - 4, + 2, 2 ); insert into donut_toppings ( @@ -190,27 +141,13 @@ insert into donut_toppings ( donut_id ) values ( 1, - 1 -); -insert into donut_toppings ( - toppings_id, - donut_id -) values ( - 3, 2 ); insert into donut_toppings ( toppings_id, donut_id ) values ( - 2, - 1 -); -insert into donut_toppings ( - toppings_id, - donut_id -) values ( - 3, + 1, 1 ); diff --git a/test/star/sales_product_customers.sql b/test/star/sales_product_customers.sql index a54eef8..e4c8fc9 100644 --- a/test/star/sales_product_customers.sql +++ b/test/star/sales_product_customers.sql @@ -21,7 +21,7 @@ create table sales ( customers_id number constraint sales_customers_id_fk references customers, - quantity varchar2(4000 char) + quantity number ); -- table index @@ -44,7 +44,7 @@ insert into customers ( first_name ) values ( 1, - 'Cornelia' + 'Aaron' ); commit; @@ -54,13 +54,11 @@ insert into product ( name ) values ( 1, - 'Matilda Spencer' + 'Aaron Erickson' ); commit; - - insert into sales ( id, product_id, @@ -68,9 +66,9 @@ insert into sales ( quantity ) values ( 1, - 7, - 52, - 'N/A' + 1, + 1, + 20 ); insert into sales ( id, @@ -79,13 +77,14 @@ insert into sales ( quantity ) values ( 2, - 10, - 90, - 'N/A' + 1, + 1, + 84 ); commit; + alter table sales modify id generated always as identity restart start with 3; From 85fe6233cab0f3d673553e4892e78898903b2fce Mon Sep 17 00:00:00 2001 From: Vadim Tropashko Date: Fri, 19 Jan 2024 13:54:50 -0800 Subject: [PATCH 10/22] issue 42 --- dist/quick-sql.js | 7 +- dist/quick-sql.umd.cjs | 4 +- src/tree.js | 25 +- test/experimental/car_racing/2.json | 17 +- test/experimental/car_racing/2.qsql | 172 +++++++++++--- test/experimental/car_racing/2.sql | 340 +++++++++++++++++++++++----- test/single_test.js | 6 +- test/small_tests.js | 9 +- 8 files changed, 460 insertions(+), 120 deletions(-) diff --git a/dist/quick-sql.js b/dist/quick-sql.js index 3890bb3..be1f1a4 100644 --- a/dist/quick-sql.js +++ b/dist/quick-sql.js @@ -7615,16 +7615,16 @@ let ce = function() { } this.content = s(S), this.comment, this.indexOf = function(i, t) { for (let o = 0; o < this.src.length; o++) { - if (t && this.src[o].value.indexOf(i) == 0) + if (t && this.src[o].value.toLowerCase().indexOf(i.toLowerCase()) == 0) return o; - if (i == this.src[o].value) + if (i.toLowerCase() == this.src[o].value.toLowerCase()) return o; } return -1; }, this.trimmedContent = function() { var i = this.content.trim(), t = i.indexOf("["), o = i.indexOf("]"); return this.comment == null && 0 < t && (this.comment = i.substr(t + 1, o - t - 1)), 0 < t && (i = i.substr(0, t) + i.substr(o + 2)), t = i.indexOf("--"), this.comment == null && 0 < t && (this.comment = i.substr(t + 2)), 0 < t && (i = i.substr(0, t)), i.trim(); - }, this.src = Z(this.content.toLowerCase(), !1, !0, ""), this.parseName = function() { + }, this.src = Z(this.content, !1, !0, ""), this.parseName = function() { let i = this.trimmedContent(); i = i.replace(/\t/, f); const t = i.indexOf('"'), o = i.indexOf('"', t + 1); @@ -8512,7 +8512,6 @@ modify ` + h + " generated always as identity restart start with " + (this.card if (T += x.value, T == "=" || T.charAt(T.length - 1) != "}") continue; let w = T.substring(1); - w.length == 57 && w.length == 57; try { m.data = JSON.parse(w), t = null, o = ""; continue e; diff --git a/dist/quick-sql.umd.cjs b/dist/quick-sql.umd.cjs index e3b424e..a7cfa1c 100644 --- a/dist/quick-sql.umd.cjs +++ b/dist/quick-sql.umd.cjs @@ -8,7 +8,7 @@ `||h.value=="\r")){d.push(new m(l,s-l.length,-9,"line-comment",i,t));continue}if(l.toUpperCase()=="SODA"&&(h==null||h.value==` `||h.value=="\r")){d.push(new m(l,s-l.length,-9,"dbtools-command",i,t));continue}if(h!=null&&h.type=="identifier"&&h.end==-11&&h.value.indexOf("@")==0&&!(l==` `||l=="\r")){h.value=h.value+l;continue}if(h!=null&&h.type=="identifier"&&h.end==-11&&h.value.indexOf("@")==0&&(l==` -`||l=="\r")){h.end=s-1,d.push(new m(l,s-1,s,"ws",i,t));continue}if(N&&l=="'"){h!=null&&(h.value.toUpperCase()=="Q"||h.value.toUpperCase()=="N"||h.value.toUpperCase()=="U"||h.value.toUpperCase()=="NQ")?(h.value+=l,h.type="quoted-string"):d.push(new m(l,s-1,-10,"quoted-string",i,t));continue}if(N&&l=='"'){d.push(new m(l,s-1,-11,"dquoted-string",i,t));continue}if(l=="`"&&0<=p.indexOf("`")){d.push(new m(l,s-1,-11,"bquoted-string",i,t));continue}if(l.length==1&&0<=p.indexOf(l)){d.push(new m(l,s-1,s,"operation",i,t));continue}if(l.length==1&&0<=S.indexOf(l)){d.push(new m(l,s-1,s,"ws",i,t));continue}if("0"<=l.charAt(0)&&l.charAt(0)<="9"){x(l,d,s-l.length,i)||(l.charAt(l.length-1)=="K"||l.charAt(l.length-1)=="k"||l.charAt(l.length-1)=="M"||l.charAt(l.length-1)=="m"||l.charAt(l.length-1)=="G"||l.charAt(l.length-1)=="g"||l.charAt(l.length-1)=="T"||l.charAt(l.length-1)=="t"||l.charAt(l.length-1)=="P"||l.charAt(l.length-1)=="p"||l.charAt(l.length-1)=="E"||l.charAt(l.length-1)=="e"?(d.push(new m(l.substring(0,l.length-1),s-l.length,s-1,"constant.numeric",i,t)),d.push(new m(l.substring(l.length-1),s-1,s,"constant.numeric",i,t))):d.push(new m(l,s-l.length,s,"constant.numeric",i,t)));continue}var y="identifier";o+10){var h=d[d.length-1];h.end=I.length}return d}function x(I,N,g,d){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var p=$(I,"efd"),S=0;S")==0||i.indexOf("<")==0)&&(i=i.substring(1).trim());const l=i.toLowerCase();if(l.indexOf("view ")==0){var h=i.split(" ");return h[1]}i=g(i," d");var y=i.indexOf("/");0="0"&&B<="9"&&(i="x"+i),Te(se(i))},this.parseType=function(i){if(this.children!=null&&00){var h=d[d.length-1];h.end=I.length}return d}function x(I,N,g,d){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var p=$(I,"efd"),S=0;S")==0||i.indexOf("<")==0)&&(i=i.substring(1).trim());const l=i.toLowerCase();if(l.indexOf("view ")==0){var h=i.split(" ");return h[1]}i=g(i," d");var y=i.indexOf("/");0="0"&&B<="9"&&(i="x"+i),Te(se(i))},this.parseType=function(i){if(this.children!=null&&0!0)),w}return y}0 teamInfo /insert 1 - teamId num /pk - name - race /insert 2 + driver_teamInfo /insert 2 + >teamInfo /insert 1 + teamId num /pk + name vc + race /insert 4 driverRaceMapId num /pk - > raceInfo /insert 2 - raceId num /pk - name + race_raceInfo /insert 4 + >raceInfo /insert 3 + raceId num /pk + name vc finalPosition num -dv driver_dv driver +#settings = { genpk: false, drop: true } -#settings = { genpk: false, drop:true } - --- Generated by json2qsql.js development 10/4/2023, 1:00:38 PM - -#document = +#flattened = { - "driverId": 101, - "name": "Max Verstappen", - "points": 258, - "teamInfo": { - "teamId": 301, - "name": "Red Bull" - }, + "driver_teamInfo": [ + { + "driver_id": 101, + "teamInfo_id": 301 + }, + { + "driver_id": 102, + "teamInfo_id": 301 + } + ], + "teamInfo": [ + { + "teamId": 301, + "name": "Red Bull" + } + ], + "race_raceInfo": [ + { + "race_id": 3, + "raceInfo_id": 201 + }, + { + "race_id": 11, + "raceInfo_id": 202 + }, + { + "race_id": 4, + "raceInfo_id": 201 + }, + { + "race_id": 12, + "raceInfo_id": 203 + } + ], + "raceInfo": [ + { + "raceId": 201, + "name": "Bahrain Grand Prix" + }, + { + "raceId": 202, + "name": "Saudi Arabian Grand Prix" + }, + { + "raceId": 203, + "name": "Monaco Grand Prix" + } + ], "race": [ { "driverRaceMapId": 3, - "raceInfo": { - "raceId": 201, - "name": "Bahrain Grand Prix" - }, "finalPosition": 19 }, { "driverRaceMapId": 11, - "raceInfo": { - "raceId": 202, - "name": "Saudi Arabian Grand Prix" - }, "finalPosition": 1 + }, + { + "driverRaceMapId": 4, + "finalPosition": 20 + }, + { + "driverRaceMapId": 12, + "finalPosition": 2 + } + ], + "driver": [ + { + "driverId": 101, + "name": "Max Verstappen", + "points": 258 + }, + { + "driverId": 102, + "name": "", + "points": 258 } ] } + + +-- Generated by json2qsql.js development 1/19/2024, 1:32:29 PM + +#document = +[ + { + "driverId": 101, + "name": "Max Verstappen", + "points": 258, + "teamInfo": { + "teamId": 301, + "name": "Red Bull" + }, + "race": [ + { + "driverRaceMapId": 3, + "raceInfo": { + "raceId": 201, + "name": "Bahrain Grand Prix" + }, + "finalPosition": 19 + }, + { + "driverRaceMapId": 11, + "raceInfo": { + "raceId": 202, + "name": "Saudi Arabian Grand Prix" + }, + "finalPosition": 1 + } + ] + }, + { + "driverId": 102, + "name": "", + "points": 258, + "teamInfo": { + "teamId": 301, + "name": "Red Bull" + }, + "race": [ + { + "driverRaceMapId": 4, + "raceInfo": { + "raceId": 201, + "name": "Bahrain Grand Prix" + }, + "finalPosition": 20 + }, + { + "driverRaceMapId": 12, + "raceInfo": { + "raceId": 203, + "name": "Monaco Grand Prix" + }, + "finalPosition": 2 + } + ] + } +] diff --git a/test/experimental/car_racing/2.sql b/test/experimental/car_racing/2.sql index 83ef36e..6e7da6a 100644 --- a/test/experimental/car_racing/2.sql +++ b/test/experimental/car_racing/2.sql @@ -1,44 +1,51 @@ drop table driver cascade constraints; +drop table driver_teaminfo cascade constraints; drop table teaminfo cascade constraints; drop table race cascade constraints; +drop table race_raceinfo cascade constraints; drop table raceinfo cascade constraints; -- create tables create table raceInfo ( raceId number generated by default on null as identity - constraint raceInfo_raceId_pk primary key, + constraint raceinfo_raceid_pk primary key, name varchar2(255 char) ); + create table teamInfo ( teamId number generated by default on null as identity - constraint teamInfo_teamId_pk primary key, + constraint teaminfo_teamid_pk primary key, name varchar2(255 char) ); create table driver ( - driverId number generated by default on null as identity - constraint driver_driverId_pk primary key, + driverId number generated by default on null as identity + constraint driver_driverid_pk primary key, + name varchar2(255 char), + points number +); + + +create table driver_teamInfo ( teamInfo_id number - constraint driver_teamInfo_id_fk + constraint driver_teamInfo_teamInfo_id_fk references teamInfo, - name varchar2(255 char), - points number + driver_id number + constraint driver_teamInfo_driver_id_fk + references driver ); -- table index -create index driver_i1 on driver (teamInfo_id); - +create index driver_teamInfo_i1 on driver_teamInfo (teamInfo_id); +create index driver_teamInfo_i2 on driver_teamInfo (driver_id); create table race ( driverRaceMapId number generated by default on null as identity - constraint race_driverRaceMapId_pk primary key, - raceInfo_id number - constraint race_raceInfo_id_fk - references raceInfo, + constraint race_driverracemapid_pk primary key, driver_id number constraint race_driver_id_fk references driver, @@ -46,44 +53,23 @@ create table race ( ); -- table index -create index race_i1 on race (raceInfo_id); - -create index race_i2 on race (driver_id); - - +create index race_i1 on race (driver_id); +create table race_raceInfo ( + raceInfo_id number + constraint race_raceInfo_raceInfo_id_fk + references raceInfo, + race_id number + constraint race_raceInfo_race_id_fk + references race +); +-- table index +create index race_raceInfo_i1 on race_raceInfo (raceInfo_id); +create index race_raceInfo_i2 on race_raceInfo (race_id); --- create views -create or replace json relational duality view driver_dv as -select JSON { - 'driverId' : driver.driverId, - 'name' : driver.name, - 'points' : driver.points, - 'teamInfo' : [ - select JSON { - 'teamId' : teamInfo.teamId, - 'name' : teamInfo.name - WITH NOCHECK } from teamInfo with INSERT UPDATE - where teamInfo.null = driver.driverId - ], - 'race' : [ - select JSON { - 'driverRaceMapId' : race.driverRaceMapId, - 'raceInfo' : [ - select JSON { - 'raceId' : raceInfo.raceId, - 'name' : raceInfo.name - WITH NOCHECK } from raceInfo with INSERT UPDATE - where raceInfo.null = race.driverRaceMapId - ], - 'finalPosition' : race.finalPosition - WITH NOCHECK } from race with INSERT UPDATE - where race.driver_id = driver.driverId - ] -} from driver with INSERT UPDATE DELETE; -- load data @@ -95,7 +81,6 @@ insert into raceInfo ( 201, 'Bahrain Grand Prix' ); - insert into raceInfo ( raceId, name @@ -103,6 +88,13 @@ insert into raceInfo ( 202, 'Saudi Arabian Grand Prix' ); +insert into raceInfo ( + raceId, + name +) values ( + 203, + 'Monaco Grand Prix' +); commit; @@ -118,46 +110,282 @@ commit; insert into driver ( driverId, - teamInfo_id, name, points ) values ( 101, - 301, 'Max Verstappen', 258 ); +insert into driver ( + driverId, + name, + points +) values ( + 102, + '', + 258 +); +commit; +insert into driver_teamInfo ( + teamInfo_id, + driver_id +) values ( + 301, + 101 +); +insert into driver_teamInfo ( + teamInfo_id, + driver_id +) values ( + 301, + 102 +); commit; insert into race ( driverRaceMapId, - raceInfo_id, driver_id, finalPosition ) values ( 3, - 201, - 101, + 2, 19 ); insert into race ( driverRaceMapId, - raceInfo_id, driver_id, finalPosition ) values ( 11, - 202, - 101, + 1, 1 ); - +insert into race ( + driverRaceMapId, + driver_id, + finalPosition +) values ( + 4, + 1, + 20 +); +insert into race ( + driverRaceMapId, + driver_id, + finalPosition +) values ( + 12, + 2, + 2 +); commit; +insert into race_raceInfo ( + raceInfo_id, + race_id +) values ( + 201, + 3 +); +insert into race_raceInfo ( + raceInfo_id, + race_id +) values ( + 202, + 11 +); +insert into race_raceInfo ( + raceInfo_id, + race_id +) values ( + 201, + 4 +); +insert into race_raceInfo ( + raceInfo_id, + race_id +) values ( + 203, + 12 +); +commit; +-- Generated by Quick SQL development 1/17/2024, 4:48:01 PM + +/* +driver /insert 2 + driverId num /pk + name vc + points num + driver_teamInfo /insert 2 + >teamInfo /insert 1 + teamId num /pk + name vc + race /insert 4 + driverRaceMapId num /pk + race_raceInfo /insert 4 + >raceInfo /insert 3 + raceId num /pk + name vc + finalPosition num + + + + + + +{ + "driver_teamInfo": [ + { + "driver_id": 101, + "teamInfo_id": 301 + }, + { + "driver_id": 102, + "teamInfo_id": 301 + } + ], + "teamInfo": [ + { + "teamId": 301, + "name": "Red Bull" + } + ], + "race_raceInfo": [ + { + "race_id": 3, + "raceInfo_id": 201 + }, + { + "race_id": 11, + "raceInfo_id": 202 + }, + { + "race_id": 4, + "raceInfo_id": 201 + }, + { + "race_id": 12, + "raceInfo_id": 203 + } + ], + "raceInfo": [ + { + "raceId": 201, + "name": "Bahrain Grand Prix" + }, + { + "raceId": 202, + "name": "Saudi Arabian Grand Prix" + }, + { + "raceId": 203, + "name": "Monaco Grand Prix" + } + ], + "race": [ + { + "driverRaceMapId": 3, + "finalPosition": 19 + }, + { + "driverRaceMapId": 11, + "finalPosition": 1 + }, + { + "driverRaceMapId": 4, + "finalPosition": 20 + }, + { + "driverRaceMapId": 12, + "finalPosition": 2 + } + ], + "driver": [ + { + "driverId": 101, + "name": "Max Verstappen", + "points": 258 + }, + { + "driverId": 102, + "name": "", + "points": 258 + } + ] +} + + +-- Generated by json2qsql.js development 1/17/2024, 4:48:01 PM + + + +[ + { + "driverId": 101, + "name": "Max Verstappen", + "points": 258, + "teamInfo": { + "teamId": 301, + "name": "Red Bull" + }, + "race": [ + { + "driverRaceMapId": 3, + "raceInfo": { + "raceId": 201, + "name": "Bahrain Grand Prix" + }, + "finalPosition": 19 + }, + { + "driverRaceMapId": 11, + "raceInfo": { + "raceId": 202, + "name": "Saudi Arabian Grand Prix" + }, + "finalPosition": 1 + } + ] + }, + { + "driverId": 102, + "name": "", + "points": 258, + "teamInfo": { + "teamId": 301, + "name": "Red Bull" + }, + "race": [ + { + "driverRaceMapId": 4, + "raceInfo": { + "raceId": 201, + "name": "Bahrain Grand Prix" + }, + "finalPosition": 20 + }, + { + "driverRaceMapId": 12, + "raceInfo": { + "raceId": 203, + "name": "Monaco Grand Prix" + }, + "finalPosition": 2 + } + ] + } +] + + + Non-default options: +# settings = {"genpk":false,"drop":true} + +*/ \ No newline at end of file diff --git a/test/single_test.js b/test/single_test.js index 02ebd60..b5a7e88 100644 --- a/test/single_test.js +++ b/test/single_test.js @@ -3,10 +3,10 @@ import {quicksql,fromJSON} from "../src/ddl.js"; import fs from "fs"; try { - let file = '//Bug35756025/1.qsql'; + let file = '//bugs/35923103.qsql'; //file = '//DV/car_racing/2.qsql'; - file = '//star/sales_product_customers.qsql'; - //file = '//experimental/car_racing/1.json'; + //file = '//star/sales_product_customers.qsql'; + //file = '//experimental/car_racing/2.json'; let args = process.argv.slice(2); if( 0 < args.length ) diff --git a/test/small_tests.js b/test/small_tests.js index 02ab8aa..f59ce6a 100644 --- a/test/small_tests.js +++ b/test/small_tests.js @@ -533,8 +533,15 @@ students name `).getDDL(); + assert( "0 < output.indexOf('drop sequence students_seq')" ); + + // https://github.com/oracle/quicksql/issues/42 + output = new quicksql( `test + approved boolean /default N + `).getDDL(); + //console.log(output); - assert( "0 < output.indexOf('drop sequence students_seq')" ); + assert( "0 < output.indexOf(\"default on null 'N'\")" ); } From 66a58fc6cb4d5a6756916cd01e8e81b8e6b8af57 Mon Sep 17 00:00:00 2001 From: Vadim Tropashko Date: Fri, 19 Jan 2024 16:20:17 -0800 Subject: [PATCH 11/22] issue 43 --- dist/quick-sql.js | 262 +++++++++++++++++++++-------------------- dist/quick-sql.umd.cjs | 74 ++++++------ src/tree.js | 38 +++--- test/single_test.js | 2 +- test/small_tests.js | 11 +- 5 files changed, 203 insertions(+), 184 deletions(-) diff --git a/dist/quick-sql.js b/dist/quick-sql.js index be1f1a4..580352e 100644 --- a/dist/quick-sql.js +++ b/dist/quick-sql.js @@ -200,11 +200,11 @@ var ie = { exports: {} }; return this.integer(e); }, r.prototype.prime = function(e) { e = s(e, { min: 0, max: 1e4 }), t(e.min < 0, "Chance: Min cannot be less than zero."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); - var a = E.primes[E.primes.length - 1]; + var a = P.primes[P.primes.length - 1]; if (e.max > a) for (var n = a + 2; n <= e.max; ++n) - this.is_prime(n) && E.primes.push(n); - var c = E.primes.filter(function(u) { + this.is_prime(n) && P.primes.push(n); + var c = P.primes.filter(function(u) { return u >= e.min && u <= e.max; }); return this.pick(c); @@ -317,9 +317,9 @@ var ie = { exports: {} }; return M.indexOf(O) !== -1; }; n && (c = n.comparator || c); - for (var u = [], C = 0, P, b = a * 50, A = S.call(arguments, 2); u.length < a; ) { + for (var u = [], C = 0, E, b = a * 50, A = S.call(arguments, 2); u.length < a; ) { var v = JSON.parse(JSON.stringify(A)); - if (P = e.apply(this, v), c(u, P) || (u.push(P), C = 0), ++C > b) + if (E = e.apply(this, v), c(u, E) || (u.push(E), C = 0), ++C > b) throw new RangeError("Chance: num is likely too large for sample set"); } return u; @@ -357,8 +357,8 @@ var ie = { exports: {} }; return n[u] = n[c], C; }, Math.min(c, a)); }, r.prototype.shuffle = function(e) { - for (var a = [], n = 0, c = Number(e.length), u = i(c), C = c - 1, P, b = 0; b < c; b++) - P = this.natural({ max: C }), n = u[P], a[b] = e[n], u[P] = u[C], C -= 1; + for (var a = [], n = 0, c = Number(e.length), u = i(c), C = c - 1, E, b = 0; b < c; b++) + E = this.natural({ max: C }), n = u[E], a[b] = e[n], u[E] = u[C], C -= 1; return a; }, r.prototype.weighted = function(e, a, n) { if (e.length !== a.length) @@ -370,10 +370,10 @@ var ie = { exports: {} }; } if (c === 0) throw new RangeError("Chance: No valid entries in array weights"); - var P = this.random() * c, b = 0, A = -1, v; + var E = this.random() * c, b = 0, A = -1, v; for (C = 0; C < a.length; ++C) { if (u = a[C], b += u, u > 0) { - if (P <= b) { + if (E <= b) { v = C; break; } @@ -394,8 +394,8 @@ var ie = { exports: {} }; return c = u.join(" "), c = this.capitalize(c), n !== !1 && !/^[.?;!:]$/.test(n) && (n = "."), n && (c += n), c; }, r.prototype.syllable = function(e) { e = s(e); - for (var a = e.length || this.natural({ min: 2, max: 3 }), n = "bcdfghjklmnprstvwz", c = "aeiou", u = n + c, C = "", P, b = 0; b < a; b++) - b === 0 ? P = this.character({ pool: u }) : n.indexOf(P) === -1 ? P = this.character({ pool: n }) : P = this.character({ pool: c }), C += P; + for (var a = e.length || this.natural({ min: 2, max: 3 }), n = "bcdfghjklmnprstvwz", c = "aeiou", u = n + c, C = "", E, b = 0; b < a; b++) + b === 0 ? E = this.character({ pool: u }) : n.indexOf(E) === -1 ? E = this.character({ pool: n }) : E = this.character({ pool: c }), C += E; return e.capitalize && (C = this.capitalize(C)), C; }, r.prototype.word = function(e) { e = s(e), t( @@ -446,7 +446,7 @@ var ie = { exports: {} }; }); } else if (e && (e.minAge !== void 0 || e.maxAge !== void 0)) { t(e.minAge < 0, "Chance: MinAge cannot be less than zero."), t(e.minAge > e.maxAge, "Chance: MinAge cannot be greater than MaxAge."); - var P = e.minAge !== void 0 ? e.minAge : 0, b = e.maxAge !== void 0 ? e.maxAge : 100, A = new Date(c - b - 1, n.getMonth(), n.getDate()), v = new Date(c - P, n.getMonth(), n.getDate()); + var E = e.minAge !== void 0 ? e.minAge : 0, b = e.maxAge !== void 0 ? e.maxAge : 100, A = new Date(c - b - 1, n.getMonth(), n.getDate()), v = new Date(c - E, n.getMonth(), n.getDate()); A.setDate(A.getDate() + 1), v.setDate(v.getDate() + 1), v.setMilliseconds(v.getMilliseconds() - 1), e = s(e, { min: A, max: v @@ -500,15 +500,15 @@ var ie = { exports: {} }; return e = e + (10 - parseInt(a.toString().slice(-1))).toString().slice(-1), e; }, r.prototype.mrz = function(e) { var a = function(u) { - var C = " 0; u--) c[u - 1] = this.natural({ min: 1, max: n[1] }); - return typeof a.sum < "u" && a.sum ? c.reduce(function(C, P) { - return C + P; + return typeof a.sum < "u" && a.sum ? c.reduce(function(C, E) { + return C + E; }) : c; } else throw new RangeError("Chance: A type of die roll must be included"); @@ -1194,8 +1194,8 @@ var ie = { exports: {} }; if (Array.isArray(a.extensions)) return C = this.pickone(a.extensions), u + "." + C; if (a.extensions.constructor === Object) { - var P = a.extensions, b = Object.keys(P); - return C = this.pickone(P[this.pickone(b)]), u + "." + C; + var E = a.extensions, b = Object.keys(E); + return C = this.pickone(E[this.pickone(b)]), u + "." + C; } throw new Error("Chance: Extensions must be an Array or Object"); } @@ -1216,7 +1216,7 @@ var ie = { exports: {} }; }; return c; }; - var E = { + var P = { firstNames: { male: { en: ["James", "John", "Robert", "Michael", "William", "David", "Richard", "Joseph", "Charles", "Thomas", "Christopher", "Daniel", "Matthew", "George", "Donald", "Anthony", "Paul", "Mark", "Edward", "Steven", "Kenneth", "Andrew", "Brian", "Joshua", "Kevin", "Ronald", "Timothy", "Jason", "Jeffrey", "Frank", "Gary", "Ryan", "Nicholas", "Eric", "Stephen", "Jacob", "Larry", "Jonathan", "Scott", "Raymond", "Justin", "Brandon", "Gregory", "Samuel", "Benjamin", "Patrick", "Jack", "Henry", "Walter", "Dennis", "Jerry", "Alexander", "Peter", "Tyler", "Douglas", "Harold", "Aaron", "Jose", "Adam", "Arthur", "Zachary", "Carl", "Nathan", "Albert", "Kyle", "Lawrence", "Joe", "Willie", "Gerald", "Roger", "Keith", "Jeremy", "Terry", "Harry", "Ralph", "Sean", "Jesse", "Roy", "Louis", "Billy", "Austin", "Bruce", "Eugene", "Christian", "Bryan", "Wayne", "Russell", "Howard", "Fred", "Ethan", "Jordan", "Philip", "Alan", "Juan", "Randy", "Vincent", "Bobby", "Dylan", "Johnny", "Phillip", "Victor", "Clarence", "Ernest", "Martin", "Craig", "Stanley", "Shawn", "Travis", "Bradley", "Leonard", "Earl", "Gabriel", "Jimmy", "Francis", "Todd", "Noah", "Danny", "Dale", "Cody", "Carlos", "Allen", "Frederick", "Logan", "Curtis", "Alex", "Joel", "Luis", "Norman", "Marvin", "Glenn", "Tony", "Nathaniel", "Rodney", "Melvin", "Alfred", "Steve", "Cameron", "Chad", "Edwin", "Caleb", "Evan", "Antonio", "Lee", "Herbert", "Jeffery", "Isaac", "Derek", "Ricky", "Marcus", "Theodore", "Elijah", "Luke", "Jesus", "Eddie", "Troy", "Mike", "Dustin", "Ray", "Adrian", "Bernard", "Leroy", "Angel", "Randall", "Wesley", "Ian", "Jared", "Mason", "Hunter", "Calvin", "Oscar", "Clifford", "Jay", "Shane", "Ronnie", "Barry", "Lucas", "Corey", "Manuel", "Leo", "Tommy", "Warren", "Jackson", "Isaiah", "Connor", "Don", "Dean", "Jon", "Julian", "Miguel", "Bill", "Lloyd", "Charlie", "Mitchell", "Leon", "Jerome", "Darrell", "Jeremiah", "Alvin", "Brett", "Seth", "Floyd", "Jim", "Blake", "Micheal", "Gordon", "Trevor", "Lewis", "Erik", "Edgar", "Vernon", "Devin", "Gavin", "Jayden", "Chris", "Clyde", "Tom", "Derrick", "Mario", "Brent", "Marc", "Herman", "Chase", "Dominic", "Ricardo", "Franklin", "Maurice", "Max", "Aiden", "Owen", "Lester", "Gilbert", "Elmer", "Gene", "Francisco", "Glen", "Cory", "Garrett", "Clayton", "Sam", "Jorge", "Chester", "Alejandro", "Jeff", "Harvey", "Milton", "Cole", "Ivan", "Andre", "Duane", "Landon"], @@ -7046,7 +7046,7 @@ var ie = { exports: {} }; return n ? H(e, c) : w(e, c), c; } r.prototype.get = function(e) { - return F(E[e]); + return F(P[e]); }, r.prototype.mac_address = function(e) { e = s(e), e.separator || (e.separator = e.networkVersion ? "." : ":"); var a = "ABCDEF1234567890", n = ""; @@ -7063,11 +7063,11 @@ var ie = { exports: {} }; "Chance: Standard deviation (dev) must be a number" ), e.pool.length > 0) return this.normal_pool(e); - var a, n, c, u, C = e.mean, P = e.dev; + var a, n, c, u, C = e.mean, E = e.dev; do n = this.random() * 2 - 1, c = this.random() * 2 - 1, a = n * n + c * c; while (a >= 1); - return u = n * Math.sqrt(-2 * Math.log(a) / a), P * u + C; + return u = n * Math.sqrt(-2 * Math.log(a) / a), E * u + C; }, r.prototype.normal_pool = function(e) { var a = 0; do { @@ -7095,7 +7095,7 @@ var ie = { exports: {} }; } return a + this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }); }, r.prototype.set = function(e, a) { - typeof e == "string" ? E[e] = a : E = F(e, E); + typeof e == "string" ? P[e] = a : P = F(e, P); }, r.prototype.tv = function(e) { return this.radio(e); }, r.prototype.cnpj = function() { @@ -7155,19 +7155,19 @@ var ie = { exports: {} }; return e << a | e >>> 32 - a; }, R.prototype.md5_cmn = function(e, a, n, c, u, C) { return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a, e), this.safe_add(c, C)), u), n); - }, R.prototype.md5_ff = function(e, a, n, c, u, C, P) { - return this.md5_cmn(a & n | ~a & c, e, a, u, C, P); - }, R.prototype.md5_gg = function(e, a, n, c, u, C, P) { - return this.md5_cmn(a & c | n & ~c, e, a, u, C, P); - }, R.prototype.md5_hh = function(e, a, n, c, u, C, P) { - return this.md5_cmn(a ^ n ^ c, e, a, u, C, P); - }, R.prototype.md5_ii = function(e, a, n, c, u, C, P) { - return this.md5_cmn(n ^ (a | ~c), e, a, u, C, P); + }, R.prototype.md5_ff = function(e, a, n, c, u, C, E) { + return this.md5_cmn(a & n | ~a & c, e, a, u, C, E); + }, R.prototype.md5_gg = function(e, a, n, c, u, C, E) { + return this.md5_cmn(a & c | n & ~c, e, a, u, C, E); + }, R.prototype.md5_hh = function(e, a, n, c, u, C, E) { + return this.md5_cmn(a ^ n ^ c, e, a, u, C, E); + }, R.prototype.md5_ii = function(e, a, n, c, u, C, E) { + return this.md5_cmn(n ^ (a | ~c), e, a, u, C, E); }, R.prototype.binl_md5 = function(e, a) { e[a >> 5] |= 128 << a % 32, e[(a + 64 >>> 9 << 4) + 14] = a; - var n, c, u, C, P, b = 1732584193, A = -271733879, v = -1732584194, M = 271733878; + var n, c, u, C, E, b = 1732584193, A = -271733879, v = -1732584194, M = 271733878; for (n = 0; n < e.length; n += 16) - c = b, u = A, C = v, P = M, b = this.md5_ff(b, A, v, M, e[n], 7, -680876936), M = this.md5_ff(M, b, A, v, e[n + 1], 12, -389564586), v = this.md5_ff(v, M, b, A, e[n + 2], 17, 606105819), A = this.md5_ff(A, v, M, b, e[n + 3], 22, -1044525330), b = this.md5_ff(b, A, v, M, e[n + 4], 7, -176418897), M = this.md5_ff(M, b, A, v, e[n + 5], 12, 1200080426), v = this.md5_ff(v, M, b, A, e[n + 6], 17, -1473231341), A = this.md5_ff(A, v, M, b, e[n + 7], 22, -45705983), b = this.md5_ff(b, A, v, M, e[n + 8], 7, 1770035416), M = this.md5_ff(M, b, A, v, e[n + 9], 12, -1958414417), v = this.md5_ff(v, M, b, A, e[n + 10], 17, -42063), A = this.md5_ff(A, v, M, b, e[n + 11], 22, -1990404162), b = this.md5_ff(b, A, v, M, e[n + 12], 7, 1804603682), M = this.md5_ff(M, b, A, v, e[n + 13], 12, -40341101), v = this.md5_ff(v, M, b, A, e[n + 14], 17, -1502002290), A = this.md5_ff(A, v, M, b, e[n + 15], 22, 1236535329), b = this.md5_gg(b, A, v, M, e[n + 1], 5, -165796510), M = this.md5_gg(M, b, A, v, e[n + 6], 9, -1069501632), v = this.md5_gg(v, M, b, A, e[n + 11], 14, 643717713), A = this.md5_gg(A, v, M, b, e[n], 20, -373897302), b = this.md5_gg(b, A, v, M, e[n + 5], 5, -701558691), M = this.md5_gg(M, b, A, v, e[n + 10], 9, 38016083), v = this.md5_gg(v, M, b, A, e[n + 15], 14, -660478335), A = this.md5_gg(A, v, M, b, e[n + 4], 20, -405537848), b = this.md5_gg(b, A, v, M, e[n + 9], 5, 568446438), M = this.md5_gg(M, b, A, v, e[n + 14], 9, -1019803690), v = this.md5_gg(v, M, b, A, e[n + 3], 14, -187363961), A = this.md5_gg(A, v, M, b, e[n + 8], 20, 1163531501), b = this.md5_gg(b, A, v, M, e[n + 13], 5, -1444681467), M = this.md5_gg(M, b, A, v, e[n + 2], 9, -51403784), v = this.md5_gg(v, M, b, A, e[n + 7], 14, 1735328473), A = this.md5_gg(A, v, M, b, e[n + 12], 20, -1926607734), b = this.md5_hh(b, A, v, M, e[n + 5], 4, -378558), M = this.md5_hh(M, b, A, v, e[n + 8], 11, -2022574463), v = this.md5_hh(v, M, b, A, e[n + 11], 16, 1839030562), A = this.md5_hh(A, v, M, b, e[n + 14], 23, -35309556), b = this.md5_hh(b, A, v, M, e[n + 1], 4, -1530992060), M = this.md5_hh(M, b, A, v, e[n + 4], 11, 1272893353), v = this.md5_hh(v, M, b, A, e[n + 7], 16, -155497632), A = this.md5_hh(A, v, M, b, e[n + 10], 23, -1094730640), b = this.md5_hh(b, A, v, M, e[n + 13], 4, 681279174), M = this.md5_hh(M, b, A, v, e[n], 11, -358537222), v = this.md5_hh(v, M, b, A, e[n + 3], 16, -722521979), A = this.md5_hh(A, v, M, b, e[n + 6], 23, 76029189), b = this.md5_hh(b, A, v, M, e[n + 9], 4, -640364487), M = this.md5_hh(M, b, A, v, e[n + 12], 11, -421815835), v = this.md5_hh(v, M, b, A, e[n + 15], 16, 530742520), A = this.md5_hh(A, v, M, b, e[n + 2], 23, -995338651), b = this.md5_ii(b, A, v, M, e[n], 6, -198630844), M = this.md5_ii(M, b, A, v, e[n + 7], 10, 1126891415), v = this.md5_ii(v, M, b, A, e[n + 14], 15, -1416354905), A = this.md5_ii(A, v, M, b, e[n + 5], 21, -57434055), b = this.md5_ii(b, A, v, M, e[n + 12], 6, 1700485571), M = this.md5_ii(M, b, A, v, e[n + 3], 10, -1894986606), v = this.md5_ii(v, M, b, A, e[n + 10], 15, -1051523), A = this.md5_ii(A, v, M, b, e[n + 1], 21, -2054922799), b = this.md5_ii(b, A, v, M, e[n + 8], 6, 1873313359), M = this.md5_ii(M, b, A, v, e[n + 15], 10, -30611744), v = this.md5_ii(v, M, b, A, e[n + 6], 15, -1560198380), A = this.md5_ii(A, v, M, b, e[n + 13], 21, 1309151649), b = this.md5_ii(b, A, v, M, e[n + 4], 6, -145523070), M = this.md5_ii(M, b, A, v, e[n + 11], 10, -1120210379), v = this.md5_ii(v, M, b, A, e[n + 2], 15, 718787259), A = this.md5_ii(A, v, M, b, e[n + 9], 21, -343485551), b = this.safe_add(b, c), A = this.safe_add(A, u), v = this.safe_add(v, C), M = this.safe_add(M, P); + c = b, u = A, C = v, E = M, b = this.md5_ff(b, A, v, M, e[n], 7, -680876936), M = this.md5_ff(M, b, A, v, e[n + 1], 12, -389564586), v = this.md5_ff(v, M, b, A, e[n + 2], 17, 606105819), A = this.md5_ff(A, v, M, b, e[n + 3], 22, -1044525330), b = this.md5_ff(b, A, v, M, e[n + 4], 7, -176418897), M = this.md5_ff(M, b, A, v, e[n + 5], 12, 1200080426), v = this.md5_ff(v, M, b, A, e[n + 6], 17, -1473231341), A = this.md5_ff(A, v, M, b, e[n + 7], 22, -45705983), b = this.md5_ff(b, A, v, M, e[n + 8], 7, 1770035416), M = this.md5_ff(M, b, A, v, e[n + 9], 12, -1958414417), v = this.md5_ff(v, M, b, A, e[n + 10], 17, -42063), A = this.md5_ff(A, v, M, b, e[n + 11], 22, -1990404162), b = this.md5_ff(b, A, v, M, e[n + 12], 7, 1804603682), M = this.md5_ff(M, b, A, v, e[n + 13], 12, -40341101), v = this.md5_ff(v, M, b, A, e[n + 14], 17, -1502002290), A = this.md5_ff(A, v, M, b, e[n + 15], 22, 1236535329), b = this.md5_gg(b, A, v, M, e[n + 1], 5, -165796510), M = this.md5_gg(M, b, A, v, e[n + 6], 9, -1069501632), v = this.md5_gg(v, M, b, A, e[n + 11], 14, 643717713), A = this.md5_gg(A, v, M, b, e[n], 20, -373897302), b = this.md5_gg(b, A, v, M, e[n + 5], 5, -701558691), M = this.md5_gg(M, b, A, v, e[n + 10], 9, 38016083), v = this.md5_gg(v, M, b, A, e[n + 15], 14, -660478335), A = this.md5_gg(A, v, M, b, e[n + 4], 20, -405537848), b = this.md5_gg(b, A, v, M, e[n + 9], 5, 568446438), M = this.md5_gg(M, b, A, v, e[n + 14], 9, -1019803690), v = this.md5_gg(v, M, b, A, e[n + 3], 14, -187363961), A = this.md5_gg(A, v, M, b, e[n + 8], 20, 1163531501), b = this.md5_gg(b, A, v, M, e[n + 13], 5, -1444681467), M = this.md5_gg(M, b, A, v, e[n + 2], 9, -51403784), v = this.md5_gg(v, M, b, A, e[n + 7], 14, 1735328473), A = this.md5_gg(A, v, M, b, e[n + 12], 20, -1926607734), b = this.md5_hh(b, A, v, M, e[n + 5], 4, -378558), M = this.md5_hh(M, b, A, v, e[n + 8], 11, -2022574463), v = this.md5_hh(v, M, b, A, e[n + 11], 16, 1839030562), A = this.md5_hh(A, v, M, b, e[n + 14], 23, -35309556), b = this.md5_hh(b, A, v, M, e[n + 1], 4, -1530992060), M = this.md5_hh(M, b, A, v, e[n + 4], 11, 1272893353), v = this.md5_hh(v, M, b, A, e[n + 7], 16, -155497632), A = this.md5_hh(A, v, M, b, e[n + 10], 23, -1094730640), b = this.md5_hh(b, A, v, M, e[n + 13], 4, 681279174), M = this.md5_hh(M, b, A, v, e[n], 11, -358537222), v = this.md5_hh(v, M, b, A, e[n + 3], 16, -722521979), A = this.md5_hh(A, v, M, b, e[n + 6], 23, 76029189), b = this.md5_hh(b, A, v, M, e[n + 9], 4, -640364487), M = this.md5_hh(M, b, A, v, e[n + 12], 11, -421815835), v = this.md5_hh(v, M, b, A, e[n + 15], 16, 530742520), A = this.md5_hh(A, v, M, b, e[n + 2], 23, -995338651), b = this.md5_ii(b, A, v, M, e[n], 6, -198630844), M = this.md5_ii(M, b, A, v, e[n + 7], 10, 1126891415), v = this.md5_ii(v, M, b, A, e[n + 14], 15, -1416354905), A = this.md5_ii(A, v, M, b, e[n + 5], 21, -57434055), b = this.md5_ii(b, A, v, M, e[n + 12], 6, 1700485571), M = this.md5_ii(M, b, A, v, e[n + 3], 10, -1894986606), v = this.md5_ii(v, M, b, A, e[n + 10], 15, -1051523), A = this.md5_ii(A, v, M, b, e[n + 1], 21, -2054922799), b = this.md5_ii(b, A, v, M, e[n + 8], 6, 1873313359), M = this.md5_ii(M, b, A, v, e[n + 15], 10, -30611744), v = this.md5_ii(v, M, b, A, e[n + 6], 15, -1560198380), A = this.md5_ii(A, v, M, b, e[n + 13], 21, 1309151649), b = this.md5_ii(b, A, v, M, e[n + 4], 6, -145523070), M = this.md5_ii(M, b, A, v, e[n + 11], 10, -1120210379), v = this.md5_ii(v, M, b, A, e[n + 2], 15, 718787259), A = this.md5_ii(A, v, M, b, e[n + 9], 21, -343485551), b = this.safe_add(b, c), A = this.safe_add(A, u), v = this.safe_add(v, C), M = this.safe_add(M, E); return [b, A, v, M]; }, R.prototype.binl2rstr = function(e) { var a, n = ""; @@ -7184,10 +7184,10 @@ var ie = { exports: {} }; }, R.prototype.rstr_md5 = function(e) { return this.binl2rstr(this.binl_md5(this.rstr2binl(e), e.length * 8)); }, R.prototype.rstr_hmac_md5 = function(e, a) { - var n, c = this.rstr2binl(e), u = [], C = [], P; + var n, c = this.rstr2binl(e), u = [], C = [], E; for (u[15] = C[15] = void 0, c.length > 16 && (c = this.binl_md5(c, e.length * 8)), n = 0; n < 16; n += 1) u[n] = c[n] ^ 909522486, C[n] = c[n] ^ 1549556828; - return P = this.binl_md5(u.concat(this.rstr2binl(a)), 512 + a.length * 8), this.binl2rstr(this.binl_md5(C.concat(P), 512 + 128)); + return E = this.binl_md5(u.concat(this.rstr2binl(a)), 512 + a.length * 8), this.binl2rstr(this.binl_md5(C.concat(E), 512 + 128)); }, R.prototype.rstr2hex = function(e) { var a = "0123456789abcdef", n = "", c, u; for (u = 0; u < e.length; u += 1) @@ -7577,7 +7577,12 @@ let ce = function() { let m, f = " ", k = ["string", "varchar2", "varchar", "vc", "char"]; var D = ["yn", "boolean", "bool"]; function I(p, S, r) { - this.line = p, this.parent = r, this.children = [], r != null && r.children.push(this), this.fks = null, this.descendants = function() { + this.line = p, this.parent = r, this.children = [], r != null && r.children.push(this), this.fks = null, this.findChild = function(i) { + for (var t = 0; t < this.children.length; t++) + if (this.children[t].parseName() == i) + return this.children[t]; + return null; + }, this.descendants = function() { var i = []; i.push(this); for (var t = 0; t < this.children.length; t++) @@ -7640,16 +7645,16 @@ let ce = function() { var y = i.indexOf("/"); 0 < y && (i = i.substring(0, y)), i = i.trim(), i = g(i, " integer"), i = g(i, " number"), i = g(i, " int"), i = g(i, " num"), i = g(i, " clob"), i = g(i, " blob"), i = g(i, " json"), i = g(i, " file"), i = g(i, " date"), i = g(i, " tstz"), i = g(i, " tswtz"), i = g(i, " tswltz"), i = g(i, " ts"), i = i.replace(/ vc\d+k/g, ""), i = i.replace(/ vc\(\d+\)/g, ""), i = i.replace(/ vc\d+/g, ""); for (let T in k) { - let E = l.indexOf(" " + k[T]); - if (0 < E) { - i = i.substring(0, E) + i.substring(E + k[T].length + 1); + let P = l.indexOf(" " + k[T]); + if (0 < P) { + i = i.substring(0, P) + i.substring(P + k[T].length + 1); break; } } for (let T in D) { - let E = l.indexOf(" " + D[T]); - if (0 < E) { - i = i.substring(0, E) + i.substring(E + D[T].length + 1); + let P = l.indexOf(" " + D[T]); + if (0 < P) { + i = i.substring(0, P) + i.substring(P + D[T].length + 1); break; } } @@ -7675,7 +7680,7 @@ let ce = function() { x == "" && this.indexOf("(") == h + 1 && (x = t[h + 2].value), x != "" && (l = parseInt(x)), t[h].value.endsWith("k") && (l < 32 ? l = l * 1024 : l = l * 1024 - 1); } var y = "varchar2(" + l + o + ")"; - i == "plsql" && (y = "varchar2"), 0 < this.indexOf("int", !0) && (y = "integer"), t[0].value.endsWith("_id") && h < 0 && this.indexOf("date") < 0 && (y = "number"), t[0].value == "quantity" && (y = "number"), t[0].value.endsWith("id") && h < 0 && this.indexOf("/") + 1 == this.indexOf("pk") && (y = "number"); + i == "plsql" && (y = "varchar2"), t[0].value.endsWith("_id") && h < 0 && this.indexOf("date") < 0 && (y = "number"), t[1] && t[1].value == "id" && (y = "number"), t[0].value == "quantity" && (y = "number"), t[0].value.endsWith("id") && h < 0 && this.indexOf("/") + 1 == this.indexOf("pk") && (y = "number"), 0 < this.indexOf("int", !0) && (y = "integer"); const B = K(r.parseName(), "_", this.parseName()); (t[0].value.endsWith("_yn") || t[0].value.startsWith("is_")) && (y = "varchar2(1 char) constraint " + K(m.objPrefix(), B) + ` `, y += f + f + " ".repeat(r.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"); @@ -7688,11 +7693,13 @@ let ce = function() { this.indexOf("phone_number") == 0 && (y = "number"); let T = this.indexOf("num", !0); 0 < T && (y = "number"); - let E = this.indexOf(")"); - if (0 < T && 0 < E && (y += this.content.toLowerCase().substring(t[T + 1].begin, t[E].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value.startsWith("created") || t[0].value.startsWith("updated")) && (y = m.getOptionValue("Date Data Type").toLowerCase()), h < 0 && (0 < this.indexOf("clob") && (y = "clob"), (0 < this.indexOf("blob") || 0 < this.indexOf("file")) && (y = "blob"), 0 < this.indexOf("json") && (y = "clob check (" + this.parseName() + " is json)")), 0 < this.indexOf("tswltz") ? y = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : 0 < this.indexOf("tswtz") || 0 < this.indexOf("tstz") ? y = "TIMESTAMP WITH TIME ZONE".toLowerCase() : 0 < this.indexOf("ts") && (y = "TIMESTAMP".toLowerCase()), i) { - if (0 < this.indexOf("fk") || 0 < this.indexOf("reference")) { + let P = this.indexOf(")"); + if (0 < T && 0 < P && (y += this.content.toLowerCase().substring(t[T + 1].begin, t[P].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value.startsWith("created") || t[0].value.startsWith("updated")) && (y = m.getOptionValue("Date Data Type").toLowerCase()), h < 0 && (0 < this.indexOf("clob") && (y = "clob"), (0 < this.indexOf("blob") || 0 < this.indexOf("file")) && (y = "blob"), 0 < this.indexOf("json") && (y = "clob check (" + this.parseName() + " is json)")), 0 < this.indexOf("tswltz") ? y = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : 0 < this.indexOf("tswtz") || 0 < this.indexOf("tstz") ? y = "TIMESTAMP WITH TIME ZONE".toLowerCase() : 0 < this.indexOf("ts") && (y = "TIMESTAMP".toLowerCase()), i) { + if (0 < this.indexOf("fk") || 0 < this.indexOf("reference", !0)) { const x = this.refId(); - let w = "number", H = m.find(x); + let w = "number"; + y == "integer" && (w = y); + let H = m.find(x); return H != null && H.getExplicitPkNode() != null && (w = H.getExplicitPkNode().parseType((F) => !0)), w; } return y; @@ -7724,10 +7731,10 @@ let ce = function() { let B = h.lastIndexOf("/"); B == y && (B = h.length); let T = this.trimmedContent().substr(y + 6, B - y - 6).trim(); - const E = Z(T, !1, !0, ""); + const P = Z(T, !1, !0, ""); let L = f; - r != null && (L = " ".repeat(r.maxChildNameLen())), this.children != null && 0 < this.children.length ? (E[0].value != "(" && (T = "( " + T + ")"), t += f + "constraint " + K(m.objPrefix(), l, "_ck"), t += " check " + T + `, -`) : E[0].value == "(" && E[E.length - 1].value == ")" ? (t += " constraint " + K(m.objPrefix(), l, "_ck") + ` + r != null && (L = " ".repeat(r.maxChildNameLen())), this.children != null && 0 < this.children.length ? (P[0].value != "(" && (T = "( " + T + ")"), t += f + "constraint " + K(m.objPrefix(), l, "_ck"), t += " check " + T + `, +`) : P[0].value == "(" && P[P.length - 1].value == ")" ? (t += " constraint " + K(m.objPrefix(), l, "_ck") + ` `, t += f + f + L + "check " + T) : (0 < T.indexOf(", ") ? T = T.replace(/, /g, i + "," + i) : 0 < T.indexOf(",") ? T = T.replace(/,/g, i + "," + i) : T = T.replace(/ /g, i + "," + i), t += " constraint " + K(m.objPrefix(), l, "_ck") + ` `, t += f + f + L + "check (" + this.parseName() + " in (" + i + T + i + "))", t = t.replace(/''/gm, "'")); } @@ -7839,22 +7846,25 @@ let ce = function() { } } for (let a in this.fks) { - let n = this.fks[a], c = "number", u = m.find(n), C = ""; - u != null && u.getExplicitPkNode() != null ? c = u.getExplicitPkNode().parseType((A) => !0) : u == null && (u = m.find(a), u.isMany2One() & !a.endsWith("_id") && (n = a, a = _(a), C = "_id")), h = f + " ".repeat(this.maxChildNameLen() - a.length), o += f + a + C + h + c + ` + let n = this.fks[a], c = "number"; + const u = this.findChild(a); + u != null && (c = u.parseType("fk")); + let C = m.find(n), E = ""; + C != null && C.getExplicitPkNode() != null ? c = C.getExplicitPkNode().parseType((v) => !0) : C == null && (C = m.find(a), C.isMany2One() & !a.endsWith("_id") && (n = a, a = _(a), E = "_id")), h = f + " ".repeat(this.maxChildNameLen() - a.length), o += f + a + E + h + c + ` `, o += f + f + " ".repeat(this.maxChildNameLen()) + "constraint " + l + "_" + a + `_fk `; - let P = ""; - 0 <= i.indexOf("/CASCADE") && (P = " on delete cascade"); let b = ""; - for (let A in this.children) { - let v = this.children[A]; - if (a == v.parseName()) { - let M = v.trimmedContent().toUpperCase(); - (0 <= M.indexOf("/NN") || 0 <= M.indexOf("/NOTNULL")) && (b = " NOT NULL".toLowerCase()), 0 <= M.indexOf("/CASCADE") && (P = " on delete cascade"); + 0 <= i.indexOf("/CASCADE") && (b = " on delete cascade"); + let A = ""; + for (let v in this.children) { + let M = this.children[v]; + if (a == M.parseName()) { + let O = M.trimmedContent().toUpperCase(); + (0 <= O.indexOf("/NN") || 0 <= O.indexOf("/NOTNULL")) && (A = " NOT NULL".toLowerCase()), 0 <= O.indexOf("/CASCADE") && (b = " on delete cascade"); break; } } - o += f + f + " ".repeat(this.maxChildNameLen()) + "references " + m.objPrefix() + n + P + b + `, + o += f + f + " ".repeat(this.maxChildNameLen()) + "references " + m.objPrefix() + n + b + A + `, `; } if (m.optionEQvalue("rowkey", !0) || 0 < i.indexOf("/ROWKEY")) { @@ -7910,8 +7920,8 @@ let ce = function() { `), o += ")" + (m.optionEQvalue("compress", "yes") || 0 < i.indexOf("/COMPRESS") ? " compress" : "") + `; `; - const E = i.indexOf("/AUDIT"), L = i.indexOf("/AUDITCOLS"), x = i.indexOf("/AUDIT COL"); - 0 < E && L < 0 && x < 0 && (o += "audit all on " + l + `; + const P = i.indexOf("/AUDIT"), L = i.indexOf("/AUDITCOLS"), x = i.indexOf("/AUDIT COL"); + 0 < P && L < 0 && x < 0 && (o += "audit all on " + l + `; `); let w = 1; @@ -7991,16 +8001,16 @@ let ce = function() { var B = (o[y] + ".id").length; h < B && (h = B); for (var T = 0; T < u.children.length; T++) { - var E = u.children[T]; - B = (o[y] + "." + E.parseName()).length, h < B && (h = B); + var P = u.children[T]; + B = (o[y] + "." + P.parseName()).length, h < B && (h = B); } } var L = {}; for (let u = 2; u < o.length; u++) { let C = m.find(o[u]); if (C != null) - for (let P = 0; P < C.children.length; P++) { - var x = C.children[P].parseName(), w = L[x]; + for (let E = 0; E < C.children.length; E++) { + var x = C.children[E].parseName(), w = L[x]; w == null && (w = 0), L[x] = w + 1; } } @@ -8008,15 +8018,15 @@ let ce = function() { let C = m.find(o[u]); if (C == null) continue; - let P = " ".repeat(h - (o[u] + ".id").length); - l += f + o[u] + ".id" + f + P + _(o[u]) + `_id, + let E = " ".repeat(h - (o[u] + ".id").length); + l += f + o[u] + ".id" + f + E + _(o[u]) + `_id, `; for (let A = 0; A < C.children.length; A++) { let v = C.children[A]; if (v.children.length == 0) { - P = " ".repeat(h - (o[u] + "." + v.parseName()).length); + E = " ".repeat(h - (o[u] + "." + v.parseName()).length); var H = ""; - 1 < L[v.parseName()] && (H = _(o[u]) + "_"), l += f + o[u] + "." + v.parseName() + f + P + H + v.parseName() + `, + 1 < L[v.parseName()] && (H = _(o[u]) + "_"), l += f + o[u] + "." + v.parseName() + f + E + H + v.parseName() + `, `; } } @@ -8150,9 +8160,9 @@ end; `, o += " :new." + m.getOptionValue("updatedcol") + ` := SYSDATE; `.toLowerCase(), o += " :new." + m.getOptionValue("updatedbycol") + " := " + y + `; `.toLowerCase(), h = !0); - var E = m.additionalColumns(); - for (var L in E) { - var x = E[L]; + var P = m.additionalColumns(); + for (var L in P) { + var x = P[L]; o += " if :new." + L + ` is null then `, x.startsWith("INT") ? o += " " + L + ` := 0; ` : o += " " + L + ` := 'N/A'; @@ -8172,8 +8182,8 @@ end; `; l += f + f + "p_id in number" + t; for (var h in this.fks) { - let B = this.fks[h], T = "number", E = m.find(B); - E != null && E.getExplicitPkNode() != null && (T = E.getExplicitPkNode().parseType((L) => !0)), l += `, + let B = this.fks[h], T = "number", P = m.find(B); + P != null && P.getExplicitPkNode() != null && (T = P.getExplicitPkNode().parseType((L) => !0)), l += `, `, l += f + f + "P_" + h + " " + o + " " + T + t; } for (let B = 0; B < this.children.length; B++) { @@ -8194,7 +8204,7 @@ end; `, l += f + f + f + "id"), i == "update" && (l = f + f + "update " + t + ` set `, l += f + f + f + "id = p_id"), o += l; for (let T in this.fks) { - let E = this.fks[T], L = m.find(E); + let P = this.fks[T], L = m.find(P); L != null && L.getExplicitPkNode() != null && L.getExplicitPkNode().parseType((w) => !0), (i == "insert" || i == "update") && (o += `, `); let x = f + f + f + "P_" + T + " := c1." + T + `; @@ -8221,9 +8231,9 @@ end; o += `, `, o += f + f + f + "p_" + T; for (let T = 0; T < this.children.length; T++) { - let E = this.children[T]; - E.refId() == null && E.children.length == 0 && (o += `, -`, o += f + f + f + "p_" + E.parseName()); + let P = this.children[T]; + P.refId() == null && P.children.length == 0 && (o += `, +`, o += f + f + f + "p_" + P.parseName()); } } let B = ` @@ -8297,8 +8307,8 @@ is for (let y = 0; y < this.cardinality(); y++) { let B = null; if (i != null) { - const E = i[o]; - E != null && Array.isArray(E) && (B = E[y]); + const P = i[o]; + P != null && Array.isArray(P) && (B = P[y]); } l += "insert into " + o + ` ( `; @@ -8307,17 +8317,17 @@ is l += f + T + `, `; else { - let E = this.getExplicitPkNode(); - E != null && (l += f + E.parseName() + `, + let P = this.getExplicitPkNode(); + P != null && (l += f + P.parseName() + `, `); } - for (let E in this.fks) { - let L = this.fks[E], x = m.find(L), w = ""; - x == null && (x = m.find(E), x.isMany2One() & !E.endsWith("_id") && (L = E, E = _(E), w = "_id")), l += f + E + w + `, + for (let P in this.fks) { + let L = this.fks[P], x = m.find(L), w = ""; + x == null && (x = m.find(P), x.isMany2One() & !P.endsWith("_id") && (L = P, P = _(P), w = "_id")), l += f + P + w + `, `; } - for (let E = 0; E < this.children.length; E++) { - let L = this.children[E]; + for (let P = 0; P < this.children.length; P++) { + let L = this.children[P]; if (!(T != null && L.parseName() == "id") && L.refId() == null) { if (L == this.getExplicitPkNode()) continue; @@ -8332,27 +8342,27 @@ is l += f + (y + 1) + `, `; else { - let E = this.getExplicitPkNode(); - if (E != null) { - const L = E.parseName(); + let P = this.getExplicitPkNode(); + if (P != null) { + const L = P.parseName(); let x = d(m.data, null, L, this.parseName()), w = -1; B != null && (w = B[L]), x != null && x[y] != null && (w = x[y]), w.replaceAll && (w = "'" + w + "'"), l += f + (w != -1 ? w : y + 1) + `, `; } } - for (let E in this.fks) { - let L = this.fks[E], x = m.find(L), w = [], H = "INTEGER"; + for (let P in this.fks) { + let L = this.fks[P], x = m.find(L), w = [], H = "INTEGER"; for (let F = 1; F <= x.cardinality(); F++) w.push(F); if (B != null) { - let F = B[E]; + let F = B[P]; F != null && (typeof F == "string" && (H = "STRING"), w = [], w[0] = F); } l += f + le(m.getOptionValue("Data Language"), se(o, _(L) + "_id", H, w)) + `, `; } - for (let E = 0; E < this.children.length; E++) { - let L = this.children[E]; + for (let P = 0; P < this.children.length; P++) { + let L = this.children[P]; if (!(T != null && L.parseName() == "id") && L.refId() == null) { if (L == this.getExplicitPkNode()) continue; @@ -8414,15 +8424,15 @@ modify ` + h + " generated always as identity restart start with " + (this.card throw new Error(this.one2many2oneUnsupoported); o += h.generateSelectJsonTopDown(i + " "), o += i + " WITH NOCHECK } from " + y + ` with INSERT UPDATE `; - let E = null; + let P = null; for (var B in h.fks) { var T = h.fks[B]; if (T == t) { - E = B; + P = B; break; } } - const L = t + "." + this.getPkName(), x = y + "." + E; + const L = t + "." + this.getPkName(), x = y + "." + P; o += i + "where " + x + " = " + L + ` `, i = i.slice(0, -2), o += i + "]"; } @@ -8461,18 +8471,18 @@ modify ` + h + " generated always as identity restart start with " + (this.card o = "", l++; continue; } - let T = new I(l, o, null), E = !1; + let T = new I(l, o, null), P = !1; for (let L = 0; L < r.length; L++) { let x = r[L]; if (T.apparentDepth() <= x.apparentDepth()) if (0 < L) { let w = r[L - 1]; - T = new I(l, o, w), r[L] = T, r = r.slice(0, L + 1), E = !0; + T = new I(l, o, w), r[L] = T, r = r.slice(0, L + 1), P = !0; break; } else - r[0] = T, r = r.slice(0, 1), s.push(T), E = !0; + r[0] = T, r = r.slice(0, 1), s.push(T), P = !0; } - if (!E) { + if (!P) { if (0 < r.length) { let L = r[r.length - 1]; T = new I(l, o, L); @@ -8501,7 +8511,7 @@ modify ` + h + " generated always as identity restart start with " + (this.card p.setOptions(t), t = null, o = ""; continue; } - let T = null, E = null; + let T = null, P = null; for (let L in B) { const x = B[L]; if (T == null && x.value == "flattened") { @@ -8518,14 +8528,14 @@ modify ` + h + " generated always as identity restart start with " + (this.card } catch { } } - if (E == null && x.value == "settings") { - E = ""; + if (P == null && x.value == "settings") { + P = ""; continue; } - if (E != null) { - E += x.value, E.substring(1); + if (P != null) { + P += x.value, P.substring(1); try { - p.setOptions(E), t = null, o = ""; + p.setOptions(P), t = null, o = ""; continue e; } catch { } diff --git a/dist/quick-sql.umd.cjs b/dist/quick-sql.umd.cjs index a7cfa1c..54b3a96 100644 --- a/dist/quick-sql.umd.cjs +++ b/dist/quick-sql.umd.cjs @@ -1,5 +1,5 @@ -(function(V,O){typeof exports=="object"&&typeof module<"u"?O(exports):typeof define=="function"&&define.amd?define(["exports"],O):(V=typeof globalThis<"u"?globalThis:V||self,O(V.quickSQL={}))})(this,function(V){"use strict";function O(m){return m==null?m:m.toUpperCase().endsWith("IES")?m.substring(0,m.length-3)+"y":m.toUpperCase().endsWith("ES")||m.toUpperCase().endsWith("S")?m.substring(0,m.length-1):m}function ve(m,f){let x='"';if(m==null)return null;let D=!1;const I="$#_ ";if(!m.startsWith(x)&&!D){const N=m;if(N.length>0&&"0"<=N[0]&&N[0]<="9")D=!0;else for(let g in N){const d=N[g];if(I.indexOf(d)<0&&(d<"0"||"9""u"&&(e[n]=a[n]);return e}function i(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var o=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?o=btoa:typeof Buffer=="function"&&(o=function(a){return new Buffer(a).toString("base64")})})(),r.prototype.bool=function(e){return e=s(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100c,"Chance: Max specified is out of range with fixed. Max should be, at most, "+c),e=s(e,{min:u,max:c}),a=this.integer({min:e.min*n,max:e.max*n});var C=(a/n).toFixed(e.fixed);return parseFloat(C)},r.prototype.integer=function(e){return e=s(e,{min:D,max:x}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},r.prototype.natural=function(e){if(e=s(e,{min:0,max:x}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),c=e.exclude.sort();for(var u in c){if(ne.max,"Chance: Min cannot be greater than Max.");var a=E.primes[E.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&E.primes.push(n);var c=E.primes.filter(function(u){return u>=e.min&&u<=e.max});return this.pick(c)},r.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},r.prototype.hex=function(e){e=s(e,{min:0,max:x,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},r.prototype.letter=function(e){e=s(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},r.prototype.string=function(e){e=s(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function h(e){this.c=e}h.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function y(e){this.c=e}y.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:g})},a:function(e){return e.character({pool:N})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function B(e){for(var a=[],n="identity",c=0;c"u")throw new p("Sorry, the buffer() function is not supported on your platform");e=s(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},r.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},r.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},r.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var c=function(M,F){return M.indexOf(F)!==-1};n&&(c=n.comparator||c);for(var u=[],C=0,P,b=a*50,A=S.call(arguments,2);u.lengthb)throw new RangeError("Chance: num is likely too large for sample set")}return u},r.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,c=[],u=S.call(arguments,2);for(n=Math.max(0,n),null;n--;null)c.push(e.apply(this,u));return c},r.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},r.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},r.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},r.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),c=n.length;return this.n(function(){var u=this.natural({max:--c}),C=n[u];return n[u]=n[c],C},Math.min(c,a))},r.prototype.shuffle=function(e){for(var a=[],n=0,c=Number(e.length),u=i(c),C=c-1,P,b=0;b0&&(c+=u)}if(c===0)throw new RangeError("Chance: No valid entries in array weights");var P=this.random()*c,b=0,A=-1,v;for(C=0;C0){if(P<=b){v=C;break}A=C}C===a.length-1&&(v=A)}var M=e[v];return n=typeof n>"u"?!1:n,n&&(e.splice(v,1),a.splice(v,1)),M},r.prototype.paragraph=function(e){e=s(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),c=e.linebreak===!0?` -`:" ";return n.join(c)},r.prototype.sentence=function(e){e=s(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,c,u=this.n(this.word,a);return c=u.join(" "),c=this.capitalize(c),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(c+=n),c},r.prototype.syllable=function(e){e=s(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",c="aeiou",u=n+c,C="",P,b=0;be.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var P=e.minAge!==void 0?e.minAge:0,b=e.maxAge!==void 0?e.maxAge:100,A=new Date(c-b-1,n.getMonth(),n.getDate()),v=new Date(c-P,n.getMonth(),n.getDate());A.setDate(A.getDate()+1),v.setDate(v.getDate()+1),v.setMilliseconds(v.getMilliseconds()-1),e=s(e,{min:A,max:v})}else e=s(e,{year:c-a});return this.date(e)},r.prototype.cpf=function(e){e=s(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var c=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;c=11-c%11,c>=10&&(c=0);var u=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+c;return e.formatted?u:u.replace(/\D/g,"")},r.prototype.cnpj=function(e){e=s(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var c=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;c=11-c%11,c<2&&(c=0);var u=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+c;return e.formatted?u:u.replace(/\D/g,"")},r.prototype.first=function(e){return e=s(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},r.prototype.profession=function(e){return e=s(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},r.prototype.company=function(){return this.pick(this.get("company"))},r.prototype.gender=function(e){return e=s(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},r.prototype.last=function(e){if(e=s(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(c){a=a.concat(n[c])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},r.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},r.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},r.prototype.tld=function(){return this.pick(this.tlds())},r.prototype.twitter=function(){return"@"+this.word()},r.prototype.url=function(e){e=s(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},r.prototype.port=function(){return this.integer({min:0,max:65535})},r.prototype.locale=function(e){return e=s(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},r.prototype.locales=function(e){return e=s(e),e.region?this.get("locale_regions"):this.get("locale_languages")},r.prototype.loremPicsum=function(e){e=s(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},r.prototype.address=function(e){return e=s(e),this.natural({min:5,max:2e3})+" "+this.street(e)},r.prototype.altitude=function(e){return e=s(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.areacode=function(e){e=s(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},r.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},r.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},r.prototype.countries=function(){return this.get("countries")},r.prototype.country=function(e){e=s(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},r.prototype.depth=function(e){return e=s(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.geohash=function(e){return e=s(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},r.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},r.prototype.latitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=s(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:c});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.longitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=s(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:c});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.phone=function(e){var a=this,n,c=function(F){var G=[];return F.sections.forEach(function(z){G.push(a.string({pool:"0123456789",length:z}))}),F.area+G.join(" ")};e=s(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var u;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),u=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),u=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),u=e.formatted?c(n):c(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),u=e.formatted?c(n):c(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n);break;case"us":var C=this.areacode(e).toString(),P=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),b=this.natural({min:1e3,max:9999}).toString();u=e.formatted?C+" "+P+"-"+b:C+P+b;break;case"br":var A=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),v;e.mobile?v="9"+a.string({pool:"0123456789",length:4}):v=this.natural({min:2e3,max:5999}).toString();var M=a.string({pool:"0123456789",length:4});u=e.formatted?"("+A+") "+v+"-"+M:A+v+M;break}return u},r.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},r.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",c=e+a+n,u=this.natural({max:9}),C=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),P=u+C;return c+" "+P},r.prototype.counties=function(e){return e=s(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},r.prototype.county=function(e){return this.pick(this.counties(e)).name},r.prototype.provinces=function(e){return e=s(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},r.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},r.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},r.prototype.states=function(e){e=s(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),c=this.get("territories"),u=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(c)),e.armed_forces&&(a=a.concat(u));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},r.prototype.street=function(e){e=s(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},r.prototype.street_suffix=function(e){return e=s(e,{country:"us"}),this.pick(this.street_suffixes(e))},r.prototype.street_suffixes=function(e){return e=s(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},r.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},r.prototype.ampm=function(){return this.bool()?"am":"pm"},r.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=s(e,{american:!0,string:!1});var c=typeof e.min<"u"?e.min.getTime():1,u=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:c,max:u}))}else{var C=this.month({raw:!0}),P=C.days;e&&e.month&&(P=this.get("months")[(e.month%12+12)%12].days),e=s(e,{year:parseInt(this.year(),10),month:C.numeric-1,day:this.natural({min:1,max:P}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},r.prototype.hammertime=function(e){return this.date(e).getTime()},r.prototype.hour=function(e){return e=s(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.millisecond=function(){return this.natural({max:999})},r.prototype.minute=r.prototype.second=function(e){return e=s(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.month=function(e){e=s(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},r.prototype.months=function(){return this.get("months")},r.prototype.second=function(){return this.natural({max:59})},r.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},r.prototype.weekday=function(e){e=s(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},r.prototype.year=function(e){return e=s(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},r.prototype.cc=function(e){e=s(e);var a,n,c;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),c=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,c,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},r.prototype.cc_types=function(){return this.get("cc_types")},r.prototype.cc_type=function(e){e=s(e);var a=this.cc_types(),n=null;if(e.name){for(var c=0;c3&&(F?G=G.substr(0,3):G=G[0]+G.substr(2,2)),G.length<3&&(z=G,G=M.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+G),z},A=function(M,F,G){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return M.getFullYear().toString().substr(2)+z[M.getMonth()]+G.pad(M.getDate()+(F.toLowerCase()==="female"?40:0),2)},v=function(M){for(var F="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",G="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(G[F.indexOf(M[U])]):K+=j.indexOf(G[F.indexOf(M[U])]);return z[K%26]};return P=P.concat(b(c,!0),b(n),A(u,a,this),C.toUpperCase().split("")).join(""),P+=v(P.toUpperCase()),P.toUpperCase()},r.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;u--)c[u-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?c.reduce(function(C,P){return C+P}):c}else throw new RangeError("Chance: A type of die roll must be included")},r.prototype.guid=function(e){e=s(e,{version:5});var a="abcdef1234567890",n="ab89",c=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return c},r.prototype.hash=function(e){e=s(e,{length:40,casing:"lower"});var a=e.casing==="upper"?d.toUpperCase():d;return this.string({pool:a,length:e.length})},r.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},r.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,c,u=0,C=a.length;C>u;++u)c=+a[u],u%2===0&&(c*=2,c>9&&(c-=9)),n+=c;return n*9%10},r.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=s(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},r.prototype.file=function(e){var a=e||{},n="fileExtension",c=Object.keys(this.get("fileExtension")),u,C;if(u=this.word({length:a.length}),a.extension)return C=a.extension,u+"."+C;if(a.extensions){if(Array.isArray(a.extensions))return C=this.pickone(a.extensions),u+"."+C;if(a.extensions.constructor===Object){var P=a.extensions,b=Object.keys(P);return C=this.pickone(P[this.pickone(b)]),u+"."+C}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var A=a.fileType;if(c.indexOf(A)!==-1)return C=this.pickone(this.get(n)[A]),u+"."+C;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return C=this.pickone(this.get(n)[this.pickone(c)]),u+"."+C},r.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var c={fileData:this.buffer({length:a.fileSize}),fileName:n};return c};var E={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},L=Object.prototype.hasOwnProperty,k=Object.keys||function(e){var a=[];for(var n in e)L.call(e,n)&&a.push(n);return a};function w(e,a){for(var n=k(e),c,u=0,C=n.length;u0)return this.normal_pool(e);var a,n,c,u,C=e.mean,P=e.dev;do n=this.random()*2-1,c=this.random()*2-1,a=n*n+c*c;while(a>=1);return u=n*Math.sqrt(-2*Math.log(a)/a),P*u+C},r.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},r.prototype.radio=function(e){e=s(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},r.prototype.set=function(e,a){typeof e=="string"?E[e]=a:E=_(e,E)},r.prototype.tv=function(e){return this.radio(e)},r.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},r.prototype.emotion=function(){return this.pick(this.get("emotions"))},r.prototype.mersenne_twister=function(e){return new W(e)},r.prototype.blueimp_md5=function(){return new R};var W=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};W.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},W.prototype.init_by_array=function(e,a){var n=1,c=0,u,C;for(this.init_genrand(19650218),u=this.N>a?this.N:a;u;u--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1664525<<16)+(C&65535)*1664525)+e[c]+c,this.mt[n]>>>=0,n++,c++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),c>=a&&(c=0);for(u=this.N-1;u;u--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1566083941<<16)+(C&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},W.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},W.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},W.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},W.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},W.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},W.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var R=function(){};R.prototype.VERSION="1.0.1",R.prototype.safe_add=function(a,n){var c=(a&65535)+(n&65535),u=(a>>16)+(n>>16)+(c>>16);return u<<16|c&65535},R.prototype.bit_roll=function(e,a){return e<>>32-a},R.prototype.md5_cmn=function(e,a,n,c,u,C){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(c,C)),u),n)},R.prototype.md5_ff=function(e,a,n,c,u,C,P){return this.md5_cmn(a&n|~a&c,e,a,u,C,P)},R.prototype.md5_gg=function(e,a,n,c,u,C,P){return this.md5_cmn(a&c|n&~c,e,a,u,C,P)},R.prototype.md5_hh=function(e,a,n,c,u,C,P){return this.md5_cmn(a^n^c,e,a,u,C,P)},R.prototype.md5_ii=function(e,a,n,c,u,C,P){return this.md5_cmn(n^(a|~c),e,a,u,C,P)},R.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,c,u,C,P,b=1732584193,A=-271733879,v=-1732584194,M=271733878;for(n=0;n>5]>>>a%32&255);return n},R.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(c=this.binl_md5(c,e.length*8)),n=0;n<16;n+=1)u[n]=c[n]^909522486,C[n]=c[n]^1549556828;return P=this.binl_md5(u.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(C.concat(P),512+128))},R.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",c,u;for(u=0;u>>4&15)+a.charAt(c&15);return n},R.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},R.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},R.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},R.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},R.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},R.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},m.exports&&(f=m.exports=r),f.Chance=r,typeof importScripts<"u"&&(chance=new r,self.Chance=r),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=r,window.chance=new r)})()})(ne,ne.exports);var ye=ne.exports;const Se=Ae(ye);function ue(m,f,x,D){var I=new Se(ie);x==null&&console.log();let N=x.toUpperCase(),g=m.toUpperCase(),d=f.toUpperCase();if(D!=null&&0":s=="["?"]":s=="{"?"}":s=="("?")":s}}function f(I,N,g){for(var d=[],p=`(){}[]^-|!*+.><='",;:%@?/\\#~`+g,S=` +(function(V,F){typeof exports=="object"&&typeof module<"u"?F(exports):typeof define=="function"&&define.amd?define(["exports"],F):(V=typeof globalThis<"u"?globalThis:V||self,F(V.quickSQL={}))})(this,function(V){"use strict";function F(m){return m==null?m:m.toUpperCase().endsWith("IES")?m.substring(0,m.length-3)+"y":m.toUpperCase().endsWith("ES")||m.toUpperCase().endsWith("S")?m.substring(0,m.length-1):m}function ve(m,f){let x='"';if(m==null)return null;let D=!1;const I="$#_ ";if(!m.startsWith(x)&&!D){const N=m;if(N.length>0&&"0"<=N[0]&&N[0]<="9")D=!0;else for(let g in N){const d=N[g];if(I.indexOf(d)<0&&(d<"0"||"9""u"&&(e[n]=a[n]);return e}function i(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var o=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?o=btoa:typeof Buffer=="function"&&(o=function(a){return new Buffer(a).toString("base64")})})(),r.prototype.bool=function(e){return e=s(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100c,"Chance: Max specified is out of range with fixed. Max should be, at most, "+c),e=s(e,{min:u,max:c}),a=this.integer({min:e.min*n,max:e.max*n});var C=(a/n).toFixed(e.fixed);return parseFloat(C)},r.prototype.integer=function(e){return e=s(e,{min:D,max:x}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},r.prototype.natural=function(e){if(e=s(e,{min:0,max:x}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),c=e.exclude.sort();for(var u in c){if(ne.max,"Chance: Min cannot be greater than Max.");var a=P.primes[P.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&P.primes.push(n);var c=P.primes.filter(function(u){return u>=e.min&&u<=e.max});return this.pick(c)},r.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},r.prototype.hex=function(e){e=s(e,{min:0,max:x,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},r.prototype.letter=function(e){e=s(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},r.prototype.string=function(e){e=s(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function h(e){this.c=e}h.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function y(e){this.c=e}y.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:g})},a:function(e){return e.character({pool:N})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function B(e){for(var a=[],n="identity",c=0;c"u")throw new p("Sorry, the buffer() function is not supported on your platform");e=s(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},r.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},r.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},r.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var c=function(M,O){return M.indexOf(O)!==-1};n&&(c=n.comparator||c);for(var u=[],C=0,E,b=a*50,A=S.call(arguments,2);u.lengthb)throw new RangeError("Chance: num is likely too large for sample set")}return u},r.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,c=[],u=S.call(arguments,2);for(n=Math.max(0,n),null;n--;null)c.push(e.apply(this,u));return c},r.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},r.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},r.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},r.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),c=n.length;return this.n(function(){var u=this.natural({max:--c}),C=n[u];return n[u]=n[c],C},Math.min(c,a))},r.prototype.shuffle=function(e){for(var a=[],n=0,c=Number(e.length),u=i(c),C=c-1,E,b=0;b0&&(c+=u)}if(c===0)throw new RangeError("Chance: No valid entries in array weights");var E=this.random()*c,b=0,A=-1,v;for(C=0;C0){if(E<=b){v=C;break}A=C}C===a.length-1&&(v=A)}var M=e[v];return n=typeof n>"u"?!1:n,n&&(e.splice(v,1),a.splice(v,1)),M},r.prototype.paragraph=function(e){e=s(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),c=e.linebreak===!0?` +`:" ";return n.join(c)},r.prototype.sentence=function(e){e=s(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,c,u=this.n(this.word,a);return c=u.join(" "),c=this.capitalize(c),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(c+=n),c},r.prototype.syllable=function(e){e=s(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",c="aeiou",u=n+c,C="",E,b=0;be.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var E=e.minAge!==void 0?e.minAge:0,b=e.maxAge!==void 0?e.maxAge:100,A=new Date(c-b-1,n.getMonth(),n.getDate()),v=new Date(c-E,n.getMonth(),n.getDate());A.setDate(A.getDate()+1),v.setDate(v.getDate()+1),v.setMilliseconds(v.getMilliseconds()-1),e=s(e,{min:A,max:v})}else e=s(e,{year:c-a});return this.date(e)},r.prototype.cpf=function(e){e=s(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var c=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;c=11-c%11,c>=10&&(c=0);var u=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+c;return e.formatted?u:u.replace(/\D/g,"")},r.prototype.cnpj=function(e){e=s(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var c=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;c=11-c%11,c<2&&(c=0);var u=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+c;return e.formatted?u:u.replace(/\D/g,"")},r.prototype.first=function(e){return e=s(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},r.prototype.profession=function(e){return e=s(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},r.prototype.company=function(){return this.pick(this.get("company"))},r.prototype.gender=function(e){return e=s(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},r.prototype.last=function(e){if(e=s(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(c){a=a.concat(n[c])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},r.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},r.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},r.prototype.tld=function(){return this.pick(this.tlds())},r.prototype.twitter=function(){return"@"+this.word()},r.prototype.url=function(e){e=s(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},r.prototype.port=function(){return this.integer({min:0,max:65535})},r.prototype.locale=function(e){return e=s(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},r.prototype.locales=function(e){return e=s(e),e.region?this.get("locale_regions"):this.get("locale_languages")},r.prototype.loremPicsum=function(e){e=s(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},r.prototype.address=function(e){return e=s(e),this.natural({min:5,max:2e3})+" "+this.street(e)},r.prototype.altitude=function(e){return e=s(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.areacode=function(e){e=s(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},r.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},r.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},r.prototype.countries=function(){return this.get("countries")},r.prototype.country=function(e){e=s(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},r.prototype.depth=function(e){return e=s(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.geohash=function(e){return e=s(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},r.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},r.prototype.latitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=s(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:c});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.longitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=s(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:c});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.phone=function(e){var a=this,n,c=function(O){var G=[];return O.sections.forEach(function(z){G.push(a.string({pool:"0123456789",length:z}))}),O.area+G.join(" ")};e=s(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var u;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),u=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),u=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),u=e.formatted?c(n):c(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),u=e.formatted?c(n):c(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n);break;case"us":var C=this.areacode(e).toString(),E=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),b=this.natural({min:1e3,max:9999}).toString();u=e.formatted?C+" "+E+"-"+b:C+E+b;break;case"br":var A=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),v;e.mobile?v="9"+a.string({pool:"0123456789",length:4}):v=this.natural({min:2e3,max:5999}).toString();var M=a.string({pool:"0123456789",length:4});u=e.formatted?"("+A+") "+v+"-"+M:A+v+M;break}return u},r.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},r.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",c=e+a+n,u=this.natural({max:9}),C=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),E=u+C;return c+" "+E},r.prototype.counties=function(e){return e=s(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},r.prototype.county=function(e){return this.pick(this.counties(e)).name},r.prototype.provinces=function(e){return e=s(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},r.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},r.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},r.prototype.states=function(e){e=s(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),c=this.get("territories"),u=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(c)),e.armed_forces&&(a=a.concat(u));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},r.prototype.street=function(e){e=s(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},r.prototype.street_suffix=function(e){return e=s(e,{country:"us"}),this.pick(this.street_suffixes(e))},r.prototype.street_suffixes=function(e){return e=s(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},r.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},r.prototype.ampm=function(){return this.bool()?"am":"pm"},r.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=s(e,{american:!0,string:!1});var c=typeof e.min<"u"?e.min.getTime():1,u=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:c,max:u}))}else{var C=this.month({raw:!0}),E=C.days;e&&e.month&&(E=this.get("months")[(e.month%12+12)%12].days),e=s(e,{year:parseInt(this.year(),10),month:C.numeric-1,day:this.natural({min:1,max:E}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},r.prototype.hammertime=function(e){return this.date(e).getTime()},r.prototype.hour=function(e){return e=s(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.millisecond=function(){return this.natural({max:999})},r.prototype.minute=r.prototype.second=function(e){return e=s(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.month=function(e){e=s(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},r.prototype.months=function(){return this.get("months")},r.prototype.second=function(){return this.natural({max:59})},r.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},r.prototype.weekday=function(e){e=s(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},r.prototype.year=function(e){return e=s(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},r.prototype.cc=function(e){e=s(e);var a,n,c;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),c=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,c,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},r.prototype.cc_types=function(){return this.get("cc_types")},r.prototype.cc_type=function(e){e=s(e);var a=this.cc_types(),n=null;if(e.name){for(var c=0;c3&&(O?G=G.substr(0,3):G=G[0]+G.substr(2,2)),G.length<3&&(z=G,G=M.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+G),z},A=function(M,O,G){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return M.getFullYear().toString().substr(2)+z[M.getMonth()]+G.pad(M.getDate()+(O.toLowerCase()==="female"?40:0),2)},v=function(M){for(var O="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",G="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(G[O.indexOf(M[U])]):K+=j.indexOf(G[O.indexOf(M[U])]);return z[K%26]};return E=E.concat(b(c,!0),b(n),A(u,a,this),C.toUpperCase().split("")).join(""),E+=v(E.toUpperCase()),E.toUpperCase()},r.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;u--)c[u-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?c.reduce(function(C,E){return C+E}):c}else throw new RangeError("Chance: A type of die roll must be included")},r.prototype.guid=function(e){e=s(e,{version:5});var a="abcdef1234567890",n="ab89",c=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return c},r.prototype.hash=function(e){e=s(e,{length:40,casing:"lower"});var a=e.casing==="upper"?d.toUpperCase():d;return this.string({pool:a,length:e.length})},r.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},r.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,c,u=0,C=a.length;C>u;++u)c=+a[u],u%2===0&&(c*=2,c>9&&(c-=9)),n+=c;return n*9%10},r.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=s(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},r.prototype.file=function(e){var a=e||{},n="fileExtension",c=Object.keys(this.get("fileExtension")),u,C;if(u=this.word({length:a.length}),a.extension)return C=a.extension,u+"."+C;if(a.extensions){if(Array.isArray(a.extensions))return C=this.pickone(a.extensions),u+"."+C;if(a.extensions.constructor===Object){var E=a.extensions,b=Object.keys(E);return C=this.pickone(E[this.pickone(b)]),u+"."+C}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var A=a.fileType;if(c.indexOf(A)!==-1)return C=this.pickone(this.get(n)[A]),u+"."+C;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return C=this.pickone(this.get(n)[this.pickone(c)]),u+"."+C},r.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var c={fileData:this.buffer({length:a.fileSize}),fileName:n};return c};var P={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},L=Object.prototype.hasOwnProperty,k=Object.keys||function(e){var a=[];for(var n in e)L.call(e,n)&&a.push(n);return a};function w(e,a){for(var n=k(e),c,u=0,C=n.length;u0)return this.normal_pool(e);var a,n,c,u,C=e.mean,E=e.dev;do n=this.random()*2-1,c=this.random()*2-1,a=n*n+c*c;while(a>=1);return u=n*Math.sqrt(-2*Math.log(a)/a),E*u+C},r.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},r.prototype.radio=function(e){e=s(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},r.prototype.set=function(e,a){typeof e=="string"?P[e]=a:P=_(e,P)},r.prototype.tv=function(e){return this.radio(e)},r.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},r.prototype.emotion=function(){return this.pick(this.get("emotions"))},r.prototype.mersenne_twister=function(e){return new W(e)},r.prototype.blueimp_md5=function(){return new R};var W=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};W.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},W.prototype.init_by_array=function(e,a){var n=1,c=0,u,C;for(this.init_genrand(19650218),u=this.N>a?this.N:a;u;u--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1664525<<16)+(C&65535)*1664525)+e[c]+c,this.mt[n]>>>=0,n++,c++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),c>=a&&(c=0);for(u=this.N-1;u;u--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1566083941<<16)+(C&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},W.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},W.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},W.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},W.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},W.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},W.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var R=function(){};R.prototype.VERSION="1.0.1",R.prototype.safe_add=function(a,n){var c=(a&65535)+(n&65535),u=(a>>16)+(n>>16)+(c>>16);return u<<16|c&65535},R.prototype.bit_roll=function(e,a){return e<>>32-a},R.prototype.md5_cmn=function(e,a,n,c,u,C){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(c,C)),u),n)},R.prototype.md5_ff=function(e,a,n,c,u,C,E){return this.md5_cmn(a&n|~a&c,e,a,u,C,E)},R.prototype.md5_gg=function(e,a,n,c,u,C,E){return this.md5_cmn(a&c|n&~c,e,a,u,C,E)},R.prototype.md5_hh=function(e,a,n,c,u,C,E){return this.md5_cmn(a^n^c,e,a,u,C,E)},R.prototype.md5_ii=function(e,a,n,c,u,C,E){return this.md5_cmn(n^(a|~c),e,a,u,C,E)},R.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,c,u,C,E,b=1732584193,A=-271733879,v=-1732584194,M=271733878;for(n=0;n>5]>>>a%32&255);return n},R.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(c=this.binl_md5(c,e.length*8)),n=0;n<16;n+=1)u[n]=c[n]^909522486,C[n]=c[n]^1549556828;return E=this.binl_md5(u.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(C.concat(E),512+128))},R.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",c,u;for(u=0;u>>4&15)+a.charAt(c&15);return n},R.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},R.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},R.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},R.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},R.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},R.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},m.exports&&(f=m.exports=r),f.Chance=r,typeof importScripts<"u"&&(chance=new r,self.Chance=r),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=r,window.chance=new r)})()})(ne,ne.exports);var ye=ne.exports;const Se=Ae(ye);function ue(m,f,x,D){var I=new Se(ie);x==null&&console.log();let N=x.toUpperCase(),g=m.toUpperCase(),d=f.toUpperCase();if(D!=null&&0":s=="["?"]":s=="{"?"}":s=="("?")":s}}function f(I,N,g){for(var d=[],p=`(){}[]^-|!*+.><='",;:%@?/\\#~`+g,S=` \r `,r=$(I,p+S),s=0,i=0,t=0,o=0;o0&&(h=d[d.length-1]),l==` `?(i++,t=0):o>0&&r[o-1]!==` `?t=t+r[o-1].length:t=0,s+=l.length,h!=null&&h.type=="comment"&&(h.value.lastIndexOf("*/")!=h.value.length-2||h.value=="/*/")){l=="*"||l=="/"?h.value=h.value+l:h.value="/* ... ",h.end=s,h!=null&&h.type=="comment"&&h.value.lastIndexOf("*/")==h.value.length-2&&h.value!="/*/"&&(h.value=I.substring(h.begin,h.end));continue}if(h!=null&&(h.type=="line-comment"||h.type=="dbtools-command")&&l!=` @@ -8,23 +8,23 @@ `||h.value=="\r")){d.push(new m(l,s-l.length,-9,"line-comment",i,t));continue}if(l.toUpperCase()=="SODA"&&(h==null||h.value==` `||h.value=="\r")){d.push(new m(l,s-l.length,-9,"dbtools-command",i,t));continue}if(h!=null&&h.type=="identifier"&&h.end==-11&&h.value.indexOf("@")==0&&!(l==` `||l=="\r")){h.value=h.value+l;continue}if(h!=null&&h.type=="identifier"&&h.end==-11&&h.value.indexOf("@")==0&&(l==` -`||l=="\r")){h.end=s-1,d.push(new m(l,s-1,s,"ws",i,t));continue}if(N&&l=="'"){h!=null&&(h.value.toUpperCase()=="Q"||h.value.toUpperCase()=="N"||h.value.toUpperCase()=="U"||h.value.toUpperCase()=="NQ")?(h.value+=l,h.type="quoted-string"):d.push(new m(l,s-1,-10,"quoted-string",i,t));continue}if(N&&l=='"'){d.push(new m(l,s-1,-11,"dquoted-string",i,t));continue}if(l=="`"&&0<=p.indexOf("`")){d.push(new m(l,s-1,-11,"bquoted-string",i,t));continue}if(l.length==1&&0<=p.indexOf(l)){d.push(new m(l,s-1,s,"operation",i,t));continue}if(l.length==1&&0<=S.indexOf(l)){d.push(new m(l,s-1,s,"ws",i,t));continue}if("0"<=l.charAt(0)&&l.charAt(0)<="9"){x(l,d,s-l.length,i)||(l.charAt(l.length-1)=="K"||l.charAt(l.length-1)=="k"||l.charAt(l.length-1)=="M"||l.charAt(l.length-1)=="m"||l.charAt(l.length-1)=="G"||l.charAt(l.length-1)=="g"||l.charAt(l.length-1)=="T"||l.charAt(l.length-1)=="t"||l.charAt(l.length-1)=="P"||l.charAt(l.length-1)=="p"||l.charAt(l.length-1)=="E"||l.charAt(l.length-1)=="e"?(d.push(new m(l.substring(0,l.length-1),s-l.length,s-1,"constant.numeric",i,t)),d.push(new m(l.substring(l.length-1),s-1,s,"constant.numeric",i,t))):d.push(new m(l,s-l.length,s,"constant.numeric",i,t)));continue}var y="identifier";o+10){var h=d[d.length-1];h.end=I.length}return d}function x(I,N,g,d){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var p=$(I,"efd"),S=0;S")==0||i.indexOf("<")==0)&&(i=i.substring(1).trim());const l=i.toLowerCase();if(l.indexOf("view ")==0){var h=i.split(" ");return h[1]}i=g(i," d");var y=i.indexOf("/");0="0"&&B<="9"&&(i="x"+i),Te(se(i))},this.parseType=function(i){if(this.children!=null&&00){var h=d[d.length-1];h.end=I.length}return d}function x(I,N,g,d){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var p=$(I,"efd"),S=0;S")==0||i.indexOf("<")==0)&&(i=i.substring(1).trim());const l=i.toLowerCase();if(l.indexOf("view ")==0){var h=i.split(" ");return h[1]}i=g(i," d");var y=i.indexOf("/");0="0"&&B<="9"&&(i="x"+i),Te(se(i))},this.parseType=function(i){if(this.children!=null&&0!0)),w}return y}0!0)),w}return y}0");return t==0},this.getExplicitPkNode=function(){for(var i=0;ii.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(m.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),m.optionEQvalue("prefixPKwithTname","yes")&&(t=O(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let i=this.getGenIdColName();if(i==null){let t=this.getExplicitPkNode();return t==null?null:t.parseName()}return i},this.singleDDL=function(){if(this.children.length==0&&0");return t==0},this.getExplicitPkNode=function(){for(var i=0;ii.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(m.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),m.optionEQvalue("prefixPKwithTname","yes")&&(t=F(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let i=this.getGenIdColName();if(i==null){let t=this.getExplicitPkNode();return t==null?null:t.parseName()}return i},this.singleDDL=function(){if(this.children.length==0&&0!0):u==null&&(u=m.find(a),u.isMany2One()&!a.endsWith("_id")&&(n=a,a=O(a),C="_id")),h=f+" ".repeat(this.maxChildNameLen()-a.length),o+=f+a+C+h+c+` +`}}for(let a in this.fks){let n=this.fks[a],c="number";const u=this.findChild(a);u!=null&&(c=u.parseType("fk"));let C=m.find(n),E="";C!=null&&C.getExplicitPkNode()!=null?c=C.getExplicitPkNode().parseType(v=>!0):C==null&&(C=m.find(a),C.isMany2One()&!a.endsWith("_id")&&(n=a,a=F(a),E="_id")),h=f+" ".repeat(this.maxChildNameLen()-a.length),o+=f+a+E+h+c+` `,o+=f+f+" ".repeat(this.maxChildNameLen())+"constraint "+l+"_"+a+`_fk -`;let P="";0<=i.indexOf("/CASCADE")&&(P=" on delete cascade");let b="";for(let A in this.children){let v=this.children[A];if(a==v.parseName()){let M=v.trimmedContent().toUpperCase();(0<=M.indexOf("/NN")||0<=M.indexOf("/NOTNULL"))&&(b=" NOT NULL".toLowerCase()),0<=M.indexOf("/CASCADE")&&(P=" on delete cascade");break}}o+=f+f+" ".repeat(this.maxChildNameLen())+"references "+m.objPrefix()+n+P+b+`, +`;let b="";0<=i.indexOf("/CASCADE")&&(b=" on delete cascade");let A="";for(let v in this.children){let M=this.children[v];if(a==M.parseName()){let O=M.trimmedContent().toUpperCase();(0<=O.indexOf("/NN")||0<=O.indexOf("/NOTNULL"))&&(A=" NOT NULL".toLowerCase()),0<=O.indexOf("/CASCADE")&&(b=" on delete cascade");break}}o+=f+f+" ".repeat(this.maxChildNameLen())+"references "+m.objPrefix()+n+b+A+`, `}if(m.optionEQvalue("rowkey",!0)||0!0)),l+=`, +`;l+=f+f+"p_id in number"+t;for(var h in this.fks){let B=this.fks[h],T="number",P=m.find(B);P!=null&&P.getExplicitPkNode()!=null&&(T=P.getExplicitPkNode().parseType(L=>!0)),l+=`, `,l+=f+f+"P_"+h+" "+o+" "+T+t}for(let B=0;B!0),(i=="insert"||i=="update")&&(o+=`, +`,l+=f+f+f+"id = p_id"),o+=l;for(let T in this.fks){let P=this.fks[T],L=m.find(P);L!=null&&L.getExplicitPkNode()!=null&&L.getExplicitPkNode().parseType(w=>!0),(i=="insert"||i=="update")&&(o+=`, `);let k=f+f+f+"P_"+T+" := c1."+T+`; `;i=="insert"&&(k=f+f+f+T),i=="update"&&(k=f+f+f+T+" = P_"+T+` `),o+=k}for(var h=0;h"),0!0)}),0true); @@ -533,22 +546,10 @@ let tree = (function(){ return this.parent.depth()+1; }; - /*this.location = function() { - return '['+x+','+this.y()+')'; - }; - this.toString = function( padding ) { - return this.apparentDepth(padding) - //+ nbrsp; - + this.location() - + padding - + this.content - ; - };*/ this.isLeaf = function( ) { return this.children.every((c) => c.children.length == 0); }; - this.getGenIdColName = function () { if( this.parseType() != 'table' ) return null; @@ -641,8 +642,11 @@ let tree = (function(){ } for( let fk in this.fks ) { - let parent = this.fks[fk]; + let parent = this.fks[fk]; let type = 'number'; + const attr = this.findChild(fk); + if( attr != null ) + type = attr.parseType('fk'); let refNode = ddl.find(parent); let _id = ''; if( refNode != null && refNode.getExplicitPkNode() != null ) @@ -751,8 +755,6 @@ let tree = (function(){ if( !this.isMany2One() ) { var parent = this.fks[fk]; var ref = parent; - //if( ref.endsWith('S') ) - //ref = ref.substr(0,ref.length-1); var col = fk; if( col == null ) col = singular(ref)+'_id'; diff --git a/test/single_test.js b/test/single_test.js index b5a7e88..b2f9310 100644 --- a/test/single_test.js +++ b/test/single_test.js @@ -3,7 +3,7 @@ import {quicksql,fromJSON} from "../src/ddl.js"; import fs from "fs"; try { - let file = '//bugs/35923103.qsql'; + let file = '//bugs/Bug35669377.quicksql'; //file = '//DV/car_racing/2.qsql'; //file = '//star/sales_product_customers.qsql'; //file = '//experimental/car_racing/2.json'; diff --git a/test/small_tests.js b/test/small_tests.js index f59ce6a..e4b811f 100644 --- a/test/small_tests.js +++ b/test/small_tests.js @@ -533,15 +533,22 @@ students name `).getDDL(); - assert( "0 < output.indexOf('drop sequence students_seq')" ); + assert( "0 < output.indexOf('drop sequence students_seq')" ); // https://github.com/oracle/quicksql/issues/42 output = new quicksql( `test approved boolean /default N `).getDDL(); - //console.log(output); assert( "0 < output.indexOf(\"default on null 'N'\")" ); + + // https://github.com/oracle/quicksql/issues/43 + output = new quicksql( `test + foo_id int /nn /fk foo + `).getDDL(); + + //console.log(output); + assert( "0 < output.indexOf(\"foo_id integer\")" ); } From 0e644ee7cf59aa864d7f400430fe42c1369b83ed Mon Sep 17 00:00:00 2001 From: Vadim Tropashko Date: Wed, 24 Jan 2024 16:42:06 -0800 Subject: [PATCH 12/22] json2qsql progress --- dist/quick-sql.js | 2616 +++++++++-------- dist/quick-sql.umd.cjs | 320 +- src/json2qsql.js | 56 +- src/tree.js | 44 +- test/JSON/car_racing/1.qsql | 47 +- test/{experimental => JSON}/car_racing/2.json | 4 +- test/{experimental => JSON}/car_racing/2.qsql | 36 +- test/{experimental => JSON}/car_racing/2.sql | 151 +- test/experimental/donuts.json | 70 + test/experimental/donuts.qsql | 319 ++ test/experimental/donuts.sql | 681 +++++ test/regression_test.js | 1 + test/single_test.js | 2 +- test/tst_000.sql | 0 14 files changed, 2720 insertions(+), 1627 deletions(-) rename test/{experimental => JSON}/car_racing/2.json (95%) rename test/{experimental => JSON}/car_racing/2.qsql (83%) rename test/{experimental => JSON}/car_racing/2.sql (70%) create mode 100644 test/experimental/donuts.json create mode 100644 test/experimental/donuts.qsql create mode 100644 test/experimental/donuts.sql create mode 100644 test/tst_000.sql diff --git a/dist/quick-sql.js b/dist/quick-sql.js index 580352e..1893559 100644 --- a/dist/quick-sql.js +++ b/dist/quick-sql.js @@ -1,43 +1,43 @@ -function _(m) { - return m == null ? m : m.toUpperCase().endsWith("IES") ? m.substring(0, m.length - 3) + "y" : m.toUpperCase().endsWith("ES") || m.toUpperCase().endsWith("S") ? m.substring(0, m.length - 1) : m; +function W(d) { + return d == null ? d : d.toUpperCase().endsWith("IES") ? d.substring(0, d.length - 3) + "y" : d.toUpperCase().endsWith("ES") || d.toUpperCase().endsWith("S") ? d.substring(0, d.length - 1) : d; } -function fe(m, f) { +function fe(d, h) { let k = '"'; - if (m == null) + if (d == null) return null; - let D = !1; + let N = !1; const I = "$#_ "; - if (!m.startsWith(k) && !D) { - const N = m; - if (N.length > 0 && "0" <= N[0] && N[0] <= "9") - D = !0; + if (!d.startsWith(k) && !N) { + const x = d; + if (x.length > 0 && "0" <= x[0] && x[0] <= "9") + N = !0; else - for (let g in N) { - const d = N[g]; - if (I.indexOf(d) < 0 && (d < "0" || "9" < d && d < "A" || "Z" < d && d < "a" || "z" < d)) { - D = !0; + for (let p in x) { + const g = x[p]; + if (I.indexOf(g) < 0 && (g < "0" || "9" < g && g < "A" || "Z" < g && g < "a" || "z" < g)) { + N = !0; break; } } } - return (m.startsWith("_") || m.startsWith("$") || m.startsWith("#")) && (D = !0), D || (k = ""), k + m + k; + return (d.startsWith("_") || d.startsWith("$") || d.startsWith("#")) && (N = !0), N || (k = ""), k + d + k; } -function he(m) { - if (m == null) +function he(d) { + if (d == null) return null; - if (m.indexOf('"') == 0) - return m; - let f = fe(m); - return f.indexOf('"') == 0 || (f = f.replace(/ /g, "_")), f; + if (d.indexOf('"') == 0) + return d; + let h = fe(d); + return h.indexOf('"') == 0 || (h = h.replace(/ /g, "_")), h; } -function K(m, f, k) { - let D = !1; - k == null && (k = ""), m.indexOf('"') == 0 && (D = !0, m = m.substring(1, m.length - 1)), f.indexOf('"') == 0 && (D = !0, f = f.substring(1, f.length - 1)), k.indexOf('"') == 0 && (D = !0, k = k.substring(1, k.length - 1)); - let I = m + f + k; - return D ? I = '"' + I + '"' : I = I.toLowerCase(), I; +function K(d, h, k) { + let N = !1; + k == null && (k = ""), d.indexOf('"') == 0 && (N = !0, d = d.substring(1, d.length - 1)), h.indexOf('"') == 0 && (N = !0, h = h.substring(1, h.length - 1)), k.indexOf('"') == 0 && (N = !0, k = k.substring(1, k.length - 1)); + let I = d + h + k; + return N ? I = '"' + I + '"' : I = I.toLowerCase(), I; } var le = function() { - var m = [ + var d = [ "Sales", "Finance", "Delivery", @@ -50,7 +50,7 @@ var le = function() { "Specialist", "Evangelist", "Salesman" - ], f = [ + ], h = [ "\u300C\u8CA9\u58F2\u300D", "\u300C\u8CA1\u52D9\u300D", "\u300C\u914D\u9001\u300D", @@ -76,34 +76,34 @@ var le = function() { "\uC804\uB3C4\uC790", "\uD310\uB9E4\uC6D0" ]; - function D(I, N) { - if (typeof N != "string" || I.substring(0, 2).toLowerCase() == "en") - return N; - N.indexOf("'") == 0 && (N = N.substring(1, N.length - 1)); - for (var g = -1, d = 0; d < m.length; d++) - if (m[d] == N) { - g = d; + function N(I, x) { + if (typeof x != "string" || I.substring(0, 2).toLowerCase() == "en") + return x; + x.indexOf("'") == 0 && (x = x.substring(1, x.length - 1)); + for (var p = -1, g = 0; g < d.length; g++) + if (d[g] == x) { + p = g; break; } - return 0 <= g && I.substring(0, 2).toLowerCase() == "jp" && g < f.length ? "'" + f[g] + "'" : 0 <= g && I.substring(0, 2).toLowerCase() == "kr" && g < k.length ? "'" + k[g] + "'" : N; + return 0 <= p && I.substring(0, 2).toLowerCase() == "jp" && p < h.length ? "'" + h[p] + "'" : 0 <= p && I.substring(0, 2).toLowerCase() == "kr" && p < k.length ? "'" + k[p] + "'" : x; } - return D; + return N; }(); -function be(m) { - return m && m.__esModule && Object.prototype.hasOwnProperty.call(m, "default") ? m.default : m; +function be(d) { + return d && d.__esModule && Object.prototype.hasOwnProperty.call(d, "default") ? d.default : d; } var ie = { exports: {} }; -(function(m, f) { +(function(d, h) { (function() { - var k = 9007199254740992, D = -k, I = "0123456789", N = "abcdefghijklmnopqrstuvwxyz", g = N.toUpperCase(), d = I + "abcdef"; - function p(e) { + var k = 9007199254740992, N = -k, I = "0123456789", x = "abcdefghijklmnopqrstuvwxyz", p = x.toUpperCase(), g = I + "abcdef"; + function T(e) { this.name = "UnsupportedError", this.message = e || "This feature is not supported on this platform"; } - p.prototype = new Error(), p.prototype.constructor = p; - var S = Array.prototype.slice; - function r(e) { - if (!(this instanceof r)) - return e || (e = null), e === null ? new r() : new r(e); + T.prototype = new Error(), T.prototype.constructor = T; + var b = Array.prototype.slice; + function i(e) { + if (!(this instanceof i)) + return e || (e = null), e === null ? new i() : new i(e); if (typeof e == "function") return this.random = e, this; arguments.length && (this.seed = 0); @@ -123,14 +123,14 @@ var ie = { exports: {} }; return this.mt.random(this.seed); }, this; } - r.prototype.VERSION = "1.1.11"; + i.prototype.VERSION = "1.1.11"; function s(e, a) { if (e = e || {}, a) for (var n in a) typeof e[n] > "u" && (e[n] = a[n]); return e; } - function i(e) { + function r(e) { return Array.apply(null, Array(e)).map(function(a, n) { return n; }); @@ -146,16 +146,16 @@ var ie = { exports: {} }; typeof btoa == "function" ? o = btoa : typeof Buffer == "function" && (o = function(a) { return new Buffer(a).toString("base64"); }); - })(), r.prototype.bool = function(e) { + })(), i.prototype.bool = function(e) { return e = s(e, { likelihood: 50 }), t( e.likelihood < 0 || e.likelihood > 100, "Chance: Likelihood accepts values from 0 to 100." ), this.random() * 100 < e.likelihood; - }, r.prototype.falsy = function(e) { + }, i.prototype.falsy = function(e) { e = s(e, { pool: [!1, null, 0, NaN, "", void 0] }); var a = e.pool, n = this.integer({ min: 0, max: a.length - 1 }), c = a[n]; return c; - }, r.prototype.animal = function(e) { + }, i.prototype.animal = function(e) { if (e = s(e), typeof e.type < "u") return t( !this.get("animals")[e.type.toLowerCase()], @@ -163,11 +163,11 @@ var ie = { exports: {} }; ), this.pick(this.get("animals")[e.type.toLowerCase()]); var a = ["desert", "forest", "ocean", "zoo", "farm", "pet", "grassland"]; return this.pick(this.get("animals")[this.pick(a)]); - }, r.prototype.character = function(e) { + }, i.prototype.character = function(e) { e = s(e); var a = "!@#$%^&*()[]", n, c; - return e.casing === "lower" ? n = N : e.casing === "upper" ? n = g : n = N + g, e.pool ? c = e.pool : (c = "", e.alpha && (c += n), e.numeric && (c += I), e.symbols && (c += a), c || (c = n + I + a)), c.charAt(this.natural({ max: c.length - 1 })); - }, r.prototype.floating = function(e) { + return e.casing === "lower" ? n = x : e.casing === "upper" ? n = p : n = x + p, e.pool ? c = e.pool : (c = "", e.alpha && (c += n), e.numeric && (c += I), e.symbols && (c += a), c || (c = n + I + a)), c.charAt(this.natural({ max: c.length - 1 })); + }, i.prototype.floating = function(e) { e = s(e, { fixed: 4 }), t( e.fixed && e.precision, "Chance: Cannot specify both fixed and precision." @@ -182,9 +182,9 @@ var ie = { exports: {} }; ), e = s(e, { min: u, max: c }), a = this.integer({ min: e.min * n, max: e.max * n }); var C = (a / n).toFixed(e.fixed); return parseFloat(C); - }, r.prototype.integer = function(e) { - return e = s(e, { min: D, max: k }), t(e.min > e.max, "Chance: Min cannot be greater than Max."), Math.floor(this.random() * (e.max - e.min + 1) + e.min); - }, r.prototype.natural = function(e) { + }, i.prototype.integer = function(e) { + return e = s(e, { min: N, max: k }), t(e.min > e.max, "Chance: Min cannot be greater than Max."), Math.floor(this.random() * (e.max - e.min + 1) + e.min); + }, i.prototype.natural = function(e) { if (e = s(e, { min: 0, max: k }), typeof e.numerals == "number" && (t(e.numerals < 1, "Chance: Numerals cannot be less than one."), e.min = Math.pow(10, e.numerals - 1), e.max = Math.pow(10, e.numerals) - 1), t(e.min < 0, "Chance: Min cannot be less than zero."), e.exclude) { t(!Array.isArray(e.exclude), "Chance: exclude must be an array."); for (var a in e.exclude) @@ -198,17 +198,17 @@ var ie = { exports: {} }; return n; } return this.integer(e); - }, r.prototype.prime = function(e) { + }, i.prototype.prime = function(e) { e = s(e, { min: 0, max: 1e4 }), t(e.min < 0, "Chance: Min cannot be less than zero."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); - var a = P.primes[P.primes.length - 1]; + var a = L.primes[L.primes.length - 1]; if (e.max > a) for (var n = a + 2; n <= e.max; ++n) - this.is_prime(n) && P.primes.push(n); - var c = P.primes.filter(function(u) { + this.is_prime(n) && L.primes.push(n); + var c = L.primes.filter(function(u) { return u >= e.min && u <= e.max; }); return this.pick(c); - }, r.prototype.is_prime = function(e) { + }, i.prototype.is_prime = function(e) { if (e % 1 || e < 2) return !1; if (e % 2 === 0) @@ -219,15 +219,15 @@ var ie = { exports: {} }; if (e % n === 0 || e % (n + 2) === 0) return !1; return !0; - }, r.prototype.hex = function(e) { + }, i.prototype.hex = function(e) { e = s(e, { min: 0, max: k, casing: "lower" }), t(e.min < 0, "Chance: Min cannot be less than zero."); var a = this.natural({ min: e.min, max: e.max }); return e.casing === "upper" ? a.toString(16).toUpperCase() : a.toString(16); - }, r.prototype.letter = function(e) { + }, i.prototype.letter = function(e) { e = s(e, { casing: "lower" }); var a = "abcdefghijklmnopqrstuvwxyz", n = this.character({ pool: a }); return e.casing === "upper" && (n = n.toUpperCase()), n; - }, r.prototype.string = function(e) { + }, i.prototype.string = function(e) { e = s(e, { min: 5, max: 20 }), e.length !== 0 && !e.length && (e.length = this.natural({ min: e.min, max: e.max })), t(e.length < 0, "Chance: Length cannot be less than zero."); var a = e.length, n = this.n(this.character, a, e); return n.join(""); @@ -240,29 +240,29 @@ var ie = { exports: {} }; return this.c; } }; - function h(e) { + function m(e) { this.c = e; } - h.prototype = { + m.prototype = { substitute: function() { if (!/[{}\\]/.test(this.c)) throw new Error('Invalid escape sequence: "\\' + this.c + '".'); return this.c; } }; - function y(e) { + function v(e) { this.c = e; } - y.prototype = { + v.prototype = { replacers: { "#": function(e) { return e.character({ pool: I }); }, A: function(e) { - return e.character({ pool: g }); + return e.character({ pool: p }); }, a: function(e) { - return e.character({ pool: N }); + return e.character({ pool: x }); } }, substitute: function(e) { @@ -277,72 +277,72 @@ var ie = { exports: {} }; var u = e[c]; switch (n) { case "escape": - a.push(new h(u)), n = "identity"; + a.push(new m(u)), n = "identity"; break; case "identity": u === "{" ? n = "replace" : u === "\\" ? n = "escape" : a.push(new l(u)); break; case "replace": - u === "}" ? n = "identity" : a.push(new y(u)); + u === "}" ? n = "identity" : a.push(new v(u)); break; } } return a; } - r.prototype.template = function(e) { + i.prototype.template = function(e) { if (!e) throw new Error("Template string is required"); var a = this; return B(e).map(function(n) { return n.substitute(a); }).join(""); - }, r.prototype.buffer = function(e) { + }, i.prototype.buffer = function(e) { if (typeof Buffer > "u") - throw new p("Sorry, the buffer() function is not supported on your platform"); + throw new T("Sorry, the buffer() function is not supported on your platform"); e = s(e, { length: this.natural({ min: 5, max: 20 }) }), t(e.length < 0, "Chance: Length cannot be less than zero."); var a = e.length, n = this.n(this.character, a, e); return Buffer.from(n); - }, r.prototype.capitalize = function(e) { + }, i.prototype.capitalize = function(e) { return e.charAt(0).toUpperCase() + e.substr(1); - }, r.prototype.mixin = function(e) { + }, i.prototype.mixin = function(e) { for (var a in e) this[a] = e[a]; return this; - }, r.prototype.unique = function(e, a, n) { + }, i.prototype.unique = function(e, a, n) { t( typeof e != "function", "Chance: The first argument must be a function." ); - var c = function(M, O) { - return M.indexOf(O) !== -1; + var c = function(S, _) { + return S.indexOf(_) !== -1; }; n && (c = n.comparator || c); - for (var u = [], C = 0, E, b = a * 50, A = S.call(arguments, 2); u.length < a; ) { - var v = JSON.parse(JSON.stringify(A)); - if (E = e.apply(this, v), c(u, E) || (u.push(E), C = 0), ++C > b) + for (var u = [], C = 0, P, f = a * 50, y = b.call(arguments, 2); u.length < a; ) { + var A = JSON.parse(JSON.stringify(y)); + if (P = e.apply(this, A), c(u, P) || (u.push(P), C = 0), ++C > f) throw new RangeError("Chance: num is likely too large for sample set"); } return u; - }, r.prototype.n = function(e, a) { + }, i.prototype.n = function(e, a) { t( typeof e != "function", "Chance: The first argument must be a function." ), typeof a > "u" && (a = 1); - var n = a, c = [], u = S.call(arguments, 2); + var n = a, c = [], u = b.call(arguments, 2); for (n = Math.max(0, n), null; n--; null) c.push(e.apply(this, u)); return c; - }, r.prototype.pad = function(e, a, n) { + }, i.prototype.pad = function(e, a, n) { return n = n || "0", e = e + "", e.length >= a ? e : new Array(a - e.length + 1).join(n) + e; - }, r.prototype.pick = function(e, a) { + }, i.prototype.pick = function(e, a) { if (e.length === 0) throw new RangeError("Chance: Cannot pick() from an empty array"); return !a || a === 1 ? e[this.natural({ max: e.length - 1 })] : this.shuffle(e).slice(0, a); - }, r.prototype.pickone = function(e) { + }, i.prototype.pickone = function(e) { if (e.length === 0) throw new RangeError("Chance: Cannot pickone() from an empty array"); return e[this.natural({ max: e.length - 1 })]; - }, r.prototype.pickset = function(e, a) { + }, i.prototype.pickset = function(e, a) { if (a === 0) return []; if (e.length === 0) @@ -356,11 +356,11 @@ var ie = { exports: {} }; var u = this.natural({ max: --c }), C = n[u]; return n[u] = n[c], C; }, Math.min(c, a)); - }, r.prototype.shuffle = function(e) { - for (var a = [], n = 0, c = Number(e.length), u = i(c), C = c - 1, E, b = 0; b < c; b++) - E = this.natural({ max: C }), n = u[E], a[b] = e[n], u[E] = u[C], C -= 1; + }, i.prototype.shuffle = function(e) { + for (var a = [], n = 0, c = Number(e.length), u = r(c), C = c - 1, P, f = 0; f < c; f++) + P = this.natural({ max: C }), n = u[P], a[f] = e[n], u[P] = u[C], C -= 1; return a; - }, r.prototype.weighted = function(e, a, n) { + }, i.prototype.weighted = function(e, a, n) { if (e.length !== a.length) throw new RangeError("Chance: Length of array and weights must match"); for (var c = 0, u, C = 0; C < a.length; ++C) { @@ -370,34 +370,34 @@ var ie = { exports: {} }; } if (c === 0) throw new RangeError("Chance: No valid entries in array weights"); - var E = this.random() * c, b = 0, A = -1, v; + var P = this.random() * c, f = 0, y = -1, A; for (C = 0; C < a.length; ++C) { - if (u = a[C], b += u, u > 0) { - if (E <= b) { - v = C; + if (u = a[C], f += u, u > 0) { + if (P <= f) { + A = C; break; } - A = C; + y = C; } - C === a.length - 1 && (v = A); + C === a.length - 1 && (A = y); } - var M = e[v]; - return n = typeof n > "u" ? !1 : n, n && (e.splice(v, 1), a.splice(v, 1)), M; - }, r.prototype.paragraph = function(e) { + var S = e[A]; + return n = typeof n > "u" ? !1 : n, n && (e.splice(A, 1), a.splice(A, 1)), S; + }, i.prototype.paragraph = function(e) { e = s(e); var a = e.sentences || this.natural({ min: 3, max: 7 }), n = this.n(this.sentence, a), c = e.linebreak === !0 ? ` ` : " "; return n.join(c); - }, r.prototype.sentence = function(e) { + }, i.prototype.sentence = function(e) { e = s(e); var a = e.words || this.natural({ min: 12, max: 18 }), n = e.punctuation, c, u = this.n(this.word, a); return c = u.join(" "), c = this.capitalize(c), n !== !1 && !/^[.?;!:]$/.test(n) && (n = "."), n && (c += n), c; - }, r.prototype.syllable = function(e) { + }, i.prototype.syllable = function(e) { e = s(e); - for (var a = e.length || this.natural({ min: 2, max: 3 }), n = "bcdfghjklmnprstvwz", c = "aeiou", u = n + c, C = "", E, b = 0; b < a; b++) - b === 0 ? E = this.character({ pool: u }) : n.indexOf(E) === -1 ? E = this.character({ pool: n }) : E = this.character({ pool: c }), C += E; + for (var a = e.length || this.natural({ min: 2, max: 3 }), n = "bcdfghjklmnprstvwz", c = "aeiou", u = n + c, C = "", P, f = 0; f < a; f++) + f === 0 ? P = this.character({ pool: u }) : n.indexOf(P) === -1 ? P = this.character({ pool: n }) : P = this.character({ pool: c }), C += P; return e.capitalize && (C = this.capitalize(C)), C; - }, r.prototype.word = function(e) { + }, i.prototype.word = function(e) { e = s(e), t( e.syllables && e.length, "Chance: Cannot specify both syllables AND length." @@ -412,7 +412,7 @@ var ie = { exports: {} }; for (var c = 0; c < a; c++) n += this.syllable(); return e.capitalize && (n = this.capitalize(n)), n; - }, r.prototype.age = function(e) { + }, i.prototype.age = function(e) { e = s(e); var a; switch (e.type) { @@ -436,7 +436,7 @@ var ie = { exports: {} }; break; } return this.natural(a); - }, r.prototype.birthday = function(e) { + }, i.prototype.birthday = function(e) { var a = this.age(e), n = /* @__PURE__ */ new Date(), c = n.getFullYear(); if (e && e.type) { var u = /* @__PURE__ */ new Date(), C = /* @__PURE__ */ new Date(); @@ -446,17 +446,17 @@ var ie = { exports: {} }; }); } else if (e && (e.minAge !== void 0 || e.maxAge !== void 0)) { t(e.minAge < 0, "Chance: MinAge cannot be less than zero."), t(e.minAge > e.maxAge, "Chance: MinAge cannot be greater than MaxAge."); - var E = e.minAge !== void 0 ? e.minAge : 0, b = e.maxAge !== void 0 ? e.maxAge : 100, A = new Date(c - b - 1, n.getMonth(), n.getDate()), v = new Date(c - E, n.getMonth(), n.getDate()); - A.setDate(A.getDate() + 1), v.setDate(v.getDate() + 1), v.setMilliseconds(v.getMilliseconds() - 1), e = s(e, { - min: A, - max: v + var P = e.minAge !== void 0 ? e.minAge : 0, f = e.maxAge !== void 0 ? e.maxAge : 100, y = new Date(c - f - 1, n.getMonth(), n.getDate()), A = new Date(c - P, n.getMonth(), n.getDate()); + y.setDate(y.getDate() + 1), A.setDate(A.getDate() + 1), A.setMilliseconds(A.getMilliseconds() - 1), e = s(e, { + min: y, + max: A }); } else e = s(e, { year: c - a }); return this.date(e); - }, r.prototype.cpf = function(e) { + }, i.prototype.cpf = function(e) { e = s(e, { formatted: !0 }); @@ -466,7 +466,7 @@ var ie = { exports: {} }; c = 11 - c % 11, c >= 10 && (c = 0); var u = "" + a[0] + a[1] + a[2] + "." + a[3] + a[4] + a[5] + "." + a[6] + a[7] + a[8] + "-" + n + c; return e.formatted ? u : u.replace(/\D/g, ""); - }, r.prototype.cnpj = function(e) { + }, i.prototype.cnpj = function(e) { e = s(e, { formatted: !0 }); @@ -476,15 +476,15 @@ var ie = { exports: {} }; c = 11 - c % 11, c < 2 && (c = 0); var u = "" + a[0] + a[1] + "." + a[2] + a[3] + a[4] + "." + a[5] + a[6] + a[7] + "/" + a[8] + a[9] + a[10] + a[11] + "-" + n + c; return e.formatted ? u : u.replace(/\D/g, ""); - }, r.prototype.first = function(e) { + }, i.prototype.first = function(e) { return e = s(e, { gender: this.gender(), nationality: "en" }), this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()]); - }, r.prototype.profession = function(e) { + }, i.prototype.profession = function(e) { return e = s(e), e.rank ? this.pick(["Apprentice ", "Junior ", "Senior ", "Lead "]) + this.pick(this.get("profession")) : this.pick(this.get("profession")); - }, r.prototype.company = function() { + }, i.prototype.company = function() { return this.pick(this.get("company")); - }, r.prototype.gender = function(e) { + }, i.prototype.gender = function(e) { return e = s(e, { extraGenders: [] }), this.pick(["Male", "Female"].concat(e.extraGenders)); - }, r.prototype.last = function(e) { + }, i.prototype.last = function(e) { if (e = s(e, { nationality: "*" }), e.nationality === "*") { var a = [], n = this.get("lastNames"); return Object.keys(n).forEach(function(c) { @@ -492,23 +492,23 @@ var ie = { exports: {} }; }), this.pick(a); } else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()]); - }, r.prototype.israelId = function() { + }, i.prototype.israelId = function() { for (var e = this.string({ pool: "0123456789", length: 8 }), a = 0, n = 0; n < e.length; n++) { var c = e[n] * (n / 2 === parseInt(n / 2) ? 1 : 2); c = this.pad(c, 2).toString(), c = parseInt(c[0]) + parseInt(c[1]), a = a + c; } return e = e + (10 - parseInt(a.toString().slice(-1))).toString().slice(-1), e; - }, r.prototype.mrz = function(e) { + }, i.prototype.mrz = function(e) { var a = function(u) { - var C = "", "<=", ">=", "="]); e.range && (a = e.range); var n = ""; return e.include_prerelease && (n = this.weighted(["", "-dev", "-beta", "-alpha"], [50, 10, 5, 1])), a + this.rpg("3d10").join(".") + n; - }, r.prototype.tlds = function() { + }, i.prototype.tlds = function() { return ["com", "org", "edu", "gov", "co.uk", "net", "io", "ac", "ad", "ae", "af", "ag", "ai", "al", "am", "ao", "aq", "ar", "as", "at", "au", "aw", "ax", "az", "ba", "bb", "bd", "be", "bf", "bg", "bh", "bi", "bj", "bm", "bn", "bo", "br", "bs", "bt", "bv", "bw", "by", "bz", "ca", "cc", "cd", "cf", "cg", "ch", "ci", "ck", "cl", "cm", "cn", "co", "cr", "cu", "cv", "cw", "cx", "cy", "cz", "de", "dj", "dk", "dm", "do", "dz", "ec", "ee", "eg", "eh", "er", "es", "et", "eu", "fi", "fj", "fk", "fm", "fo", "fr", "ga", "gb", "gd", "ge", "gf", "gg", "gh", "gi", "gl", "gm", "gn", "gp", "gq", "gr", "gs", "gt", "gu", "gw", "gy", "hk", "hm", "hn", "hr", "ht", "hu", "id", "ie", "il", "im", "in", "io", "iq", "ir", "is", "it", "je", "jm", "jo", "jp", "ke", "kg", "kh", "ki", "km", "kn", "kp", "kr", "kw", "ky", "kz", "la", "lb", "lc", "li", "lk", "lr", "ls", "lt", "lu", "lv", "ly", "ma", "mc", "md", "me", "mg", "mh", "mk", "ml", "mm", "mn", "mo", "mp", "mq", "mr", "ms", "mt", "mu", "mv", "mw", "mx", "my", "mz", "na", "nc", "ne", "nf", "ng", "ni", "nl", "no", "np", "nr", "nu", "nz", "om", "pa", "pe", "pf", "pg", "ph", "pk", "pl", "pm", "pn", "pr", "ps", "pt", "pw", "py", "qa", "re", "ro", "rs", "ru", "rw", "sa", "sb", "sc", "sd", "se", "sg", "sh", "si", "sj", "sk", "sl", "sm", "sn", "so", "sr", "ss", "st", "su", "sv", "sx", "sy", "sz", "tc", "td", "tf", "tg", "th", "tj", "tk", "tl", "tm", "tn", "to", "tp", "tr", "tt", "tv", "tw", "tz", "ua", "ug", "uk", "us", "uy", "uz", "va", "vc", "ve", "vg", "vi", "vn", "vu", "wf", "ws", "ye", "yt", "za", "zm", "zw"]; - }, r.prototype.tld = function() { + }, i.prototype.tld = function() { return this.pick(this.tlds()); - }, r.prototype.twitter = function() { + }, i.prototype.twitter = function() { return "@" + this.word(); - }, r.prototype.url = function(e) { + }, i.prototype.url = function(e) { e = s(e, { protocol: "http", domain: this.domain(e), domain_prefix: "", path: this.word(), extensions: [] }); var a = e.extensions.length > 0 ? "." + this.pick(e.extensions) : "", n = e.domain_prefix ? e.domain_prefix + "." + e.domain : e.domain; return e.protocol + "://" + n + "/" + e.path + a; - }, r.prototype.port = function() { + }, i.prototype.port = function() { return this.integer({ min: 0, max: 65535 }); - }, r.prototype.locale = function(e) { + }, i.prototype.locale = function(e) { return e = s(e), e.region ? this.pick(this.get("locale_regions")) : this.pick(this.get("locale_languages")); - }, r.prototype.locales = function(e) { + }, i.prototype.locales = function(e) { return e = s(e), e.region ? this.get("locale_regions") : this.get("locale_languages"); - }, r.prototype.loremPicsum = function(e) { + }, i.prototype.loremPicsum = function(e) { e = s(e, { width: 500, height: 500, greyscale: !1, blurred: !1 }); var a = e.greyscale ? "g/" : "", n = e.blurred ? "/?blur" : "/?random"; return "https://picsum.photos/" + a + e.width + "/" + e.height + n; - }, r.prototype.address = function(e) { + }, i.prototype.address = function(e) { return e = s(e), this.natural({ min: 5, max: 2e3 }) + " " + this.street(e); - }, r.prototype.altitude = function(e) { + }, i.prototype.altitude = function(e) { return e = s(e, { fixed: 5, min: 0, max: 8848 }), this.floating({ min: e.min, max: e.max, fixed: e.fixed }); - }, r.prototype.areacode = function(e) { + }, i.prototype.areacode = function(e) { e = s(e, { parens: !0 }); var a = e.exampleNumber ? "555" : this.natural({ min: 2, max: 9 }).toString() + this.natural({ min: 0, max: 8 }).toString() + this.natural({ min: 0, max: 9 }).toString(); return e.parens ? "(" + a + ")" : a; - }, r.prototype.city = function() { + }, i.prototype.city = function() { return this.capitalize(this.word({ syllables: 3 })); - }, r.prototype.coordinates = function(e) { + }, i.prototype.coordinates = function(e) { return this.latitude(e) + ", " + this.longitude(e); - }, r.prototype.countries = function() { + }, i.prototype.countries = function() { return this.get("countries"); - }, r.prototype.country = function(e) { + }, i.prototype.country = function(e) { e = s(e); var a = this.pick(this.countries()); return e.raw ? a : e.full ? a.name : a.abbreviation; - }, r.prototype.depth = function(e) { + }, i.prototype.depth = function(e) { return e = s(e, { fixed: 5, min: -10994, max: 0 }), this.floating({ min: e.min, max: e.max, fixed: e.fixed }); - }, r.prototype.geohash = function(e) { + }, i.prototype.geohash = function(e) { return e = s(e, { length: 7 }), this.string({ length: e.length, pool: "0123456789bcdefghjkmnpqrstuvwxyz" }); - }, r.prototype.geojson = function(e) { + }, i.prototype.geojson = function(e) { return this.latitude(e) + ", " + this.longitude(e) + ", " + this.altitude(e); - }, r.prototype.latitude = function(e) { + }, i.prototype.latitude = function(e) { var [a, n, c] = ["ddm", "dms", "dd"]; e = s( e, @@ -805,7 +805,7 @@ var ie = { exports: {} }; default: return this.floating({ min: e.min, max: e.max, fixed: e.fixed }); } - }, r.prototype.longitude = function(e) { + }, i.prototype.longitude = function(e) { var [a, n, c] = ["ddm", "dms", "dd"]; e = s( e, @@ -821,12 +821,12 @@ var ie = { exports: {} }; default: return this.floating({ min: e.min, max: e.max, fixed: e.fixed }); } - }, r.prototype.phone = function(e) { - var a = this, n, c = function(O) { - var G = []; - return O.sections.forEach(function(z) { - G.push(a.string({ pool: "0123456789", length: z })); - }), O.area + G.join(" "); + }, i.prototype.phone = function(e) { + var a = this, n, c = function(_) { + var O = []; + return _.sections.forEach(function(z) { + O.push(a.string({ pool: "0123456789", length: z })); + }), _.area + O.join(" "); }; e = s(e, { formatted: !0, @@ -885,34 +885,34 @@ var ie = { exports: {} }; ]), u = e.formatted || n); break; case "us": - var C = this.areacode(e).toString(), E = this.natural({ min: 2, max: 9 }).toString() + this.natural({ min: 0, max: 9 }).toString() + this.natural({ min: 0, max: 9 }).toString(), b = this.natural({ min: 1e3, max: 9999 }).toString(); - u = e.formatted ? C + " " + E + "-" + b : C + E + b; + var C = this.areacode(e).toString(), P = this.natural({ min: 2, max: 9 }).toString() + this.natural({ min: 0, max: 9 }).toString() + this.natural({ min: 0, max: 9 }).toString(), f = this.natural({ min: 1e3, max: 9999 }).toString(); + u = e.formatted ? C + " " + P + "-" + f : C + P + f; break; case "br": - var A = this.pick(["11", "12", "13", "14", "15", "16", "17", "18", "19", "21", "22", "24", "27", "28", "31", "32", "33", "34", "35", "37", "38", "41", "42", "43", "44", "45", "46", "47", "48", "49", "51", "53", "54", "55", "61", "62", "63", "64", "65", "66", "67", "68", "69", "71", "73", "74", "75", "77", "79", "81", "82", "83", "84", "85", "86", "87", "88", "89", "91", "92", "93", "94", "95", "96", "97", "98", "99"]), v; - e.mobile ? v = "9" + a.string({ pool: "0123456789", length: 4 }) : v = this.natural({ min: 2e3, max: 5999 }).toString(); - var M = a.string({ pool: "0123456789", length: 4 }); - u = e.formatted ? "(" + A + ") " + v + "-" + M : A + v + M; + var y = this.pick(["11", "12", "13", "14", "15", "16", "17", "18", "19", "21", "22", "24", "27", "28", "31", "32", "33", "34", "35", "37", "38", "41", "42", "43", "44", "45", "46", "47", "48", "49", "51", "53", "54", "55", "61", "62", "63", "64", "65", "66", "67", "68", "69", "71", "73", "74", "75", "77", "79", "81", "82", "83", "84", "85", "86", "87", "88", "89", "91", "92", "93", "94", "95", "96", "97", "98", "99"]), A; + e.mobile ? A = "9" + a.string({ pool: "0123456789", length: 4 }) : A = this.natural({ min: 2e3, max: 5999 }).toString(); + var S = a.string({ pool: "0123456789", length: 4 }); + u = e.formatted ? "(" + y + ") " + A + "-" + S : y + A + S; break; } return u; - }, r.prototype.postal = function() { + }, i.prototype.postal = function() { var e = this.character({ pool: "XVTSRPNKLMHJGECBA" }), a = e + this.natural({ max: 9 }) + this.character({ alpha: !0, casing: "upper" }), n = this.natural({ max: 9 }) + this.character({ alpha: !0, casing: "upper" }) + this.natural({ max: 9 }); return a + " " + n; - }, r.prototype.postcode = function() { - var e = this.pick(this.get("postcodeAreas")).code, a = this.natural({ max: 9 }), n = this.bool() ? this.character({ alpha: !0, casing: "upper" }) : "", c = e + a + n, u = this.natural({ max: 9 }), C = this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }), E = u + C; - return c + " " + E; - }, r.prototype.counties = function(e) { + }, i.prototype.postcode = function() { + var e = this.pick(this.get("postcodeAreas")).code, a = this.natural({ max: 9 }), n = this.bool() ? this.character({ alpha: !0, casing: "upper" }) : "", c = e + a + n, u = this.natural({ max: 9 }), C = this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }), P = u + C; + return c + " " + P; + }, i.prototype.counties = function(e) { return e = s(e, { country: "uk" }), this.get("counties")[e.country.toLowerCase()]; - }, r.prototype.county = function(e) { + }, i.prototype.county = function(e) { return this.pick(this.counties(e)).name; - }, r.prototype.provinces = function(e) { + }, i.prototype.provinces = function(e) { return e = s(e, { country: "ca" }), this.get("provinces")[e.country.toLowerCase()]; - }, r.prototype.province = function(e) { + }, i.prototype.province = function(e) { return e && e.full ? this.pick(this.provinces(e)).name : this.pick(this.provinces(e)).abbreviation; - }, r.prototype.state = function(e) { + }, i.prototype.state = function(e) { return e && e.full ? this.pick(this.states(e)).name : this.pick(this.states(e)).abbreviation; - }, r.prototype.states = function(e) { + }, i.prototype.states = function(e) { e = s(e, { country: "us", us_states_and_dc: !0 }); var a; switch (e.country.toLowerCase()) { @@ -929,7 +929,7 @@ var ie = { exports: {} }; break; } return a; - }, r.prototype.street = function(e) { + }, i.prototype.street = function(e) { e = s(e, { country: "us", syllables: 2 }); var a; switch (e.country.toLowerCase()) { @@ -941,16 +941,16 @@ var ie = { exports: {} }; break; } return a; - }, r.prototype.street_suffix = function(e) { + }, i.prototype.street_suffix = function(e) { return e = s(e, { country: "us" }), this.pick(this.street_suffixes(e)); - }, r.prototype.street_suffixes = function(e) { + }, i.prototype.street_suffixes = function(e) { return e = s(e, { country: "us" }), this.get("street_suffixes")[e.country.toLowerCase()]; - }, r.prototype.zip = function(e) { + }, i.prototype.zip = function(e) { var a = this.n(this.natural, 5, { max: 9 }); return e && e.plusfour === !0 && (a.push("-"), a = a.concat(this.n(this.natural, 4, { max: 9 }))), a.join(""); - }, r.prototype.ampm = function() { + }, i.prototype.ampm = function() { return this.bool() ? "am" : "pm"; - }, r.prototype.date = function(e) { + }, i.prototype.date = function(e) { var a, n; if (e && (e.min || e.max)) { e = s(e, { @@ -960,13 +960,13 @@ var ie = { exports: {} }; var c = typeof e.min < "u" ? e.min.getTime() : 1, u = typeof e.max < "u" ? e.max.getTime() : 864e13; n = new Date(this.integer({ min: c, max: u })); } else { - var C = this.month({ raw: !0 }), E = C.days; - e && e.month && (E = this.get("months")[(e.month % 12 + 12) % 12].days), e = s(e, { + var C = this.month({ raw: !0 }), P = C.days; + e && e.month && (P = this.get("months")[(e.month % 12 + 12) % 12].days), e = s(e, { year: parseInt(this.year(), 10), // Necessary to subtract 1 because Date() 0-indexes month but not day or year // for some reason. month: C.numeric - 1, - day: this.natural({ min: 1, max: E }), + day: this.natural({ min: 1, max: P }), hour: this.hour({ twentyfour: !0 }), minute: this.minute(), second: this.second(), @@ -976,40 +976,40 @@ var ie = { exports: {} }; }), n = new Date(e.year, e.month, e.day, e.hour, e.minute, e.second, e.millisecond); } return e.american ? a = n.getMonth() + 1 + "/" + n.getDate() + "/" + n.getFullYear() : a = n.getDate() + "/" + (n.getMonth() + 1) + "/" + n.getFullYear(), e.string ? a : n; - }, r.prototype.hammertime = function(e) { + }, i.prototype.hammertime = function(e) { return this.date(e).getTime(); - }, r.prototype.hour = function(e) { + }, i.prototype.hour = function(e) { return e = s(e, { min: e && e.twentyfour ? 0 : 1, max: e && e.twentyfour ? 23 : 12 }), t(e.min < 0, "Chance: Min cannot be less than 0."), t(e.twentyfour && e.max > 23, "Chance: Max cannot be greater than 23 for twentyfour option."), t(!e.twentyfour && e.max > 12, "Chance: Max cannot be greater than 12."), t(e.min > e.max, "Chance: Min cannot be greater than Max."), this.natural({ min: e.min, max: e.max }); - }, r.prototype.millisecond = function() { + }, i.prototype.millisecond = function() { return this.natural({ max: 999 }); - }, r.prototype.minute = r.prototype.second = function(e) { + }, i.prototype.minute = i.prototype.second = function(e) { return e = s(e, { min: 0, max: 59 }), t(e.min < 0, "Chance: Min cannot be less than 0."), t(e.max > 59, "Chance: Max cannot be greater than 59."), t(e.min > e.max, "Chance: Min cannot be greater than Max."), this.natural({ min: e.min, max: e.max }); - }, r.prototype.month = function(e) { + }, i.prototype.month = function(e) { e = s(e, { min: 1, max: 12 }), t(e.min < 1, "Chance: Min cannot be less than 1."), t(e.max > 12, "Chance: Max cannot be greater than 12."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); var a = this.pick(this.months().slice(e.min - 1, e.max)); return e.raw ? a : a.name; - }, r.prototype.months = function() { + }, i.prototype.months = function() { return this.get("months"); - }, r.prototype.second = function() { + }, i.prototype.second = function() { return this.natural({ max: 59 }); - }, r.prototype.timestamp = function() { + }, i.prototype.timestamp = function() { return this.natural({ min: 1, max: parseInt((/* @__PURE__ */ new Date()).getTime() / 1e3, 10) }); - }, r.prototype.weekday = function(e) { + }, i.prototype.weekday = function(e) { e = s(e, { weekday_only: !1 }); var a = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"]; return e.weekday_only || (a.push("Saturday"), a.push("Sunday")), this.pickone(a); - }, r.prototype.year = function(e) { + }, i.prototype.year = function(e) { return e = s(e, { min: (/* @__PURE__ */ new Date()).getFullYear() }), e.max = typeof e.max < "u" ? e.max : e.min + 100, this.natural(e).toString(); - }, r.prototype.cc = function(e) { + }, i.prototype.cc = function(e) { e = s(e); var a, n, c; return a = e.type ? this.cc_type({ name: e.type, raw: !0 }) : this.cc_type({ raw: !0 }), n = a.prefix.split(""), c = a.length - a.prefix.length - 1, n = n.concat(this.n(this.integer, c, { min: 0, max: 9 })), n.push(this.luhn_calculate(n.join(""))), n.join(""); - }, r.prototype.cc_types = function() { + }, i.prototype.cc_types = function() { return this.get("cc_types"); - }, r.prototype.cc_type = function(e) { + }, i.prototype.cc_type = function(e) { e = s(e); var a = this.cc_types(), n = null; if (e.name) { @@ -1023,15 +1023,15 @@ var ie = { exports: {} }; } else n = this.pick(a); return e.raw ? n : n.name; - }, r.prototype.currency_types = function() { + }, i.prototype.currency_types = function() { return this.get("currency_types"); - }, r.prototype.currency = function() { + }, i.prototype.currency = function() { return this.pick(this.currency_types()); - }, r.prototype.timezones = function() { + }, i.prototype.timezones = function() { return this.get("timezones"); - }, r.prototype.timezone = function() { + }, i.prototype.timezone = function() { return this.pick(this.timezones()); - }, r.prototype.currency_pair = function(e) { + }, i.prototype.currency_pair = function(e) { var a = this.unique(this.currency, 2, { comparator: function(n, c) { return n.reduce(function(u, C) { @@ -1040,17 +1040,17 @@ var ie = { exports: {} }; } }); return e ? a[0].code + "/" + a[1].code : a; - }, r.prototype.dollar = function(e) { + }, i.prototype.dollar = function(e) { e = s(e, { max: 1e4, min: 0 }); var a = this.floating({ min: e.min, max: e.max, fixed: 2 }).toString(), n = a.split(".")[1]; return n === void 0 ? a += ".00" : n.length < 2 && (a = a + "0"), a < 0 ? "-$" + a.replace("-", "") : "$" + a; - }, r.prototype.euro = function(e) { + }, i.prototype.euro = function(e) { return Number(this.dollar(e).replace("$", "")).toLocaleString() + "\u20AC"; - }, r.prototype.exp = function(e) { + }, i.prototype.exp = function(e) { e = s(e); var a = {}; return a.year = this.exp_year(), a.year === (/* @__PURE__ */ new Date()).getFullYear().toString() ? a.month = this.exp_month({ future: !0 }) : a.month = this.exp_month(), e.raw ? a : a.month + "/" + a.year; - }, r.prototype.exp_month = function(e) { + }, i.prototype.exp_month = function(e) { e = s(e); var a, n, c = (/* @__PURE__ */ new Date()).getMonth() + 1; if (e.future && c !== 12) @@ -1060,54 +1060,54 @@ var ie = { exports: {} }; else a = this.month({ raw: !0 }).numeric; return a; - }, r.prototype.exp_year = function() { + }, i.prototype.exp_year = function() { var e = (/* @__PURE__ */ new Date()).getMonth() + 1, a = (/* @__PURE__ */ new Date()).getFullYear(); return this.year({ min: e === 12 ? a + 1 : a, max: a + 10 }); - }, r.prototype.vat = function(e) { + }, i.prototype.vat = function(e) { switch (e = s(e, { country: "it" }), e.country.toLowerCase()) { case "it": return this.it_vat(); } - }, r.prototype.iban = function() { + }, i.prototype.iban = function() { var e = "ABCDEFGHIJKLMNOPQRSTUVWXYZ", a = e + "0123456789", n = this.string({ length: 2, pool: e }) + this.pad(this.integer({ min: 0, max: 99 }), 2) + this.string({ length: 4, pool: a }) + this.pad(this.natural(), this.natural({ min: 6, max: 26 })); return n; - }, r.prototype.it_vat = function() { + }, i.prototype.it_vat = function() { var e = this.natural({ min: 1, max: 18e5 }); return e = this.pad(e, 7) + this.pad(this.pick(this.provinces({ country: "it" })).code, 3), e + this.luhn_calculate(e); - }, r.prototype.cf = function(e) { + }, i.prototype.cf = function(e) { e = e || {}; - var a = e.gender ? e.gender : this.gender(), n = e.first ? e.first : this.first({ gender: a, nationality: "it" }), c = e.last ? e.last : this.last({ nationality: "it" }), u = e.birthday ? e.birthday : this.birthday(), C = e.city ? e.city : this.pickone(["A", "B", "C", "D", "E", "F", "G", "H", "I", "L", "M", "Z"]) + this.pad(this.natural({ max: 999 }), 3), E = [], b = function(M, O) { - var G, z = []; - return M.length < 3 ? z = M.split("").concat("XXX".split("")).splice(0, 3) : (G = M.toUpperCase().split("").map(function(J) { + var a = e.gender ? e.gender : this.gender(), n = e.first ? e.first : this.first({ gender: a, nationality: "it" }), c = e.last ? e.last : this.last({ nationality: "it" }), u = e.birthday ? e.birthday : this.birthday(), C = e.city ? e.city : this.pickone(["A", "B", "C", "D", "E", "F", "G", "H", "I", "L", "M", "Z"]) + this.pad(this.natural({ max: 999 }), 3), P = [], f = function(S, _) { + var O, z = []; + return S.length < 3 ? z = S.split("").concat("XXX".split("")).splice(0, 3) : (O = S.toUpperCase().split("").map(function(J) { return "BCDFGHJKLMNPRSTVWZ".indexOf(J) !== -1 ? J : void 0; - }).join(""), G.length > 3 && (O ? G = G.substr(0, 3) : G = G[0] + G.substr(2, 2)), G.length < 3 && (z = G, G = M.toUpperCase().split("").map(function(J) { + }).join(""), O.length > 3 && (_ ? O = O.substr(0, 3) : O = O[0] + O.substr(2, 2)), O.length < 3 && (z = O, O = S.toUpperCase().split("").map(function(J) { return "AEIOU".indexOf(J) !== -1 ? J : void 0; - }).join("").substr(0, 3 - z.length)), z = z + G), z; - }, A = function(M, O, G) { + }).join("").substr(0, 3 - z.length)), z = z + O), z; + }, y = function(S, _, O) { var z = ["A", "B", "C", "D", "E", "H", "L", "M", "P", "R", "S", "T"]; - return M.getFullYear().toString().substr(2) + z[M.getMonth()] + G.pad(M.getDate() + (O.toLowerCase() === "female" ? 40 : 0), 2); - }, v = function(M) { - for (var O = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ", G = "ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ", z = "ABCDEFGHIJKLMNOPQRSTUVWXYZ", J = "BAKPLCQDREVOSFTGUHMINJWZYX", V = 0, U = 0; U < 15; U++) - U % 2 !== 0 ? V += z.indexOf(G[O.indexOf(M[U])]) : V += J.indexOf(G[O.indexOf(M[U])]); + return S.getFullYear().toString().substr(2) + z[S.getMonth()] + O.pad(S.getDate() + (_.toLowerCase() === "female" ? 40 : 0), 2); + }, A = function(S) { + for (var _ = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ", O = "ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ", z = "ABCDEFGHIJKLMNOPQRSTUVWXYZ", J = "BAKPLCQDREVOSFTGUHMINJWZYX", V = 0, U = 0; U < 15; U++) + U % 2 !== 0 ? V += z.indexOf(O[_.indexOf(S[U])]) : V += J.indexOf(O[_.indexOf(S[U])]); return z[V % 26]; }; - return E = E.concat(b(c, !0), b(n), A(u, a, this), C.toUpperCase().split("")).join(""), E += v(E.toUpperCase()), E.toUpperCase(); - }, r.prototype.pl_pesel = function() { + return P = P.concat(f(c, !0), f(n), y(u, a, this), C.toUpperCase().split("")).join(""), P += A(P.toUpperCase()), P.toUpperCase(); + }, i.prototype.pl_pesel = function() { for (var e = this.natural({ min: 1, max: 9999999999 }), a = this.pad(e, 10).split(""), n = 0; n < a.length; n++) a[n] = parseInt(a[n]); var c = (1 * a[0] + 3 * a[1] + 7 * a[2] + 9 * a[3] + 1 * a[4] + 3 * a[5] + 7 * a[6] + 9 * a[7] + 1 * a[8] + 3 * a[9]) % 10; return c !== 0 && (c = 10 - c), a.join("") + c; - }, r.prototype.pl_nip = function() { + }, i.prototype.pl_nip = function() { for (var e = this.natural({ min: 1, max: 999999999 }), a = this.pad(e, 9).split(""), n = 0; n < a.length; n++) a[n] = parseInt(a[n]); var c = (6 * a[0] + 5 * a[1] + 7 * a[2] + 2 * a[3] + 3 * a[4] + 4 * a[5] + 5 * a[6] + 6 * a[7] + 7 * a[8]) % 11; return c === 10 ? this.pl_nip() : a.join("") + c; - }, r.prototype.pl_regon = function() { + }, i.prototype.pl_regon = function() { for (var e = this.natural({ min: 1, max: 99999999 }), a = this.pad(e, 8).split(""), n = 0; n < a.length; n++) a[n] = parseInt(a[n]); var c = (8 * a[0] + 9 * a[1] + 2 * a[2] + 3 * a[3] + 4 * a[4] + 5 * a[5] + 6 * a[6] + 7 * a[7]) % 11; return c === 10 && (c = 0), a.join("") + c; - }, r.prototype.note = function(e) { + }, i.prototype.note = function(e) { e = s(e, { notes: "flatKey" }); var a = { naturals: ["C", "D", "E", "F", "G", "A", "B"], @@ -1115,10 +1115,10 @@ var ie = { exports: {} }; sharps: ["C\u266F", "D\u266F", "F\u266F", "G\u266F", "A\u266F"] }; return a.all = a.naturals.concat(a.flats.concat(a.sharps)), a.flatKey = a.naturals.concat(a.flats), a.sharpKey = a.naturals.concat(a.sharps), this.pickone(a[e.notes]); - }, r.prototype.midi_note = function(e) { + }, i.prototype.midi_note = function(e) { var a = 0, n = 127; return e = s(e, { min: a, max: n }), this.integer({ min: e.min, max: e.max }); - }, r.prototype.chord_quality = function(e) { + }, i.prototype.chord_quality = function(e) { e = s(e, { jazz: !0 }); var a = ["maj", "min", "aug", "dim"]; return e.jazz && (a = [ @@ -1129,49 +1129,49 @@ var ie = { exports: {} }; "dim", "\xF8" ]), this.pickone(a); - }, r.prototype.chord = function(e) { + }, i.prototype.chord = function(e) { return e = s(e), this.note(e) + this.chord_quality(e); - }, r.prototype.tempo = function(e) { + }, i.prototype.tempo = function(e) { var a = 40, n = 320; return e = s(e, { min: a, max: n }), this.integer({ min: e.min, max: e.max }); - }, r.prototype.coin = function() { + }, i.prototype.coin = function() { return this.bool() ? "heads" : "tails"; }; - function T(e) { + function M(e) { return function() { return this.natural(e); }; } - r.prototype.d4 = T({ min: 1, max: 4 }), r.prototype.d6 = T({ min: 1, max: 6 }), r.prototype.d8 = T({ min: 1, max: 8 }), r.prototype.d10 = T({ min: 1, max: 10 }), r.prototype.d12 = T({ min: 1, max: 12 }), r.prototype.d20 = T({ min: 1, max: 20 }), r.prototype.d30 = T({ min: 1, max: 30 }), r.prototype.d100 = T({ min: 1, max: 100 }), r.prototype.rpg = function(e, a) { + i.prototype.d4 = M({ min: 1, max: 4 }), i.prototype.d6 = M({ min: 1, max: 6 }), i.prototype.d8 = M({ min: 1, max: 8 }), i.prototype.d10 = M({ min: 1, max: 10 }), i.prototype.d12 = M({ min: 1, max: 12 }), i.prototype.d20 = M({ min: 1, max: 20 }), i.prototype.d30 = M({ min: 1, max: 30 }), i.prototype.d100 = M({ min: 1, max: 100 }), i.prototype.rpg = function(e, a) { if (a = s(a), e) { var n = e.toLowerCase().split("d"), c = []; if (n.length !== 2 || !parseInt(n[0], 10) || !parseInt(n[1], 10)) throw new Error("Chance: Invalid format provided. Please provide #d# where the first # is the number of dice to roll, the second # is the max of each die"); for (var u = n[0]; u > 0; u--) c[u - 1] = this.natural({ min: 1, max: n[1] }); - return typeof a.sum < "u" && a.sum ? c.reduce(function(C, E) { - return C + E; + return typeof a.sum < "u" && a.sum ? c.reduce(function(C, P) { + return C + P; }) : c; } else throw new RangeError("Chance: A type of die roll must be included"); - }, r.prototype.guid = function(e) { + }, i.prototype.guid = function(e) { e = s(e, { version: 5 }); var a = "abcdef1234567890", n = "ab89", c = this.string({ pool: a, length: 8 }) + "-" + this.string({ pool: a, length: 4 }) + "-" + // The Version e.version + this.string({ pool: a, length: 3 }) + "-" + // The Variant this.string({ pool: n, length: 1 }) + this.string({ pool: a, length: 3 }) + "-" + this.string({ pool: a, length: 12 }); return c; - }, r.prototype.hash = function(e) { + }, i.prototype.hash = function(e) { e = s(e, { length: 40, casing: "lower" }); - var a = e.casing === "upper" ? d.toUpperCase() : d; + var a = e.casing === "upper" ? g.toUpperCase() : g; return this.string({ pool: a, length: e.length }); - }, r.prototype.luhn_check = function(e) { + }, i.prototype.luhn_check = function(e) { var a = e.toString(), n = +a.substring(a.length - 1); return n === this.luhn_calculate(+a.substring(0, a.length - 1)); - }, r.prototype.luhn_calculate = function(e) { + }, i.prototype.luhn_calculate = function(e) { for (var a = e.toString().split("").reverse(), n = 0, c, u = 0, C = a.length; C > u; ++u) c = +a[u], u % 2 === 0 && (c *= 2, c > 9 && (c -= 9)), n += c; return n * 9 % 10; - }, r.prototype.md5 = function(e) { + }, i.prototype.md5 = function(e) { var a = { str: "", key: null, raw: !1 }; if (!e) a.str = this.string(), e = {}; @@ -1186,7 +1186,7 @@ var ie = { exports: {} }; if (a = s(e, a), !a.str) throw new Error("A parameter is required to return an md5 hash."); return this.bimd5.md5(a.str, a.key, a.raw); - }, r.prototype.file = function(e) { + }, i.prototype.file = function(e) { var a = e || {}, n = "fileExtension", c = Object.keys(this.get("fileExtension")), u, C; if (u = this.word({ length: a.length }), a.extension) return C = a.extension, u + "." + C; @@ -1194,19 +1194,19 @@ var ie = { exports: {} }; if (Array.isArray(a.extensions)) return C = this.pickone(a.extensions), u + "." + C; if (a.extensions.constructor === Object) { - var E = a.extensions, b = Object.keys(E); - return C = this.pickone(E[this.pickone(b)]), u + "." + C; + var P = a.extensions, f = Object.keys(P); + return C = this.pickone(P[this.pickone(f)]), u + "." + C; } throw new Error("Chance: Extensions must be an Array or Object"); } if (a.fileType) { - var A = a.fileType; - if (c.indexOf(A) !== -1) - return C = this.pickone(this.get(n)[A]), u + "." + C; + var y = a.fileType; + if (c.indexOf(y) !== -1) + return C = this.pickone(this.get(n)[y]), u + "." + C; throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'"); } return C = this.pickone(this.get(n)[this.pickone(c)]), u + "." + C; - }, r.prototype.fileWithContent = function(e) { + }, i.prototype.fileWithContent = function(e) { var a = e || {}, n = "fileName" in a ? a.fileName : this.file().split(".")[0]; if (n += "." + ("fileExtension" in a ? a.fileExtension : this.file().split(".")[1]), typeof a.fileSize != "number") throw new Error("File size must be an integer"); @@ -1216,7 +1216,7 @@ var ie = { exports: {} }; }; return c; }; - var P = { + var L = { firstNames: { male: { en: ["James", "John", "Robert", "Michael", "William", "David", "Richard", "Joseph", "Charles", "Thomas", "Christopher", "Daniel", "Matthew", "George", "Donald", "Anthony", "Paul", "Mark", "Edward", "Steven", "Kenneth", "Andrew", "Brian", "Joshua", "Kevin", "Ronald", "Timothy", "Jason", "Jeffrey", "Frank", "Gary", "Ryan", "Nicholas", "Eric", "Stephen", "Jacob", "Larry", "Jonathan", "Scott", "Raymond", "Justin", "Brandon", "Gregory", "Samuel", "Benjamin", "Patrick", "Jack", "Henry", "Walter", "Dennis", "Jerry", "Alexander", "Peter", "Tyler", "Douglas", "Harold", "Aaron", "Jose", "Adam", "Arthur", "Zachary", "Carl", "Nathan", "Albert", "Kyle", "Lawrence", "Joe", "Willie", "Gerald", "Roger", "Keith", "Jeremy", "Terry", "Harry", "Ralph", "Sean", "Jesse", "Roy", "Louis", "Billy", "Austin", "Bruce", "Eugene", "Christian", "Bryan", "Wayne", "Russell", "Howard", "Fred", "Ethan", "Jordan", "Philip", "Alan", "Juan", "Randy", "Vincent", "Bobby", "Dylan", "Johnny", "Phillip", "Victor", "Clarence", "Ernest", "Martin", "Craig", "Stanley", "Shawn", "Travis", "Bradley", "Leonard", "Earl", "Gabriel", "Jimmy", "Francis", "Todd", "Noah", "Danny", "Dale", "Cody", "Carlos", "Allen", "Frederick", "Logan", "Curtis", "Alex", "Joel", "Luis", "Norman", "Marvin", "Glenn", "Tony", "Nathaniel", "Rodney", "Melvin", "Alfred", "Steve", "Cameron", "Chad", "Edwin", "Caleb", "Evan", "Antonio", "Lee", "Herbert", "Jeffery", "Isaac", "Derek", "Ricky", "Marcus", "Theodore", "Elijah", "Luke", "Jesus", "Eddie", "Troy", "Mike", "Dustin", "Ray", "Adrian", "Bernard", "Leroy", "Angel", "Randall", "Wesley", "Ian", "Jared", "Mason", "Hunter", "Calvin", "Oscar", "Clifford", "Jay", "Shane", "Ronnie", "Barry", "Lucas", "Corey", "Manuel", "Leo", "Tommy", "Warren", "Jackson", "Isaiah", "Connor", "Don", "Dean", "Jon", "Julian", "Miguel", "Bill", "Lloyd", "Charlie", "Mitchell", "Leon", "Jerome", "Darrell", "Jeremiah", "Alvin", "Brett", "Seth", "Floyd", "Jim", "Blake", "Micheal", "Gordon", "Trevor", "Lewis", "Erik", "Edgar", "Vernon", "Devin", "Gavin", "Jayden", "Chris", "Clyde", "Tom", "Derrick", "Mario", "Brent", "Marc", "Herman", "Chase", "Dominic", "Ricardo", "Franklin", "Maurice", "Max", "Aiden", "Owen", "Lester", "Gilbert", "Elmer", "Gene", "Francisco", "Glen", "Cory", "Garrett", "Clayton", "Sam", "Jorge", "Chester", "Alejandro", "Jeff", "Harvey", "Milton", "Cole", "Ivan", "Andre", "Duane", "Landon"], @@ -7027,31 +7027,31 @@ var ie = { exports: {} }; "sadness", "fear" ] - }, L = Object.prototype.hasOwnProperty, x = Object.keys || function(e) { + }, w = Object.prototype.hasOwnProperty, E = Object.keys || function(e) { var a = []; for (var n in e) - L.call(e, n) && a.push(n); + w.call(e, n) && a.push(n); return a; }; - function w(e, a) { - for (var n = x(e), c, u = 0, C = n.length; u < C; u++) + function D(e, a) { + for (var n = E(e), c, u = 0, C = n.length; u < C; u++) c = n[u], a[c] = e[c] || a[c]; } - function H(e, a) { + function F(e, a) { for (var n = 0, c = e.length; n < c; n++) a[n] = e[n]; } - function F(e, a) { + function R(e, a) { var n = Array.isArray(e), c = a || (n ? new Array(e.length) : {}); - return n ? H(e, c) : w(e, c), c; + return n ? F(e, c) : D(e, c), c; } - r.prototype.get = function(e) { - return F(P[e]); - }, r.prototype.mac_address = function(e) { + i.prototype.get = function(e) { + return R(L[e]); + }, i.prototype.mac_address = function(e) { e = s(e), e.separator || (e.separator = e.networkVersion ? "." : ":"); var a = "ABCDEF1234567890", n = ""; return e.networkVersion ? n = this.n(this.string, 3, { pool: a, length: 4 }).join(e.separator) : n = this.n(this.string, 6, { pool: a, length: 2 }).join(e.separator), n; - }, r.prototype.normal = function(e) { + }, i.prototype.normal = function(e) { if (e = s(e, { mean: 0, dev: 1, pool: [] }), t( e.pool.constructor !== Array, "Chance: The pool option must be a valid array." @@ -7063,12 +7063,12 @@ var ie = { exports: {} }; "Chance: Standard deviation (dev) must be a number" ), e.pool.length > 0) return this.normal_pool(e); - var a, n, c, u, C = e.mean, E = e.dev; + var a, n, c, u, C = e.mean, P = e.dev; do n = this.random() * 2 - 1, c = this.random() * 2 - 1, a = n * n + c * c; while (a >= 1); - return u = n * Math.sqrt(-2 * Math.log(a) / a), E * u + C; - }, r.prototype.normal_pool = function(e) { + return u = n * Math.sqrt(-2 * Math.log(a) / a), P * u + C; + }, i.prototype.normal_pool = function(e) { var a = 0; do { var n = Math.round(this.normal({ mean: e.mean, dev: e.dev })); @@ -7077,7 +7077,7 @@ var ie = { exports: {} }; a++; } while (a < 100); throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust."); - }, r.prototype.radio = function(e) { + }, i.prototype.radio = function(e) { e = s(e, { side: "?" }); var a = ""; switch (e.side.toLowerCase()) { @@ -7094,36 +7094,36 @@ var ie = { exports: {} }; break; } return a + this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }); - }, r.prototype.set = function(e, a) { - typeof e == "string" ? P[e] = a : P = F(e, P); - }, r.prototype.tv = function(e) { + }, i.prototype.set = function(e, a) { + typeof e == "string" ? L[e] = a : L = R(e, L); + }, i.prototype.tv = function(e) { return this.radio(e); - }, r.prototype.cnpj = function() { + }, i.prototype.cnpj = function() { var e = this.n(this.natural, 8, { max: 9 }), a = 2 + e[7] * 6 + e[6] * 7 + e[5] * 8 + e[4] * 9 + e[3] * 2 + e[2] * 3 + e[1] * 4 + e[0] * 5; a = 11 - a % 11, a >= 10 && (a = 0); var n = a * 2 + 3 + e[7] * 7 + e[6] * 8 + e[5] * 9 + e[4] * 2 + e[3] * 3 + e[2] * 4 + e[1] * 5 + e[0] * 6; return n = 11 - n % 11, n >= 10 && (n = 0), "" + e[0] + e[1] + "." + e[2] + e[3] + e[4] + "." + e[5] + e[6] + e[7] + "/0001-" + a + n; - }, r.prototype.emotion = function() { + }, i.prototype.emotion = function() { return this.pick(this.get("emotions")); - }, r.prototype.mersenne_twister = function(e) { - return new W(e); - }, r.prototype.blueimp_md5 = function() { - return new R(); + }, i.prototype.mersenne_twister = function(e) { + return new H(e); + }, i.prototype.blueimp_md5 = function() { + return new G(); }; - var W = function(e) { + var H = function(e) { e === void 0 && (e = Math.floor(Math.random() * Math.pow(10, 13))), this.N = 624, this.M = 397, this.MATRIX_A = 2567483615, this.UPPER_MASK = 2147483648, this.LOWER_MASK = 2147483647, this.mt = new Array(this.N), this.mti = this.N + 1, this.init_genrand(e); }; - W.prototype.init_genrand = function(e) { + H.prototype.init_genrand = function(e) { for (this.mt[0] = e >>> 0, this.mti = 1; this.mti < this.N; this.mti++) e = this.mt[this.mti - 1] ^ this.mt[this.mti - 1] >>> 30, this.mt[this.mti] = (((e & 4294901760) >>> 16) * 1812433253 << 16) + (e & 65535) * 1812433253 + this.mti, this.mt[this.mti] >>>= 0; - }, W.prototype.init_by_array = function(e, a) { + }, H.prototype.init_by_array = function(e, a) { var n = 1, c = 0, u, C; for (this.init_genrand(19650218), u = this.N > a ? this.N : a; u; u--) C = this.mt[n - 1] ^ this.mt[n - 1] >>> 30, this.mt[n] = (this.mt[n] ^ (((C & 4294901760) >>> 16) * 1664525 << 16) + (C & 65535) * 1664525) + e[c] + c, this.mt[n] >>>= 0, n++, c++, n >= this.N && (this.mt[0] = this.mt[this.N - 1], n = 1), c >= a && (c = 0); for (u = this.N - 1; u; u--) C = this.mt[n - 1] ^ this.mt[n - 1] >>> 30, this.mt[n] = (this.mt[n] ^ (((C & 4294901760) >>> 16) * 1566083941 << 16) + (C & 65535) * 1566083941) - n, this.mt[n] >>>= 0, n++, n >= this.N && (this.mt[0] = this.mt[this.N - 1], n = 1); this.mt[0] = 2147483648; - }, W.prototype.genrand_int32 = function() { + }, H.prototype.genrand_int32 = function() { var e, a = new Array(0, this.MATRIX_A); if (this.mti >= this.N) { var n; @@ -7134,124 +7134,124 @@ var ie = { exports: {} }; e = this.mt[this.N - 1] & this.UPPER_MASK | this.mt[0] & this.LOWER_MASK, this.mt[this.N - 1] = this.mt[this.M - 1] ^ e >>> 1 ^ a[e & 1], this.mti = 0; } return e = this.mt[this.mti++], e ^= e >>> 11, e ^= e << 7 & 2636928640, e ^= e << 15 & 4022730752, e ^= e >>> 18, e >>> 0; - }, W.prototype.genrand_int31 = function() { + }, H.prototype.genrand_int31 = function() { return this.genrand_int32() >>> 1; - }, W.prototype.genrand_real1 = function() { + }, H.prototype.genrand_real1 = function() { return this.genrand_int32() * (1 / 4294967295); - }, W.prototype.random = function() { + }, H.prototype.random = function() { return this.genrand_int32() * (1 / 4294967296); - }, W.prototype.genrand_real3 = function() { + }, H.prototype.genrand_real3 = function() { return (this.genrand_int32() + 0.5) * (1 / 4294967296); - }, W.prototype.genrand_res53 = function() { + }, H.prototype.genrand_res53 = function() { var e = this.genrand_int32() >>> 5, a = this.genrand_int32() >>> 6; return (e * 67108864 + a) * (1 / 9007199254740992); }; - var R = function() { + var G = function() { }; - R.prototype.VERSION = "1.0.1", R.prototype.safe_add = function(a, n) { + G.prototype.VERSION = "1.0.1", G.prototype.safe_add = function(a, n) { var c = (a & 65535) + (n & 65535), u = (a >> 16) + (n >> 16) + (c >> 16); return u << 16 | c & 65535; - }, R.prototype.bit_roll = function(e, a) { + }, G.prototype.bit_roll = function(e, a) { return e << a | e >>> 32 - a; - }, R.prototype.md5_cmn = function(e, a, n, c, u, C) { + }, G.prototype.md5_cmn = function(e, a, n, c, u, C) { return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a, e), this.safe_add(c, C)), u), n); - }, R.prototype.md5_ff = function(e, a, n, c, u, C, E) { - return this.md5_cmn(a & n | ~a & c, e, a, u, C, E); - }, R.prototype.md5_gg = function(e, a, n, c, u, C, E) { - return this.md5_cmn(a & c | n & ~c, e, a, u, C, E); - }, R.prototype.md5_hh = function(e, a, n, c, u, C, E) { - return this.md5_cmn(a ^ n ^ c, e, a, u, C, E); - }, R.prototype.md5_ii = function(e, a, n, c, u, C, E) { - return this.md5_cmn(n ^ (a | ~c), e, a, u, C, E); - }, R.prototype.binl_md5 = function(e, a) { + }, G.prototype.md5_ff = function(e, a, n, c, u, C, P) { + return this.md5_cmn(a & n | ~a & c, e, a, u, C, P); + }, G.prototype.md5_gg = function(e, a, n, c, u, C, P) { + return this.md5_cmn(a & c | n & ~c, e, a, u, C, P); + }, G.prototype.md5_hh = function(e, a, n, c, u, C, P) { + return this.md5_cmn(a ^ n ^ c, e, a, u, C, P); + }, G.prototype.md5_ii = function(e, a, n, c, u, C, P) { + return this.md5_cmn(n ^ (a | ~c), e, a, u, C, P); + }, G.prototype.binl_md5 = function(e, a) { e[a >> 5] |= 128 << a % 32, e[(a + 64 >>> 9 << 4) + 14] = a; - var n, c, u, C, E, b = 1732584193, A = -271733879, v = -1732584194, M = 271733878; + var n, c, u, C, P, f = 1732584193, y = -271733879, A = -1732584194, S = 271733878; for (n = 0; n < e.length; n += 16) - c = b, u = A, C = v, E = M, b = this.md5_ff(b, A, v, M, e[n], 7, -680876936), M = this.md5_ff(M, b, A, v, e[n + 1], 12, -389564586), v = this.md5_ff(v, M, b, A, e[n + 2], 17, 606105819), A = this.md5_ff(A, v, M, b, e[n + 3], 22, -1044525330), b = this.md5_ff(b, A, v, M, e[n + 4], 7, -176418897), M = this.md5_ff(M, b, A, v, e[n + 5], 12, 1200080426), v = this.md5_ff(v, M, b, A, e[n + 6], 17, -1473231341), A = this.md5_ff(A, v, M, b, e[n + 7], 22, -45705983), b = this.md5_ff(b, A, v, M, e[n + 8], 7, 1770035416), M = this.md5_ff(M, b, A, v, e[n + 9], 12, -1958414417), v = this.md5_ff(v, M, b, A, e[n + 10], 17, -42063), A = this.md5_ff(A, v, M, b, e[n + 11], 22, -1990404162), b = this.md5_ff(b, A, v, M, e[n + 12], 7, 1804603682), M = this.md5_ff(M, b, A, v, e[n + 13], 12, -40341101), v = this.md5_ff(v, M, b, A, e[n + 14], 17, -1502002290), A = this.md5_ff(A, v, M, b, e[n + 15], 22, 1236535329), b = this.md5_gg(b, A, v, M, e[n + 1], 5, -165796510), M = this.md5_gg(M, b, A, v, e[n + 6], 9, -1069501632), v = this.md5_gg(v, M, b, A, e[n + 11], 14, 643717713), A = this.md5_gg(A, v, M, b, e[n], 20, -373897302), b = this.md5_gg(b, A, v, M, e[n + 5], 5, -701558691), M = this.md5_gg(M, b, A, v, e[n + 10], 9, 38016083), v = this.md5_gg(v, M, b, A, e[n + 15], 14, -660478335), A = this.md5_gg(A, v, M, b, e[n + 4], 20, -405537848), b = this.md5_gg(b, A, v, M, e[n + 9], 5, 568446438), M = this.md5_gg(M, b, A, v, e[n + 14], 9, -1019803690), v = this.md5_gg(v, M, b, A, e[n + 3], 14, -187363961), A = this.md5_gg(A, v, M, b, e[n + 8], 20, 1163531501), b = this.md5_gg(b, A, v, M, e[n + 13], 5, -1444681467), M = this.md5_gg(M, b, A, v, e[n + 2], 9, -51403784), v = this.md5_gg(v, M, b, A, e[n + 7], 14, 1735328473), A = this.md5_gg(A, v, M, b, e[n + 12], 20, -1926607734), b = this.md5_hh(b, A, v, M, e[n + 5], 4, -378558), M = this.md5_hh(M, b, A, v, e[n + 8], 11, -2022574463), v = this.md5_hh(v, M, b, A, e[n + 11], 16, 1839030562), A = this.md5_hh(A, v, M, b, e[n + 14], 23, -35309556), b = this.md5_hh(b, A, v, M, e[n + 1], 4, -1530992060), M = this.md5_hh(M, b, A, v, e[n + 4], 11, 1272893353), v = this.md5_hh(v, M, b, A, e[n + 7], 16, -155497632), A = this.md5_hh(A, v, M, b, e[n + 10], 23, -1094730640), b = this.md5_hh(b, A, v, M, e[n + 13], 4, 681279174), M = this.md5_hh(M, b, A, v, e[n], 11, -358537222), v = this.md5_hh(v, M, b, A, e[n + 3], 16, -722521979), A = this.md5_hh(A, v, M, b, e[n + 6], 23, 76029189), b = this.md5_hh(b, A, v, M, e[n + 9], 4, -640364487), M = this.md5_hh(M, b, A, v, e[n + 12], 11, -421815835), v = this.md5_hh(v, M, b, A, e[n + 15], 16, 530742520), A = this.md5_hh(A, v, M, b, e[n + 2], 23, -995338651), b = this.md5_ii(b, A, v, M, e[n], 6, -198630844), M = this.md5_ii(M, b, A, v, e[n + 7], 10, 1126891415), v = this.md5_ii(v, M, b, A, e[n + 14], 15, -1416354905), A = this.md5_ii(A, v, M, b, e[n + 5], 21, -57434055), b = this.md5_ii(b, A, v, M, e[n + 12], 6, 1700485571), M = this.md5_ii(M, b, A, v, e[n + 3], 10, -1894986606), v = this.md5_ii(v, M, b, A, e[n + 10], 15, -1051523), A = this.md5_ii(A, v, M, b, e[n + 1], 21, -2054922799), b = this.md5_ii(b, A, v, M, e[n + 8], 6, 1873313359), M = this.md5_ii(M, b, A, v, e[n + 15], 10, -30611744), v = this.md5_ii(v, M, b, A, e[n + 6], 15, -1560198380), A = this.md5_ii(A, v, M, b, e[n + 13], 21, 1309151649), b = this.md5_ii(b, A, v, M, e[n + 4], 6, -145523070), M = this.md5_ii(M, b, A, v, e[n + 11], 10, -1120210379), v = this.md5_ii(v, M, b, A, e[n + 2], 15, 718787259), A = this.md5_ii(A, v, M, b, e[n + 9], 21, -343485551), b = this.safe_add(b, c), A = this.safe_add(A, u), v = this.safe_add(v, C), M = this.safe_add(M, E); - return [b, A, v, M]; - }, R.prototype.binl2rstr = function(e) { + c = f, u = y, C = A, P = S, f = this.md5_ff(f, y, A, S, e[n], 7, -680876936), S = this.md5_ff(S, f, y, A, e[n + 1], 12, -389564586), A = this.md5_ff(A, S, f, y, e[n + 2], 17, 606105819), y = this.md5_ff(y, A, S, f, e[n + 3], 22, -1044525330), f = this.md5_ff(f, y, A, S, e[n + 4], 7, -176418897), S = this.md5_ff(S, f, y, A, e[n + 5], 12, 1200080426), A = this.md5_ff(A, S, f, y, e[n + 6], 17, -1473231341), y = this.md5_ff(y, A, S, f, e[n + 7], 22, -45705983), f = this.md5_ff(f, y, A, S, e[n + 8], 7, 1770035416), S = this.md5_ff(S, f, y, A, e[n + 9], 12, -1958414417), A = this.md5_ff(A, S, f, y, e[n + 10], 17, -42063), y = this.md5_ff(y, A, S, f, e[n + 11], 22, -1990404162), f = this.md5_ff(f, y, A, S, e[n + 12], 7, 1804603682), S = this.md5_ff(S, f, y, A, e[n + 13], 12, -40341101), A = this.md5_ff(A, S, f, y, e[n + 14], 17, -1502002290), y = this.md5_ff(y, A, S, f, e[n + 15], 22, 1236535329), f = this.md5_gg(f, y, A, S, e[n + 1], 5, -165796510), S = this.md5_gg(S, f, y, A, e[n + 6], 9, -1069501632), A = this.md5_gg(A, S, f, y, e[n + 11], 14, 643717713), y = this.md5_gg(y, A, S, f, e[n], 20, -373897302), f = this.md5_gg(f, y, A, S, e[n + 5], 5, -701558691), S = this.md5_gg(S, f, y, A, e[n + 10], 9, 38016083), A = this.md5_gg(A, S, f, y, e[n + 15], 14, -660478335), y = this.md5_gg(y, A, S, f, e[n + 4], 20, -405537848), f = this.md5_gg(f, y, A, S, e[n + 9], 5, 568446438), S = this.md5_gg(S, f, y, A, e[n + 14], 9, -1019803690), A = this.md5_gg(A, S, f, y, e[n + 3], 14, -187363961), y = this.md5_gg(y, A, S, f, e[n + 8], 20, 1163531501), f = this.md5_gg(f, y, A, S, e[n + 13], 5, -1444681467), S = this.md5_gg(S, f, y, A, e[n + 2], 9, -51403784), A = this.md5_gg(A, S, f, y, e[n + 7], 14, 1735328473), y = this.md5_gg(y, A, S, f, e[n + 12], 20, -1926607734), f = this.md5_hh(f, y, A, S, e[n + 5], 4, -378558), S = this.md5_hh(S, f, y, A, e[n + 8], 11, -2022574463), A = this.md5_hh(A, S, f, y, e[n + 11], 16, 1839030562), y = this.md5_hh(y, A, S, f, e[n + 14], 23, -35309556), f = this.md5_hh(f, y, A, S, e[n + 1], 4, -1530992060), S = this.md5_hh(S, f, y, A, e[n + 4], 11, 1272893353), A = this.md5_hh(A, S, f, y, e[n + 7], 16, -155497632), y = this.md5_hh(y, A, S, f, e[n + 10], 23, -1094730640), f = this.md5_hh(f, y, A, S, e[n + 13], 4, 681279174), S = this.md5_hh(S, f, y, A, e[n], 11, -358537222), A = this.md5_hh(A, S, f, y, e[n + 3], 16, -722521979), y = this.md5_hh(y, A, S, f, e[n + 6], 23, 76029189), f = this.md5_hh(f, y, A, S, e[n + 9], 4, -640364487), S = this.md5_hh(S, f, y, A, e[n + 12], 11, -421815835), A = this.md5_hh(A, S, f, y, e[n + 15], 16, 530742520), y = this.md5_hh(y, A, S, f, e[n + 2], 23, -995338651), f = this.md5_ii(f, y, A, S, e[n], 6, -198630844), S = this.md5_ii(S, f, y, A, e[n + 7], 10, 1126891415), A = this.md5_ii(A, S, f, y, e[n + 14], 15, -1416354905), y = this.md5_ii(y, A, S, f, e[n + 5], 21, -57434055), f = this.md5_ii(f, y, A, S, e[n + 12], 6, 1700485571), S = this.md5_ii(S, f, y, A, e[n + 3], 10, -1894986606), A = this.md5_ii(A, S, f, y, e[n + 10], 15, -1051523), y = this.md5_ii(y, A, S, f, e[n + 1], 21, -2054922799), f = this.md5_ii(f, y, A, S, e[n + 8], 6, 1873313359), S = this.md5_ii(S, f, y, A, e[n + 15], 10, -30611744), A = this.md5_ii(A, S, f, y, e[n + 6], 15, -1560198380), y = this.md5_ii(y, A, S, f, e[n + 13], 21, 1309151649), f = this.md5_ii(f, y, A, S, e[n + 4], 6, -145523070), S = this.md5_ii(S, f, y, A, e[n + 11], 10, -1120210379), A = this.md5_ii(A, S, f, y, e[n + 2], 15, 718787259), y = this.md5_ii(y, A, S, f, e[n + 9], 21, -343485551), f = this.safe_add(f, c), y = this.safe_add(y, u), A = this.safe_add(A, C), S = this.safe_add(S, P); + return [f, y, A, S]; + }, G.prototype.binl2rstr = function(e) { var a, n = ""; for (a = 0; a < e.length * 32; a += 8) n += String.fromCharCode(e[a >> 5] >>> a % 32 & 255); return n; - }, R.prototype.rstr2binl = function(e) { + }, G.prototype.rstr2binl = function(e) { var a, n = []; for (n[(e.length >> 2) - 1] = void 0, a = 0; a < n.length; a += 1) n[a] = 0; for (a = 0; a < e.length * 8; a += 8) n[a >> 5] |= (e.charCodeAt(a / 8) & 255) << a % 32; return n; - }, R.prototype.rstr_md5 = function(e) { + }, G.prototype.rstr_md5 = function(e) { return this.binl2rstr(this.binl_md5(this.rstr2binl(e), e.length * 8)); - }, R.prototype.rstr_hmac_md5 = function(e, a) { - var n, c = this.rstr2binl(e), u = [], C = [], E; + }, G.prototype.rstr_hmac_md5 = function(e, a) { + var n, c = this.rstr2binl(e), u = [], C = [], P; for (u[15] = C[15] = void 0, c.length > 16 && (c = this.binl_md5(c, e.length * 8)), n = 0; n < 16; n += 1) u[n] = c[n] ^ 909522486, C[n] = c[n] ^ 1549556828; - return E = this.binl_md5(u.concat(this.rstr2binl(a)), 512 + a.length * 8), this.binl2rstr(this.binl_md5(C.concat(E), 512 + 128)); - }, R.prototype.rstr2hex = function(e) { + return P = this.binl_md5(u.concat(this.rstr2binl(a)), 512 + a.length * 8), this.binl2rstr(this.binl_md5(C.concat(P), 512 + 128)); + }, G.prototype.rstr2hex = function(e) { var a = "0123456789abcdef", n = "", c, u; for (u = 0; u < e.length; u += 1) c = e.charCodeAt(u), n += a.charAt(c >>> 4 & 15) + a.charAt(c & 15); return n; - }, R.prototype.str2rstr_utf8 = function(e) { + }, G.prototype.str2rstr_utf8 = function(e) { return unescape(encodeURIComponent(e)); - }, R.prototype.raw_md5 = function(e) { + }, G.prototype.raw_md5 = function(e) { return this.rstr_md5(this.str2rstr_utf8(e)); - }, R.prototype.hex_md5 = function(e) { + }, G.prototype.hex_md5 = function(e) { return this.rstr2hex(this.raw_md5(e)); - }, R.prototype.raw_hmac_md5 = function(e, a) { + }, G.prototype.raw_hmac_md5 = function(e, a) { return this.rstr_hmac_md5(this.str2rstr_utf8(e), this.str2rstr_utf8(a)); - }, R.prototype.hex_hmac_md5 = function(e, a) { + }, G.prototype.hex_hmac_md5 = function(e, a) { return this.rstr2hex(this.raw_hmac_md5(e, a)); - }, R.prototype.md5 = function(e, a, n) { + }, G.prototype.md5 = function(e, a, n) { return a ? n ? this.raw_hmac_md5(a, e) : this.hex_hmac_md5(a, e) : n ? this.raw_md5(e) : this.hex_md5(e); - }, m.exports && (f = m.exports = r), f.Chance = r, typeof importScripts < "u" && (chance = new r(), self.Chance = r), typeof window == "object" && typeof window.document == "object" && (window.Chance = r, window.chance = new r()); + }, d.exports && (h = d.exports = i), h.Chance = i, typeof importScripts < "u" && (chance = new i(), self.Chance = i), typeof window == "object" && typeof window.document == "object" && (window.Chance = i, window.chance = new i()); })(); })(ie, ie.exports); var pe = ie.exports; const ge = /* @__PURE__ */ be(pe); -function se(m, f, k, D) { +function se(d, h, k, N) { var I = new ge(te); k == null && console.log(); - let N = k.toUpperCase(), g = m.toUpperCase(), d = f.toUpperCase(); - if (D != null && 0 < D.length) { - let i = 0, t = D.length; - var p = "'"; - (N.startsWith("INTEGER") || N.startsWith("NUMBER") || N.startsWith("DATE")) && (p = ""); - let o = D[Math.floor(X() * (t - i)) + i]; - return o.toLowerCase && o.toLowerCase() == "null" && (p = ""), o.replaceAll && (o = o.replaceAll("'", "''")), p + o + p; + let x = k.toUpperCase(), p = d.toUpperCase(), g = h.toUpperCase(); + if (N != null && 0 < N.length) { + let r = 0, t = N.length; + var T = "'"; + (x.startsWith("INTEGER") || x.startsWith("NUMBER") || x.startsWith("DATE")) && (T = ""); + let o = N[Math.floor(X() * (t - r)) + r]; + return o.toLowerCase && o.toLowerCase() == "null" && (T = ""), o.replaceAll && (o = o.replaceAll("'", "''")), T + o + T; } - if (d == "NAME" && 0 <= g.indexOf("DEPARTMENT")) { - var S = ["Sales", "Finance", "Delivery", "Manufacturing"]; - let i = 0, t = S.length; - return "'" + S[Math.floor(X() * (t - i)) + i] + "'"; + if (g == "NAME" && 0 <= p.indexOf("DEPARTMENT")) { + var b = ["Sales", "Finance", "Delivery", "Manufacturing"]; + let r = 0, t = b.length; + return "'" + b[Math.floor(X() * (t - r)) + r] + "'"; } - if (I[d.toLowerCase()] != null && d.indexOf("NAME") < 0) - return "'" + I[d.toLowerCase()]() + "'"; - if (d == "FIRST_NAME") + if (I[g.toLowerCase()] != null && g.indexOf("NAME") < 0) + return "'" + I[g.toLowerCase()]() + "'"; + if (g == "FIRST_NAME") return "'" + I.first() + "'"; - if (d == "LAST_NAME") + if (g == "LAST_NAME") return "'" + I.last() + "'"; - if (0 <= d.indexOf("NAME")) + if (0 <= g.indexOf("NAME")) return "'" + I.name() + "'"; - if (0 < d.indexOf("ADDRESS")) + if (0 < g.indexOf("ADDRESS")) return "'" + I.address() + "'"; - if (d == "LOCATION") + if (g == "LOCATION") return "'" + I.city() + "'"; - if (d == "DESCRIPTION") + if (g == "DESCRIPTION") return "'" + I.paragraph({ sentences: 2 }) + "'"; - if (d == "JOB") { - var r = ["Engineer", "Consultant", "Architect", "Manager", "Analyst", "Specialist", "Evangelist", "Salesman"]; - let i = 0, t = r.length; - return "'" + r[Math.floor(X() * (t - i)) + i] + "'"; + if (g == "JOB") { + var i = ["Engineer", "Consultant", "Architect", "Manager", "Analyst", "Specialist", "Evangelist", "Salesman"]; + let r = 0, t = i.length; + return "'" + i[Math.floor(X() * (t - r)) + r] + "'"; } - if (N.startsWith("INTEGER") || N.startsWith("NUMBER")) { - let i = 0, t = 100; - return Math.floor(X() * (t - i)) + i; + if (x.startsWith("INTEGER") || x.startsWith("NUMBER")) { + let r = 0, t = 100; + return Math.floor(X() * (t - r)) + r; } - if (N.startsWith("DATE") || N.startsWith("TIMESTAMP")) { - let i = 0, t = 100; - var s = Math.floor(X() * (t - i)) + i; + if (x.startsWith("DATE") || x.startsWith("TIMESTAMP")) { + let r = 0, t = 100; + var s = Math.floor(X() * (t - r)) + r; return "sysdate-" + s; } return "'N/A'"; @@ -7261,28 +7261,28 @@ function Ce() { te = 1; } function X() { - var m = Math.sin(te++) * 1e4; - return m - Math.floor(m); + var d = Math.sin(te++) * 1e4; + return d - Math.floor(d); } var $ = function() { - function m(f, k) { - for (var D = [], I = "", N = 0; N < f.length; N++) { - for (var g = f.charAt(N), d = D.length, p = 0; p < k.length; p++) { - var S = k.charAt(p); - if (g == S) { - 0 < I.length && D.push(I), D.push(g), I = ""; + function d(h, k) { + for (var N = [], I = "", x = 0; x < h.length; x++) { + for (var p = h.charAt(x), g = N.length, T = 0; T < k.length; T++) { + var b = k.charAt(T); + if (p == b) { + 0 < I.length && N.push(I), N.push(p), I = ""; continue; } } - d == D.length && (I = I + g); + g == N.length && (I = I + p); } - return 0 < I.length && D.push(I), D; + return 0 < I.length && N.push(I), N; } - return m; + return d; }(), Z = function() { - function m(I, N, g, d, p, S) { - this.type = d, this.value = I, this.begin = N, this.end = g, this.line = p, this.col = S, this.toString = function() { - return "{type:" + d + ",value:" + I + "}"; + function d(I, x, p, g, T, b) { + this.type = g, this.value = I, this.begin = x, this.end = p, this.line = T, this.col = b, this.toString = function() { + return "{type:" + g + ",value:" + I + "}"; }, this.isStandardLiteral = function() { if (this.value.length < 2 || !(this.value.charAt(0) == "'" || this.value.charAt(0) == "n" || this.value.charAt(0) == "N")) return !1; @@ -7312,138 +7312,138 @@ var $ = function() { s = s.substring(1, s.length - 1); else return !1; - return r(s.charAt(0)) == s.charAt(s.length - 1); + return i(s.charAt(0)) == s.charAt(s.length - 1); }; - function r(s) { + function i(s) { return s == "<" ? ">" : s == "[" ? "]" : s == "{" ? "}" : s == "(" ? ")" : s; } } - function f(I, N, g) { - for (var d = [], p = `(){}[]^-|!*+.><='",;:%@?/\\#~` + g, S = ` -\r `, r = $( + function h(I, x, p) { + for (var g = [], T = `(){}[]^-|!*+.><='",;:%@?/\\#~` + p, b = ` +\r `, i = $( I, //".*-+/|><=()\'\", \n\r\t" - p + S - ), s = 0, i = 0, t = 0, o = 0; o < r.length; o++) { - var l = r[o], h = null; - if (d.length > 0 && (h = d[d.length - 1]), l == ` -` ? (i++, t = 0) : o > 0 && r[o - 1] !== ` -` ? t = t + r[o - 1].length : t = 0, s += l.length, h != null && h.type == "comment" && (h.value.lastIndexOf("*/") != h.value.length - 2 || h.value == "/*/")) { - l == "*" || l == "/" ? h.value = h.value + l : h.value = "/* ... ", h.end = s, h != null && h.type == "comment" && h.value.lastIndexOf("*/") == h.value.length - 2 && h.value != "/*/" && (h.value = I.substring(h.begin, h.end)); + T + b + ), s = 0, r = 0, t = 0, o = 0; o < i.length; o++) { + var l = i[o], m = null; + if (g.length > 0 && (m = g[g.length - 1]), l == ` +` ? (r++, t = 0) : o > 0 && i[o - 1] !== ` +` ? t = t + i[o - 1].length : t = 0, s += l.length, m != null && m.type == "comment" && (m.value.lastIndexOf("*/") != m.value.length - 2 || m.value == "/*/")) { + l == "*" || l == "/" ? m.value = m.value + l : m.value = "/* ... ", m.end = s, m != null && m.type == "comment" && m.value.lastIndexOf("*/") == m.value.length - 2 && m.value != "/*/" && (m.value = I.substring(m.begin, m.end)); continue; } - if (h != null && (h.type == "line-comment" || h.type == "dbtools-command") && l != ` + if (m != null && (m.type == "line-comment" || m.type == "dbtools-command") && l != ` `) { - h.value = h.value + l; + m.value = m.value + l; continue; } - if (h != null && (h.type == "line-comment" || h.type == "dbtools-command") && l == ` -` && (h.end = h.begin + h.value.length), h != null && h.type == "quoted-string" && !(h.isStandardLiteral() || h.isAltLiteral())) { - h.value = h.value + l, h.end = h.begin + h.value.length; + if (m != null && (m.type == "line-comment" || m.type == "dbtools-command") && l == ` +` && (m.end = m.begin + m.value.length), m != null && m.type == "quoted-string" && !(m.isStandardLiteral() || m.isAltLiteral())) { + m.value = m.value + l, m.end = m.begin + m.value.length; continue; } - if (!(h != null && h.type == "dquoted-string" && l != '"' && !(h.value.endsWith('"') && h.value.length > 1))) { - if (h != null && h.type == "dquoted-string" && l == '"') { - h.end = s, h.value = I.substring(h.begin, h.end); + if (!(m != null && m.type == "dquoted-string" && l != '"' && !(m.value.endsWith('"') && m.value.length > 1))) { + if (m != null && m.type == "dquoted-string" && l == '"') { + m.end = s, m.value = I.substring(m.begin, m.end); continue; } - if (!(h != null && h.type == "bquoted-string" && l != "`" && !(h.value.endsWith("`") && h.value.length > 1))) { - if (h != null && h.type == "bquoted-string" && l == "`") { - h.end = s, h.value = I.substring(h.begin, h.end); + if (!(m != null && m.type == "bquoted-string" && l != "`" && !(m.value.endsWith("`") && m.value.length > 1))) { + if (m != null && m.type == "bquoted-string" && l == "`") { + m.end = s, m.value = I.substring(m.begin, m.end); continue; } - if (l == "*" && h != null && h.value == "/") { - h.value = h.value + l, h.end = h.begin + h.value.length, h.type = "comment"; + if (l == "*" && m != null && m.value == "/") { + m.value = m.value + l, m.end = m.begin + m.value.length, m.type = "comment"; continue; } - if (l == "-" && h != null && h.value == "-") { - h.value = h.value + l, h.type = "line-comment"; + if (l == "-" && m != null && m.value == "-") { + m.value = m.value + l, m.type = "line-comment"; continue; } - if ((l.toUpperCase() == "REM" || l.toUpperCase() == "REMA" || l.toUpperCase() == "REMAR" || l.toUpperCase() == "REMARK" || l.toUpperCase() == "PRO" || l.toUpperCase() == "PROM" || l.toUpperCase() == "PROMP" || l.toUpperCase() == "PROMPT") && (h == null || h.value == ` -` || h.value == "\r")) { - d.push(new m(l, s - l.length, -9, "line-comment", i, t)); + if ((l.toUpperCase() == "REM" || l.toUpperCase() == "REMA" || l.toUpperCase() == "REMAR" || l.toUpperCase() == "REMARK" || l.toUpperCase() == "PRO" || l.toUpperCase() == "PROM" || l.toUpperCase() == "PROMP" || l.toUpperCase() == "PROMPT") && (m == null || m.value == ` +` || m.value == "\r")) { + g.push(new d(l, s - l.length, -9, "line-comment", r, t)); continue; } - if (l.toUpperCase() == "SODA" && (h == null || h.value == ` -` || h.value == "\r")) { - d.push(new m(l, s - l.length, -9, "dbtools-command", i, t)); + if (l.toUpperCase() == "SODA" && (m == null || m.value == ` +` || m.value == "\r")) { + g.push(new d(l, s - l.length, -9, "dbtools-command", r, t)); continue; } - if (h != null && h.type == "identifier" && h.end == -11 && h.value.indexOf("@") == 0 && !(l == ` + if (m != null && m.type == "identifier" && m.end == -11 && m.value.indexOf("@") == 0 && !(l == ` ` || l == "\r")) { - h.value = h.value + l; + m.value = m.value + l; continue; } - if (h != null && h.type == "identifier" && h.end == -11 && h.value.indexOf("@") == 0 && (l == ` + if (m != null && m.type == "identifier" && m.end == -11 && m.value.indexOf("@") == 0 && (l == ` ` || l == "\r")) { - h.end = s - 1, d.push(new m(l, s - 1, s, "ws", i, t)); + m.end = s - 1, g.push(new d(l, s - 1, s, "ws", r, t)); continue; } - if (N && l == "'") { - h != null && (h.value.toUpperCase() == "Q" || h.value.toUpperCase() == "N" || h.value.toUpperCase() == "U" || h.value.toUpperCase() == "NQ") ? (h.value += l, h.type = "quoted-string") : d.push(new m(l, s - 1, -10, "quoted-string", i, t)); + if (x && l == "'") { + m != null && (m.value.toUpperCase() == "Q" || m.value.toUpperCase() == "N" || m.value.toUpperCase() == "U" || m.value.toUpperCase() == "NQ") ? (m.value += l, m.type = "quoted-string") : g.push(new d(l, s - 1, -10, "quoted-string", r, t)); continue; } - if (N && l == '"') { - d.push(new m(l, s - 1, -11, "dquoted-string", i, t)); + if (x && l == '"') { + g.push(new d(l, s - 1, -11, "dquoted-string", r, t)); continue; } - if (l == "`" && 0 <= p.indexOf("`")) { - d.push(new m(l, s - 1, -11, "bquoted-string", i, t)); + if (l == "`" && 0 <= T.indexOf("`")) { + g.push(new d(l, s - 1, -11, "bquoted-string", r, t)); continue; } - if (l.length == 1 && 0 <= p.indexOf(l)) { - d.push(new m(l, s - 1, s, "operation", i, t)); + if (l.length == 1 && 0 <= T.indexOf(l)) { + g.push(new d(l, s - 1, s, "operation", r, t)); continue; } - if (l.length == 1 && 0 <= S.indexOf(l)) { - d.push(new m(l, s - 1, s, "ws", i, t)); + if (l.length == 1 && 0 <= b.indexOf(l)) { + g.push(new d(l, s - 1, s, "ws", r, t)); continue; } if ("0" <= l.charAt(0) && l.charAt(0) <= "9") { - k(l, d, s - l.length, i) || (l.charAt(l.length - 1) == "K" || l.charAt(l.length - 1) == "k" || l.charAt(l.length - 1) == "M" || l.charAt(l.length - 1) == "m" || l.charAt(l.length - 1) == "G" || l.charAt(l.length - 1) == "g" || l.charAt(l.length - 1) == "T" || l.charAt(l.length - 1) == "t" || l.charAt(l.length - 1) == "P" || l.charAt(l.length - 1) == "p" || l.charAt(l.length - 1) == "E" || l.charAt(l.length - 1) == "e" ? (d.push(new m(l.substring(0, l.length - 1), s - l.length, s - 1, "constant.numeric", i, t)), d.push(new m(l.substring(l.length - 1), s - 1, s, "constant.numeric", i, t))) : d.push(new m(l, s - l.length, s, "constant.numeric", i, t))); + k(l, g, s - l.length, r) || (l.charAt(l.length - 1) == "K" || l.charAt(l.length - 1) == "k" || l.charAt(l.length - 1) == "M" || l.charAt(l.length - 1) == "m" || l.charAt(l.length - 1) == "G" || l.charAt(l.length - 1) == "g" || l.charAt(l.length - 1) == "T" || l.charAt(l.length - 1) == "t" || l.charAt(l.length - 1) == "P" || l.charAt(l.length - 1) == "p" || l.charAt(l.length - 1) == "E" || l.charAt(l.length - 1) == "e" ? (g.push(new d(l.substring(0, l.length - 1), s - l.length, s - 1, "constant.numeric", r, t)), g.push(new d(l.substring(l.length - 1), s - 1, s, "constant.numeric", r, t))) : g.push(new d(l, s - l.length, s, "constant.numeric", r, t))); continue; } - var y = "identifier"; - o + 1 < r.length && r[o + 1], d.push(new m(l, s - l.length, s, y, i, t)); + var v = "identifier"; + o + 1 < i.length && i[o + 1], g.push(new d(l, s - l.length, s, v, r, t)); } } } - if (d.length > 0) { - var h = d[d.length - 1]; - h.end = I.length; + if (g.length > 0) { + var m = g[g.length - 1]; + m.end = I.length; } - return d; + return g; } - function k(I, N, g, d) { + function k(I, x, p, g) { if (0 > I.indexOf("e") && 0 > I.indexOf("f") && 0 > I.indexOf("d")) return !1; 0 <= I.indexOf("e"), 0 <= I.indexOf("e"), !(0 <= I.indexOf("e")) && 0 <= I.indexOf("f"); - for (var p = $(I, "efd"), S = 0; S < p.length; S++) { - var r = p[S]; - g += r.length, "0" <= r.charAt(0) && r.charAt(0) <= "9" ? N.push(new m(r, g - r.length, g, "constant.numeric", d)) : N.push(new m(r, g - r.length, g, "identifier", d)); + for (var T = $(I, "efd"), b = 0; b < T.length; b++) { + var i = T[b]; + p += i.length, "0" <= i.charAt(0) && i.charAt(0) <= "9" ? x.push(new d(i, p - i.length, p, "constant.numeric", g)) : x.push(new d(i, p - i.length, p, "identifier", g)); } return !0; } - function D(I, N, g, d) { - for (var p = [], S = f(I, g, d), r = null, s = 0; s < S.length; s++) { - var i = S[s]; - if (i.type == "quoted-string") { - if (r != null && r.type == "quoted-string") { - r.value = r.value + i.value, r.end = i.end; + function N(I, x, p, g) { + for (var T = [], b = h(I, p, g), i = null, s = 0; s < b.length; s++) { + var r = b[s]; + if (r.type == "quoted-string") { + if (i != null && i.type == "quoted-string") { + i.value = i.value + r.value, i.end = r.end; continue; } - if (r != null && r.type == "identifier" && r.value.toUpperCase() == "N" && r.end == i.begin) { - r.begin = i.begin, r.end = i.end, r.type = i.type, r.value = i.value; + if (i != null && i.type == "identifier" && i.value.toUpperCase() == "N" && i.end == r.begin) { + i.begin = r.begin, i.end = r.end, i.type = r.type, i.value = r.value; continue; } } - if (i.value.indexOf("@") == 0 && (i.end = i.begin + i.value.length), i.value == "#" && r != null && r.type == "identifier") { - r.end += 1, r.value += "#"; + if (r.value.indexOf("@") == 0 && (r.end = r.begin + r.value.length), r.value == "#" && i != null && i.type == "identifier") { + i.end += 1, i.value += "#"; continue; } - if ((i.type === "identifier" || i.type === "constant.numeric") && r !== null && r.value[r.value.length - 1] === "#" && r.type === "identifier") { - r.end += i.value.length, r.value += i.value; + if ((r.type === "identifier" || r.type === "constant.numeric") && i !== null && i.value[i.value.length - 1] === "#" && i.type === "identifier") { + i.end += r.value.length, i.value += r.value; continue; } /*17607445: can just drop preprocessor directives @@ -7452,14 +7452,14 @@ var $ = function() { || token.value.equals("$ELSE") || token.value.equals("$THEN") ||*/ - i.value.indexOf("$$") == 0 && (i.value = "$$VAR"), (N || i.type != "ws" && i.type != "comment" && i.type != "line-comment") && p.push(i), r = i; + r.value.indexOf("$$") == 0 && (r.value = "$$VAR"), (x || r.type != "ws" && r.type != "comment" && r.type != "line-comment") && T.push(r), i = r; } - return p; + return T; } - return D; + return N; }(); -function ve(m) { - const f = { +function ve(d) { + const h = { ACCESS: "N", ADD: "N", ALL: "Y", @@ -7570,98 +7570,98 @@ function ve(m) { WHERE: "Y", WITH: "Y" }; - let k = m.toUpperCase(); - return f[k] != null ? "the_" + m : m; + let k = d.toUpperCase(); + return h[k] != null ? "the_" + d : d; } let ce = function() { - let m, f = " ", k = ["string", "varchar2", "varchar", "vc", "char"]; - var D = ["yn", "boolean", "bool"]; - function I(p, S, r) { - this.line = p, this.parent = r, this.children = [], r != null && r.children.push(this), this.fks = null, this.findChild = function(i) { + let d, h = " ", k = ["string", "varchar2", "varchar", "vc", "char"]; + var N = ["yn", "boolean", "bool"]; + function I(T, b, i) { + this.line = T, this.parent = i, this.children = [], i != null && i.children.push(this), this.fks = null, this.findChild = function(r) { for (var t = 0; t < this.children.length; t++) - if (this.children[t].parseName() == i) + if (this.children[t].parseName() == r) return this.children[t]; return null; }, this.descendants = function() { - var i = []; - i.push(this); + var r = []; + r.push(this); for (var t = 0; t < this.children.length; t++) - i = i.concat(this.children[t].descendants()); - return i; + r = r.concat(this.children[t].descendants()); + return r; }, this.maxChildNameLen = function() { - var i = 2, t = this.trimmedContent().toUpperCase(); - if ((m.optionEQvalue("rowkey", !0) || 0 < t.indexOf("/ROWKEY")) && (i = 7), (m.optionEQvalue("Row Version Number", "yes") || 0 < t.indexOf("/ROWVERSION")) && (i = 11), m.optionEQvalue("Audit Columns", "yes") || 0 < t.indexOf("/AUDITCOLS") || 0 < t.indexOf("/AUDIT COL")) { - let B = m.getOptionValue("createdcol").length; - i < B && (i = B), B = m.getOptionValue("createdbycol").length, i < B && (i = B), B = m.getOptionValue("updatedcol").length, i < B && (i = B), B = m.getOptionValue("updatedbycol").length, i < B && (i = B); + var r = 2, t = this.trimmedContent().toUpperCase(); + if ((d.optionEQvalue("rowkey", !0) || 0 < t.indexOf("/ROWKEY")) && (r = 7), (d.optionEQvalue("Row Version Number", "yes") || 0 < t.indexOf("/ROWVERSION")) && (r = 11), d.optionEQvalue("Audit Columns", "yes") || 0 < t.indexOf("/AUDITCOLS") || 0 < t.indexOf("/AUDIT COL")) { + let B = d.getOptionValue("createdcol").length; + r < B && (r = B), B = d.getOptionValue("createdbycol").length, r < B && (r = B), B = d.getOptionValue("updatedcol").length, r < B && (r = B), B = d.getOptionValue("updatedbycol").length, r < B && (r = B); } if (this.fks != null) for (var o in this.fks) { var l = o.length; - let B = m.find(o); - B != null && B.isMany2One() && (l += 3), i < l && (i = l); + let B = d.find(o); + B != null && B.isMany2One() && (l += 3), r < l && (r = l); } - for (var h = 0; h < this.children.length; h++) { - let B = this.children[h]; + for (var m = 0; m < this.children.length; m++) { + let B = this.children[m]; if (0 < B.children.length) continue; - let T = B.parseName().length; - 0 < B.indexOf("file") && (T += 9), i < T && (i = T); + let M = B.parseName().length; + 0 < B.indexOf("file") && (M += 9), r < M && (r = M); } - var y = m.additionalColumns(); - for (let B in y) { - let T = B.length; - i < T && (i = T); + var v = d.additionalColumns(); + for (let B in v) { + let M = B.length; + r < M && (r = M); } - return i; + return r; }; - function s(i) { - let t = i; + function s(r) { + let t = r; return t = t.replace(/ timestamp with local time zone/gi, " tswltz"), t = t.replace(/ timestamp with time zone/gi, " tswtz"), t = t.replace(/ timestamp/gi, " ts"), t; } - this.content = s(S), this.comment, this.indexOf = function(i, t) { + this.content = s(b), this.comment, this.indexOf = function(r, t) { for (let o = 0; o < this.src.length; o++) { - if (t && this.src[o].value.toLowerCase().indexOf(i.toLowerCase()) == 0) + if (t && this.src[o].value.toLowerCase().indexOf(r.toLowerCase()) == 0) return o; - if (i.toLowerCase() == this.src[o].value.toLowerCase()) + if (r.toLowerCase() == this.src[o].value.toLowerCase()) return o; } return -1; }, this.trimmedContent = function() { - var i = this.content.trim(), t = i.indexOf("["), o = i.indexOf("]"); - return this.comment == null && 0 < t && (this.comment = i.substr(t + 1, o - t - 1)), 0 < t && (i = i.substr(0, t) + i.substr(o + 2)), t = i.indexOf("--"), this.comment == null && 0 < t && (this.comment = i.substr(t + 2)), 0 < t && (i = i.substr(0, t)), i.trim(); + var r = this.content.trim(), t = r.indexOf("["), o = r.indexOf("]"); + return this.comment == null && 0 < t && (this.comment = r.substr(t + 1, o - t - 1)), 0 < t && (r = r.substr(0, t) + r.substr(o + 2)), t = r.indexOf("--"), this.comment == null && 0 < t && (this.comment = r.substr(t + 2)), 0 < t && (r = r.substr(0, t)), r.trim(); }, this.src = Z(this.content, !1, !0, ""), this.parseName = function() { - let i = this.trimmedContent(); - i = i.replace(/\t/, f); - const t = i.indexOf('"'), o = i.indexOf('"', t + 1); + let r = this.trimmedContent(); + r = r.replace(/\t/, h); + const t = r.indexOf('"'), o = r.indexOf('"', t + 1); if (0 <= t && t < o) - return i.substring(t, o + 1); - (i.indexOf(">") == 0 || i.indexOf("<") == 0) && (i = i.substring(1).trim()); - const l = i.toLowerCase(); + return r.substring(t, o + 1); + (r.indexOf(">") == 0 || r.indexOf("<") == 0) && (r = r.substring(1).trim()); + const l = r.toLowerCase(); if (l.indexOf("view ") == 0) { - var h = i.split(" "); - return h[1]; + var m = r.split(" "); + return m[1]; } - i = g(i, " d"); - var y = i.indexOf("/"); - 0 < y && (i = i.substring(0, y)), i = i.trim(), i = g(i, " integer"), i = g(i, " number"), i = g(i, " int"), i = g(i, " num"), i = g(i, " clob"), i = g(i, " blob"), i = g(i, " json"), i = g(i, " file"), i = g(i, " date"), i = g(i, " tstz"), i = g(i, " tswtz"), i = g(i, " tswltz"), i = g(i, " ts"), i = i.replace(/ vc\d+k/g, ""), i = i.replace(/ vc\(\d+\)/g, ""), i = i.replace(/ vc\d+/g, ""); - for (let T in k) { - let P = l.indexOf(" " + k[T]); - if (0 < P) { - i = i.substring(0, P) + i.substring(P + k[T].length + 1); + r = p(r, " d"); + var v = r.indexOf("/"); + 0 < v && (r = r.substring(0, v)), r = r.trim(), r = p(r, " integer"), r = p(r, " number"), r = p(r, " int"), r = p(r, " num"), r = p(r, " clob"), r = p(r, " blob"), r = p(r, " json"), r = p(r, " file"), r = p(r, " date"), r = p(r, " tstz"), r = p(r, " tswtz"), r = p(r, " tswltz"), r = p(r, " ts"), r = r.replace(/ vc\d+k/g, ""), r = r.replace(/ vc\(\d+\)/g, ""), r = r.replace(/ vc\d+/g, ""); + for (let M in k) { + let L = l.indexOf(" " + k[M]); + if (0 < L) { + r = r.substring(0, L) + r.substring(L + k[M].length + 1); break; } } - for (let T in D) { - let P = l.indexOf(" " + D[T]); - if (0 < P) { - i = i.substring(0, P) + i.substring(P + D[T].length + 1); + for (let M in N) { + let L = l.indexOf(" " + N[M]); + if (0 < L) { + r = r.substring(0, L) + r.substring(L + N[M].length + 1); break; } } - i = i.replace(/ num(ber)?\(\d+\)/g, ""), i = i.replace(/ num(ber)?\(\d+,\d+\)/g, ""), i = i.replace(/ num(ber)?\d+/g, ""), i = i.trim(), this.children.length == 0 && this.parent != null && this.parent.colprefix != null && (i = this.parent.colprefix + "_" + i); - var B = i.substr(0, 1); - return B >= "0" && B <= "9" && (i = "x" + i), ve(he(i)); - }, this.parseType = function(i) { + r = r.replace(/ num(ber)?\(\d+\)/g, ""), r = r.replace(/ num(ber)?\(\d+,\d+\)/g, ""), r = r.replace(/ num(ber)?\d+/g, ""), r = r.trim(), this.children.length == 0 && this.parent != null && this.parent.colprefix != null && (r = this.parent.colprefix + "_" + r); + var B = r.substr(0, 1); + return B >= "0" && B <= "9" && (r = "x" + r), ve(he(r)); + }, this.parseType = function(r) { if (this.children != null && 0 < this.children.length) return "table"; const t = this.src; @@ -7671,111 +7671,111 @@ let ce = function() { return "dv"; if (this.parent == null) return "table"; - var o = m.semantics(), l = 4e3; + var o = d.semantics(), l = 4e3; (t[0].value.startsWith("name") || t[0].value.startsWith("email")) && (l = 255); - const h = this.indexOf("vc", !0); - if (0 < h) { - t[h].begin, t[h].end; - let x = t[h].value.substring(2); - x == "" && this.indexOf("(") == h + 1 && (x = t[h + 2].value), x != "" && (l = parseInt(x)), t[h].value.endsWith("k") && (l < 32 ? l = l * 1024 : l = l * 1024 - 1); + const m = this.indexOf("vc", !0); + if (0 < m) { + t[m].begin, t[m].end; + let E = t[m].value.substring(2); + E == "" && this.indexOf("(") == m + 1 && (E = t[m + 2].value), E != "" && (l = parseInt(E)), t[m].value.endsWith("k") && (l < 32 ? l = l * 1024 : l = l * 1024 - 1); } - var y = "varchar2(" + l + o + ")"; - i == "plsql" && (y = "varchar2"), t[0].value.endsWith("_id") && h < 0 && this.indexOf("date") < 0 && (y = "number"), t[1] && t[1].value == "id" && (y = "number"), t[0].value == "quantity" && (y = "number"), t[0].value.endsWith("id") && h < 0 && this.indexOf("/") + 1 == this.indexOf("pk") && (y = "number"), 0 < this.indexOf("int", !0) && (y = "integer"); - const B = K(r.parseName(), "_", this.parseName()); - (t[0].value.endsWith("_yn") || t[0].value.startsWith("is_")) && (y = "varchar2(1 char) constraint " + K(m.objPrefix(), B) + ` -`, y += f + f + " ".repeat(r.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"); - for (let x in D) - if (0 < this.indexOf(D[x])) { - y = "varchar2(1 char) constraint " + K(m.objPrefix(), B) + ` -`, y += f + f + " ".repeat(r.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"; + var v = "varchar2(" + l + o + ")"; + r == "plsql" && (v = "varchar2"), t[0].value.endsWith("_id") && m < 0 && this.indexOf("date") < 0 && (v = "number"), t[1] && t[1].value == "id" && (v = "number"), t[0].value == "quantity" && (v = "number"), t[0].value.endsWith("id") && m < 0 && this.indexOf("/") + 1 == this.indexOf("pk") && (v = "number"), 0 < this.indexOf("int", !0) && (v = "integer"); + const B = K(i.parseName(), "_", this.parseName()); + (t[0].value.endsWith("_yn") || t[0].value.startsWith("is_")) && (v = "varchar2(1 char) constraint " + K(d.objPrefix(), B) + ` +`, v += h + h + " ".repeat(i.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"); + for (let E in N) + if (0 < this.indexOf(N[E])) { + v = "varchar2(1 char) constraint " + K(d.objPrefix(), B) + ` +`, v += h + h + " ".repeat(i.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"; break; } - this.indexOf("phone_number") == 0 && (y = "number"); - let T = this.indexOf("num", !0); - 0 < T && (y = "number"); - let P = this.indexOf(")"); - if (0 < T && 0 < P && (y += this.content.toLowerCase().substring(t[T + 1].begin, t[P].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value.startsWith("created") || t[0].value.startsWith("updated")) && (y = m.getOptionValue("Date Data Type").toLowerCase()), h < 0 && (0 < this.indexOf("clob") && (y = "clob"), (0 < this.indexOf("blob") || 0 < this.indexOf("file")) && (y = "blob"), 0 < this.indexOf("json") && (y = "clob check (" + this.parseName() + " is json)")), 0 < this.indexOf("tswltz") ? y = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : 0 < this.indexOf("tswtz") || 0 < this.indexOf("tstz") ? y = "TIMESTAMP WITH TIME ZONE".toLowerCase() : 0 < this.indexOf("ts") && (y = "TIMESTAMP".toLowerCase()), i) { + this.indexOf("phone_number") == 0 && (v = "number"); + let M = this.indexOf("num", !0); + 0 < M && (v = "number"); + let L = this.indexOf(")"); + if (0 < M && 0 < L && (v += this.content.toLowerCase().substring(t[M + 1].begin, t[L].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value.startsWith("created") || t[0].value.startsWith("updated")) && (v = d.getOptionValue("Date Data Type").toLowerCase()), m < 0 && (0 < this.indexOf("clob") && (v = "clob"), (0 < this.indexOf("blob") || 0 < this.indexOf("file")) && (v = "blob"), 0 < this.indexOf("json") && (v = "clob check (" + this.parseName() + " is json)")), 0 < this.indexOf("tswltz") ? v = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : 0 < this.indexOf("tswtz") || 0 < this.indexOf("tstz") ? v = "TIMESTAMP WITH TIME ZONE".toLowerCase() : 0 < this.indexOf("ts") && (v = "TIMESTAMP".toLowerCase()), r) { if (0 < this.indexOf("fk") || 0 < this.indexOf("reference", !0)) { - const x = this.refId(); - let w = "number"; - y == "integer" && (w = y); - let H = m.find(x); - return H != null && H.getExplicitPkNode() != null && (w = H.getExplicitPkNode().parseType((F) => !0)), w; + const E = this.refId(); + let D = "number"; + v == "integer" && (D = v); + let F = d.find(E); + return F != null && F.getExplicitPkNode() != null && (D = F.getExplicitPkNode().parseType((R) => !0)), D; } - return y; + return v; } - 0 < this.indexOf("unique") && (y += ` -`, y += f + f + " ".repeat(r.maxChildNameLen()) + "constraint " + B + "_unq unique"); - var L = "'"; - if ((y.startsWith("integer") || y.startsWith("number") || y.startsWith("date")) && (L = ""), 0 < this.indexOf("default")) { - const x = t[this.indexOf("default") + 1].value; - y += " default on null " + L + x + L; + 0 < this.indexOf("unique") && (v += ` +`, v += h + h + " ".repeat(i.maxChildNameLen()) + "constraint " + B + "_unq unique"); + var w = "'"; + if ((v.startsWith("integer") || v.startsWith("number") || v.startsWith("date")) && (w = ""), 0 < this.indexOf("default")) { + const E = t[this.indexOf("default") + 1].value; + v += " default on null " + w + E + w; } - if ((0 < this.indexOf("nn") || this.indexOf("not") + 1 == this.indexOf("null")) && this.indexOf("pk") < 0 && (y += " not null"), (0 < this.indexOf("hidden") || 0 < this.indexOf("invincible")) && (y += " invisible"), y += this.genConstraint(L), 0 < this.indexOf("between")) { - const x = this.indexOf("between"), w = t[x + 1].value + " and " + t[x + 3].value; - y += " constraint " + K(B, "_bet") + ` -`, y += " check (" + this.parseName() + " between " + w + ")"; + if ((0 < this.indexOf("nn") || this.indexOf("not") + 1 == this.indexOf("null")) && this.indexOf("pk") < 0 && (v += " not null"), (0 < this.indexOf("hidden") || 0 < this.indexOf("invincible")) && (v += " invisible"), v += this.genConstraint(w), 0 < this.indexOf("between")) { + const E = this.indexOf("between"), D = t[E + 1].value + " and " + t[E + 3].value; + v += " constraint " + K(B, "_bet") + ` +`, v += " check (" + this.parseName() + " between " + D + ")"; } if (0 < this.indexOf("pk")) { - let x = " not null"; - y.startsWith("number") && m.optionEQvalue("pk", "identityDataType") && (x = " GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), y.startsWith("number") && m.optionEQvalue("pk", "seq") && (x = " default on null " + (m.objPrefix() + this.parent.parseName()) + "_seq.NEXTVAL ".toLowerCase()), y.startsWith("number") && m.optionEQvalue("pk", "guid") && (x = " default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), y += x + ` -`, y += f + f + " ".repeat(r.maxChildNameLen()) + "constraint " + K(m.objPrefix(), B, "_pk") + " primary key"; + let E = " not null"; + v.startsWith("number") && d.optionEQvalue("pk", "identityDataType") && (E = " GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), v.startsWith("number") && d.optionEQvalue("pk", "seq") && (E = " default on null " + (d.objPrefix() + this.parent.parseName()) + "_seq.NEXTVAL ".toLowerCase()), v.startsWith("number") && d.optionEQvalue("pk", "guid") && (E = " default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), v += E + ` +`, v += h + h + " ".repeat(i.maxChildNameLen()) + "constraint " + K(d.objPrefix(), B, "_pk") + " primary key"; } - return y; - }, this.genConstraint = function(i) { + return v; + }, this.genConstraint = function(r) { let t = ""; if (0 < this.indexOf("check")) { let o = ""; - r != null && (o = r.parseName() + "_"); - const l = K(o, this.parseName()), h = this.trimmedContent().toLowerCase(), y = h.indexOf("/check"); - let B = h.lastIndexOf("/"); - B == y && (B = h.length); - let T = this.trimmedContent().substr(y + 6, B - y - 6).trim(); - const P = Z(T, !1, !0, ""); - let L = f; - r != null && (L = " ".repeat(r.maxChildNameLen())), this.children != null && 0 < this.children.length ? (P[0].value != "(" && (T = "( " + T + ")"), t += f + "constraint " + K(m.objPrefix(), l, "_ck"), t += " check " + T + `, -`) : P[0].value == "(" && P[P.length - 1].value == ")" ? (t += " constraint " + K(m.objPrefix(), l, "_ck") + ` -`, t += f + f + L + "check " + T) : (0 < T.indexOf(", ") ? T = T.replace(/, /g, i + "," + i) : 0 < T.indexOf(",") ? T = T.replace(/,/g, i + "," + i) : T = T.replace(/ /g, i + "," + i), t += " constraint " + K(m.objPrefix(), l, "_ck") + ` -`, t += f + f + L + "check (" + this.parseName() + " in (" + i + T + i + "))", t = t.replace(/''/gm, "'")); + i != null && (o = i.parseName() + "_"); + const l = K(o, this.parseName()), m = this.trimmedContent().toLowerCase(), v = m.indexOf("/check"); + let B = m.lastIndexOf("/"); + B == v && (B = m.length); + let M = this.trimmedContent().substr(v + 6, B - v - 6).trim(); + const L = Z(M, !1, !0, ""); + let w = h; + i != null && (w = " ".repeat(i.maxChildNameLen())), this.children != null && 0 < this.children.length ? (L[0].value != "(" && (M = "( " + M + ")"), t += h + "constraint " + K(d.objPrefix(), l, "_ck"), t += " check " + M + `, +`) : L[0].value == "(" && L[L.length - 1].value == ")" ? (t += " constraint " + K(d.objPrefix(), l, "_ck") + ` +`, t += h + h + w + "check " + M) : (0 < M.indexOf(", ") ? M = M.replace(/, /g, r + "," + r) : 0 < M.indexOf(",") ? M = M.replace(/,/g, r + "," + r) : M = M.replace(/ /g, r + "," + r), t += " constraint " + K(d.objPrefix(), l, "_ck") + ` +`, t += h + h + w + "check (" + this.parseName() + " in (" + r + M + r + "))", t = t.replace(/''/gm, "'")); } return t; }, this.isMany2One = function() { - var i = this.trimmedContent(), t = i.indexOf(">"); + var r = this.trimmedContent(), t = r.indexOf(">"); return t == 0; }, this.getExplicitPkNode = function() { - for (var i = 0; i < this.children.length; i++) { - var t = this.children[i], o = t.trimmedContent().toLowerCase(); + for (var r = 0; r < this.children.length; r++) { + var t = this.children[r], o = t.trimmedContent().toLowerCase(); if (0 < o.indexOf("/pk")) return t; } return null; }, this.refId = function() { - var i = this.trimmedContent(); - i = i.replace(/\/cascade/g, ""); - var t = i.indexOf(" id "); - if (t < 0 && t == i.length - 3 && (t = i.indexOf(" id")), t < 0 && (t = i.indexOf(" id"), t != i.length - 3 && (t = -1)), t < 0 && (t = i.indexOf("_id "), t != i.length - 4 && (t = -1)), t < 0 && (t = i.indexOf("_id"), t != i.length - 3 && (t = -1)), t < 0 && (t = i.indexOf("Id "), t != i.length - 3 && (t = -1)), 0 < t) { - let o = i.substr(0, t) + "s"; - if (m.find(o) != null || (o = i.substr(0, t), m.find(o) != null)) + var r = this.trimmedContent(); + r = r.replace(/\/cascade/g, ""); + var t = r.indexOf(" id "); + if (t < 0 && t == r.length - 3 && (t = r.indexOf(" id")), t < 0 && (t = r.indexOf(" id"), t != r.length - 3 && (t = -1)), t < 0 && (t = r.indexOf("_id "), t != r.length - 4 && (t = -1)), t < 0 && (t = r.indexOf("_id"), t != r.length - 3 && (t = -1)), t < 0 && (t = r.indexOf("Id "), t != r.length - 3 && (t = -1)), 0 < t) { + let o = r.substr(0, t) + "s"; + if (d.find(o) != null || (o = r.substr(0, t), d.find(o) != null)) return o; } - return t = i.indexOf("/fk"), 0 < t ? (i = i.substr(t + 3).trim(), t = i.indexOf("/"), 0 < t && (i = i.substring(0, t).trim()), i.replace(" ", "_")) : (t = i.indexOf("/reference"), 0 < t ? (i = i.substr(t + 10).trim(), i.indexOf("s") == 0 && (i = i.substring(1).trim()), t = i.indexOf("/"), 0 < t && (i = i.substring(0, t).trim()), i.replace(" ", "_")) : null); + return t = r.indexOf("/fk"), 0 < t ? (r = r.substr(t + 3).trim(), t = r.indexOf("/"), 0 < t && (r = r.substring(0, t).trim()), r.replace(" ", "_")) : (t = r.indexOf("/reference"), 0 < t ? (r = r.substr(t + 10).trim(), r.indexOf("s") == 0 && (r = r.substring(1).trim()), t = r.indexOf("/"), 0 < t && (r = r.substring(0, t).trim()), r.replace(" ", "_")) : null); }, this.parseValues = function() { - var i = this.trimmedContent().toUpperCase(), t, o, l; - if (0 <= i.indexOf("/CHECK") || 0 <= i.indexOf("/VALUES")) { - var h = "/CHECK"; - return t = i.indexOf(h), t < 0 && (h = "/VALUES", t = i.indexOf(h)), o = i.lastIndexOf("/"), o == t && (o = i.length), l = i.substr(t + h.length, o - t - h.length).trim(), 0 < l.indexOf(",") ? (l = l.replace(/ /g, ""), l.split(",")) : l.split(" "); + var r = this.trimmedContent().toUpperCase(), t, o, l; + if (0 <= r.indexOf("/CHECK") || 0 <= r.indexOf("/VALUES")) { + var m = "/CHECK"; + return t = r.indexOf(m), t < 0 && (m = "/VALUES", t = r.indexOf(m)), o = r.lastIndexOf("/"), o == t && (o = r.length), l = r.substr(t + m.length, o - t - m.length).trim(), 0 < l.indexOf(",") ? (l = l.replace(/ /g, ""), l.split(",")) : l.split(" "); } - if (0 <= i.indexOf("/BETWEEN")) { - t = i.indexOf("/BETWEEN"), o = i.lastIndexOf("/"), o == t && (o = i.length), l = i.substr(t + 8, o - t - 8).trim(), l = l.replace(" AND ", " "); - for (var y = [], B = parseInt(l.split(" ")[0]); B <= parseInt(l.split(" ")[1]); B++) - y.push(B); - return y; + if (0 <= r.indexOf("/BETWEEN")) { + t = r.indexOf("/BETWEEN"), o = r.lastIndexOf("/"), o == t && (o = r.length), l = r.substr(t + 8, o - t - 8).trim(), l = l.replace(" AND ", " "); + for (var v = [], B = parseInt(l.split(" ")[0]); B <= parseInt(l.split(" ")[1]); B++) + v.push(B); + return v; } return null; }, this.apparentDepth = function() { - let i = this.content.split(/ |\t/), t = 0; - for (var o = 0; o < i.length; o++) { - var l = i[o]; + let r = this.content.split(/ |\t/), t = 0; + for (var o = 0; o < r.length; o++) { + var l = r[o]; if (l == " ") { t += this.tab; continue; @@ -7790,58 +7790,58 @@ let ce = function() { }, this.depth = function() { return this.parent == null ? 0 : this.parent.depth() + 1; }, this.isLeaf = function() { - return this.children.every((i) => i.children.length == 0); + return this.children.every((r) => r.children.length == 0); }, this.getGenIdColName = function() { if (this.parseType() != "table" || this.getExplicitPkNode() != null) return null; - if (m.optionEQvalue("Auto Primary Key", "yes")) { + if (d.optionEQvalue("Auto Primary Key", "yes")) { let t = ""; - return this.colprefix != null && (t = this.colprefix + "_"), m.optionEQvalue("prefixPKwithTname", "yes") && (t = _(this.parseName()) + "_"), t + "id"; + return this.colprefix != null && (t = this.colprefix + "_"), d.optionEQvalue("prefixPKwithTname", "yes") && (t = W(this.parseName()) + "_"), t + "id"; } return null; }, this.getPkName = function() { - let i = this.getGenIdColName(); - if (i == null) { + let r = this.getGenIdColName(); + if (r == null) { let t = this.getExplicitPkNode(); return t == null ? null : t.parseName(); } - return i; + return r; }, this.singleDDL = function() { if (this.children.length == 0 && 0 < this.apparentDepth()) { - let a = f; + let a = h; return this.parent != null && (a += " ".repeat(this.parent.maxChildNameLen() - this.parseName().length)), this.parseName() + a + this.parseType(); } if (this.fks == null && (this.fks = []), !this.isMany2One()) { - this.parent != null && this.parseType() == "table" && (this.fks[_(this.parent.parseName()) + "_id"] = this.parent.parseName()); + this.parent != null && this.parseType() == "table" && (this.fks[W(this.parent.parseName()) + "_id"] = this.parent.parseName()); for (let a = 0; a < this.children.length; a++) this.children[a].refId() != null && (this.fks[this.children[a].parseName()] = this.children[a].refId()); } - const i = this.trimmedContent().toUpperCase(); - var t = i.indexOf("/COLPREFIX "); + const r = this.trimmedContent().toUpperCase(); + var t = r.indexOf("/COLPREFIX "); if (0 < t) { - let n = i.substr(t + 11).split(" "); + let n = r.substr(t + 11).split(" "); this.colprefix = n[0]; } var o = ""; - const l = m.objPrefix() + this.parseName(); - m.optionEQvalue("pk", "SEQ") && m.optionEQvalue("genpk", !0) && (o = o + "create sequence " + l + `_seq; + const l = d.objPrefix() + this.parseName(); + d.optionEQvalue("pk", "SEQ") && d.optionEQvalue("genpk", !0) && (o = o + "create sequence " + l + `_seq; `), o = o + "create table " + l + ` ( `; - var h = f + " ".repeat(this.maxChildNameLen() - 2); - let y = this.getGenIdColName(); - if (y != null) { + var m = h + " ".repeat(this.maxChildNameLen() - 2); + let v = this.getGenIdColName(); + if (v != null) { let a = "not null"; - m.optionEQvalue("pk", "identityDataType") && (a = "GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), m.optionEQvalue("pk", "seq") && (a = "default on null " + l + "_seq.NEXTVAL ".toLowerCase()), m.optionEQvalue("pk", "guid") && (a = "default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), o += f + y + h + "number " + a + ` + d.optionEQvalue("pk", "identityDataType") && (a = "GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), d.optionEQvalue("pk", "seq") && (a = "default on null " + l + "_seq.NEXTVAL ".toLowerCase()), d.optionEQvalue("pk", "guid") && (a = "default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), o += h + v + m + "number " + a + ` `; - const n = K(m.objPrefix("no schema") + this.parseName(), "_", y); - o += f + f + " ".repeat(this.maxChildNameLen()) + "constraint " + K(n, "_pk") + ` primary key, + const n = K(d.objPrefix("no schema") + this.parseName(), "_", v); + o += h + h + " ".repeat(this.maxChildNameLen()) + "constraint " + K(n, "_pk") + ` primary key, `; } else { let a = this.getExplicitPkNode(); if (a != null) { - let n = f + " ".repeat(this.maxChildNameLen() - a.parseName().length); - o += f + a.parseName() + n + a.parseType() + `, + let n = h + " ".repeat(this.maxChildNameLen() - a.parseName().length); + o += h + a.parseName() + n + a.parseType() + `, `; } } @@ -7849,93 +7849,93 @@ let ce = function() { let n = this.fks[a], c = "number"; const u = this.findChild(a); u != null && (c = u.parseType("fk")); - let C = m.find(n), E = ""; - C != null && C.getExplicitPkNode() != null ? c = C.getExplicitPkNode().parseType((v) => !0) : C == null && (C = m.find(a), C.isMany2One() & !a.endsWith("_id") && (n = a, a = _(a), E = "_id")), h = f + " ".repeat(this.maxChildNameLen() - a.length), o += f + a + E + h + c + ` -`, o += f + f + " ".repeat(this.maxChildNameLen()) + "constraint " + l + "_" + a + `_fk + let C = d.find(n), P = ""; + C != null && C.getExplicitPkNode() != null ? c = C.getExplicitPkNode().parseType((A) => !0) : C == null && (C = d.find(a), C.isMany2One() & !a.endsWith("_id") && (n = a, a = W(a), P = "_id")), m = h + " ".repeat(this.maxChildNameLen() - a.length), o += h + a + P + m + c + ` +`, o += h + h + " ".repeat(this.maxChildNameLen()) + "constraint " + l + "_" + a + `_fk `; - let b = ""; - 0 <= i.indexOf("/CASCADE") && (b = " on delete cascade"); - let A = ""; - for (let v in this.children) { - let M = this.children[v]; - if (a == M.parseName()) { - let O = M.trimmedContent().toUpperCase(); - (0 <= O.indexOf("/NN") || 0 <= O.indexOf("/NOTNULL")) && (A = " NOT NULL".toLowerCase()), 0 <= O.indexOf("/CASCADE") && (b = " on delete cascade"); + let f = ""; + 0 <= r.indexOf("/CASCADE") && (f = " on delete cascade"); + let y = ""; + for (let A in this.children) { + let S = this.children[A]; + if (a == S.parseName()) { + let _ = S.trimmedContent().toUpperCase(); + (0 <= _.indexOf("/NN") || 0 <= _.indexOf("/NOTNULL")) && (y = " NOT NULL".toLowerCase()), 0 <= _.indexOf("/CASCADE") && (f = " on delete cascade"); break; } } - o += f + f + " ".repeat(this.maxChildNameLen()) + "references " + m.objPrefix() + n + b + A + `, + o += h + h + " ".repeat(this.maxChildNameLen()) + "references " + d.objPrefix() + n + f + y + `, `; } - if (m.optionEQvalue("rowkey", !0) || 0 < i.indexOf("/ROWKEY")) { - let a = f + " ".repeat(this.maxChildNameLen() - 7); - o += f + "row_key" + a + `varchar2(30 char) -`, o += f + f + " ".repeat(this.maxChildNameLen()) + "constraint " + l + `_row_key_unq unique not null, + if (d.optionEQvalue("rowkey", !0) || 0 < r.indexOf("/ROWKEY")) { + let a = h + " ".repeat(this.maxChildNameLen() - 7); + o += h + "row_key" + a + `varchar2(30 char) +`, o += h + h + " ".repeat(this.maxChildNameLen()) + "constraint " + l + `_row_key_unq unique not null, `; } for (let a = 0; a < this.children.length; a++) { let n = this.children[a]; - if (!(y != null && n.parseName() == "id") && !(0 < n.children.length) && n.refId() == null) { + if (!(v != null && n.parseName() == "id") && !(0 < n.children.length) && n.refId() == null) { if (n == this.getExplicitPkNode()) continue; - if (o += f + n.singleDDL() + `, + if (o += h + n.singleDDL() + `, `, 0 < n.indexOf("file")) { const c = n.parseName().toUpperCase(); - let u = c + "_FILENAME", C = f + " ".repeat(this.maxChildNameLen() - u.length); - o += f + u.toLowerCase() + C + "varchar2(255" + m.semantics() + `), -`, u = c + "_MIMETYPE", C = f + " ".repeat(this.maxChildNameLen() - u.length), o += f + u.toLowerCase() + C + "varchar2(255" + m.semantics() + `), -`, u = c + "_CHARSET", C = f + " ".repeat(this.maxChildNameLen() - u.length), o += f + u.toLowerCase() + C + "varchar2(255" + m.semantics() + `), -`, u = c + "_LASTUPD", C = f + " ".repeat(this.maxChildNameLen() - u.length), o += f + u.toLowerCase() + C + m.getOptionValue("Date Data Type").toLowerCase() + `, + let u = c + "_FILENAME", C = h + " ".repeat(this.maxChildNameLen() - u.length); + o += h + u.toLowerCase() + C + "varchar2(255" + d.semantics() + `), +`, u = c + "_MIMETYPE", C = h + " ".repeat(this.maxChildNameLen() - u.length), o += h + u.toLowerCase() + C + "varchar2(255" + d.semantics() + `), +`, u = c + "_CHARSET", C = h + " ".repeat(this.maxChildNameLen() - u.length), o += h + u.toLowerCase() + C + "varchar2(255" + d.semantics() + `), +`, u = c + "_LASTUPD", C = h + " ".repeat(this.maxChildNameLen() - u.length), o += h + u.toLowerCase() + C + d.getOptionValue("Date Data Type").toLowerCase() + `, `; } } } - if (m.optionEQvalue("rowVersion", "yes") || 0 < i.indexOf("/ROWVERSION")) { - let a = f + " ".repeat(this.maxChildNameLen() - 11); - o += f + "row_version" + a + `integer not null, + if (d.optionEQvalue("rowVersion", "yes") || 0 < r.indexOf("/ROWVERSION")) { + let a = h + " ".repeat(this.maxChildNameLen() - 11); + o += h + "row_version" + a + `integer not null, `; } - if (m.optionEQvalue("Audit Columns", "yes") || 0 < i.indexOf("/AUDITCOLS") || 0 < i.indexOf("/AUDIT COL")) { - let a = m.getOptionValue("createdcol"), n = f + " ".repeat(this.maxChildNameLen() - a.length); - o += f + a + n + m.getOptionValue("Date Data Type").toLowerCase() + ` not null, + if (d.optionEQvalue("Audit Columns", "yes") || 0 < r.indexOf("/AUDITCOLS") || 0 < r.indexOf("/AUDIT COL")) { + let a = d.getOptionValue("createdcol"), n = h + " ".repeat(this.maxChildNameLen() - a.length); + o += h + a + n + d.getOptionValue("Date Data Type").toLowerCase() + ` not null, `; - let c = m.getOptionValue("createdbycol"); - n = f + " ".repeat(this.maxChildNameLen() - c.length), o += f + c + n + "varchar2(255" + m.semantics() + `) not null, + let c = d.getOptionValue("createdbycol"); + n = h + " ".repeat(this.maxChildNameLen() - c.length), o += h + c + n + "varchar2(255" + d.semantics() + `) not null, `; - let u = m.getOptionValue("updatedcol"); - n = f + " ".repeat(this.maxChildNameLen() - u.length), o += f + u + n + m.getOptionValue("Date Data Type").toLowerCase() + ` not null, + let u = d.getOptionValue("updatedcol"); + n = h + " ".repeat(this.maxChildNameLen() - u.length), o += h + u + n + d.getOptionValue("Date Data Type").toLowerCase() + ` not null, `; - let C = m.getOptionValue("updatedbycol"); - n = f + " ".repeat(this.maxChildNameLen() - C.length), o += f + C + n + "varchar2(255" + m.semantics() + `) not null, + let C = d.getOptionValue("updatedbycol"); + n = h + " ".repeat(this.maxChildNameLen() - C.length), o += h + C + n + "varchar2(255" + d.semantics() + `) not null, `; } - var B = m.additionalColumns(); + var B = d.additionalColumns(); for (let a in B) { - var T = B[a]; - h = f + " ".repeat(this.maxChildNameLen() - a.length), o += f + a.toUpperCase() + h + T + ` not null, + var M = B[a]; + m = h + " ".repeat(this.maxChildNameLen() - a.length), o += h + a.toUpperCase() + m + M + ` not null, `; } o += this.genConstraint(), o.lastIndexOf(`, `) == o.length - 2 && (o = o.substr(0, o.length - 2) + ` -`), o += ")" + (m.optionEQvalue("compress", "yes") || 0 < i.indexOf("/COMPRESS") ? " compress" : "") + `; +`), o += ")" + (d.optionEQvalue("compress", "yes") || 0 < r.indexOf("/COMPRESS") ? " compress" : "") + `; `; - const P = i.indexOf("/AUDIT"), L = i.indexOf("/AUDITCOLS"), x = i.indexOf("/AUDIT COL"); - 0 < P && L < 0 && x < 0 && (o += "audit all on " + l + `; + const L = r.indexOf("/AUDIT"), w = r.indexOf("/AUDITCOLS"), E = r.indexOf("/AUDIT COL"); + 0 < L && w < 0 && E < 0 && (o += "audit all on " + l + `; `); - let w = 1; + let D = 1; for (let a in this.fks) if (!this.isMany2One()) { - var H = this.fks[a], F = H, W = a; - W == null && (W = _(F) + "_id"), w == 1 && (o += `-- table index -`), o += "create index " + l + "_i" + w++ + " on " + l + " (" + W + `); + var F = this.fks[a], R = F, H = a; + H == null && (H = W(R) + "_id"), D == 1 && (o += `-- table index +`), o += "create index " + l + "_i" + D++ + " on " + l + " (" + H + `); `; } - let R = i.indexOf("/UNIQUE "); - if (0 < R) { - let a = i.substr(R + 8), n = a.indexOf("/"); + let G = r.indexOf("/UNIQUE "); + if (0 < G) { + let a = r.substr(G + 8), n = a.indexOf("/"); 0 < n && (a = a.substring(0, n).trim()), o += "alter table " + l + " add constraint " + l + "_uk unique (" + a + `); `; @@ -7943,8 +7943,8 @@ let ce = function() { for (let a = 0; a < this.children.length; a++) { var e = this.children[a]; let n = e.trimmedContent().toUpperCase(); - (0 <= n.indexOf("/IDX") || 0 <= n.indexOf("/INDEX")) && (w == 1 && (o += `-- table index -`), o += "create index " + l + "_i" + w++ + " on " + l + " (" + e.parseName() + `); + (0 <= n.indexOf("/IDX") || 0 <= n.indexOf("/INDEX")) && (D == 1 && (o += `-- table index +`), o += "create index " + l + "_i" + D++ + " on " + l + " (" + e.parseName() + `); `); } this.comment != null && (o += "comment on table " + l + " is '" + this.comment + `'; @@ -7959,29 +7959,29 @@ let ce = function() { }, this.toDDL = function() { if (this.parseType() == "view" || this.parseType() == "dv") return ""; - var i = this.orderedTableNodes(); + var r = this.orderedTableNodes(); let t = ""; - for (let o = 0; o < i.length; o++) - t += i[o].singleDDL(); + for (let o = 0; o < r.length; o++) + t += r[o].singleDDL(); return t; }, this.orderedTableNodes = function() { - var i = [this]; + var r = [this]; for (let o = 1; o < this.descendants().length; o++) { var t = this.descendants()[o]; - t.children.length != 0 && (t.isMany2One() ? i.unshift(t) : i.push(t)); + t.children.length != 0 && (t.isMany2One() ? r.unshift(t) : r.push(t)); } - return i; + return r; }, this.generateDrop = function() { - let i = m.objPrefix() + this.parseName(), t = ""; - return this.parseType() == "view" && (t = "drop view " + i + `; -`), this.parseType() == "table" && (t = "drop table " + i + ` cascade constraints; -`, m.optionEQvalue("api", "yes") && (t += "drop package " + i + `_api; -`), m.optionEQvalue("pk", "SEQ") && (t += "drop sequence " + i + `_seq; + let r = d.objPrefix() + this.parseName(), t = ""; + return this.parseType() == "view" && (t = "drop view " + r + `; +`), this.parseType() == "table" && (t = "drop table " + r + ` cascade constraints; +`, d.optionEQvalue("api", "yes") && (t += "drop package " + r + `_api; +`), d.optionEQvalue("pk", "SEQ") && (t += "drop sequence " + r + `_seq; `)), t.toLowerCase(); }, this.generateView = function() { if (this.parseType() != "view" && this.parseType() != "dv") return ""; - if (m.optionEQvalue("Duality View", "yes") || this.parseType() == "dv") + if (d.optionEQvalue("Duality View", "yes") || this.parseType() == "dv") try { return this.generateDualityView(); } catch (u) { @@ -7989,70 +7989,70 @@ let ce = function() { return ""; throw u; } - let i = m.objPrefix() + this.parseName(); - var o = this.trimmedContent().split(" "), l = "create or replace view " + i + ` as + let r = d.objPrefix() + this.parseName(); + var o = this.trimmedContent().split(" "), l = "create or replace view " + r + ` as `; l += `select `; - for (var h = 0, y = 2; y < o.length; y++) { - let u = m.find(o[y]); + for (var m = 0, v = 2; v < o.length; v++) { + let u = d.find(o[v]); if (u == null) return ""; - var B = (o[y] + ".id").length; - h < B && (h = B); - for (var T = 0; T < u.children.length; T++) { - var P = u.children[T]; - B = (o[y] + "." + P.parseName()).length, h < B && (h = B); + var B = (o[v] + ".id").length; + m < B && (m = B); + for (var M = 0; M < u.children.length; M++) { + var L = u.children[M]; + B = (o[v] + "." + L.parseName()).length, m < B && (m = B); } } - var L = {}; + var w = {}; for (let u = 2; u < o.length; u++) { - let C = m.find(o[u]); + let C = d.find(o[u]); if (C != null) - for (let E = 0; E < C.children.length; E++) { - var x = C.children[E].parseName(), w = L[x]; - w == null && (w = 0), L[x] = w + 1; + for (let P = 0; P < C.children.length; P++) { + var E = C.children[P].parseName(), D = w[E]; + D == null && (D = 0), w[E] = D + 1; } } for (let u = 2; u < o.length; u++) { - let C = m.find(o[u]); + let C = d.find(o[u]); if (C == null) continue; - let E = " ".repeat(h - (o[u] + ".id").length); - l += f + o[u] + ".id" + f + E + _(o[u]) + `_id, + let P = " ".repeat(m - (o[u] + ".id").length); + l += h + o[u] + ".id" + h + P + W(o[u]) + `_id, `; - for (let A = 0; A < C.children.length; A++) { - let v = C.children[A]; - if (v.children.length == 0) { - E = " ".repeat(h - (o[u] + "." + v.parseName()).length); - var H = ""; - 1 < L[v.parseName()] && (H = _(o[u]) + "_"), l += f + o[u] + "." + v.parseName() + f + E + H + v.parseName() + `, + for (let y = 0; y < C.children.length; y++) { + let A = C.children[y]; + if (A.children.length == 0) { + P = " ".repeat(m - (o[u] + "." + A.parseName()).length); + var F = ""; + 1 < w[A.parseName()] && (F = W(o[u]) + "_"), l += h + o[u] + "." + A.parseName() + h + P + F + A.parseName() + `, `; } } - let b = C.trimmedContent().toUpperCase(); - if (m.optionEQvalue("rowVersion", "yes") || 0 < b.indexOf("/ROWVERSION")) { - let A = f + " ".repeat(C.maxChildNameLen() - 11); - l += f + o[u] + ".row_version" + _(A + o[u]) + `_row_version, + let f = C.trimmedContent().toUpperCase(); + if (d.optionEQvalue("rowVersion", "yes") || 0 < f.indexOf("/ROWVERSION")) { + let y = h + " ".repeat(C.maxChildNameLen() - 11); + l += h + o[u] + ".row_version" + W(y + o[u]) + `_row_version, `; } - if (m.optionEQvalue("rowkey", "yes") || 0 < b.indexOf("/ROWKEY")) { - let A = f + " ".repeat(C.maxChildNameLen() - 7); - l += f + o[u] + ".ROW_KEY" + _(A + o[u]) + `_ROW_KEY, + if (d.optionEQvalue("rowkey", "yes") || 0 < f.indexOf("/ROWKEY")) { + let y = h + " ".repeat(C.maxChildNameLen() - 7); + l += h + o[u] + ".ROW_KEY" + W(y + o[u]) + `_ROW_KEY, `; } - if (m.optionEQvalue("Audit Columns", "yes") || 0 < b.indexOf("/AUDITCOLS") || 0 < b.indexOf("/AUDIT COL")) { - let A = m.getOptionValue("createdcol"), v = f + " ".repeat(C.maxChildNameLen() - A.length); - l += f + o[u] + "." + A + _(v + o[u]) + "_" + A + `, + if (d.optionEQvalue("Audit Columns", "yes") || 0 < f.indexOf("/AUDITCOLS") || 0 < f.indexOf("/AUDIT COL")) { + let y = d.getOptionValue("createdcol"), A = h + " ".repeat(C.maxChildNameLen() - y.length); + l += h + o[u] + "." + y + W(A + o[u]) + "_" + y + `, `; - let M = m.getOptionValue("createdbycol"); - v = f + " ".repeat(C.maxChildNameLen() - M.length), l += f + o[u] + "." + M + _(v + o[u]) + "_" + M + `, + let S = d.getOptionValue("createdbycol"); + A = h + " ".repeat(C.maxChildNameLen() - S.length), l += h + o[u] + "." + S + W(A + o[u]) + "_" + S + `, `; - let O = m.getOptionValue("updatedcol"); - v = f + " ".repeat(C.maxChildNameLen() - O.length), l += f + o[u] + "." + O + _(v + o[u]) + "_" + O + `, + let _ = d.getOptionValue("updatedcol"); + A = h + " ".repeat(C.maxChildNameLen() - _.length), l += h + o[u] + "." + _ + W(A + o[u]) + "_" + _ + `, `; - let G = m.getOptionValue("updatedbycol"); - v = f + " ".repeat(C.maxChildNameLen() - G.length), l += f + o[u] + "." + G + _(v + o[u]) + "_" + G + `, + let O = d.getOptionValue("updatedbycol"); + A = h + " ".repeat(C.maxChildNameLen() - O.length), l += h + o[u] + "." + O + W(A + o[u]) + "_" + O + `, `; } } @@ -8061,9 +8061,9 @@ let ce = function() { `), l += `from `; for (let u = 2; u < o.length; u++) { - let C = " ".repeat(h - o[u].length); - var F = o[u]; - m.objPrefix() != null && m.objPrefix() != "" && (F = m.objPrefix() + o[u] + C + o[u]), l += f + F + `, + let C = " ".repeat(m - o[u].length); + var R = o[u]; + d.objPrefix() != null && d.objPrefix() != "" && (R = d.objPrefix() + o[u] + C + o[u]), l += h + R + `, `; } l.lastIndexOf(`, @@ -8073,18 +8073,18 @@ let ce = function() { for (let u = 2; u < o.length; u++) for (let C = 2; C < o.length; C++) if (C != u) { - var W = o[u], R = o[C], e = m.find(W); + var H = o[u], G = o[C], e = d.find(H); if (e != null) { - var a = m.find(R); + var a = d.find(G); if (a != null) for (var n in e.fks) { var c = e.fks[n]; - c == R && (l += f + W + "." + _(c) + "_id(+) = " + R + `.id and + c == G && (l += h + H + "." + W(c) + "_id(+) = " + G + `.id and `); } } } - return l = g(l, `where + return l = p(l, `where `), l.lastIndexOf(" and") == l.length - 4 && (l = l.substring(0, l.length - 4) + ` `), l += `/ `, l.toLowerCase(); @@ -8093,26 +8093,26 @@ let ce = function() { return ""; let o = this.parseName(); const l = o.indexOf('"') == 0; - let h = m.objPrefix() + o; - return l ? h = m.objPrefix() + o.substring(1, o.length - 1) : h = (m.objPrefix() + o).toUpperCase(), `begin -` + f + "ords.enable_object(p_enabled=>TRUE, p_object=>'" + h + `'); + let m = d.objPrefix() + o; + return l ? m = d.objPrefix() + o.substring(1, o.length - 1) : m = (d.objPrefix() + o).toUpperCase(), `begin +` + h + "ords.enable_object(p_enabled=>TRUE, p_object=>'" + m + `'); end; / `; }, this.generateTrigger = function() { if (this.parseType() != "table") return ""; - let i = ""; - m.optionEQvalue("editionable", "yes") && (i = " editionable"); - let t = m.objPrefix() + this.parseName(); - var o = "create or replace" + i + " trigger " + t.toLowerCase() + `_BIU + let r = ""; + d.optionEQvalue("editionable", "yes") && (r = " editionable"); + let t = d.objPrefix() + this.parseName(); + var o = "create or replace" + r + " trigger " + t.toLowerCase() + `_BIU `.toLowerCase(); o += ` before insert or update `, o += " on " + t.toLowerCase() + ` `, o += ` for each row `; let l = this.trimmedContent().toUpperCase(); - (m.optionEQvalue("Rowkey", "yes") || 0 < l.indexOf("/ROWKEY")) && (o += `declare + (d.optionEQvalue("Rowkey", "yes") || 0 < l.indexOf("/ROWKEY")) && (o += `declare function compress_int (n in integer ) return varchar2 as ret varchar2(30); @@ -8137,118 +8137,118 @@ end; end compress_int; `), o += `begin `; - var h = !1, y = "user"; - m.optionEQvalue("apex", "yes") && (y = "coalesce(sys_context('APEX$SESSION','APP_USER'),user)"), (m.optionEQvalue("rowkey", "yes") || 0 < l.indexOf("/ROWKEY")) && (o += ` if inserting then + var m = !1, v = "user"; + d.optionEQvalue("apex", "yes") && (v = "coalesce(sys_context('APEX$SESSION','APP_USER'),user)"), (d.optionEQvalue("rowkey", "yes") || 0 < l.indexOf("/ROWKEY")) && (o += ` if inserting then `, o += ` :new.row_key := compress_int(row_key_seq.nextval); `, o += ` end if; -`, h = !0); +`, m = !0); for (var B = 0; B < this.children.length; B++) { - var T = this.children[B]; - let w = null; - 0 < T.content.indexOf("/lower") ? w = "LOWER".toLowerCase() : 0 < T.content.indexOf("/upper") && (w = "UPPER".toLowerCase()), w != null && (o += " :new." + T.parseName().toLowerCase() + " := " + w + "(:new." + T.parseName().toLowerCase() + `); -`, h = !0); + var M = this.children[B]; + let D = null; + 0 < M.content.indexOf("/lower") ? D = "LOWER".toLowerCase() : 0 < M.content.indexOf("/upper") && (D = "UPPER".toLowerCase()), D != null && (o += " :new." + M.parseName().toLowerCase() + " := " + D + "(:new." + M.parseName().toLowerCase() + `); +`, m = !0); } - (m.optionEQvalue("Row Version Number", "yes") || 0 < l.indexOf("/ROWVERSION")) && (o += ` if inserting then + (d.optionEQvalue("Row Version Number", "yes") || 0 < l.indexOf("/ROWVERSION")) && (o += ` if inserting then `, o += ` :new.row_version := 1; `, o += ` elsif updating then `, o += ` :new.row_version := NVL(:old.row_version, 0) + 1; `, o += ` end if; -`, h = !0), (m.optionEQvalue("Audit Columns", "yes") || 0 < l.indexOf("/AUDITCOLS") || 0 < l.indexOf("/AUDIT COL")) && (o += ` if inserting then -`, o += " :new." + m.getOptionValue("createdcol") + ` := SYSDATE; -`.toLowerCase(), o += " :new." + m.getOptionValue("createdbycol") + " := " + y + `; +`, m = !0), (d.optionEQvalue("Audit Columns", "yes") || 0 < l.indexOf("/AUDITCOLS") || 0 < l.indexOf("/AUDIT COL")) && (o += ` if inserting then +`, o += " :new." + d.getOptionValue("createdcol") + ` := SYSDATE; +`.toLowerCase(), o += " :new." + d.getOptionValue("createdbycol") + " := " + v + `; `.toLowerCase(), o += ` end if; -`, o += " :new." + m.getOptionValue("updatedcol") + ` := SYSDATE; -`.toLowerCase(), o += " :new." + m.getOptionValue("updatedbycol") + " := " + y + `; -`.toLowerCase(), h = !0); - var P = m.additionalColumns(); - for (var L in P) { - var x = P[L]; - o += " if :new." + L + ` is null then -`, x.startsWith("INT") ? o += " " + L + ` := 0; -` : o += " " + L + ` := 'N/A'; +`, o += " :new." + d.getOptionValue("updatedcol") + ` := SYSDATE; +`.toLowerCase(), o += " :new." + d.getOptionValue("updatedbycol") + " := " + v + `; +`.toLowerCase(), m = !0); + var L = d.additionalColumns(); + for (var w in L) { + var E = L[w]; + o += " if :new." + w + ` is null then +`, E.startsWith("INT") ? o += " " + w + ` := 0; +` : o += " " + w + ` := 'N/A'; `, o += ` end if; -`, h = !0; +`, m = !0; } - return h ? (o += "end " + t.toLowerCase() + `_BIU; + return m ? (o += "end " + t.toLowerCase() + `_BIU; / `.toLowerCase(), o) : ""; - }, this.procDecl = function(i) { + }, this.procDecl = function(r) { let t = ""; - i != "get" && (t = " default null"); + r != "get" && (t = " default null"); let o = "out"; - i != "get" && (o = " in"); - let l = f + "procedure " + i + `_row ( + r != "get" && (o = " in"); + let l = h + "procedure " + r + `_row ( `; - l += f + f + "p_id in number" + t; - for (var h in this.fks) { - let B = this.fks[h], T = "number", P = m.find(B); - P != null && P.getExplicitPkNode() != null && (T = P.getExplicitPkNode().parseType((L) => !0)), l += `, -`, l += f + f + "P_" + h + " " + o + " " + T + t; + l += h + h + "p_id in number" + t; + for (var m in this.fks) { + let B = this.fks[m], M = "number", L = d.find(B); + L != null && L.getExplicitPkNode() != null && (M = L.getExplicitPkNode().parseType((w) => !0)), l += `, +`, l += h + h + "P_" + m + " " + o + " " + M + t; } for (let B = 0; B < this.children.length; B++) { - var y = this.children[B]; - y.refId() == null && y.children.length == 0 && (l += `, -`, l += f + f + "P_" + y.parseName() + " " + o + " " + y.parseType("plsql") + t); + var v = this.children[B]; + v.refId() == null && v.children.length == 0 && (l += `, +`, l += h + h + "P_" + v.parseName() + " " + o + " " + v.parseType("plsql") + t); } return l += ` )`, l; - }, this.procBody = function(i) { - let t = m.objPrefix() + this.parseName(), o = f + `is + }, this.procBody = function(r) { + let t = d.objPrefix() + this.parseName(), o = h + `is `; - o += f + `begin + o += h + `begin `; - let l = f + f + "for c1 in (select * from " + t + ` where id = p_id) loop + let l = h + h + "for c1 in (select * from " + t + ` where id = p_id) loop `; - i == "insert" && (l = f + f + "insert into " + t + ` ( -`, l += f + f + f + "id"), i == "update" && (l = f + f + "update " + t + ` set -`, l += f + f + f + "id = p_id"), o += l; - for (let T in this.fks) { - let P = this.fks[T], L = m.find(P); - L != null && L.getExplicitPkNode() != null && L.getExplicitPkNode().parseType((w) => !0), (i == "insert" || i == "update") && (o += `, + r == "insert" && (l = h + h + "insert into " + t + ` ( +`, l += h + h + h + "id"), r == "update" && (l = h + h + "update " + t + ` set +`, l += h + h + h + "id = p_id"), o += l; + for (let M in this.fks) { + let L = this.fks[M], w = d.find(L); + w != null && w.getExplicitPkNode() != null && w.getExplicitPkNode().parseType((D) => !0), (r == "insert" || r == "update") && (o += `, `); - let x = f + f + f + "P_" + T + " := c1." + T + `; + let E = h + h + h + "P_" + M + " := c1." + M + `; `; - i == "insert" && (x = f + f + f + T), i == "update" && (x = f + f + f + T + " = P_" + T + ` -`), o += x; + r == "insert" && (E = h + h + h + M), r == "update" && (E = h + h + h + M + " = P_" + M + ` +`), o += E; } - for (var h = 0; h < this.children.length; h++) { - var y = this.children[h]; - if (y.refId() != null || y.children.length != 0) + for (var m = 0; m < this.children.length; m++) { + var v = this.children[m]; + if (v.refId() != null || v.children.length != 0) continue; - (i == "insert" || i == "update") && (o += `, + (r == "insert" || r == "update") && (o += `, `); - let T = f + f + f + "P_" + y.parseName().toLowerCase() + " := c1." + y.parseName().toLowerCase() + `; + let M = h + h + h + "P_" + v.parseName().toLowerCase() + " := c1." + v.parseName().toLowerCase() + `; `; - i == "insert" && (T = f + f + f + y.parseName().toLowerCase()), i == "update" && (T = f + f + f + y.parseName().toLowerCase() + " = P_" + y.parseName().toLowerCase() + ` -`), o += T; + r == "insert" && (M = h + h + h + v.parseName().toLowerCase()), r == "update" && (M = h + h + h + v.parseName().toLowerCase() + " = P_" + v.parseName().toLowerCase() + ` +`), o += M; } - if (i == "insert") { + if (r == "insert") { o += ` -` + f + f + `) values ( -`, o += f + f + f + "p_id"; - for (let T in this.fks) +` + h + h + `) values ( +`, o += h + h + h + "p_id"; + for (let M in this.fks) o += `, -`, o += f + f + f + "p_" + T; - for (let T = 0; T < this.children.length; T++) { - let P = this.children[T]; - P.refId() == null && P.children.length == 0 && (o += `, -`, o += f + f + f + "p_" + P.parseName()); +`, o += h + h + h + "p_" + M; + for (let M = 0; M < this.children.length; M++) { + let L = this.children[M]; + L.refId() == null && L.children.length == 0 && (o += `, +`, o += h + h + h + "p_" + L.parseName()); } } let B = ` end loop; `; - return i == "insert" && (B = ` -` + f + f + ");"), i == "update" && (B = f + f + "where id = p_id;"), o += B, o += ` -` + f + "end " + i + `_row; + return r == "insert" && (B = ` +` + h + h + ");"), r == "update" && (B = h + h + "where id = p_id;"), o += B, o += ` +` + h + "end " + r + `_row; `, o += ` `, o; }, this.generateTAPI = function() { if (this.children.length == 0) return ""; - let i = m.objPrefix() + this.parseName(); - var t = "create or replace package " + i.toLowerCase() + `_API + let r = d.objPrefix() + this.parseName(); + var t = "create or replace package " + r.toLowerCase() + `_API is `.toLowerCase(); @@ -8261,10 +8261,10 @@ is `, t += ` procedure delete_row ( p_id in number ); -end ` + i.toLowerCase() + `_api; +end ` + r.toLowerCase() + `_api; / -`, t += "create or replace package body " + i.toLowerCase() + `_API +`, t += "create or replace package body " + r.toLowerCase() + `_API is `.toLowerCase(), t += this.procDecl("get"), t += ` @@ -8275,105 +8275,120 @@ is `, t += ` ) `, t += ` is `, t += ` begin -`, t += " delete from " + i.toLowerCase() + ` where id = p_id; +`, t += " delete from " + r.toLowerCase() + ` where id = p_id; `, t += ` end delete_row; -`, t += "end " + i.toLowerCase() + `_api; +`, t += "end " + r.toLowerCase() + `_api; `, t += `/ `, t.toLowerCase(); }, this.cardinality = function() { - let i = this.trimmedContent().toLowerCase(), t = i.indexOf("/insert "); + let r = this.trimmedContent().toLowerCase(), t = r.indexOf("/insert "); if (0 < t) { - i = i.substr(t + 8); - let o = i.split(" "), l = parseInt(o[0]); - const h = m.getOptionValue("datalimit"); - return h < l && (l = h), l; + r = r.substr(t + 8); + let o = r.split(" "), l = parseInt(o[0]); + const m = d.getOptionValue("datalimit"); + return m < l && (l = m), l; } return 0; - }, this.generateData = function(i) { - if (Ce(), m.optionEQvalue("inserts", !1)) + }, this.generateData = function(r) { + if (Ce(), d.optionEQvalue("inserts", !1)) return ""; - const t = this.inserts4tbl(i), o = this.orderedTableNodes(); + const t = this.inserts4tbl(r), o = this.orderedTableNodes(); let l = ""; - for (let h = 0; h < o.length; h++) { - const y = t[o[h].parseName()]; - y != null && (l += y); + for (let m = 0; m < o.length; m++) { + const v = t[o[m].parseName()]; + v != null && (l += v); } return l; - }, this.inserts4tbl = function(i) { + }, this.inserts4tbl = function(r) { let t = {}; - if (m.optionEQvalue("inserts", !1)) + if (d.optionEQvalue("inserts", !1)) return ""; - let o = m.objPrefix() + this.parseName(), l = ""; - for (let y = 0; y < this.cardinality(); y++) { - let B = null; - if (i != null) { - const P = i[o]; - P != null && Array.isArray(P) && (B = P[y]); + let o = d.objPrefix() + this.parseName(), l = "", m = null, v = null; + for (let M = 0; M < this.cardinality(); M++) { + let L = null; + if (r != null) { + const E = r[o]; + E != null && Array.isArray(E) && (L = E[M]); } l += "insert into " + o + ` ( `; - let T = this.getGenIdColName(); - if (T != null) - l += f + T + `, + let w = this.getGenIdColName(); + if (w != null) + m = w, l += h + m + `, `; else { - let P = this.getExplicitPkNode(); - P != null && (l += f + P.parseName() + `, + let E = this.getExplicitPkNode(); + E != null && (m = E.parseName(), l += h + m + `, `); } - for (let P in this.fks) { - let L = this.fks[P], x = m.find(L), w = ""; - x == null && (x = m.find(P), x.isMany2One() & !P.endsWith("_id") && (L = P, P = _(P), w = "_id")), l += f + P + w + `, + for (let E in this.fks) { + let D = this.fks[E], F = d.find(D), R = ""; + F == null && (F = d.find(E), F.isMany2One() & !E.endsWith("_id") && (D = E, E = W(E), R = "_id")), l += h + E + R + `, `; } - for (let P = 0; P < this.children.length; P++) { - let L = this.children[P]; - if (!(T != null && L.parseName() == "id") && L.refId() == null) { - if (L == this.getExplicitPkNode()) + for (let E = 0; E < this.children.length; E++) { + let D = this.children[E]; + if (!(w != null && D.parseName() == "id") && D.refId() == null) { + if (D == this.getExplicitPkNode()) continue; - L.children.length == 0 && (l += f + L.parseName() + `, + D.children.length == 0 && (l += h + D.parseName() + `, `); } } if (l.lastIndexOf(`, `) == l.length - 2 && (l = l.substr(0, l.length - 2) + ` `), l += `) values ( -`, T != null) - l += f + (y + 1) + `, +`, w != null) + v = M + 1, l += h + v + `, `; else { - let P = this.getExplicitPkNode(); - if (P != null) { - const L = P.parseName(); - let x = d(m.data, null, L, this.parseName()), w = -1; - B != null && (w = B[L]), x != null && x[y] != null && (w = x[y]), w.replaceAll && (w = "'" + w + "'"), l += f + (w != -1 ? w : y + 1) + `, + let E = this.getExplicitPkNode(); + if (E != null) { + const D = E.parseName(); + let F = g(d.data, null, D, this.parseName()), R = -1; + L != null && (R = L[D]), F != null && F[M] != null && (R = F[M]), R.replaceAll && (R = "'" + R + "'"), v = R != -1 ? R : M + 1, l += h + v + `, `; } } - for (let P in this.fks) { - let L = this.fks[P], x = m.find(L), w = [], H = "INTEGER"; - for (let F = 1; F <= x.cardinality(); F++) - w.push(F); - if (B != null) { - let F = B[P]; - F != null && (typeof F == "string" && (H = "STRING"), w = [], w[0] = F); + for (let E in this.fks) { + let D = this.fks[E], F = d.find(D), R = [], H = "INTEGER"; + for (let G = 1; G <= F.cardinality(); G++) + R.push(G); + if (L != null) { + let G = L[E]; + if (G != null) + typeof G == "string" && (H = "STRING"), R = [], R[0] = G; + else { + const e = o + "_" + D, a = d.data[e]; + if (a != null) { + for (const n in a) + if (a[n][o + "_id"] == v) { + const c = a[n][E]; + c != null && (typeof c == "string" && (H = "STRING"), R = [], R[0] = c); + break; + } + } else { + let n = F.getPkName(), c = L[n]; + c != null && (typeof c == "string" && (H = "STRING"), R = [], R[0] = c); + } + } } - l += f + le(m.getOptionValue("Data Language"), se(o, _(L) + "_id", H, w)) + `, + l += h + le(d.getOptionValue("Data Language"), se(o, W(D) + "_id", H, R)) + `, `; } - for (let P = 0; P < this.children.length; P++) { - let L = this.children[P]; - if (!(T != null && L.parseName() == "id") && L.refId() == null) { - if (L == this.getExplicitPkNode()) + for (let E = 0; E < this.children.length; E++) { + let D = this.children[E]; + if (!(w != null && D.parseName() == "id") && D.refId() == null) { + if (D == this.getExplicitPkNode()) continue; - if (L.children.length == 0) { - let x = L.parseValues(), w = L.parseName(); - if (B != null) { - let F = B[w]; - F != null && (x = [], x[0] = F); + if (D.children.length == 0) { + let F = D.parseValues(), R = D.parseName(); + if (L != null) { + let G = L[R]; + G != null && (F = [], F[0] = G); } - let H = se(o, w, L.parseType(), x); - l += f + le(m.getOptionValue("Data Language"), H) + `, + let H = se(o, R, D.parseType(), F); + l += h + le(d.getOptionValue("Data Language"), H) + `, `; } } @@ -8387,54 +8402,54 @@ is commit; `); - let h = this.getGenIdColName(); - h != null && 1 < this.cardinality() && !m.optionEQvalue("pk", "guid") && (l += "alter table " + o + ` -modify ` + h + " generated always as identity restart start with " + (this.cardinality() + 1) + `; + let B = this.getGenIdColName(); + B != null && 1 < this.cardinality() && !d.optionEQvalue("pk", "guid") && (l += "alter table " + o + ` +modify ` + B + " generated always as identity restart start with " + (this.cardinality() + 1) + `; `), t[o] = l; - for (let y = 0; y < this.children.length; y++) { - const B = this.children[y]; - 0 < B.children.length && (t = { ...t, ...B.inserts4tbl(i) }); + for (let M = 0; M < this.children.length; M++) { + const L = this.children[M]; + 0 < L.children.length && (t = { ...t, ...L.inserts4tbl(r) }); } return t; }, this.isArray = function() { return !this.isMany2One() && this.parent != null; - }, this.hasNonArrayChildId = function(i) { - if (!i.endsWith("_id")) + }, this.hasNonArrayChildId = function(r) { + if (!r.endsWith("_id")) return !1; - var t = i.slice(0, -3); + var t = r.slice(0, -3); return this.children.some((o) => o.children.length > 0 && o.parseName() == t && !o.isArray()); - }, this.generateSelectJsonBottomUp = function(i) { + }, this.generateSelectJsonBottomUp = function(r) { throw new Error("generateSelectJsonBottomUp() not implemented yet"); - }, this.one2many2oneUnsupoported = "one to many to one is not supported", this.generateSelectJsonTopDown = function(i) { + }, this.one2many2oneUnsupoported = "one to many to one is not supported", this.generateSelectJsonTopDown = function(r) { var t = this.parseName(); let o = ""; - this.getExplicitPkNode == null && (o += i + "'" + this.getGenIdColName() + "' : " + t + "." + this.getGenIdColName() + `, + this.getExplicitPkNode == null && (o += r + "'" + this.getGenIdColName() + "' : " + t + "." + this.getGenIdColName() + `, `); for (var l = 0; l < this.children.length; l++) { - var h = this.children[l], y = h.parseName(); - if (h.children.length == 0) { - if (this.hasNonArrayChildId(y)) + var m = this.children[l], v = m.parseName(); + if (m.children.length == 0) { + if (this.hasNonArrayChildId(v)) continue; - o += i + "'" + y + "' : " + t + "." + y; + o += r + "'" + v + "' : " + t + "." + v; } else { - if (o += i + "'" + y + `' : [ -`, h.isMany2One(), i += " ", o += i + `select JSON { + if (o += r + "'" + v + `' : [ +`, m.isMany2One(), r += " ", o += r + `select JSON { `, this.isMany2One()) throw new Error(this.one2many2oneUnsupoported); - o += h.generateSelectJsonTopDown(i + " "), o += i + " WITH NOCHECK } from " + y + ` with INSERT UPDATE + o += m.generateSelectJsonTopDown(r + " "), o += r + " WITH NOCHECK } from " + v + ` with INSERT UPDATE `; - let P = null; - for (var B in h.fks) { - var T = h.fks[B]; - if (T == t) { - P = B; + let L = null; + for (var B in m.fks) { + var M = m.fks[B]; + if (M == t) { + L = B; break; } } - const L = t + "." + this.getPkName(), x = y + "." + P; - o += i + "where " + x + " = " + L + ` -`, i = i.slice(0, -2), o += i + "]"; + const w = t + "." + this.getPkName(), E = v + "." + L; + o += r + "where " + E + " = " + w + ` +`, r = r.slice(0, -2), o += r + "]"; } o += l < this.children.length - 1 ? `, ` : ` @@ -8443,10 +8458,10 @@ modify ` + h + " generated always as identity restart start with " + (this.card return o[o.length - 2] == "," ? o.slice(0, -2) + ` ` : o; }, this.generateDualityView = function() { - var i = this.trimmedContent(), t = i.split(" "); + var r = this.trimmedContent(), t = r.split(" "); if (3 < t.length) throw "max 1 table is allowed in DV"; - var o = "", l = m.find(t[2]); + var o = "", l = d.find(t[2]); return l != null && (o += "create or replace json relational duality view " + t[1] + ` as `, o += `select JSON { `, o += l.isMany2One() ? l.generateSelectJsonBottomUp(" ") : l.generateSelectJsonTopDown(" "), o += "} from " + l.parseName() + ` with INSERT UPDATE DELETE; @@ -8454,390 +8469,403 @@ modify ` + h + " generated always as identity restart start with " + (this.card `), o; }; } - function N(p) { - m = p; - const S = p.input; - let r = [], s = []; - const i = Z(S + ` + function x(T) { + d = T; + const b = T.input; + let i = [], s = []; + const r = Z(b + ` `, !0, !0, ""); - m.data = null; + d.data = null; let t = null, o = "", l = 0; e: - for (let h in i) { - const y = i[h]; - if (y.value == ` + for (let m in r) { + const v = r[m]; + if (v.value == ` ` && t == null) { if (o = o.replace(/\r/g, ""), o.replace(/\r/g, "").replace(/ /g, "") == "") { o = "", l++; continue; } - let T = new I(l, o, null), P = !1; - for (let L = 0; L < r.length; L++) { - let x = r[L]; - if (T.apparentDepth() <= x.apparentDepth()) - if (0 < L) { - let w = r[L - 1]; - T = new I(l, o, w), r[L] = T, r = r.slice(0, L + 1), P = !0; + let M = new I(l, o, null), L = !1; + for (let w = 0; w < i.length; w++) { + let E = i[w]; + if (M.apparentDepth() <= E.apparentDepth()) + if (0 < w) { + let D = i[w - 1]; + M = new I(l, o, D), i[w] = M, i = i.slice(0, w + 1), L = !0; break; } else - r[0] = T, r = r.slice(0, 1), s.push(T), P = !0; + i[0] = M, i = i.slice(0, 1), s.push(M), L = !0; } - if (!P) { - if (0 < r.length) { - let L = r[r.length - 1]; - T = new I(l, o, L); + if (!L) { + if (0 < i.length) { + let w = i[i.length - 1]; + M = new I(l, o, w); } - r.push(T), T.apparentDepth() == 0 && s.push(T); + i.push(M), M.apparentDepth() == 0 && s.push(M); } - if (T.isMany2One()) { - const L = T.parent; - L.fks == null && (L.fks = []); - let x = T.refId(); - x == null && (x = T.parseName()), L.fks[T.parseName() + "_id"] = x; + if (M.isMany2One()) { + const w = M.parent; + w.fks == null && (w.fks = []); + let E = M.refId(); + E == null && (E = M.parseName()), w.fks[M.parseName() + "_id"] = E; } l++, o = ""; continue; } - if (t == null && y.value == "#") { + if (t == null && v.value == "#") { t = ""; continue; } if (t != null) { - if (t += y.value, y.value != ` -` && y.value != "}") + if (t += v.value, v.value != ` +` && v.value != "}") continue; const B = Z(t, !1, !0, ""); if (B.length % 4 == 3 && B[1].value == ":") { - p.setOptions(t), t = null, o = ""; + T.setOptions(t), t = null, o = ""; continue; } - let T = null, P = null; - for (let L in B) { - const x = B[L]; - if (T == null && x.value == "flattened") { - T = ""; + let M = null, L = null; + for (let w in B) { + const E = B[w]; + if (M == null && E.value == "flattened") { + M = ""; continue; } - if (T != null) { - if (T += x.value, T == "=" || T.charAt(T.length - 1) != "}") + if (M != null) { + if (M += E.value, M == "=" || M.charAt(M.length - 1) != "}") continue; - let w = T.substring(1); + let D = M.substring(1); try { - m.data = JSON.parse(w), t = null, o = ""; + d.data = JSON.parse(D), t = null, o = ""; continue e; } catch { } } - if (P == null && x.value == "settings") { - P = ""; + if (L == null && E.value == "settings") { + L = ""; continue; } - if (P != null) { - P += x.value, P.substring(1); + if (L != null) { + L += E.value, L.substring(1); try { - p.setOptions(P), t = null, o = ""; + T.setOptions(L), t = null, o = ""; continue e; } catch { } } } } - if (y.type != "comment") { - if (y.type == "line-comment") { - 0 < o.trim().length && (o += y.value); + if (v.type != "comment") { + if (v.type == "line-comment") { + 0 < o.trim().length && (o += v.value); continue; } - o += y.value; + o += v.value; } } return s; } - function g(p, S) { - let r = S.toLowerCase(); - return 0 < p.indexOf(r) && p.indexOf(r) == p.length - r.length ? p.substring(0, p.length - r.length) : p.trim(); + function p(T, b) { + let i = b.toLowerCase(); + return 0 < T.indexOf(i) && T.indexOf(i) == T.length - i.length ? T.substring(0, T.length - i.length) : T.trim(); } - function d(p, S, r, s) { - let i = []; - if (p == null || typeof p != "object") + function g(T, b, i, s) { + let r = []; + if (T == null || typeof T != "object") return null; - let t = p[r]; - t != null && S == s && i.push(t); - for (var o in p) { - let l = p[o]; - t = d(l, o, r, s), t != null && (i = i.concat(t)); + let t = T[i]; + t != null && b == s && r.push(t); + for (var o in T) { + let l = T[o]; + t = g(l, o, i, s), t != null && (r = r.concat(t)); } - return i; + return r; } - return N; + return x; }(); var Ae = function() { - function m(d) { - for (var p = "", S = 0; S < d; S++) - p = p + " "; - return p; + function d(b) { + for (var i = "", s = 0; s < b; s++) + i = i + " "; + return i; } - function f(d, p) { - for (const S in d) - if (JSON.stringify(d[S]) == JSON.stringify(p)) + function h(b, i) { + for (const s in b) + if (JSON.stringify(b[s]) == JSON.stringify(i)) return !0; return !1; } - function k(d) { - let p = ["_id", "Id"]; - if (d.id != null) - return d.id; - for (let S = 0; S < p.length; S++) { - const r = p[S]; - for (let s in d) - if (s.endsWith(r)) - return d[s]; + function k(b) { + let i = ["_id", "Id"]; + if (b.id != null) + return { key: "id", value: b.id }; + for (let s = 0; s < i.length; s++) { + const r = i[s]; + for (let t in b) + if (t.endsWith(r)) + return { key: t, value: b[t] }; } } - function D(d) { - for (let p in d) - if (!(d[p] != null && typeof d[p] == "object")) + function N(b) { + return W(b) + "_id"; + } + function I(b) { + for (let i in b) + if (!(b[i] != null && typeof b[i] == "object")) return !0; return !1; } - function I(d) { - let p = null; + function x(b) { + let i = null; e: - for (const S in d) - if (S == 0) - for (const r in d[S]) { - p = r; + for (const s in b) + if (s == 0) + for (const r in b[s]) { + i = r; break e; } else { - p = S; + i = s; break e; } - return p.toLowerCase() == "id" ? null : p.toLowerCase().endsWith("_id") ? p.substring(0, p.length - 3) : p.endsWith("Id") ? p.substring(0, p.length - 2) : null; + return i.toLowerCase() == "id" ? null : i.toLowerCase().endsWith("_id") ? i.substring(0, i.length - 3) : i.endsWith("Id") ? i.substring(0, i.length - 2) : null; } - function N(d, p) { - const S = JSON.parse(d), r = I(S); - r != null && (p = r), p == null && (p = "root_tbl"); - const s = new g(); - s.duplicatesAndParents(p, S), s.flatten(p, S); - let i = s.output(p, S, 0); - return i += ` + function p(b, i, s) { + let r = !1, t = !1; + for (const l in b) + for (var o = 0; o < l; o++) + if (b[l][i] == b[o][i] && b[l][s] != b[o][s] ? r = !0 : b[l][i] != b[o][i] && b[l][s] == b[o][s] && (t = !0), r && t) + return !0; + return !1; + } + function g(b, i) { + const s = JSON.parse(b), r = x(s); + r != null && (i = r), i == null && (i = "root_tbl"); + const t = new T(); + t.duplicatesAndParents(i, s), t.flatten(i, s); + let o = t.output(i, s, 0); + return o += ` -#settings = { genpk: false, drop: true }`, i += ` +#settings = { genpk: false, drop: true }`, o += ` #flattened = -`, i += JSON.stringify(s.tables, null, 3), i += ` -`, i += ` +`, o += JSON.stringify(t.tables, null, 3), o += ` +`, o += ` -- Generated by json2qsql.js ${oe()} ` + (/* @__PURE__ */ new Date()).toLocaleString() + ` -`, i += `#document = -`, i += JSON.stringify(S, null, 3), i += ` -`, i; +`, o += `#document = +`, o += JSON.stringify(s, null, 3), o += ` +`, o; } - function g() { - this.tables = {}, this.notNormalized = [], this.allTables = [], this.child2parent = {}, this.objCounts = {}, this.output = function(d, p, S, r) { - if (r != !1 && this.notNormalized.includes(d)) { - const t = this.parent(d) + "_" + d, o = this.tables[t]; - if (o != null) { - let l = ` -` + m(S) + t + " /insert " + o.length; - return o[0], l += this.output(d, p, S + 1, !1), l; + function T() { + this.tables = {}, this.notNormalized = [], this.allTables = [], this.child2parent = {}, this.objCounts = {}, this.output = function(b, i, s, r) { + if (r != !1 && this.notNormalized.includes(b)) { + const l = this.parent(b) + "_" + b, m = this.tables[l]; + if (m != null) { + let v = ` +` + d(s) + l + " /insert " + m.length; + if (m[0], p(m, N(this.parent(b)), N(b))) + return v += this.output(b, i, s + 1, !1), v; } } - let s = d, i = ""; - if (this.notNormalized.includes(d) && (i = ">"), 0 < S && (s = ` -` + m(S) + i + d), typeof p == "string" && (s += " vc"), typeof p == "number" && (s += " num", d.endsWith("_id") || d.endsWith("Id"))) - return s += " /pk", s; - if (d == "id") + let t = b, o = ""; + if (this.notNormalized.includes(b) && (o = ">"), 0 < s && (t = ` +` + d(s) + o + b), typeof i == "string" && (t += " vc"), typeof i == "number" && (t += " num", b.endsWith("_id") || b.endsWith("Id"))) + return t += " /pk", t; + if (b == "id") return ` -` + m(S) + "id vc32 /pk"; +` + d(s) + "id vc32 /pk"; e: - if (typeof p == "object") { - if (Array.isArray(p)) - for (const o in p) { - 1 <= o && console.log("1 <= property !"); - const l = p[o]; - s = this.output(d, l, S, r); + if (typeof i == "object") { + if (Array.isArray(i)) + for (const m in i) { + 1 <= m && console.log("1 <= property !"); + const v = i[m]; + t = this.output(b, v, s, r); break e; } else - d != "" && (s += " /insert " + this.tables[d].length); - let t = ""; - for (let o in p) { - const l = p[o]; - if (o != null) { - const y = _(d), B = o.toLowerCase(); - if (d != null && y + "_id" == B && 0 < S && (t = o), y + "_id" == B) + b != "" && (t += " /insert " + this.tables[b].length); + let l = ""; + for (let m in i) { + const v = i[m]; + if (m != null) { + const M = W(b), L = m.toLowerCase(); + if (b != null && M + "_id" == L && 0 < s && (l = m), M + "_id" == L) continue; } - this.allTables.includes(d) || (s = "", S--); - const h = this.output(o, l, S + 1); - s += h; + this.allTables.includes(b) || (t = "", s--); + const B = this.output(m, v, s + 1); + t += B; } - t != "" && (s += ` -` + m(S) + t); + l != "" && (t += ` +` + d(s) + l); } - return s; - }, this.flatten = function(d, p, S) { + return t; + }, this.flatten = function(b, i, s) { let r = {}; - for (let t in p) - if (p[t] != null && typeof p[t] == "object") { - let o = d, l = S; - if (isNaN(t)) { - o = t; - const h = k(r); - h != null && (l = h); + for (let l in i) + if (i[l] != null && typeof i[l] == "object") { + let m = b, v = s; + if (isNaN(l)) { + m = l; + const B = k(r); + B != null && (v = B); } - this.flatten(o, p[t], l); + this.flatten(m, i[l], v); } else - r[t] = p[t]; - const s = 0 < Object.keys(r).length; - let i = this.tables[d]; - if (s) { - if (i == null && (i = []), f(i, r) || i.push(r), this.notNormalized.includes(d)) { - const t = this.parent(d); - if (t != null) { - const o = t + "_" + d; - let l = this.tables[o]; - l == null && (l = []); - const h = {}; - h[_(t) + "_id"] = S, h[_(d) + "_id"] = k(r), l.push(h), this.tables[o] = l; + r[l] = i[l]; + !this.notNormalized.includes(b) && s != null && Object.keys(r).length && (r[s.key] = s.value); + const t = 0 < Object.keys(r).length; + let o = this.tables[b]; + if (t) { + if (o == null && (o = []), h(o, r) || o.push(r), this.notNormalized.includes(b)) { + const l = this.parent(b); + if (l != null) { + const m = l + "_" + b; + let v = this.tables[m]; + v == null && (v = []); + const B = {}; + B[N(l)] = s.value, B[N(b)] = k(r).value, v.push(B), this.tables[m] = v; } } - this.tables[d] = i; + this.tables[b] = o; } else - i == null && (this.tables[d] = []); - }, this.duplicatesAndParents = function(d, p) { - const S = '"' + d + '":' + JSON.stringify(p); - let r = this.objCounts[S]; + o == null && (this.tables[b] = []); + }, this.duplicatesAndParents = function(b, i) { + const s = '"' + b + '":' + JSON.stringify(i); + let r = this.objCounts[s]; r == null && (r = 0); - let s = !1; - for (let t in p) - if (p[t] != null && typeof p[t] == "object") { - let o = d; - isNaN(t) && (o = t), o != d && (this.child2parent[o] = d), this.duplicatesAndParents(o, p[t]), s = !0; + let t = !1; + for (let l in i) + if (i[l] != null && typeof i[l] == "object") { + let m = b; + isNaN(l) && (m = l), m != b && (this.child2parent[m] = b), this.duplicatesAndParents(m, i[l]), t = !0; } - D(p) && !this.allTables.includes(d) && this.allTables.push(d), s || (this.objCounts[S] = r + 1), 1 < this.objCounts[S] && !this.notNormalized.includes(d) && this.notNormalized.push(d); - }, this.parent = function(d) { - let p = this.child2parent[d]; - return p != null && !this.allTables.includes(p) ? this.parent(p) : p; + I(i) && !this.allTables.includes(b) && this.allTables.push(b), t || (this.objCounts[s] = r + 1), 1 < this.objCounts[s] && !this.notNormalized.includes(b) && this.notNormalized.push(b); + }, this.parent = function(b) { + let i = this.child2parent[b]; + return i != null && !this.allTables.includes(i) ? this.parent(i) : i; }; } - return N; + return g; }(); const ye = function() { - function m(g, d, p, S) { - this.from = d, this.to = p, p == null && (this.to = new f(d.line, d.depth + 1)), this.message = g, this.severity = S, S == null && (this.severity = "error"); + function d(p, g, T, b) { + this.from = g, this.to = T, T == null && (this.to = new h(g.line, g.depth + 1)), this.message = p, this.severity = b, b == null && (this.severity = "error"); } - function f(g, d) { - this.line = g, this.depth = d; + function h(p, g) { + this.line = p, this.depth = g; } - function k(g) { - const d = g, p = g.input; - let S = []; - const r = p.split(` + function k(p) { + const g = p, T = p.input; + let b = []; + const i = T.split(` `); - S = S.concat(N(r)); - const s = d.descendants(); - for (let i = 0; i < s.length; i++) { - const t = s[i]; - if (d.optionEQvalue("genpk", !0) && s[i].parseName() == "id") { - const h = t.content.toLowerCase().indexOf("id"); - S.push(new m(j.duplicateId, new f(t.line, h))); + b = b.concat(x(i)); + const s = g.descendants(); + for (let r = 0; r < s.length; r++) { + const t = s[r]; + if (g.optionEQvalue("genpk", !0) && s[r].parseName() == "id") { + const m = t.content.toLowerCase().indexOf("id"); + b.push(new d(j.duplicateId, new h(t.line, m))); continue; } const o = t.src[2]; if (2 < t.src.length && o.value == "-") { - const h = o.begin; - S.push(new m(j.invalidDatatype, new f(t.line, h))); + const m = o.begin; + b.push(new d(j.invalidDatatype, new h(t.line, m))); continue; } const l = t.src[1]; if (1 < t.src.length && 0 < l.value.indexOf("0")) { - const h = l.begin; - S.push(new m(j.invalidDatatype, new f(t.line, h))); + const m = l.begin; + b.push(new d(j.invalidDatatype, new h(t.line, m))); continue; } - S = S.concat(D(d, t)), S = S.concat(I(d, t)); + b = b.concat(N(g, t)), b = b.concat(I(g, t)); } - return S; + return b; } - function D(g, d) { - var p = [], S = d.content.toLowerCase(); - if (d.parseType() == "view") { - var r = $(S, " "); + function N(p, g) { + var T = [], b = g.content.toLowerCase(); + if (g.parseType() == "view") { + var i = $(b, " "); let t = 0; - for (var s = 0; s < r.length; s++) - if (t += r[s].length, r[s] != " " && r[s] != "view" && s != 1) { - var i = g.find(r[s]); - i == null && p.push(new m( - j.undefinedObject + r[s], - new f(d.line, t - r[s].length) + for (var s = 0; s < i.length; s++) + if (t += i[s].length, i[s] != " " && i[s] != "view" && s != 1) { + var r = p.find(i[s]); + r == null && T.push(new d( + j.undefinedObject + i[s], + new h(g.line, t - i[s].length) )); } } - return p; + return T; } - function I(g, d) { - var p = [], S = d.content.toLowerCase(); - if (0 < S.indexOf("/fk") || 0 < S.indexOf("/reference")) { - let i = $(S, " "), t = 0, o = !1; - for (var r = 0; r < i.length; r++) - if (t += i[r].length, i[r] != " ") { - if (i[r] == "/fk" || i[r].indexOf("/reference") == 0) { + function I(p, g) { + var T = [], b = g.content.toLowerCase(); + if (0 < b.indexOf("/fk") || 0 < b.indexOf("/reference")) { + let r = $(b, " "), t = 0, o = !1; + for (var i = 0; i < r.length; i++) + if (t += r[i].length, r[i] != " ") { + if (r[i] == "/fk" || r[i].indexOf("/reference") == 0) { o = !0; continue; } if (o) { - var s = g.find(i[r]); + var s = p.find(r[i]); if (s == null) { - p.push(new m( - j.undefinedObject + i[r], - new f(d.line, t - i[r].length) + T.push(new d( + j.undefinedObject + r[i], + new h(g.line, t - r[i].length) )); break; } } } } - return p; + return T; } - function N(g) { - for (var d = [], p = Se(g), S = 1; S < g.length; S++) { - var r = g[S - 1], s = g[S], i = re(r), t = re(s); - t != 0 && i < t && t < i + p && d.push( - new m( - j.misalignedAttribute + p, - new f(S, t) + function x(p) { + for (var g = [], T = Se(p), b = 1; b < p.length; b++) { + var i = p[b - 1], s = p[b], r = re(i), t = re(s); + t != 0 && r < t && t < r + T && g.push( + new d( + j.misalignedAttribute + T, + new h(b, t) ) ); } - return d; + return g; } return k; }(); -function Se(m) { - let f = []; - for (var k = 0; k < m.length; k++) { - var D = m[k]; - f[k] = re(D); +function Se(d) { + let h = []; + for (var k = 0; k < d.length; k++) { + var N = d[k]; + h[k] = re(N); } let I = []; - for (let g = 0; g < f.length; g++) { - let d = Me(f, g); - if (d != null) { - let p = I[f[g] - f[d]]; - p == null && (p = 0), I[f[g] - f[d]] = p + 1; + for (let p = 0; p < h.length; p++) { + let g = Me(h, p); + if (g != null) { + let T = I[h[p] - h[g]]; + T == null && (T = 0), I[h[p] - h[g]] = T + 1; } } - let N = null; - for (let g in I) - (N == null || I[N] <= I[g]) && (N = g); - return N; + let x = null; + for (let p in I) + (x == null || I[x] <= I[p]) && (x = p); + return x; } -function re(m) { - for (var f = m.split(/ |\t/), k = 0, D = 0; D < f.length; D++) { - var I = f[D]; +function re(d) { + for (var h = d.split(/ |\t/), k = 0, N = 0; N < h.length; N++) { + var I = h[N]; if (I == " " && (k += 4), I == "") { k++; continue; @@ -8847,9 +8875,9 @@ function re(m) { } return 0; } -function Me(m, f) { - for (let k = f; 0 <= k; k--) - if (m[k] < m[f]) +function Me(d, h) { + for (let k = h; 0 <= k; k--) + if (d[k] < d[h]) return k; return null; } @@ -8859,7 +8887,7 @@ const j = { undefinedObject: "Undefined Object: ", misalignedAttribute: "Misaligned Table or Column; apparent indent = " }, Te = { findErrors: ye, messages: j }, ne = "identityDataType", ue = "guid", me = "Timestamp with time zone", de = "Timestamp with local time zone", Y = function() { - const m = { + const d = { apex: { label: "APEX", value: "no", check: ["yes", "no"] }, auditcols: { label: "Audit Columns", value: "no", check: ["yes", "no"] }, createdcol: { label: "Created Column Name", value: "created" }, @@ -8892,246 +8920,246 @@ const j = { //"Auxiliary Columns": {label: "Auxiliary Columns", value:''}, // e.g. security_group_id integer //namecase: {label: 'Object and Field name convention', value:'canonic',check:['canonic','json']}, }; - function f(D) { - if (D == null) + function h(N) { + if (N == null) return null; - let I = D; + let I = N; return typeof I == "string" && (I = I.toLowerCase()), I == "yes" ? !0 : I == "no" ? !1 : I == "y" ? !0 : I == "n" ? !1 : I == "true" ? !0 : I == "false" ? !1 : I == ne.toLowerCase() ? "identity" : I == ue.toLowerCase() ? "guid" : I == me.toLowerCase() ? "tswtz" : I == de.toLowerCase() ? "tswltz" : I; } - function k(D, I) { - this.ddl = null, this.erd = null, this.errors = null, this.options = JSON.parse(JSON.stringify(m)), this.input = D, this.getOptionValue = function(g) { - const d = g.toLowerCase(); - let p = this.options[d]; - if (!(d in this.options)) - for (let S in this.options) { - const r = this.options[S].label; - if (r == null) + function k(N, I) { + this.ddl = null, this.erd = null, this.errors = null, this.options = JSON.parse(JSON.stringify(d)), this.input = N, this.getOptionValue = function(p) { + const g = p.toLowerCase(); + let T = this.options[g]; + if (!(g in this.options)) + for (let b in this.options) { + const i = this.options[b].label; + if (i == null) continue; - r.toLowerCase() == d && (p = this.options[S]); + i.toLowerCase() == g && (T = this.options[b]); } - return p == null ? null : p.value; - }, this.optionEQvalue = function(g, d) { - var p = this.getOptionValue(g); - return f(p) == f(d); + return T == null ? null : T.value; + }, this.optionEQvalue = function(p, g) { + var T = this.getOptionValue(p); + return h(T) == h(g); }, this.nonDefaultOptions = function() { - let g = {}; - for (let d in this.options) - m[d] && !this.optionEQvalue(d, m[d].value) && (g[d] = this.options[d].value); - return g; + let p = {}; + for (let g in this.options) + d[g] && !this.optionEQvalue(g, d[g].value) && (p[g] = this.options[g].value); + return p; }, this.unknownOptions = function() { - let g = []; - for (let d in this.options) - m[d] == null && g.push(d); - return g; - }, this.setOptionValue = function(g, d) { - let p = g.toLowerCase(); - if (!(p in this.options)) { - for (let r in this.options) - if (this.options[r].label == g) { - this.options[r].value = d; + let p = []; + for (let g in this.options) + d[g] == null && p.push(g); + return p; + }, this.setOptionValue = function(p, g) { + let T = p.toLowerCase(); + if (!(T in this.options)) { + for (let i in this.options) + if (this.options[i].label == p) { + this.options[i].value = g; return; } } - d == null && (d = ""); - let S = this.options[p]; - S == null && (S = {}, this.options[p] = S), S.value = d; + g == null && (g = ""); + let b = this.options[T]; + b == null && (b = {}, this.options[T] = b), b.value = g; }, this.semantics = function() { - var g = ""; - return this.optionEQvalue("semantics", "CHAR") ? g = " char" : this.optionEQvalue("semantics", "BYTE") && (g = " byte"), g; - }, this.find = function(g) { - for (var d = 0; d < this.forest.length; d++) - for (var p = this.forest[d].descendants(), S = 0; S < p.length; S++) { - var r = p[S]; - if (r.parseName() == he(g)) - return r; + var p = ""; + return this.optionEQvalue("semantics", "CHAR") ? p = " char" : this.optionEQvalue("semantics", "BYTE") && (p = " byte"), p; + }, this.find = function(p) { + for (var g = 0; g < this.forest.length; g++) + for (var T = this.forest[g].descendants(), b = 0; b < T.length; b++) { + var i = T[b]; + if (i.parseName() == he(p)) + return i; } return null; - }, this.setOptions = function(g) { - g = g.trim(), g.startsWith("#") && (g = g.substring(1).trim()); - const d = g.indexOf("="); - let p = g.substring(d + 1).trim(); - p.indexOf("{") < 0 && (p = "{" + g + "}"); - let S = "", r = Z(p, !0, !0, ""); - for (let i in r) { - let t = r[i]; - t.type == "identifier" && t.value != "true" && t.value != "false" && t.value != "null" ? S += '"' + t.value + '"' : S += t.value; + }, this.setOptions = function(p) { + p = p.trim(), p.startsWith("#") && (p = p.substring(1).trim()); + const g = p.indexOf("="); + let T = p.substring(g + 1).trim(); + T.indexOf("{") < 0 && (T = "{" + p + "}"); + let b = "", i = Z(T, !0, !0, ""); + for (let r in i) { + let t = i[r]; + t.type == "identifier" && t.value != "true" && t.value != "false" && t.value != "null" ? b += '"' + t.value + '"' : b += t.value; } - let s = JSON.parse(S); - for (let i in s) - this.setOptionValue(i.toLowerCase(), s[i]); + let s = JSON.parse(b); + for (let r in s) + this.setOptionValue(r.toLowerCase(), s[r]); }, this.descendants = function() { - for (var g = [], d = 0; d < this.forest.length; d++) - g = g.concat(this.forest[d].descendants()); - return g; + for (var p = [], g = 0; g < this.forest.length; g++) + p = p.concat(this.forest[g].descendants()); + return p; }, this.additionalColumns = function() { - var g = [], d = this.getOptionValue("Auxiliary Columns"); - if (d == null) - return g; - for (var p = d.split(","), S = 0; S < p.length; S++) { - var r = p[S].trim(), s = "VARCHAR2(4000)", i = r.indexOf(" "); - 0 < i && (s = r.substring(i + 1).toUpperCase(), r = r.substring(0, i)), g[r] = s; + var p = [], g = this.getOptionValue("Auxiliary Columns"); + if (g == null) + return p; + for (var T = g.split(","), b = 0; b < T.length; b++) { + var i = T[b].trim(), s = "VARCHAR2(4000)", r = i.indexOf(" "); + 0 < r && (s = i.substring(r + 1).toUpperCase(), i = i.substring(0, r)), p[i] = s; } - return g; - }, this.objPrefix = function(g) { - var d = this.getOptionValue("schema"); - d == null && (d = ""), d != "" && g == null ? d = d + "." : d = ""; - var p = ""; - return this.getOptionValue("prefix") != null && (p = this.getOptionValue("prefix")), d = d + p, p != "" && (d = d + "_"), d.toLowerCase(); + return p; + }, this.objPrefix = function(p) { + var g = this.getOptionValue("schema"); + g == null && (g = ""), g != "" && p == null ? g = g + "." : g = ""; + var T = ""; + return this.getOptionValue("prefix") != null && (T = this.getOptionValue("prefix")), g = g + T, T != "" && (g = g + "_"), g.toLowerCase(); }; - let N = ""; - 0 < D.toLowerCase().indexOf("overridesettings") && ce(this), I != null && this.optionEQvalue("overrideSettings", !1) && (N = "# settings = " + I + ` + let x = ""; + 0 < N.toLowerCase().indexOf("overridesettings") && ce(this), I != null && this.optionEQvalue("overrideSettings", !1) && (x = "# settings = " + I + ` -`), this.input = N + D, this.forest = ce(this), this.getERD = function() { +`), this.input = x + N, this.forest = ce(this), this.getERD = function() { if (this.erd != null) return this.erd; - let g = this.descendants(), d = { items: [] }; - for (let r = 0; r < g.length; r++) { - if (g[r].parseType() != "table") + let p = this.descendants(), g = { items: [] }; + for (let i = 0; i < p.length; i++) { + if (p[i].parseType() != "table") continue; - let s = { name: this.objPrefix("no schema") + g[r].parseName("") }, i = this.getOptionValue("schema"); - i == "" && (i = null), s.schema = i, s.columns = [], d.items.push(s); - let t = g[r].getGenIdColName(); + let s = { name: this.objPrefix("no schema") + p[i].parseName("") }, r = this.getOptionValue("schema"); + r == "" && (r = null), s.schema = r, s.columns = [], g.items.push(s); + let t = p[i].getGenIdColName(); t != null && s.columns.push({ name: t, datatype: "number" }); - for (let l = 0; l < g[r].children.length; l++) { - let h = g[r].children[l]; - if (h.parseType() != "table" && (s.columns.push({ name: h.parseName(""), datatype: h.parseType((y) => !0) }), 0 < h.indexOf("file"))) { - const y = h.parseName(); - s.columns.push({ name: y + "_filename", datatype: "varchar2(255" + this.semantics() + ")" }), s.columns.push({ name: y + "_mimetype", datatype: "varchar2(255" + this.semantics() + ")" }), s.columns.push({ name: y + "_charset", datatype: "varchar2(255" + this.semantics() + ")" }), s.columns.push({ name: y + "_lastupd", datatype: "date" }); + for (let l = 0; l < p[i].children.length; l++) { + let m = p[i].children[l]; + if (m.parseType() != "table" && (s.columns.push({ name: m.parseName(""), datatype: m.parseType((v) => !0) }), 0 < m.indexOf("file"))) { + const v = m.parseName(); + s.columns.push({ name: v + "_filename", datatype: "varchar2(255" + this.semantics() + ")" }), s.columns.push({ name: v + "_mimetype", datatype: "varchar2(255" + this.semantics() + ")" }), s.columns.push({ name: v + "_charset", datatype: "varchar2(255" + this.semantics() + ")" }), s.columns.push({ name: v + "_lastupd", datatype: "date" }); } } - const o = g[r].trimmedContent().toUpperCase(); + const o = p[i].trimmedContent().toUpperCase(); if ((this.optionEQvalue("rowkey", !0) || 0 < o.indexOf("/ROWKEY")) && s.columns.push({ name: "row_key", datatype: "varchar2(30 char)" }), (this.optionEQvalue("rowVersion", "yes") || 0 < o.indexOf("/ROWVERSION")) && s.columns.push({ name: "row_version", datatype: "integer" }), this.optionEQvalue("Audit Columns", "yes") || 0 < o.indexOf("/AUDITCOLS")) { let l = this.getOptionValue("createdcol"); s.columns.push({ name: l, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); - let h = this.getOptionValue("createdbycol"); - s.columns.push({ name: h, datatype: "varchar2(255" + this.semantics() + ")" }); - let y = this.getOptionValue("updatedcol"); - s.columns.push({ name: y, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); + let m = this.getOptionValue("createdbycol"); + s.columns.push({ name: m, datatype: "varchar2(255" + this.semantics() + ")" }); + let v = this.getOptionValue("updatedcol"); + s.columns.push({ name: v, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); let B = this.getOptionValue("updatedbycol"); s.columns.push({ name: B, datatype: "varchar2(255" + this.semantics() + ")" }); } - var p = this.additionalColumns(); - for (let l in p) { - var S = p[l]; - pad = tab + " ".repeat(this.maxChildNameLen() - l.length), ret += tab + l.toUpperCase() + pad + S + ` not null, + var T = this.additionalColumns(); + for (let l in T) { + var b = T[l]; + pad = tab + " ".repeat(this.maxChildNameLen() - l.length), ret += tab + l.toUpperCase() + pad + b + ` not null, `; } } - d.links = []; - for (let r = 0; r < g.length; r++) - if (g[r].parseType() == "table") { - g[r].toDDL(); - for (let s in g[r].fks) { - let i = g[r].fks[s], t = this.find(i); + g.links = []; + for (let i = 0; i < p.length; i++) + if (p[i].parseType() == "table") { + p[i].toDDL(); + for (let s in p[i].fks) { + let r = p[i].fks[s], t = this.find(r); if (t == null) continue; let o = "id"; - t.getExplicitPkNode() != null && (o = t.getExplicitPkNode().parseName()), d.links.push({ - source: this.objPrefix() + i, + t.getExplicitPkNode() != null && (o = t.getExplicitPkNode().parseName()), g.links.push({ + source: this.objPrefix() + r, source_id: o, - target: this.objPrefix() + g[r].parseName(""), + target: this.objPrefix() + p[i].parseName(""), target_id: s }); } } - return this.erd = d, d; + return this.erd = g, g; }, this.getDDL = function() { if (this.ddl != null) return this.ddl; - var g = "", d = this.descendants(); + var p = "", g = this.descendants(); if (this.optionEQvalue("Include Drops", "yes")) - for (let r = 0; r < d.length; r++) { - let s = d[r].generateDrop(); - s != "" && (g += s); + for (let i = 0; i < g.length; i++) { + let s = g[i].generateDrop(); + s != "" && (p += s); } if (this.optionEQvalue("rowkey", !0)) - g += `create sequence row_key_seq; + p += `create sequence row_key_seq; `; else - for (let r = 0; r < this.forest.length; r++) - if (0 < this.forest[r].trimmedContent().toUpperCase().indexOf("/ROWKEY")) { - g += `create sequence row_key_seq; + for (let i = 0; i < this.forest.length; i++) + if (0 < this.forest[i].trimmedContent().toUpperCase().indexOf("/ROWKEY")) { + p += `create sequence row_key_seq; `; break; } - g += `-- create tables + p += `-- create tables `; - for (let r = 0; r < this.forest.length; r++) - g += this.forest[r].toDDL() + ` + for (let i = 0; i < this.forest.length; i++) + p += this.forest[i].toDDL() + ` `; - let p = 0; - for (let r = 0; r < d.length; r++) { - let s = d[r].generateTrigger(); - s != "" && (p++ == 0 && (g += `-- triggers -`), g += s + ` + let T = 0; + for (let i = 0; i < g.length; i++) { + let s = g[i].generateTrigger(); + s != "" && (T++ == 0 && (p += `-- triggers +`), p += s + ` `); } - p = 0; - for (let r = 0; r < d.length; r++) { - let s = d[r].restEnable(); - s != "" && (g += s + ` + T = 0; + for (let i = 0; i < g.length; i++) { + let s = g[i].restEnable(); + s != "" && (p += s + ` `); } - p = 0; - for (let r = 0; r < d.length; r++) { - if (this.optionEQvalue("api", !1) && d[r].trimmedContent().toLowerCase().indexOf("/api") < 0) + T = 0; + for (let i = 0; i < g.length; i++) { + if (this.optionEQvalue("api", !1) && g[i].trimmedContent().toLowerCase().indexOf("/api") < 0) continue; - let s = d[r].generateTAPI(); - s != "" && (p++ == 0 && (g += `-- APIs -`), g += s + ` + let s = g[i].generateTAPI(); + s != "" && (T++ == 0 && (p += `-- APIs +`), p += s + ` `); } - p = 0; - for (let r = 0; r < this.forest.length; r++) { - let s = this.forest[r].generateView(); - s != "" && (p++ == 0 && (g += `-- create views -`), g += s + ` + T = 0; + for (let i = 0; i < this.forest.length; i++) { + let s = this.forest[i].generateView(); + s != "" && (T++ == 0 && (p += `-- create views +`), p += s + ` `); } - p = 0; - for (let r = 0; r < this.forest.length; r++) { - let s = this.forest[r].generateData(this.data); - s != "" && (p++ == 0 && (g += `-- load data + T = 0; + for (let i = 0; i < this.forest.length; i++) { + let s = this.forest[i].generateData(this.data); + s != "" && (T++ == 0 && (p += `-- load data -`), g += s + ` +`), p += s + ` `); } - p = 0, g += `-- Generated by Quick SQL ${this.version()} ` + (/* @__PURE__ */ new Date()).toLocaleString() + ` + T = 0, p += `-- Generated by Quick SQL ${this.version()} ` + (/* @__PURE__ */ new Date()).toLocaleString() + ` -`, g += `/* +`, p += `/* `; - let S = D; - S = S.replace(/#.+/g, ` -`), S = S.replace(/\/\*/g, "--<--"), S = S.replace(/\*\//g, "-->--"), S = S.replace(/\/* Non-default options:/g, ""), g += S, g += ` + let b = N; + b = b.replace(/#.+/g, ` +`), b = b.replace(/\/\*/g, "--<--"), b = b.replace(/\*\//g, "-->--"), b = b.replace(/\/* Non-default options:/g, ""), p += b, p += ` `; - for (let r = 0; r < this.unknownOptions().length; r++) - g += "*** Unknown setting: " + this.unknownOptions()[r] + ` + for (let i = 0; i < this.unknownOptions().length; i++) + p += "*** Unknown setting: " + this.unknownOptions()[i] + ` `; - return g += ` + return p += ` Non-default options: # settings = ` + JSON.stringify(this.nonDefaultOptions()) + ` -`, g += ` -*/`, this.ddl = g, g; +`, p += ` +*/`, this.ddl = p, p; }, this.getErrors = function() { return this.errors != null ? this.errors : (this.errors = Te.findErrors(this, this.fullInput), this.errors); }, this.version = oe; } return k; }(); -function Ie(m, f) { - return Ae(m, f); +function Ie(d, h) { + return Ae(d, h); } -function Be(m, f) { - return new Y(m, f).getERD(); +function Be(d, h) { + return new Y(d, h).getERD(); } -function Pe(m, f) { - return new Y(m, f).getDDL(); +function Pe(d, h) { + return new Y(d, h).getDDL(); } -function Ee(m, f) { - return new Y(m, f).getErrors(); +function Ee(d, h) { + return new Y(d, h).getErrors(); } function oe() { return "1.2.1"; diff --git a/dist/quick-sql.umd.cjs b/dist/quick-sql.umd.cjs index 54b3a96..7882268 100644 --- a/dist/quick-sql.umd.cjs +++ b/dist/quick-sql.umd.cjs @@ -1,93 +1,93 @@ -(function(V,F){typeof exports=="object"&&typeof module<"u"?F(exports):typeof define=="function"&&define.amd?define(["exports"],F):(V=typeof globalThis<"u"?globalThis:V||self,F(V.quickSQL={}))})(this,function(V){"use strict";function F(m){return m==null?m:m.toUpperCase().endsWith("IES")?m.substring(0,m.length-3)+"y":m.toUpperCase().endsWith("ES")||m.toUpperCase().endsWith("S")?m.substring(0,m.length-1):m}function ve(m,f){let x='"';if(m==null)return null;let D=!1;const I="$#_ ";if(!m.startsWith(x)&&!D){const N=m;if(N.length>0&&"0"<=N[0]&&N[0]<="9")D=!0;else for(let g in N){const d=N[g];if(I.indexOf(d)<0&&(d<"0"||"9""u"&&(e[n]=a[n]);return e}function i(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var o=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?o=btoa:typeof Buffer=="function"&&(o=function(a){return new Buffer(a).toString("base64")})})(),r.prototype.bool=function(e){return e=s(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100c,"Chance: Max specified is out of range with fixed. Max should be, at most, "+c),e=s(e,{min:u,max:c}),a=this.integer({min:e.min*n,max:e.max*n});var C=(a/n).toFixed(e.fixed);return parseFloat(C)},r.prototype.integer=function(e){return e=s(e,{min:D,max:x}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},r.prototype.natural=function(e){if(e=s(e,{min:0,max:x}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),c=e.exclude.sort();for(var u in c){if(ne.max,"Chance: Min cannot be greater than Max.");var a=P.primes[P.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&P.primes.push(n);var c=P.primes.filter(function(u){return u>=e.min&&u<=e.max});return this.pick(c)},r.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},r.prototype.hex=function(e){e=s(e,{min:0,max:x,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},r.prototype.letter=function(e){e=s(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},r.prototype.string=function(e){e=s(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function h(e){this.c=e}h.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function y(e){this.c=e}y.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:g})},a:function(e){return e.character({pool:N})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function B(e){for(var a=[],n="identity",c=0;c"u")throw new p("Sorry, the buffer() function is not supported on your platform");e=s(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},r.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},r.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},r.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var c=function(M,O){return M.indexOf(O)!==-1};n&&(c=n.comparator||c);for(var u=[],C=0,E,b=a*50,A=S.call(arguments,2);u.lengthb)throw new RangeError("Chance: num is likely too large for sample set")}return u},r.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,c=[],u=S.call(arguments,2);for(n=Math.max(0,n),null;n--;null)c.push(e.apply(this,u));return c},r.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},r.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},r.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},r.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),c=n.length;return this.n(function(){var u=this.natural({max:--c}),C=n[u];return n[u]=n[c],C},Math.min(c,a))},r.prototype.shuffle=function(e){for(var a=[],n=0,c=Number(e.length),u=i(c),C=c-1,E,b=0;b0&&(c+=u)}if(c===0)throw new RangeError("Chance: No valid entries in array weights");var E=this.random()*c,b=0,A=-1,v;for(C=0;C0){if(E<=b){v=C;break}A=C}C===a.length-1&&(v=A)}var M=e[v];return n=typeof n>"u"?!1:n,n&&(e.splice(v,1),a.splice(v,1)),M},r.prototype.paragraph=function(e){e=s(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),c=e.linebreak===!0?` -`:" ";return n.join(c)},r.prototype.sentence=function(e){e=s(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,c,u=this.n(this.word,a);return c=u.join(" "),c=this.capitalize(c),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(c+=n),c},r.prototype.syllable=function(e){e=s(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",c="aeiou",u=n+c,C="",E,b=0;be.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var E=e.minAge!==void 0?e.minAge:0,b=e.maxAge!==void 0?e.maxAge:100,A=new Date(c-b-1,n.getMonth(),n.getDate()),v=new Date(c-E,n.getMonth(),n.getDate());A.setDate(A.getDate()+1),v.setDate(v.getDate()+1),v.setMilliseconds(v.getMilliseconds()-1),e=s(e,{min:A,max:v})}else e=s(e,{year:c-a});return this.date(e)},r.prototype.cpf=function(e){e=s(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var c=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;c=11-c%11,c>=10&&(c=0);var u=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+c;return e.formatted?u:u.replace(/\D/g,"")},r.prototype.cnpj=function(e){e=s(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var c=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;c=11-c%11,c<2&&(c=0);var u=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+c;return e.formatted?u:u.replace(/\D/g,"")},r.prototype.first=function(e){return e=s(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},r.prototype.profession=function(e){return e=s(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},r.prototype.company=function(){return this.pick(this.get("company"))},r.prototype.gender=function(e){return e=s(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},r.prototype.last=function(e){if(e=s(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(c){a=a.concat(n[c])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},r.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},r.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},r.prototype.tld=function(){return this.pick(this.tlds())},r.prototype.twitter=function(){return"@"+this.word()},r.prototype.url=function(e){e=s(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},r.prototype.port=function(){return this.integer({min:0,max:65535})},r.prototype.locale=function(e){return e=s(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},r.prototype.locales=function(e){return e=s(e),e.region?this.get("locale_regions"):this.get("locale_languages")},r.prototype.loremPicsum=function(e){e=s(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},r.prototype.address=function(e){return e=s(e),this.natural({min:5,max:2e3})+" "+this.street(e)},r.prototype.altitude=function(e){return e=s(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.areacode=function(e){e=s(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},r.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},r.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},r.prototype.countries=function(){return this.get("countries")},r.prototype.country=function(e){e=s(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},r.prototype.depth=function(e){return e=s(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.geohash=function(e){return e=s(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},r.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},r.prototype.latitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=s(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:c});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.longitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=s(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:c});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.phone=function(e){var a=this,n,c=function(O){var G=[];return O.sections.forEach(function(z){G.push(a.string({pool:"0123456789",length:z}))}),O.area+G.join(" ")};e=s(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var u;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),u=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),u=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),u=e.formatted?c(n):c(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),u=e.formatted?c(n):c(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n);break;case"us":var C=this.areacode(e).toString(),E=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),b=this.natural({min:1e3,max:9999}).toString();u=e.formatted?C+" "+E+"-"+b:C+E+b;break;case"br":var A=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),v;e.mobile?v="9"+a.string({pool:"0123456789",length:4}):v=this.natural({min:2e3,max:5999}).toString();var M=a.string({pool:"0123456789",length:4});u=e.formatted?"("+A+") "+v+"-"+M:A+v+M;break}return u},r.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},r.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",c=e+a+n,u=this.natural({max:9}),C=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),E=u+C;return c+" "+E},r.prototype.counties=function(e){return e=s(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},r.prototype.county=function(e){return this.pick(this.counties(e)).name},r.prototype.provinces=function(e){return e=s(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},r.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},r.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},r.prototype.states=function(e){e=s(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),c=this.get("territories"),u=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(c)),e.armed_forces&&(a=a.concat(u));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},r.prototype.street=function(e){e=s(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},r.prototype.street_suffix=function(e){return e=s(e,{country:"us"}),this.pick(this.street_suffixes(e))},r.prototype.street_suffixes=function(e){return e=s(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},r.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},r.prototype.ampm=function(){return this.bool()?"am":"pm"},r.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=s(e,{american:!0,string:!1});var c=typeof e.min<"u"?e.min.getTime():1,u=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:c,max:u}))}else{var C=this.month({raw:!0}),E=C.days;e&&e.month&&(E=this.get("months")[(e.month%12+12)%12].days),e=s(e,{year:parseInt(this.year(),10),month:C.numeric-1,day:this.natural({min:1,max:E}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},r.prototype.hammertime=function(e){return this.date(e).getTime()},r.prototype.hour=function(e){return e=s(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.millisecond=function(){return this.natural({max:999})},r.prototype.minute=r.prototype.second=function(e){return e=s(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.month=function(e){e=s(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},r.prototype.months=function(){return this.get("months")},r.prototype.second=function(){return this.natural({max:59})},r.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},r.prototype.weekday=function(e){e=s(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},r.prototype.year=function(e){return e=s(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},r.prototype.cc=function(e){e=s(e);var a,n,c;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),c=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,c,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},r.prototype.cc_types=function(){return this.get("cc_types")},r.prototype.cc_type=function(e){e=s(e);var a=this.cc_types(),n=null;if(e.name){for(var c=0;c3&&(O?G=G.substr(0,3):G=G[0]+G.substr(2,2)),G.length<3&&(z=G,G=M.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+G),z},A=function(M,O,G){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return M.getFullYear().toString().substr(2)+z[M.getMonth()]+G.pad(M.getDate()+(O.toLowerCase()==="female"?40:0),2)},v=function(M){for(var O="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",G="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(G[O.indexOf(M[U])]):K+=j.indexOf(G[O.indexOf(M[U])]);return z[K%26]};return E=E.concat(b(c,!0),b(n),A(u,a,this),C.toUpperCase().split("")).join(""),E+=v(E.toUpperCase()),E.toUpperCase()},r.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;u--)c[u-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?c.reduce(function(C,E){return C+E}):c}else throw new RangeError("Chance: A type of die roll must be included")},r.prototype.guid=function(e){e=s(e,{version:5});var a="abcdef1234567890",n="ab89",c=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return c},r.prototype.hash=function(e){e=s(e,{length:40,casing:"lower"});var a=e.casing==="upper"?d.toUpperCase():d;return this.string({pool:a,length:e.length})},r.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},r.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,c,u=0,C=a.length;C>u;++u)c=+a[u],u%2===0&&(c*=2,c>9&&(c-=9)),n+=c;return n*9%10},r.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=s(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},r.prototype.file=function(e){var a=e||{},n="fileExtension",c=Object.keys(this.get("fileExtension")),u,C;if(u=this.word({length:a.length}),a.extension)return C=a.extension,u+"."+C;if(a.extensions){if(Array.isArray(a.extensions))return C=this.pickone(a.extensions),u+"."+C;if(a.extensions.constructor===Object){var E=a.extensions,b=Object.keys(E);return C=this.pickone(E[this.pickone(b)]),u+"."+C}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var A=a.fileType;if(c.indexOf(A)!==-1)return C=this.pickone(this.get(n)[A]),u+"."+C;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return C=this.pickone(this.get(n)[this.pickone(c)]),u+"."+C},r.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var c={fileData:this.buffer({length:a.fileSize}),fileName:n};return c};var P={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},L=Object.prototype.hasOwnProperty,k=Object.keys||function(e){var a=[];for(var n in e)L.call(e,n)&&a.push(n);return a};function w(e,a){for(var n=k(e),c,u=0,C=n.length;u0)return this.normal_pool(e);var a,n,c,u,C=e.mean,E=e.dev;do n=this.random()*2-1,c=this.random()*2-1,a=n*n+c*c;while(a>=1);return u=n*Math.sqrt(-2*Math.log(a)/a),E*u+C},r.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},r.prototype.radio=function(e){e=s(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},r.prototype.set=function(e,a){typeof e=="string"?P[e]=a:P=_(e,P)},r.prototype.tv=function(e){return this.radio(e)},r.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},r.prototype.emotion=function(){return this.pick(this.get("emotions"))},r.prototype.mersenne_twister=function(e){return new W(e)},r.prototype.blueimp_md5=function(){return new R};var W=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};W.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},W.prototype.init_by_array=function(e,a){var n=1,c=0,u,C;for(this.init_genrand(19650218),u=this.N>a?this.N:a;u;u--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1664525<<16)+(C&65535)*1664525)+e[c]+c,this.mt[n]>>>=0,n++,c++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),c>=a&&(c=0);for(u=this.N-1;u;u--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1566083941<<16)+(C&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},W.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},W.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},W.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},W.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},W.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},W.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var R=function(){};R.prototype.VERSION="1.0.1",R.prototype.safe_add=function(a,n){var c=(a&65535)+(n&65535),u=(a>>16)+(n>>16)+(c>>16);return u<<16|c&65535},R.prototype.bit_roll=function(e,a){return e<>>32-a},R.prototype.md5_cmn=function(e,a,n,c,u,C){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(c,C)),u),n)},R.prototype.md5_ff=function(e,a,n,c,u,C,E){return this.md5_cmn(a&n|~a&c,e,a,u,C,E)},R.prototype.md5_gg=function(e,a,n,c,u,C,E){return this.md5_cmn(a&c|n&~c,e,a,u,C,E)},R.prototype.md5_hh=function(e,a,n,c,u,C,E){return this.md5_cmn(a^n^c,e,a,u,C,E)},R.prototype.md5_ii=function(e,a,n,c,u,C,E){return this.md5_cmn(n^(a|~c),e,a,u,C,E)},R.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,c,u,C,E,b=1732584193,A=-271733879,v=-1732584194,M=271733878;for(n=0;n>5]>>>a%32&255);return n},R.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(c=this.binl_md5(c,e.length*8)),n=0;n<16;n+=1)u[n]=c[n]^909522486,C[n]=c[n]^1549556828;return E=this.binl_md5(u.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(C.concat(E),512+128))},R.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",c,u;for(u=0;u>>4&15)+a.charAt(c&15);return n},R.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},R.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},R.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},R.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},R.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},R.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},m.exports&&(f=m.exports=r),f.Chance=r,typeof importScripts<"u"&&(chance=new r,self.Chance=r),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=r,window.chance=new r)})()})(ne,ne.exports);var ye=ne.exports;const Se=Ae(ye);function ue(m,f,x,D){var I=new Se(ie);x==null&&console.log();let N=x.toUpperCase(),g=m.toUpperCase(),d=f.toUpperCase();if(D!=null&&0":s=="["?"]":s=="{"?"}":s=="("?")":s}}function f(I,N,g){for(var d=[],p=`(){}[]^-|!*+.><='",;:%@?/\\#~`+g,S=` -\r `,r=$(I,p+S),s=0,i=0,t=0,o=0;o0&&(h=d[d.length-1]),l==` -`?(i++,t=0):o>0&&r[o-1]!==` -`?t=t+r[o-1].length:t=0,s+=l.length,h!=null&&h.type=="comment"&&(h.value.lastIndexOf("*/")!=h.value.length-2||h.value=="/*/")){l=="*"||l=="/"?h.value=h.value+l:h.value="/* ... ",h.end=s,h!=null&&h.type=="comment"&&h.value.lastIndexOf("*/")==h.value.length-2&&h.value!="/*/"&&(h.value=I.substring(h.begin,h.end));continue}if(h!=null&&(h.type=="line-comment"||h.type=="dbtools-command")&&l!=` -`){h.value=h.value+l;continue}if(h!=null&&(h.type=="line-comment"||h.type=="dbtools-command")&&l==` -`&&(h.end=h.begin+h.value.length),h!=null&&h.type=="quoted-string"&&!(h.isStandardLiteral()||h.isAltLiteral())){h.value=h.value+l,h.end=h.begin+h.value.length;continue}if(!(h!=null&&h.type=="dquoted-string"&&l!='"'&&!(h.value.endsWith('"')&&h.value.length>1))){if(h!=null&&h.type=="dquoted-string"&&l=='"'){h.end=s,h.value=I.substring(h.begin,h.end);continue}if(!(h!=null&&h.type=="bquoted-string"&&l!="`"&&!(h.value.endsWith("`")&&h.value.length>1))){if(h!=null&&h.type=="bquoted-string"&&l=="`"){h.end=s,h.value=I.substring(h.begin,h.end);continue}if(l=="*"&&h!=null&&h.value=="/"){h.value=h.value+l,h.end=h.begin+h.value.length,h.type="comment";continue}if(l=="-"&&h!=null&&h.value=="-"){h.value=h.value+l,h.type="line-comment";continue}if((l.toUpperCase()=="REM"||l.toUpperCase()=="REMA"||l.toUpperCase()=="REMAR"||l.toUpperCase()=="REMARK"||l.toUpperCase()=="PRO"||l.toUpperCase()=="PROM"||l.toUpperCase()=="PROMP"||l.toUpperCase()=="PROMPT")&&(h==null||h.value==` -`||h.value=="\r")){d.push(new m(l,s-l.length,-9,"line-comment",i,t));continue}if(l.toUpperCase()=="SODA"&&(h==null||h.value==` -`||h.value=="\r")){d.push(new m(l,s-l.length,-9,"dbtools-command",i,t));continue}if(h!=null&&h.type=="identifier"&&h.end==-11&&h.value.indexOf("@")==0&&!(l==` -`||l=="\r")){h.value=h.value+l;continue}if(h!=null&&h.type=="identifier"&&h.end==-11&&h.value.indexOf("@")==0&&(l==` -`||l=="\r")){h.end=s-1,d.push(new m(l,s-1,s,"ws",i,t));continue}if(N&&l=="'"){h!=null&&(h.value.toUpperCase()=="Q"||h.value.toUpperCase()=="N"||h.value.toUpperCase()=="U"||h.value.toUpperCase()=="NQ")?(h.value+=l,h.type="quoted-string"):d.push(new m(l,s-1,-10,"quoted-string",i,t));continue}if(N&&l=='"'){d.push(new m(l,s-1,-11,"dquoted-string",i,t));continue}if(l=="`"&&0<=p.indexOf("`")){d.push(new m(l,s-1,-11,"bquoted-string",i,t));continue}if(l.length==1&&0<=p.indexOf(l)){d.push(new m(l,s-1,s,"operation",i,t));continue}if(l.length==1&&0<=S.indexOf(l)){d.push(new m(l,s-1,s,"ws",i,t));continue}if("0"<=l.charAt(0)&&l.charAt(0)<="9"){x(l,d,s-l.length,i)||(l.charAt(l.length-1)=="K"||l.charAt(l.length-1)=="k"||l.charAt(l.length-1)=="M"||l.charAt(l.length-1)=="m"||l.charAt(l.length-1)=="G"||l.charAt(l.length-1)=="g"||l.charAt(l.length-1)=="T"||l.charAt(l.length-1)=="t"||l.charAt(l.length-1)=="P"||l.charAt(l.length-1)=="p"||l.charAt(l.length-1)=="E"||l.charAt(l.length-1)=="e"?(d.push(new m(l.substring(0,l.length-1),s-l.length,s-1,"constant.numeric",i,t)),d.push(new m(l.substring(l.length-1),s-1,s,"constant.numeric",i,t))):d.push(new m(l,s-l.length,s,"constant.numeric",i,t)));continue}var y="identifier";o+10){var h=d[d.length-1];h.end=I.length}return d}function x(I,N,g,d){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var p=$(I,"efd"),S=0;S")==0||i.indexOf("<")==0)&&(i=i.substring(1).trim());const l=i.toLowerCase();if(l.indexOf("view ")==0){var h=i.split(" ");return h[1]}i=g(i," d");var y=i.indexOf("/");0="0"&&B<="9"&&(i="x"+i),Te(se(i))},this.parseType=function(i){if(this.children!=null&&0!0)),w}return y}0");return t==0},this.getExplicitPkNode=function(){for(var i=0;ii.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(m.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),m.optionEQvalue("prefixPKwithTname","yes")&&(t=F(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let i=this.getGenIdColName();if(i==null){let t=this.getExplicitPkNode();return t==null?null:t.parseName()}return i},this.singleDDL=function(){if(this.children.length==0&&00&&"0"<=x[0]&&x[0]<="9")N=!0;else for(let p in x){const g=x[p];if(I.indexOf(g)<0&&(g<"0"||"9""u"&&(e[n]=a[n]);return e}function r(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var o=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?o=btoa:typeof Buffer=="function"&&(o=function(a){return new Buffer(a).toString("base64")})})(),i.prototype.bool=function(e){return e=s(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100c,"Chance: Max specified is out of range with fixed. Max should be, at most, "+c),e=s(e,{min:u,max:c}),a=this.integer({min:e.min*n,max:e.max*n});var C=(a/n).toFixed(e.fixed);return parseFloat(C)},i.prototype.integer=function(e){return e=s(e,{min:N,max:k}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},i.prototype.natural=function(e){if(e=s(e,{min:0,max:k}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),c=e.exclude.sort();for(var u in c){if(ne.max,"Chance: Min cannot be greater than Max.");var a=L.primes[L.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&L.primes.push(n);var c=L.primes.filter(function(u){return u>=e.min&&u<=e.max});return this.pick(c)},i.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},i.prototype.hex=function(e){e=s(e,{min:0,max:k,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},i.prototype.letter=function(e){e=s(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},i.prototype.string=function(e){e=s(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function m(e){this.c=e}m.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function v(e){this.c=e}v.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:p})},a:function(e){return e.character({pool:x})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function B(e){for(var a=[],n="identity",c=0;c"u")throw new T("Sorry, the buffer() function is not supported on your platform");e=s(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},i.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},i.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},i.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var c=function(S,_){return S.indexOf(_)!==-1};n&&(c=n.comparator||c);for(var u=[],C=0,P,f=a*50,y=b.call(arguments,2);u.lengthf)throw new RangeError("Chance: num is likely too large for sample set")}return u},i.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,c=[],u=b.call(arguments,2);for(n=Math.max(0,n),null;n--;null)c.push(e.apply(this,u));return c},i.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},i.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},i.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},i.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),c=n.length;return this.n(function(){var u=this.natural({max:--c}),C=n[u];return n[u]=n[c],C},Math.min(c,a))},i.prototype.shuffle=function(e){for(var a=[],n=0,c=Number(e.length),u=r(c),C=c-1,P,f=0;f0&&(c+=u)}if(c===0)throw new RangeError("Chance: No valid entries in array weights");var P=this.random()*c,f=0,y=-1,A;for(C=0;C0){if(P<=f){A=C;break}y=C}C===a.length-1&&(A=y)}var S=e[A];return n=typeof n>"u"?!1:n,n&&(e.splice(A,1),a.splice(A,1)),S},i.prototype.paragraph=function(e){e=s(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),c=e.linebreak===!0?` +`:" ";return n.join(c)},i.prototype.sentence=function(e){e=s(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,c,u=this.n(this.word,a);return c=u.join(" "),c=this.capitalize(c),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(c+=n),c},i.prototype.syllable=function(e){e=s(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",c="aeiou",u=n+c,C="",P,f=0;fe.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var P=e.minAge!==void 0?e.minAge:0,f=e.maxAge!==void 0?e.maxAge:100,y=new Date(c-f-1,n.getMonth(),n.getDate()),A=new Date(c-P,n.getMonth(),n.getDate());y.setDate(y.getDate()+1),A.setDate(A.getDate()+1),A.setMilliseconds(A.getMilliseconds()-1),e=s(e,{min:y,max:A})}else e=s(e,{year:c-a});return this.date(e)},i.prototype.cpf=function(e){e=s(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var c=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;c=11-c%11,c>=10&&(c=0);var u=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+c;return e.formatted?u:u.replace(/\D/g,"")},i.prototype.cnpj=function(e){e=s(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var c=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;c=11-c%11,c<2&&(c=0);var u=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+c;return e.formatted?u:u.replace(/\D/g,"")},i.prototype.first=function(e){return e=s(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},i.prototype.profession=function(e){return e=s(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},i.prototype.company=function(){return this.pick(this.get("company"))},i.prototype.gender=function(e){return e=s(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},i.prototype.last=function(e){if(e=s(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(c){a=a.concat(n[c])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},i.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},i.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},i.prototype.tld=function(){return this.pick(this.tlds())},i.prototype.twitter=function(){return"@"+this.word()},i.prototype.url=function(e){e=s(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},i.prototype.port=function(){return this.integer({min:0,max:65535})},i.prototype.locale=function(e){return e=s(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},i.prototype.locales=function(e){return e=s(e),e.region?this.get("locale_regions"):this.get("locale_languages")},i.prototype.loremPicsum=function(e){e=s(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},i.prototype.address=function(e){return e=s(e),this.natural({min:5,max:2e3})+" "+this.street(e)},i.prototype.altitude=function(e){return e=s(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},i.prototype.areacode=function(e){e=s(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},i.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},i.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},i.prototype.countries=function(){return this.get("countries")},i.prototype.country=function(e){e=s(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},i.prototype.depth=function(e){return e=s(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},i.prototype.geohash=function(e){return e=s(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},i.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},i.prototype.latitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=s(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:c});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},i.prototype.longitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=s(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:c});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},i.prototype.phone=function(e){var a=this,n,c=function(_){var O=[];return _.sections.forEach(function(z){O.push(a.string({pool:"0123456789",length:z}))}),_.area+O.join(" ")};e=s(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var u;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),u=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),u=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),u=e.formatted?c(n):c(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),u=e.formatted?c(n):c(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n);break;case"us":var C=this.areacode(e).toString(),P=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),f=this.natural({min:1e3,max:9999}).toString();u=e.formatted?C+" "+P+"-"+f:C+P+f;break;case"br":var y=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),A;e.mobile?A="9"+a.string({pool:"0123456789",length:4}):A=this.natural({min:2e3,max:5999}).toString();var S=a.string({pool:"0123456789",length:4});u=e.formatted?"("+y+") "+A+"-"+S:y+A+S;break}return u},i.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},i.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",c=e+a+n,u=this.natural({max:9}),C=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),P=u+C;return c+" "+P},i.prototype.counties=function(e){return e=s(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},i.prototype.county=function(e){return this.pick(this.counties(e)).name},i.prototype.provinces=function(e){return e=s(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},i.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},i.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},i.prototype.states=function(e){e=s(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),c=this.get("territories"),u=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(c)),e.armed_forces&&(a=a.concat(u));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},i.prototype.street=function(e){e=s(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},i.prototype.street_suffix=function(e){return e=s(e,{country:"us"}),this.pick(this.street_suffixes(e))},i.prototype.street_suffixes=function(e){return e=s(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},i.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},i.prototype.ampm=function(){return this.bool()?"am":"pm"},i.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=s(e,{american:!0,string:!1});var c=typeof e.min<"u"?e.min.getTime():1,u=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:c,max:u}))}else{var C=this.month({raw:!0}),P=C.days;e&&e.month&&(P=this.get("months")[(e.month%12+12)%12].days),e=s(e,{year:parseInt(this.year(),10),month:C.numeric-1,day:this.natural({min:1,max:P}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},i.prototype.hammertime=function(e){return this.date(e).getTime()},i.prototype.hour=function(e){return e=s(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},i.prototype.millisecond=function(){return this.natural({max:999})},i.prototype.minute=i.prototype.second=function(e){return e=s(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},i.prototype.month=function(e){e=s(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},i.prototype.months=function(){return this.get("months")},i.prototype.second=function(){return this.natural({max:59})},i.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},i.prototype.weekday=function(e){e=s(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},i.prototype.year=function(e){return e=s(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},i.prototype.cc=function(e){e=s(e);var a,n,c;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),c=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,c,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},i.prototype.cc_types=function(){return this.get("cc_types")},i.prototype.cc_type=function(e){e=s(e);var a=this.cc_types(),n=null;if(e.name){for(var c=0;c3&&(_?O=O.substr(0,3):O=O[0]+O.substr(2,2)),O.length<3&&(z=O,O=S.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+O),z},y=function(S,_,O){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return S.getFullYear().toString().substr(2)+z[S.getMonth()]+O.pad(S.getDate()+(_.toLowerCase()==="female"?40:0),2)},A=function(S){for(var _="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",O="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(O[_.indexOf(S[U])]):K+=j.indexOf(O[_.indexOf(S[U])]);return z[K%26]};return P=P.concat(f(c,!0),f(n),y(u,a,this),C.toUpperCase().split("")).join(""),P+=A(P.toUpperCase()),P.toUpperCase()},i.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;u--)c[u-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?c.reduce(function(C,P){return C+P}):c}else throw new RangeError("Chance: A type of die roll must be included")},i.prototype.guid=function(e){e=s(e,{version:5});var a="abcdef1234567890",n="ab89",c=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return c},i.prototype.hash=function(e){e=s(e,{length:40,casing:"lower"});var a=e.casing==="upper"?g.toUpperCase():g;return this.string({pool:a,length:e.length})},i.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},i.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,c,u=0,C=a.length;C>u;++u)c=+a[u],u%2===0&&(c*=2,c>9&&(c-=9)),n+=c;return n*9%10},i.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=s(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},i.prototype.file=function(e){var a=e||{},n="fileExtension",c=Object.keys(this.get("fileExtension")),u,C;if(u=this.word({length:a.length}),a.extension)return C=a.extension,u+"."+C;if(a.extensions){if(Array.isArray(a.extensions))return C=this.pickone(a.extensions),u+"."+C;if(a.extensions.constructor===Object){var P=a.extensions,f=Object.keys(P);return C=this.pickone(P[this.pickone(f)]),u+"."+C}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var y=a.fileType;if(c.indexOf(y)!==-1)return C=this.pickone(this.get(n)[y]),u+"."+C;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return C=this.pickone(this.get(n)[this.pickone(c)]),u+"."+C},i.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var c={fileData:this.buffer({length:a.fileSize}),fileName:n};return c};var L={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},w=Object.prototype.hasOwnProperty,E=Object.keys||function(e){var a=[];for(var n in e)w.call(e,n)&&a.push(n);return a};function D(e,a){for(var n=E(e),c,u=0,C=n.length;u0)return this.normal_pool(e);var a,n,c,u,C=e.mean,P=e.dev;do n=this.random()*2-1,c=this.random()*2-1,a=n*n+c*c;while(a>=1);return u=n*Math.sqrt(-2*Math.log(a)/a),P*u+C},i.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},i.prototype.radio=function(e){e=s(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},i.prototype.set=function(e,a){typeof e=="string"?L[e]=a:L=R(e,L)},i.prototype.tv=function(e){return this.radio(e)},i.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},i.prototype.emotion=function(){return this.pick(this.get("emotions"))},i.prototype.mersenne_twister=function(e){return new H(e)},i.prototype.blueimp_md5=function(){return new G};var H=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};H.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},H.prototype.init_by_array=function(e,a){var n=1,c=0,u,C;for(this.init_genrand(19650218),u=this.N>a?this.N:a;u;u--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1664525<<16)+(C&65535)*1664525)+e[c]+c,this.mt[n]>>>=0,n++,c++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),c>=a&&(c=0);for(u=this.N-1;u;u--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1566083941<<16)+(C&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},H.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},H.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},H.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},H.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},H.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},H.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var G=function(){};G.prototype.VERSION="1.0.1",G.prototype.safe_add=function(a,n){var c=(a&65535)+(n&65535),u=(a>>16)+(n>>16)+(c>>16);return u<<16|c&65535},G.prototype.bit_roll=function(e,a){return e<>>32-a},G.prototype.md5_cmn=function(e,a,n,c,u,C){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(c,C)),u),n)},G.prototype.md5_ff=function(e,a,n,c,u,C,P){return this.md5_cmn(a&n|~a&c,e,a,u,C,P)},G.prototype.md5_gg=function(e,a,n,c,u,C,P){return this.md5_cmn(a&c|n&~c,e,a,u,C,P)},G.prototype.md5_hh=function(e,a,n,c,u,C,P){return this.md5_cmn(a^n^c,e,a,u,C,P)},G.prototype.md5_ii=function(e,a,n,c,u,C,P){return this.md5_cmn(n^(a|~c),e,a,u,C,P)},G.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,c,u,C,P,f=1732584193,y=-271733879,A=-1732584194,S=271733878;for(n=0;n>5]>>>a%32&255);return n},G.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(c=this.binl_md5(c,e.length*8)),n=0;n<16;n+=1)u[n]=c[n]^909522486,C[n]=c[n]^1549556828;return P=this.binl_md5(u.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(C.concat(P),512+128))},G.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",c,u;for(u=0;u>>4&15)+a.charAt(c&15);return n},G.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},G.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},G.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},G.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},G.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},G.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},d.exports&&(h=d.exports=i),h.Chance=i,typeof importScripts<"u"&&(chance=new i,self.Chance=i),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=i,window.chance=new i)})()})(ne,ne.exports);var ye=ne.exports;const Se=Ae(ye);function ue(d,h,k,N){var I=new Se(ie);k==null&&console.log();let x=k.toUpperCase(),p=d.toUpperCase(),g=h.toUpperCase();if(N!=null&&0":s=="["?"]":s=="{"?"}":s=="("?")":s}}function h(I,x,p){for(var g=[],T=`(){}[]^-|!*+.><='",;:%@?/\\#~`+p,b=` +\r `,i=$(I,T+b),s=0,r=0,t=0,o=0;o0&&(m=g[g.length-1]),l==` +`?(r++,t=0):o>0&&i[o-1]!==` +`?t=t+i[o-1].length:t=0,s+=l.length,m!=null&&m.type=="comment"&&(m.value.lastIndexOf("*/")!=m.value.length-2||m.value=="/*/")){l=="*"||l=="/"?m.value=m.value+l:m.value="/* ... ",m.end=s,m!=null&&m.type=="comment"&&m.value.lastIndexOf("*/")==m.value.length-2&&m.value!="/*/"&&(m.value=I.substring(m.begin,m.end));continue}if(m!=null&&(m.type=="line-comment"||m.type=="dbtools-command")&&l!=` +`){m.value=m.value+l;continue}if(m!=null&&(m.type=="line-comment"||m.type=="dbtools-command")&&l==` +`&&(m.end=m.begin+m.value.length),m!=null&&m.type=="quoted-string"&&!(m.isStandardLiteral()||m.isAltLiteral())){m.value=m.value+l,m.end=m.begin+m.value.length;continue}if(!(m!=null&&m.type=="dquoted-string"&&l!='"'&&!(m.value.endsWith('"')&&m.value.length>1))){if(m!=null&&m.type=="dquoted-string"&&l=='"'){m.end=s,m.value=I.substring(m.begin,m.end);continue}if(!(m!=null&&m.type=="bquoted-string"&&l!="`"&&!(m.value.endsWith("`")&&m.value.length>1))){if(m!=null&&m.type=="bquoted-string"&&l=="`"){m.end=s,m.value=I.substring(m.begin,m.end);continue}if(l=="*"&&m!=null&&m.value=="/"){m.value=m.value+l,m.end=m.begin+m.value.length,m.type="comment";continue}if(l=="-"&&m!=null&&m.value=="-"){m.value=m.value+l,m.type="line-comment";continue}if((l.toUpperCase()=="REM"||l.toUpperCase()=="REMA"||l.toUpperCase()=="REMAR"||l.toUpperCase()=="REMARK"||l.toUpperCase()=="PRO"||l.toUpperCase()=="PROM"||l.toUpperCase()=="PROMP"||l.toUpperCase()=="PROMPT")&&(m==null||m.value==` +`||m.value=="\r")){g.push(new d(l,s-l.length,-9,"line-comment",r,t));continue}if(l.toUpperCase()=="SODA"&&(m==null||m.value==` +`||m.value=="\r")){g.push(new d(l,s-l.length,-9,"dbtools-command",r,t));continue}if(m!=null&&m.type=="identifier"&&m.end==-11&&m.value.indexOf("@")==0&&!(l==` +`||l=="\r")){m.value=m.value+l;continue}if(m!=null&&m.type=="identifier"&&m.end==-11&&m.value.indexOf("@")==0&&(l==` +`||l=="\r")){m.end=s-1,g.push(new d(l,s-1,s,"ws",r,t));continue}if(x&&l=="'"){m!=null&&(m.value.toUpperCase()=="Q"||m.value.toUpperCase()=="N"||m.value.toUpperCase()=="U"||m.value.toUpperCase()=="NQ")?(m.value+=l,m.type="quoted-string"):g.push(new d(l,s-1,-10,"quoted-string",r,t));continue}if(x&&l=='"'){g.push(new d(l,s-1,-11,"dquoted-string",r,t));continue}if(l=="`"&&0<=T.indexOf("`")){g.push(new d(l,s-1,-11,"bquoted-string",r,t));continue}if(l.length==1&&0<=T.indexOf(l)){g.push(new d(l,s-1,s,"operation",r,t));continue}if(l.length==1&&0<=b.indexOf(l)){g.push(new d(l,s-1,s,"ws",r,t));continue}if("0"<=l.charAt(0)&&l.charAt(0)<="9"){k(l,g,s-l.length,r)||(l.charAt(l.length-1)=="K"||l.charAt(l.length-1)=="k"||l.charAt(l.length-1)=="M"||l.charAt(l.length-1)=="m"||l.charAt(l.length-1)=="G"||l.charAt(l.length-1)=="g"||l.charAt(l.length-1)=="T"||l.charAt(l.length-1)=="t"||l.charAt(l.length-1)=="P"||l.charAt(l.length-1)=="p"||l.charAt(l.length-1)=="E"||l.charAt(l.length-1)=="e"?(g.push(new d(l.substring(0,l.length-1),s-l.length,s-1,"constant.numeric",r,t)),g.push(new d(l.substring(l.length-1),s-1,s,"constant.numeric",r,t))):g.push(new d(l,s-l.length,s,"constant.numeric",r,t)));continue}var v="identifier";o+10){var m=g[g.length-1];m.end=I.length}return g}function k(I,x,p,g){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var T=$(I,"efd"),b=0;b")==0||r.indexOf("<")==0)&&(r=r.substring(1).trim());const l=r.toLowerCase();if(l.indexOf("view ")==0){var m=r.split(" ");return m[1]}r=p(r," d");var v=r.indexOf("/");0="0"&&B<="9"&&(r="x"+r),Te(se(r))},this.parseType=function(r){if(this.children!=null&&0!0)),D}return v}0");return t==0},this.getExplicitPkNode=function(){for(var r=0;rr.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(d.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),d.optionEQvalue("prefixPKwithTname","yes")&&(t=W(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let r=this.getGenIdColName();if(r==null){let t=this.getExplicitPkNode();return t==null?null:t.parseName()}return r},this.singleDDL=function(){if(this.children.length==0&&0!0):C==null&&(C=m.find(a),C.isMany2One()&!a.endsWith("_id")&&(n=a,a=F(a),E="_id")),h=f+" ".repeat(this.maxChildNameLen()-a.length),o+=f+a+E+h+c+` -`,o+=f+f+" ".repeat(this.maxChildNameLen())+"constraint "+l+"_"+a+`_fk -`;let b="";0<=i.indexOf("/CASCADE")&&(b=" on delete cascade");let A="";for(let v in this.children){let M=this.children[v];if(a==M.parseName()){let O=M.trimmedContent().toUpperCase();(0<=O.indexOf("/NN")||0<=O.indexOf("/NOTNULL"))&&(A=" NOT NULL".toLowerCase()),0<=O.indexOf("/CASCADE")&&(b=" on delete cascade");break}}o+=f+f+" ".repeat(this.maxChildNameLen())+"references "+m.objPrefix()+n+b+A+`, -`}if(m.optionEQvalue("rowkey",!0)||0!0):C==null&&(C=d.find(a),C.isMany2One()&!a.endsWith("_id")&&(n=a,a=W(a),P="_id")),m=h+" ".repeat(this.maxChildNameLen()-a.length),o+=h+a+P+m+c+` +`,o+=h+h+" ".repeat(this.maxChildNameLen())+"constraint "+l+"_"+a+`_fk +`;let f="";0<=r.indexOf("/CASCADE")&&(f=" on delete cascade");let y="";for(let A in this.children){let S=this.children[A];if(a==S.parseName()){let _=S.trimmedContent().toUpperCase();(0<=_.indexOf("/NN")||0<=_.indexOf("/NOTNULL"))&&(y=" NOT NULL".toLowerCase()),0<=_.indexOf("/CASCADE")&&(f=" on delete cascade");break}}o+=h+h+" ".repeat(this.maxChildNameLen())+"references "+d.objPrefix()+n+f+y+`, +`}if(d.optionEQvalue("rowkey",!0)||0TRUE, p_object=>'"+h+`'); +`,l.toLowerCase()},this.restEnable=function(){if(this.parseType()!="table"||this.trimmedContent().toUpperCase().indexOf("/REST")<0)return"";let o=this.parseName();const l=o.indexOf('"')==0;let m=d.objPrefix()+o;return l?m=d.objPrefix()+o.substring(1,o.length-1):m=(d.objPrefix()+o).toUpperCase(),`begin +`+h+"ords.enable_object(p_enabled=>TRUE, p_object=>'"+m+`'); end; / -`},this.generateTrigger=function(){if(this.parseType()!="table")return"";let i="";m.optionEQvalue("editionable","yes")&&(i=" editionable");let t=m.objPrefix()+this.parseName();var o="create or replace"+i+" trigger "+t.toLowerCase()+`_BIU +`},this.generateTrigger=function(){if(this.parseType()!="table")return"";let r="";d.optionEQvalue("editionable","yes")&&(r=" editionable");let t=d.objPrefix()+this.parseName();var o="create or replace"+r+" trigger "+t.toLowerCase()+`_BIU `.toLowerCase();o+=` before insert or update `,o+=" on "+t.toLowerCase()+` `,o+=` for each row -`;let l=this.trimmedContent().toUpperCase();(m.optionEQvalue("Rowkey","yes")||0!0)),l+=`, -`,l+=f+f+"P_"+h+" "+o+" "+T+t}for(let B=0;B!0),(i=="insert"||i=="update")&&(o+=`, -`);let k=f+f+f+"P_"+T+" := c1."+T+`; -`;i=="insert"&&(k=f+f+f+T),i=="update"&&(k=f+f+f+T+" = P_"+T+` -`),o+=k}for(var h=0;h!0)),l+=`, +`,l+=h+h+"P_"+m+" "+o+" "+M+t}for(let B=0;B!0),(r=="insert"||r=="update")&&(o+=`, +`);let E=h+h+h+"P_"+M+" := c1."+M+`; +`;r=="insert"&&(E=h+h+h+M),r=="update"&&(E=h+h+h+M+" = P_"+M+` +`),o+=E}for(var m=0;mo.children.length>0&&o.parseName()==t&&!o.isArray())},this.generateSelectJsonBottomUp=function(i){throw new Error("generateSelectJsonBottomUp() not implemented yet")},this.one2many2oneUnsupoported="one to many to one is not supported",this.generateSelectJsonTopDown=function(i){var t=this.parseName();let o="";this.getExplicitPkNode==null&&(o+=i+"'"+this.getGenIdColName()+"' : "+t+"."+this.getGenIdColName()+`, -`);for(var l=0;lo.children.length>0&&o.parseName()==t&&!o.isArray())},this.generateSelectJsonBottomUp=function(r){throw new Error("generateSelectJsonBottomUp() not implemented yet")},this.one2many2oneUnsupoported="one to many to one is not supported",this.generateSelectJsonTopDown=function(r){var t=this.parseName();let o="";this.getExplicitPkNode==null&&(o+=r+"'"+this.getGenIdColName()+"' : "+t+"."+this.getGenIdColName()+`, +`);for(var l=0;l"),0"),0!0)}),0!0)}),0--"),S=S.replace(/\/* Non-default options:/g,""),g+=S,g+=` -`;for(let r=0;r--"),b=b.replace(/\/* Non-default options:/g,""),p+=b,p+=` +`;for(let i=0;iteamInfo /insert 1 - teamId num /pk - name vc + >teamInfo /insert 1 + teamId num /pk + name vc race /insert 4 driverRaceMapId num /pk - race_raceInfo /insert 4 - >raceInfo /insert 3 - raceId num /pk - name vc + >raceInfo /insert 3 + raceId num /pk + name vc finalPosition num #settings = { genpk: false, drop: true } @@ -69,19 +67,23 @@ driver /insert 2 "race": [ { "driverRaceMapId": 3, - "finalPosition": 19 + "finalPosition": 19, + "driverId": 101 }, { "driverRaceMapId": 11, - "finalPosition": 1 + "finalPosition": 1, + "driverId": 101 }, { "driverRaceMapId": 4, - "finalPosition": 20 + "finalPosition": 20, + "driverId": 102 }, { "driverRaceMapId": 12, - "finalPosition": 2 + "finalPosition": 2, + "driverId": 102 } ], "driver": [ @@ -92,14 +94,14 @@ driver /insert 2 }, { "driverId": 102, - "name": "", - "points": 258 + "name": "Luigi Pinole", + "points": 123 } ] } --- Generated by json2qsql.js development 1/19/2024, 1:32:29 PM +-- Generated by json2qsql.js development 1/24/2024, 4:11:28 PM #document = [ @@ -132,8 +134,8 @@ driver /insert 2 }, { "driverId": 102, - "name": "", - "points": 258, + "name": "Luigi Pinole", + "points": 123, "teamInfo": { "teamId": 301, "name": "Red Bull" diff --git a/test/experimental/car_racing/2.sql b/test/JSON/car_racing/2.sql similarity index 70% rename from test/experimental/car_racing/2.sql rename to test/JSON/car_racing/2.sql index 6e7da6a..4422ea7 100644 --- a/test/experimental/car_racing/2.sql +++ b/test/JSON/car_racing/2.sql @@ -1,8 +1,6 @@ drop table driver cascade constraints; -drop table driver_teaminfo cascade constraints; drop table teaminfo cascade constraints; drop table race cascade constraints; -drop table race_raceinfo cascade constraints; drop table raceinfo cascade constraints; -- create tables @@ -21,31 +19,25 @@ create table teamInfo ( create table driver ( - driverId number generated by default on null as identity - constraint driver_driverid_pk primary key, - name varchar2(255 char), - points number -); - - -create table driver_teamInfo ( + driverId number generated by default on null as identity + constraint driver_driverid_pk primary key, teamInfo_id number - constraint driver_teamInfo_teamInfo_id_fk + constraint driver_teamInfo_id_fk references teamInfo, - driver_id number - constraint driver_teamInfo_driver_id_fk - references driver + name varchar2(255 char), + points number ); -- table index -create index driver_teamInfo_i1 on driver_teamInfo (teamInfo_id); - -create index driver_teamInfo_i2 on driver_teamInfo (driver_id); +create index driver_i1 on driver (teamInfo_id); create table race ( driverRaceMapId number generated by default on null as identity constraint race_driverracemapid_pk primary key, + raceInfo_id number + constraint race_raceInfo_id_fk + references raceInfo, driver_id number constraint race_driver_id_fk references driver, @@ -53,22 +45,9 @@ create table race ( ); -- table index -create index race_i1 on race (driver_id); +create index race_i1 on race (raceInfo_id); - -create table race_raceInfo ( - raceInfo_id number - constraint race_raceInfo_raceInfo_id_fk - references raceInfo, - race_id number - constraint race_raceInfo_race_id_fk - references race -); - --- table index -create index race_raceInfo_i1 on race_raceInfo (raceInfo_id); - -create index race_raceInfo_i2 on race_raceInfo (race_id); +create index race_i2 on race (driver_id); @@ -110,130 +89,92 @@ commit; insert into driver ( driverId, + teamInfo_id, name, points ) values ( 101, + 301, 'Max Verstappen', 258 ); insert into driver ( driverId, + teamInfo_id, name, points ) values ( 102, - '', - 258 -); - -commit; - -insert into driver_teamInfo ( - teamInfo_id, - driver_id -) values ( - 301, - 101 -); -insert into driver_teamInfo ( - teamInfo_id, - driver_id -) values ( 301, - 102 + 'Luigi Pinole', + 123 ); commit; insert into race ( driverRaceMapId, + raceInfo_id, driver_id, finalPosition ) values ( 3, - 2, + 201, + 101, 19 ); insert into race ( driverRaceMapId, + raceInfo_id, driver_id, finalPosition ) values ( 11, - 1, + 202, + 101, 1 ); insert into race ( driverRaceMapId, + raceInfo_id, driver_id, finalPosition ) values ( 4, - 1, + 201, + 102, 20 ); insert into race ( driverRaceMapId, + raceInfo_id, driver_id, finalPosition ) values ( 12, - 2, - 2 -); - -commit; - -insert into race_raceInfo ( - raceInfo_id, - race_id -) values ( - 201, - 3 -); -insert into race_raceInfo ( - raceInfo_id, - race_id -) values ( - 202, - 11 -); -insert into race_raceInfo ( - raceInfo_id, - race_id -) values ( - 201, - 4 -); -insert into race_raceInfo ( - raceInfo_id, - race_id -) values ( 203, - 12 + 102, + 2 ); commit; --- Generated by Quick SQL development 1/17/2024, 4:48:01 PM +-- Generated by Quick SQL development 1/24/2024, 4:11:28 PM /* driver /insert 2 driverId num /pk name vc points num - driver_teamInfo /insert 2 - >teamInfo /insert 1 - teamId num /pk - name vc + >teamInfo /insert 1 + teamId num /pk + name vc race /insert 4 driverRaceMapId num /pk - race_raceInfo /insert 4 - >raceInfo /insert 3 - raceId num /pk - name vc + >raceInfo /insert 3 + raceId num /pk + name vc finalPosition num @@ -293,19 +234,23 @@ driver /insert 2 "race": [ { "driverRaceMapId": 3, - "finalPosition": 19 + "finalPosition": 19, + "driverId": 101 }, { "driverRaceMapId": 11, - "finalPosition": 1 + "finalPosition": 1, + "driverId": 101 }, { "driverRaceMapId": 4, - "finalPosition": 20 + "finalPosition": 20, + "driverId": 102 }, { "driverRaceMapId": 12, - "finalPosition": 2 + "finalPosition": 2, + "driverId": 102 } ], "driver": [ @@ -316,14 +261,14 @@ driver /insert 2 }, { "driverId": 102, - "name": "", - "points": 258 + "name": "Luigi Pinole", + "points": 123 } ] } --- Generated by json2qsql.js development 1/17/2024, 4:48:01 PM +-- Generated by json2qsql.js development 1/24/2024, 4:11:28 PM @@ -357,8 +302,8 @@ driver /insert 2 }, { "driverId": 102, - "name": "", - "points": 258, + "name": "Luigi Pinole", + "points": 123, "teamInfo": { "teamId": 301, "name": "Red Bull" diff --git a/test/experimental/donuts.json b/test/experimental/donuts.json new file mode 100644 index 0000000..e522622 --- /dev/null +++ b/test/experimental/donuts.json @@ -0,0 +1,70 @@ +[ + { + "id": "0001", + "type": "donut", + "name": "Cake", + "ppu": 0.55, + "batters": + { + "batter": + [ + { "id": "1001", "type": "Regular" }, + { "id": "1002", "type": "Chocolate" }, + { "id": "1003", "type": "Blueberry" }, + { "id": "1004", "type": "Devil's Food" } + ] + }, + "topping": + [ + { "id": "5001", "type": "None" }, + { "id": "5002", "type": "Glazed" }, + { "id": "5005", "type": "Sugar" }, + { "id": "5007", "type": "Powdered Sugar" }, + { "id": "5006", "type": "Chocolate with Sprinkles" }, + { "id": "5003", "type": "Chocolate" }, + { "id": "5004", "type": "Maple" } + ] + }, + { + "id": "0002", + "type": "donut", + "name": "Raised", + "ppu": 0.55, + "batters": + { + "batter": + [ + { "id": "1001", "type": "Regular" } + ] + }, + "topping": + [ + { "id": "5001", "type": "None" }, + { "id": "5002", "type": "Glazed" }, + { "id": "5005", "type": "Sugar" }, + { "id": "5003", "type": "Chocolate" }, + { "id": "5004", "type": "Maple" } + ] + }, + { + "id": "0003", + "type": "donut", + "name": "Old Fashioned", + "ppu": 0.55, + "batters": + { + "batter": + [ + { "id": "1001", "type": "Regular" }, + { "id": "1002", "type": "Chocolate" } + ] + }, + "topping": + [ + { "id": "5001", "type": "None" }, + { "id": "5002", "type": "Glazed" }, + { "id": "5003", "type": "Chocolate" }, + { "id": "5004", "type": "Maple" } + ] + } +] \ No newline at end of file diff --git a/test/experimental/donuts.qsql b/test/experimental/donuts.qsql new file mode 100644 index 0000000..1efc5d1 --- /dev/null +++ b/test/experimental/donuts.qsql @@ -0,0 +1,319 @@ +donuts /insert 3 + id vc32 /pk + type vc + name vc + ppu num + donuts_batter /insert 7 + >batter /insert 4 + id vc32 /pk + type vc + donuts_topping /insert 16 + >topping /insert 7 + id vc32 /pk + type vc + +#settings = { genpk: false, drop: true } + +#flattened = +{ + "donuts_batter": [ + { + "donut_id": "0001", + "batter_id": "1001" + }, + { + "donut_id": "0001", + "batter_id": "1002" + }, + { + "donut_id": "0001", + "batter_id": "1003" + }, + { + "donut_id": "0001", + "batter_id": "1004" + }, + { + "donut_id": "0002", + "batter_id": "1001" + }, + { + "donut_id": "0003", + "batter_id": "1001" + }, + { + "donut_id": "0003", + "batter_id": "1002" + } + ], + "batter": [ + { + "id": "1001", + "type": "Regular" + }, + { + "id": "1002", + "type": "Chocolate" + }, + { + "id": "1003", + "type": "Blueberry" + }, + { + "id": "1004", + "type": "Devil's Food" + } + ], + "batters": [], + "donuts_topping": [ + { + "donut_id": "0001", + "topping_id": "5001" + }, + { + "donut_id": "0001", + "topping_id": "5002" + }, + { + "donut_id": "0001", + "topping_id": "5005" + }, + { + "donut_id": "0001", + "topping_id": "5007" + }, + { + "donut_id": "0001", + "topping_id": "5006" + }, + { + "donut_id": "0001", + "topping_id": "5003" + }, + { + "donut_id": "0001", + "topping_id": "5004" + }, + { + "donut_id": "0002", + "topping_id": "5001" + }, + { + "donut_id": "0002", + "topping_id": "5002" + }, + { + "donut_id": "0002", + "topping_id": "5005" + }, + { + "donut_id": "0002", + "topping_id": "5003" + }, + { + "donut_id": "0002", + "topping_id": "5004" + }, + { + "donut_id": "0003", + "topping_id": "5001" + }, + { + "donut_id": "0003", + "topping_id": "5002" + }, + { + "donut_id": "0003", + "topping_id": "5003" + }, + { + "donut_id": "0003", + "topping_id": "5004" + } + ], + "topping": [ + { + "id": "5001", + "type": "None" + }, + { + "id": "5002", + "type": "Glazed" + }, + { + "id": "5005", + "type": "Sugar" + }, + { + "id": "5007", + "type": "Powdered Sugar" + }, + { + "id": "5006", + "type": "Chocolate with Sprinkles" + }, + { + "id": "5003", + "type": "Chocolate" + }, + { + "id": "5004", + "type": "Maple" + } + ], + "donuts": [ + { + "id": "0001", + "type": "donut", + "name": "Cake", + "ppu": 0.55 + }, + { + "id": "0002", + "type": "donut", + "name": "Raised", + "ppu": 0.55 + }, + { + "id": "0003", + "type": "donut", + "name": "Old Fashioned", + "ppu": 0.55 + } + ] +} + + +-- Generated by json2qsql.js development 1/24/2024, 4:38:58 PM + +#document = +[ + { + "id": "0001", + "type": "donut", + "name": "Cake", + "ppu": 0.55, + "batters": { + "batter": [ + { + "id": "1001", + "type": "Regular" + }, + { + "id": "1002", + "type": "Chocolate" + }, + { + "id": "1003", + "type": "Blueberry" + }, + { + "id": "1004", + "type": "Devil's Food" + } + ] + }, + "topping": [ + { + "id": "5001", + "type": "None" + }, + { + "id": "5002", + "type": "Glazed" + }, + { + "id": "5005", + "type": "Sugar" + }, + { + "id": "5007", + "type": "Powdered Sugar" + }, + { + "id": "5006", + "type": "Chocolate with Sprinkles" + }, + { + "id": "5003", + "type": "Chocolate" + }, + { + "id": "5004", + "type": "Maple" + } + ] + }, + { + "id": "0002", + "type": "donut", + "name": "Raised", + "ppu": 0.55, + "batters": { + "batter": [ + { + "id": "1001", + "type": "Regular" + } + ] + }, + "topping": [ + { + "id": "5001", + "type": "None" + }, + { + "id": "5002", + "type": "Glazed" + }, + { + "id": "5005", + "type": "Sugar" + }, + { + "id": "5003", + "type": "Chocolate" + }, + { + "id": "5004", + "type": "Maple" + } + ] + }, + { + "id": "0003", + "type": "donut", + "name": "Old Fashioned", + "ppu": 0.55, + "batters": { + "batter": [ + { + "id": "1001", + "type": "Regular" + }, + { + "id": "1002", + "type": "Chocolate" + } + ] + }, + "topping": [ + { + "id": "5001", + "type": "None" + }, + { + "id": "5002", + "type": "Glazed" + }, + { + "id": "5003", + "type": "Chocolate" + }, + { + "id": "5004", + "type": "Maple" + } + ] + } +] diff --git a/test/experimental/donuts.sql b/test/experimental/donuts.sql new file mode 100644 index 0000000..96f4cc7 --- /dev/null +++ b/test/experimental/donuts.sql @@ -0,0 +1,681 @@ +drop table donuts cascade constraints; +drop table donuts_batter cascade constraints; +drop table batter cascade constraints; +drop table donuts_topping cascade constraints; +drop table topping cascade constraints; +-- create tables + +create table topping ( + id varchar2(32 char) not null + constraint topping_id_pk primary key, + type varchar2(4000 char) +); + + +create table batter ( + id varchar2(32 char) not null + constraint batter_id_pk primary key, + type varchar2(4000 char) +); + + +create table donuts ( + id varchar2(32 char) not null + constraint donuts_id_pk primary key, + type varchar2(4000 char), + name varchar2(255 char), + ppu number +); + + +create table donuts_batter ( + batter_id varchar2(32 char) + constraint donuts_batter_batter_id_fk + references batter, + donut_id varchar2(32 char) + constraint donuts_batter_donut_id_fk + references donuts +); + +-- table index +create index donuts_batter_i1 on donuts_batter (batter_id); + +create index donuts_batter_i2 on donuts_batter (donut_id); + + +create table donuts_topping ( + topping_id varchar2(32 char) + constraint donuts_topping_topping_id_fk + references topping, + donut_id varchar2(32 char) + constraint donuts_topping_donut_id_fk + references donuts +); + +-- table index +create index donuts_topping_i1 on donuts_topping (topping_id); + +create index donuts_topping_i2 on donuts_topping (donut_id); + + + +-- load data + +insert into topping ( + id, + type +) values ( + '5001', + 'None' +); +insert into topping ( + id, + type +) values ( + '5002', + 'Glazed' +); +insert into topping ( + id, + type +) values ( + '5005', + 'Sugar' +); +insert into topping ( + id, + type +) values ( + '5007', + 'Powdered Sugar' +); +insert into topping ( + id, + type +) values ( + '5006', + 'Chocolate with Sprinkles' +); +insert into topping ( + id, + type +) values ( + '5003', + 'Chocolate' +); +insert into topping ( + id, + type +) values ( + '5004', + 'Maple' +); + +commit; + +insert into batter ( + id, + type +) values ( + '1001', + 'Regular' +); +insert into batter ( + id, + type +) values ( + '1002', + 'Chocolate' +); +insert into batter ( + id, + type +) values ( + '1003', + 'Blueberry' +); +insert into batter ( + id, + type +) values ( + '1004', + 'Devil''s Food' +); + +commit; + +insert into donuts ( + id, + type, + name, + ppu +) values ( + '0001', + 'donut', + 'Cake', + 0.55 +); +insert into donuts ( + id, + type, + name, + ppu +) values ( + '0002', + 'donut', + 'Raised', + 0.55 +); +insert into donuts ( + id, + type, + name, + ppu +) values ( + '0003', + 'donut', + 'Old Fashioned', + 0.55 +); + +commit; + +insert into donuts_batter ( + batter_id, + donut_id +) values ( + '1001', + '0001' +); +insert into donuts_batter ( + batter_id, + donut_id +) values ( + '1002', + '0001' +); +insert into donuts_batter ( + batter_id, + donut_id +) values ( + '1003', + '0001' +); +insert into donuts_batter ( + batter_id, + donut_id +) values ( + '1004', + '0001' +); +insert into donuts_batter ( + batter_id, + donut_id +) values ( + '1001', + '0002' +); +insert into donuts_batter ( + batter_id, + donut_id +) values ( + '1001', + '0003' +); +insert into donuts_batter ( + batter_id, + donut_id +) values ( + '1002', + '0003' +); + +commit; + +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5001', + '0001' +); +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5002', + '0001' +); +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5005', + '0001' +); +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5007', + '0001' +); +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5006', + '0001' +); +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5003', + '0001' +); +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5004', + '0001' +); +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5001', + '0002' +); +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5002', + '0002' +); +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5005', + '0002' +); +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5003', + '0002' +); +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5004', + '0002' +); +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5001', + '0003' +); +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5002', + '0003' +); +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5003', + '0003' +); +insert into donuts_topping ( + topping_id, + donut_id +) values ( + '5004', + '0003' +); + +commit; + + +-- Generated by Quick SQL development 1/24/2024, 4:38:58 PM + +/* +donuts /insert 3 + id vc32 /pk + type vc + name vc + ppu num + donuts_batter /insert 7 + >batter /insert 4 + id vc32 /pk + type vc + donuts_topping /insert 16 + >topping /insert 7 + id vc32 /pk + type vc + + + + + + +{ + "donuts_batter": [ + { + "donut_id": "0001", + "batter_id": "1001" + }, + { + "donut_id": "0001", + "batter_id": "1002" + }, + { + "donut_id": "0001", + "batter_id": "1003" + }, + { + "donut_id": "0001", + "batter_id": "1004" + }, + { + "donut_id": "0002", + "batter_id": "1001" + }, + { + "donut_id": "0003", + "batter_id": "1001" + }, + { + "donut_id": "0003", + "batter_id": "1002" + } + ], + "batter": [ + { + "id": "1001", + "type": "Regular" + }, + { + "id": "1002", + "type": "Chocolate" + }, + { + "id": "1003", + "type": "Blueberry" + }, + { + "id": "1004", + "type": "Devil's Food" + } + ], + "batters": [], + "donuts_topping": [ + { + "donut_id": "0001", + "topping_id": "5001" + }, + { + "donut_id": "0001", + "topping_id": "5002" + }, + { + "donut_id": "0001", + "topping_id": "5005" + }, + { + "donut_id": "0001", + "topping_id": "5007" + }, + { + "donut_id": "0001", + "topping_id": "5006" + }, + { + "donut_id": "0001", + "topping_id": "5003" + }, + { + "donut_id": "0001", + "topping_id": "5004" + }, + { + "donut_id": "0002", + "topping_id": "5001" + }, + { + "donut_id": "0002", + "topping_id": "5002" + }, + { + "donut_id": "0002", + "topping_id": "5005" + }, + { + "donut_id": "0002", + "topping_id": "5003" + }, + { + "donut_id": "0002", + "topping_id": "5004" + }, + { + "donut_id": "0003", + "topping_id": "5001" + }, + { + "donut_id": "0003", + "topping_id": "5002" + }, + { + "donut_id": "0003", + "topping_id": "5003" + }, + { + "donut_id": "0003", + "topping_id": "5004" + } + ], + "topping": [ + { + "id": "5001", + "type": "None" + }, + { + "id": "5002", + "type": "Glazed" + }, + { + "id": "5005", + "type": "Sugar" + }, + { + "id": "5007", + "type": "Powdered Sugar" + }, + { + "id": "5006", + "type": "Chocolate with Sprinkles" + }, + { + "id": "5003", + "type": "Chocolate" + }, + { + "id": "5004", + "type": "Maple" + } + ], + "donuts": [ + { + "id": "0001", + "type": "donut", + "name": "Cake", + "ppu": 0.55 + }, + { + "id": "0002", + "type": "donut", + "name": "Raised", + "ppu": 0.55 + }, + { + "id": "0003", + "type": "donut", + "name": "Old Fashioned", + "ppu": 0.55 + } + ] +} + + +-- Generated by json2qsql.js development 1/24/2024, 4:38:58 PM + + + +[ + { + "id": "0001", + "type": "donut", + "name": "Cake", + "ppu": 0.55, + "batters": { + "batter": [ + { + "id": "1001", + "type": "Regular" + }, + { + "id": "1002", + "type": "Chocolate" + }, + { + "id": "1003", + "type": "Blueberry" + }, + { + "id": "1004", + "type": "Devil's Food" + } + ] + }, + "topping": [ + { + "id": "5001", + "type": "None" + }, + { + "id": "5002", + "type": "Glazed" + }, + { + "id": "5005", + "type": "Sugar" + }, + { + "id": "5007", + "type": "Powdered Sugar" + }, + { + "id": "5006", + "type": "Chocolate with Sprinkles" + }, + { + "id": "5003", + "type": "Chocolate" + }, + { + "id": "5004", + "type": "Maple" + } + ] + }, + { + "id": "0002", + "type": "donut", + "name": "Raised", + "ppu": 0.55, + "batters": { + "batter": [ + { + "id": "1001", + "type": "Regular" + } + ] + }, + "topping": [ + { + "id": "5001", + "type": "None" + }, + { + "id": "5002", + "type": "Glazed" + }, + { + "id": "5005", + "type": "Sugar" + }, + { + "id": "5003", + "type": "Chocolate" + }, + { + "id": "5004", + "type": "Maple" + } + ] + }, + { + "id": "0003", + "type": "donut", + "name": "Old Fashioned", + "ppu": 0.55, + "batters": { + "batter": [ + { + "id": "1001", + "type": "Regular" + }, + { + "id": "1002", + "type": "Chocolate" + } + ] + }, + "topping": [ + { + "id": "5001", + "type": "None" + }, + { + "id": "5002", + "type": "Glazed" + }, + { + "id": "5003", + "type": "Chocolate" + }, + { + "id": "5004", + "type": "Maple" + } + ] + } +] + + + Non-default options: +# settings = {"genpk":false,"drop":true} + +*/ \ No newline at end of file diff --git a/test/regression_test.js b/test/regression_test.js index df0e64d..b886e2a 100755 --- a/test/regression_test.js +++ b/test/regression_test.js @@ -165,6 +165,7 @@ console.log("All tests are OK"); console.log("Time = "+(Date.now()-t1)); console.log("Compared with 364-412 ms as of 10/2/2023"); console.log(" 506 ms as of 11/8/2023"); +console.log(" 800 ms as of 1/24/2024"); import {quicksql} from '../dist/quick-sql.js'; diff --git a/test/single_test.js b/test/single_test.js index b2f9310..770aed6 100644 --- a/test/single_test.js +++ b/test/single_test.js @@ -6,7 +6,7 @@ try { let file = '//bugs/Bug35669377.quicksql'; //file = '//DV/car_racing/2.qsql'; //file = '//star/sales_product_customers.qsql'; - //file = '//experimental/car_racing/2.json'; + file = '//experimental/donuts.json'; let args = process.argv.slice(2); if( 0 < args.length ) diff --git a/test/tst_000.sql b/test/tst_000.sql new file mode 100644 index 0000000..e69de29 From 2223b9338658f250d05aa88d0d9114c6701facb9 Mon Sep 17 00:00:00 2001 From: Vadim Tropashko Date: Fri, 26 Jan 2024 17:24:30 -0800 Subject: [PATCH 13/22] table signature for food_product --- dist/quick-sql.js | 2335 +++++++++++----------- dist/quick-sql.umd.cjs | 316 +-- src/json2qsql.js | 137 +- src/tree.js | 2 +- test/experimental/2.json | 25 + test/experimental/donuts.json | 70 - test/experimental/donuts.qsql | 319 --- test/experimental/donuts.sql | 681 ------- test/experimental/food_product.json | 518 +---- test/experimental/food_product_full.json | 2175 ++++++++++++++++++++ test/explain_plan.sql | 0 test/single_test.js | 4 +- 12 files changed, 3651 insertions(+), 2931 deletions(-) create mode 100644 test/experimental/2.json delete mode 100644 test/experimental/donuts.json delete mode 100644 test/experimental/donuts.qsql delete mode 100644 test/experimental/donuts.sql create mode 100644 test/experimental/food_product_full.json create mode 100644 test/explain_plan.sql diff --git a/dist/quick-sql.js b/dist/quick-sql.js index 1893559..4678d18 100644 --- a/dist/quick-sql.js +++ b/dist/quick-sql.js @@ -2,25 +2,25 @@ function W(d) { return d == null ? d : d.toUpperCase().endsWith("IES") ? d.substring(0, d.length - 3) + "y" : d.toUpperCase().endsWith("ES") || d.toUpperCase().endsWith("S") ? d.substring(0, d.length - 1) : d; } function fe(d, h) { - let k = '"'; + let x = '"'; if (d == null) return null; - let N = !1; + let w = !1; const I = "$#_ "; - if (!d.startsWith(k) && !N) { - const x = d; - if (x.length > 0 && "0" <= x[0] && x[0] <= "9") - N = !0; + if (!d.startsWith(x) && !w) { + const k = d; + if (k.length > 0 && "0" <= k[0] && k[0] <= "9") + w = !0; else - for (let p in x) { - const g = x[p]; - if (I.indexOf(g) < 0 && (g < "0" || "9" < g && g < "A" || "Z" < g && g < "a" || "z" < g)) { - N = !0; + for (let b in k) { + const p = k[b]; + if (I.indexOf(p) < 0 && (p < "0" || "9" < p && p < "A" || "Z" < p && p < "a" || "z" < p)) { + w = !0; break; } } } - return (d.startsWith("_") || d.startsWith("$") || d.startsWith("#")) && (N = !0), N || (k = ""), k + d + k; + return (d.startsWith("_") || d.startsWith("$") || d.startsWith("#")) && (w = !0), w || (x = ""), x + d + x; } function he(d) { if (d == null) @@ -30,11 +30,11 @@ function he(d) { let h = fe(d); return h.indexOf('"') == 0 || (h = h.replace(/ /g, "_")), h; } -function K(d, h, k) { - let N = !1; - k == null && (k = ""), d.indexOf('"') == 0 && (N = !0, d = d.substring(1, d.length - 1)), h.indexOf('"') == 0 && (N = !0, h = h.substring(1, h.length - 1)), k.indexOf('"') == 0 && (N = !0, k = k.substring(1, k.length - 1)); - let I = d + h + k; - return N ? I = '"' + I + '"' : I = I.toLowerCase(), I; +function K(d, h, x) { + let w = !1; + x == null && (x = ""), d.indexOf('"') == 0 && (w = !0, d = d.substring(1, d.length - 1)), h.indexOf('"') == 0 && (w = !0, h = h.substring(1, h.length - 1)), x.indexOf('"') == 0 && (w = !0, x = x.substring(1, x.length - 1)); + let I = d + h + x; + return w ? I = '"' + I + '"' : I = I.toLowerCase(), I; } var le = function() { var d = [ @@ -62,7 +62,7 @@ var le = function() { "\u300C\u30A2\u30CA\u30EA\u30B9\u30C8\u300D", "\u300C\u30B9\u30DA\u30B7\u30E3\u30EA\u30B9\u30C8\u300D", "\u300C\u30A8\u30D0\u30F3\u30B8\u30A7\u30EA\u30B9\u30C8\u300D" - ], k = [ + ], x = [ "\uC601\uC5C5", "\uAE08\uC735", "\uBC30\uC1A1", @@ -76,18 +76,18 @@ var le = function() { "\uC804\uB3C4\uC790", "\uD310\uB9E4\uC6D0" ]; - function N(I, x) { - if (typeof x != "string" || I.substring(0, 2).toLowerCase() == "en") - return x; - x.indexOf("'") == 0 && (x = x.substring(1, x.length - 1)); - for (var p = -1, g = 0; g < d.length; g++) - if (d[g] == x) { - p = g; + function w(I, k) { + if (typeof k != "string" || I.substring(0, 2).toLowerCase() == "en") + return k; + k.indexOf("'") == 0 && (k = k.substring(1, k.length - 1)); + for (var b = -1, p = 0; p < d.length; p++) + if (d[p] == k) { + b = p; break; } - return 0 <= p && I.substring(0, 2).toLowerCase() == "jp" && p < h.length ? "'" + h[p] + "'" : 0 <= p && I.substring(0, 2).toLowerCase() == "kr" && p < k.length ? "'" + k[p] + "'" : x; + return 0 <= b && I.substring(0, 2).toLowerCase() == "jp" && b < h.length ? "'" + h[b] + "'" : 0 <= b && I.substring(0, 2).toLowerCase() == "kr" && b < x.length ? "'" + x[b] + "'" : k; } - return N; + return w; }(); function be(d) { return d && d.__esModule && Object.prototype.hasOwnProperty.call(d, "default") ? d.default : d; @@ -95,12 +95,12 @@ function be(d) { var ie = { exports: {} }; (function(d, h) { (function() { - var k = 9007199254740992, N = -k, I = "0123456789", x = "abcdefghijklmnopqrstuvwxyz", p = x.toUpperCase(), g = I + "abcdef"; - function T(e) { + var x = 9007199254740992, w = -x, I = "0123456789", k = "abcdefghijklmnopqrstuvwxyz", b = k.toUpperCase(), p = I + "abcdef"; + function M(e) { this.name = "UnsupportedError", this.message = e || "This feature is not supported on this platform"; } - T.prototype = new Error(), T.prototype.constructor = T; - var b = Array.prototype.slice; + M.prototype = new Error(), M.prototype.constructor = M; + var B = Array.prototype.slice; function i(e) { if (!(this instanceof i)) return e || (e = null), e === null ? new i() : new i(e); @@ -111,9 +111,9 @@ var ie = { exports: {} }; var n = 0; if (Object.prototype.toString.call(arguments[a]) === "[object String]") for (var c = 0; c < arguments[a].length; c++) { - for (var u = 0, C = 0; C < arguments[a].length; C++) - u = arguments[a].charCodeAt(C) + (u << 6) + (u << 16) - u; - n += u; + for (var m = 0, C = 0; C < arguments[a].length; C++) + m = arguments[a].charCodeAt(C) + (m << 6) + (m << 16) - m; + n += m; } else n = arguments[a]; @@ -124,7 +124,7 @@ var ie = { exports: {} }; }, this; } i.prototype.VERSION = "1.1.11"; - function s(e, a) { + function l(e, a) { if (e = e || {}, a) for (var n in a) typeof e[n] > "u" && (e[n] = a[n]); @@ -147,16 +147,16 @@ var ie = { exports: {} }; return new Buffer(a).toString("base64"); }); })(), i.prototype.bool = function(e) { - return e = s(e, { likelihood: 50 }), t( + return e = l(e, { likelihood: 50 }), t( e.likelihood < 0 || e.likelihood > 100, "Chance: Likelihood accepts values from 0 to 100." ), this.random() * 100 < e.likelihood; }, i.prototype.falsy = function(e) { - e = s(e, { pool: [!1, null, 0, NaN, "", void 0] }); + e = l(e, { pool: [!1, null, 0, NaN, "", void 0] }); var a = e.pool, n = this.integer({ min: 0, max: a.length - 1 }), c = a[n]; return c; }, i.prototype.animal = function(e) { - if (e = s(e), typeof e.type < "u") + if (e = l(e), typeof e.type < "u") return t( !this.get("animals")[e.type.toLowerCase()], "Please pick from desert, ocean, grassland, forest, zoo, pets, farm." @@ -164,34 +164,34 @@ var ie = { exports: {} }; var a = ["desert", "forest", "ocean", "zoo", "farm", "pet", "grassland"]; return this.pick(this.get("animals")[this.pick(a)]); }, i.prototype.character = function(e) { - e = s(e); + e = l(e); var a = "!@#$%^&*()[]", n, c; - return e.casing === "lower" ? n = x : e.casing === "upper" ? n = p : n = x + p, e.pool ? c = e.pool : (c = "", e.alpha && (c += n), e.numeric && (c += I), e.symbols && (c += a), c || (c = n + I + a)), c.charAt(this.natural({ max: c.length - 1 })); + return e.casing === "lower" ? n = k : e.casing === "upper" ? n = b : n = k + b, e.pool ? c = e.pool : (c = "", e.alpha && (c += n), e.numeric && (c += I), e.symbols && (c += a), c || (c = n + I + a)), c.charAt(this.natural({ max: c.length - 1 })); }, i.prototype.floating = function(e) { - e = s(e, { fixed: 4 }), t( + e = l(e, { fixed: 4 }), t( e.fixed && e.precision, "Chance: Cannot specify both fixed and precision." ); - var a, n = Math.pow(10, e.fixed), c = k / n, u = -c; + var a, n = Math.pow(10, e.fixed), c = x / n, m = -c; t( - e.min && e.fixed && e.min < u, - "Chance: Min specified is out of range with fixed. Min should be, at least, " + u + e.min && e.fixed && e.min < m, + "Chance: Min specified is out of range with fixed. Min should be, at least, " + m ), t( e.max && e.fixed && e.max > c, "Chance: Max specified is out of range with fixed. Max should be, at most, " + c - ), e = s(e, { min: u, max: c }), a = this.integer({ min: e.min * n, max: e.max * n }); + ), e = l(e, { min: m, max: c }), a = this.integer({ min: e.min * n, max: e.max * n }); var C = (a / n).toFixed(e.fixed); return parseFloat(C); }, i.prototype.integer = function(e) { - return e = s(e, { min: N, max: k }), t(e.min > e.max, "Chance: Min cannot be greater than Max."), Math.floor(this.random() * (e.max - e.min + 1) + e.min); + return e = l(e, { min: w, max: x }), t(e.min > e.max, "Chance: Min cannot be greater than Max."), Math.floor(this.random() * (e.max - e.min + 1) + e.min); }, i.prototype.natural = function(e) { - if (e = s(e, { min: 0, max: k }), typeof e.numerals == "number" && (t(e.numerals < 1, "Chance: Numerals cannot be less than one."), e.min = Math.pow(10, e.numerals - 1), e.max = Math.pow(10, e.numerals) - 1), t(e.min < 0, "Chance: Min cannot be less than zero."), e.exclude) { + if (e = l(e, { min: 0, max: x }), typeof e.numerals == "number" && (t(e.numerals < 1, "Chance: Numerals cannot be less than one."), e.min = Math.pow(10, e.numerals - 1), e.max = Math.pow(10, e.numerals) - 1), t(e.min < 0, "Chance: Min cannot be less than zero."), e.exclude) { t(!Array.isArray(e.exclude), "Chance: exclude must be an array."); for (var a in e.exclude) t(!Number.isInteger(e.exclude[a]), "Chance: exclude must be numbers."); var n = e.min + this.natural({ max: e.max - e.min - e.exclude.length }), c = e.exclude.sort(); - for (var u in c) { - if (n < c[u]) + for (var m in c) { + if (n < c[m]) break; n++; } @@ -199,13 +199,13 @@ var ie = { exports: {} }; } return this.integer(e); }, i.prototype.prime = function(e) { - e = s(e, { min: 0, max: 1e4 }), t(e.min < 0, "Chance: Min cannot be less than zero."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); - var a = L.primes[L.primes.length - 1]; + e = l(e, { min: 0, max: 1e4 }), t(e.min < 0, "Chance: Min cannot be less than zero."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); + var a = E.primes[E.primes.length - 1]; if (e.max > a) for (var n = a + 2; n <= e.max; ++n) - this.is_prime(n) && L.primes.push(n); - var c = L.primes.filter(function(u) { - return u >= e.min && u <= e.max; + this.is_prime(n) && E.primes.push(n); + var c = E.primes.filter(function(m) { + return m >= e.min && m <= e.max; }); return this.pick(c); }, i.prototype.is_prime = function(e) { @@ -220,49 +220,49 @@ var ie = { exports: {} }; return !1; return !0; }, i.prototype.hex = function(e) { - e = s(e, { min: 0, max: k, casing: "lower" }), t(e.min < 0, "Chance: Min cannot be less than zero."); + e = l(e, { min: 0, max: x, casing: "lower" }), t(e.min < 0, "Chance: Min cannot be less than zero."); var a = this.natural({ min: e.min, max: e.max }); return e.casing === "upper" ? a.toString(16).toUpperCase() : a.toString(16); }, i.prototype.letter = function(e) { - e = s(e, { casing: "lower" }); + e = l(e, { casing: "lower" }); var a = "abcdefghijklmnopqrstuvwxyz", n = this.character({ pool: a }); return e.casing === "upper" && (n = n.toUpperCase()), n; }, i.prototype.string = function(e) { - e = s(e, { min: 5, max: 20 }), e.length !== 0 && !e.length && (e.length = this.natural({ min: e.min, max: e.max })), t(e.length < 0, "Chance: Length cannot be less than zero."); + e = l(e, { min: 5, max: 20 }), e.length !== 0 && !e.length && (e.length = this.natural({ min: e.min, max: e.max })), t(e.length < 0, "Chance: Length cannot be less than zero."); var a = e.length, n = this.n(this.character, a, e); return n.join(""); }; - function l(e) { + function s(e) { this.c = e; } - l.prototype = { + s.prototype = { substitute: function() { return this.c; } }; - function m(e) { + function u(e) { this.c = e; } - m.prototype = { + u.prototype = { substitute: function() { if (!/[{}\\]/.test(this.c)) throw new Error('Invalid escape sequence: "\\' + this.c + '".'); return this.c; } }; - function v(e) { + function g(e) { this.c = e; } - v.prototype = { + g.prototype = { replacers: { "#": function(e) { return e.character({ pool: I }); }, A: function(e) { - return e.character({ pool: p }); + return e.character({ pool: b }); }, a: function(e) { - return e.character({ pool: x }); + return e.character({ pool: k }); } }, substitute: function(e) { @@ -272,18 +272,18 @@ var ie = { exports: {} }; return a(e); } }; - function B(e) { + function T(e) { for (var a = [], n = "identity", c = 0; c < e.length; c++) { - var u = e[c]; + var m = e[c]; switch (n) { case "escape": - a.push(new m(u)), n = "identity"; + a.push(new u(m)), n = "identity"; break; case "identity": - u === "{" ? n = "replace" : u === "\\" ? n = "escape" : a.push(new l(u)); + m === "{" ? n = "replace" : m === "\\" ? n = "escape" : a.push(new s(m)); break; case "replace": - u === "}" ? n = "identity" : a.push(new v(u)); + m === "}" ? n = "identity" : a.push(new g(m)); break; } } @@ -293,13 +293,13 @@ var ie = { exports: {} }; if (!e) throw new Error("Template string is required"); var a = this; - return B(e).map(function(n) { + return T(e).map(function(n) { return n.substitute(a); }).join(""); }, i.prototype.buffer = function(e) { if (typeof Buffer > "u") - throw new T("Sorry, the buffer() function is not supported on your platform"); - e = s(e, { length: this.natural({ min: 5, max: 20 }) }), t(e.length < 0, "Chance: Length cannot be less than zero."); + throw new M("Sorry, the buffer() function is not supported on your platform"); + e = l(e, { length: this.natural({ min: 5, max: 20 }) }), t(e.length < 0, "Chance: Length cannot be less than zero."); var a = e.length, n = this.n(this.character, a, e); return Buffer.from(n); }, i.prototype.capitalize = function(e) { @@ -313,24 +313,24 @@ var ie = { exports: {} }; typeof e != "function", "Chance: The first argument must be a function." ); - var c = function(S, _) { - return S.indexOf(_) !== -1; + var c = function(y, _) { + return y.indexOf(_) !== -1; }; n && (c = n.comparator || c); - for (var u = [], C = 0, P, f = a * 50, y = b.call(arguments, 2); u.length < a; ) { - var A = JSON.parse(JSON.stringify(y)); - if (P = e.apply(this, A), c(u, P) || (u.push(P), C = 0), ++C > f) + for (var m = [], C = 0, P, f = a * 50, A = B.call(arguments, 2); m.length < a; ) { + var v = JSON.parse(JSON.stringify(A)); + if (P = e.apply(this, v), c(m, P) || (m.push(P), C = 0), ++C > f) throw new RangeError("Chance: num is likely too large for sample set"); } - return u; + return m; }, i.prototype.n = function(e, a) { t( typeof e != "function", "Chance: The first argument must be a function." ), typeof a > "u" && (a = 1); - var n = a, c = [], u = b.call(arguments, 2); + var n = a, c = [], m = B.call(arguments, 2); for (n = Math.max(0, n), null; n--; null) - c.push(e.apply(this, u)); + c.push(e.apply(this, m)); return c; }, i.prototype.pad = function(e, a, n) { return n = n || "0", e = e + "", e.length >= a ? e : new Array(a - e.length + 1).join(n) + e; @@ -353,52 +353,52 @@ var ie = { exports: {} }; return [this.pickone(e)]; var n = e.slice(0), c = n.length; return this.n(function() { - var u = this.natural({ max: --c }), C = n[u]; - return n[u] = n[c], C; + var m = this.natural({ max: --c }), C = n[m]; + return n[m] = n[c], C; }, Math.min(c, a)); }, i.prototype.shuffle = function(e) { - for (var a = [], n = 0, c = Number(e.length), u = r(c), C = c - 1, P, f = 0; f < c; f++) - P = this.natural({ max: C }), n = u[P], a[f] = e[n], u[P] = u[C], C -= 1; + for (var a = [], n = 0, c = Number(e.length), m = r(c), C = c - 1, P, f = 0; f < c; f++) + P = this.natural({ max: C }), n = m[P], a[f] = e[n], m[P] = m[C], C -= 1; return a; }, i.prototype.weighted = function(e, a, n) { if (e.length !== a.length) throw new RangeError("Chance: Length of array and weights must match"); - for (var c = 0, u, C = 0; C < a.length; ++C) { - if (u = a[C], isNaN(u)) + for (var c = 0, m, C = 0; C < a.length; ++C) { + if (m = a[C], isNaN(m)) throw new RangeError("Chance: All weights must be numbers"); - u > 0 && (c += u); + m > 0 && (c += m); } if (c === 0) throw new RangeError("Chance: No valid entries in array weights"); - var P = this.random() * c, f = 0, y = -1, A; + var P = this.random() * c, f = 0, A = -1, v; for (C = 0; C < a.length; ++C) { - if (u = a[C], f += u, u > 0) { + if (m = a[C], f += m, m > 0) { if (P <= f) { - A = C; + v = C; break; } - y = C; + A = C; } - C === a.length - 1 && (A = y); + C === a.length - 1 && (v = A); } - var S = e[A]; - return n = typeof n > "u" ? !1 : n, n && (e.splice(A, 1), a.splice(A, 1)), S; + var y = e[v]; + return n = typeof n > "u" ? !1 : n, n && (e.splice(v, 1), a.splice(v, 1)), y; }, i.prototype.paragraph = function(e) { - e = s(e); + e = l(e); var a = e.sentences || this.natural({ min: 3, max: 7 }), n = this.n(this.sentence, a), c = e.linebreak === !0 ? ` ` : " "; return n.join(c); }, i.prototype.sentence = function(e) { - e = s(e); - var a = e.words || this.natural({ min: 12, max: 18 }), n = e.punctuation, c, u = this.n(this.word, a); - return c = u.join(" "), c = this.capitalize(c), n !== !1 && !/^[.?;!:]$/.test(n) && (n = "."), n && (c += n), c; + e = l(e); + var a = e.words || this.natural({ min: 12, max: 18 }), n = e.punctuation, c, m = this.n(this.word, a); + return c = m.join(" "), c = this.capitalize(c), n !== !1 && !/^[.?;!:]$/.test(n) && (n = "."), n && (c += n), c; }, i.prototype.syllable = function(e) { - e = s(e); - for (var a = e.length || this.natural({ min: 2, max: 3 }), n = "bcdfghjklmnprstvwz", c = "aeiou", u = n + c, C = "", P, f = 0; f < a; f++) - f === 0 ? P = this.character({ pool: u }) : n.indexOf(P) === -1 ? P = this.character({ pool: n }) : P = this.character({ pool: c }), C += P; + e = l(e); + for (var a = e.length || this.natural({ min: 2, max: 3 }), n = "bcdfghjklmnprstvwz", c = "aeiou", m = n + c, C = "", P, f = 0; f < a; f++) + f === 0 ? P = this.character({ pool: m }) : n.indexOf(P) === -1 ? P = this.character({ pool: n }) : P = this.character({ pool: c }), C += P; return e.capitalize && (C = this.capitalize(C)), C; }, i.prototype.word = function(e) { - e = s(e), t( + e = l(e), t( e.syllables && e.length, "Chance: Cannot specify both syllables AND length." ); @@ -413,7 +413,7 @@ var ie = { exports: {} }; n += this.syllable(); return e.capitalize && (n = this.capitalize(n)), n; }, i.prototype.age = function(e) { - e = s(e); + e = l(e); var a; switch (e.type) { case "child": @@ -439,53 +439,53 @@ var ie = { exports: {} }; }, i.prototype.birthday = function(e) { var a = this.age(e), n = /* @__PURE__ */ new Date(), c = n.getFullYear(); if (e && e.type) { - var u = /* @__PURE__ */ new Date(), C = /* @__PURE__ */ new Date(); - u.setFullYear(c - a - 1), C.setFullYear(c - a), e = s(e, { - min: u, + var m = /* @__PURE__ */ new Date(), C = /* @__PURE__ */ new Date(); + m.setFullYear(c - a - 1), C.setFullYear(c - a), e = l(e, { + min: m, max: C }); } else if (e && (e.minAge !== void 0 || e.maxAge !== void 0)) { t(e.minAge < 0, "Chance: MinAge cannot be less than zero."), t(e.minAge > e.maxAge, "Chance: MinAge cannot be greater than MaxAge."); - var P = e.minAge !== void 0 ? e.minAge : 0, f = e.maxAge !== void 0 ? e.maxAge : 100, y = new Date(c - f - 1, n.getMonth(), n.getDate()), A = new Date(c - P, n.getMonth(), n.getDate()); - y.setDate(y.getDate() + 1), A.setDate(A.getDate() + 1), A.setMilliseconds(A.getMilliseconds() - 1), e = s(e, { - min: y, - max: A + var P = e.minAge !== void 0 ? e.minAge : 0, f = e.maxAge !== void 0 ? e.maxAge : 100, A = new Date(c - f - 1, n.getMonth(), n.getDate()), v = new Date(c - P, n.getMonth(), n.getDate()); + A.setDate(A.getDate() + 1), v.setDate(v.getDate() + 1), v.setMilliseconds(v.getMilliseconds() - 1), e = l(e, { + min: A, + max: v }); } else - e = s(e, { + e = l(e, { year: c - a }); return this.date(e); }, i.prototype.cpf = function(e) { - e = s(e, { + e = l(e, { formatted: !0 }); var a = this.n(this.natural, 9, { max: 9 }), n = a[8] * 2 + a[7] * 3 + a[6] * 4 + a[5] * 5 + a[4] * 6 + a[3] * 7 + a[2] * 8 + a[1] * 9 + a[0] * 10; n = 11 - n % 11, n >= 10 && (n = 0); var c = n * 2 + a[8] * 3 + a[7] * 4 + a[6] * 5 + a[5] * 6 + a[4] * 7 + a[3] * 8 + a[2] * 9 + a[1] * 10 + a[0] * 11; c = 11 - c % 11, c >= 10 && (c = 0); - var u = "" + a[0] + a[1] + a[2] + "." + a[3] + a[4] + a[5] + "." + a[6] + a[7] + a[8] + "-" + n + c; - return e.formatted ? u : u.replace(/\D/g, ""); + var m = "" + a[0] + a[1] + a[2] + "." + a[3] + a[4] + a[5] + "." + a[6] + a[7] + a[8] + "-" + n + c; + return e.formatted ? m : m.replace(/\D/g, ""); }, i.prototype.cnpj = function(e) { - e = s(e, { + e = l(e, { formatted: !0 }); var a = this.n(this.natural, 12, { max: 12 }), n = a[11] * 2 + a[10] * 3 + a[9] * 4 + a[8] * 5 + a[7] * 6 + a[6] * 7 + a[5] * 8 + a[4] * 9 + a[3] * 2 + a[2] * 3 + a[1] * 4 + a[0] * 5; n = 11 - n % 11, n < 2 && (n = 0); var c = n * 2 + a[11] * 3 + a[10] * 4 + a[9] * 5 + a[8] * 6 + a[7] * 7 + a[6] * 8 + a[5] * 9 + a[4] * 2 + a[3] * 3 + a[2] * 4 + a[1] * 5 + a[0] * 6; c = 11 - c % 11, c < 2 && (c = 0); - var u = "" + a[0] + a[1] + "." + a[2] + a[3] + a[4] + "." + a[5] + a[6] + a[7] + "/" + a[8] + a[9] + a[10] + a[11] + "-" + n + c; - return e.formatted ? u : u.replace(/\D/g, ""); + var m = "" + a[0] + a[1] + "." + a[2] + a[3] + a[4] + "." + a[5] + a[6] + a[7] + "/" + a[8] + a[9] + a[10] + a[11] + "-" + n + c; + return e.formatted ? m : m.replace(/\D/g, ""); }, i.prototype.first = function(e) { - return e = s(e, { gender: this.gender(), nationality: "en" }), this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()]); + return e = l(e, { gender: this.gender(), nationality: "en" }), this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()]); }, i.prototype.profession = function(e) { - return e = s(e), e.rank ? this.pick(["Apprentice ", "Junior ", "Senior ", "Lead "]) + this.pick(this.get("profession")) : this.pick(this.get("profession")); + return e = l(e), e.rank ? this.pick(["Apprentice ", "Junior ", "Senior ", "Lead "]) + this.pick(this.get("profession")) : this.pick(this.get("profession")); }, i.prototype.company = function() { return this.pick(this.get("company")); }, i.prototype.gender = function(e) { - return e = s(e, { extraGenders: [] }), this.pick(["Male", "Female"].concat(e.extraGenders)); + return e = l(e, { extraGenders: [] }), this.pick(["Male", "Female"].concat(e.extraGenders)); }, i.prototype.last = function(e) { - if (e = s(e, { nationality: "*" }), e.nationality === "*") { + if (e = l(e, { nationality: "*" }), e.nationality === "*") { var a = [], n = this.get("lastNames"); return Object.keys(n).forEach(function(c) { a = a.concat(n[c]); @@ -499,53 +499,53 @@ var ie = { exports: {} }; } return e = e + (10 - parseInt(a.toString().slice(-1))).toString().slice(-1), e; }, i.prototype.mrz = function(e) { - var a = function(u) { + var a = function(m) { var C = "", "<=", ">=", "="]); e.range && (a = e.range); var n = ""; @@ -744,29 +744,29 @@ var ie = { exports: {} }; }, i.prototype.twitter = function() { return "@" + this.word(); }, i.prototype.url = function(e) { - e = s(e, { protocol: "http", domain: this.domain(e), domain_prefix: "", path: this.word(), extensions: [] }); + e = l(e, { protocol: "http", domain: this.domain(e), domain_prefix: "", path: this.word(), extensions: [] }); var a = e.extensions.length > 0 ? "." + this.pick(e.extensions) : "", n = e.domain_prefix ? e.domain_prefix + "." + e.domain : e.domain; return e.protocol + "://" + n + "/" + e.path + a; }, i.prototype.port = function() { return this.integer({ min: 0, max: 65535 }); }, i.prototype.locale = function(e) { - return e = s(e), e.region ? this.pick(this.get("locale_regions")) : this.pick(this.get("locale_languages")); + return e = l(e), e.region ? this.pick(this.get("locale_regions")) : this.pick(this.get("locale_languages")); }, i.prototype.locales = function(e) { - return e = s(e), e.region ? this.get("locale_regions") : this.get("locale_languages"); + return e = l(e), e.region ? this.get("locale_regions") : this.get("locale_languages"); }, i.prototype.loremPicsum = function(e) { - e = s(e, { width: 500, height: 500, greyscale: !1, blurred: !1 }); + e = l(e, { width: 500, height: 500, greyscale: !1, blurred: !1 }); var a = e.greyscale ? "g/" : "", n = e.blurred ? "/?blur" : "/?random"; return "https://picsum.photos/" + a + e.width + "/" + e.height + n; }, i.prototype.address = function(e) { - return e = s(e), this.natural({ min: 5, max: 2e3 }) + " " + this.street(e); + return e = l(e), this.natural({ min: 5, max: 2e3 }) + " " + this.street(e); }, i.prototype.altitude = function(e) { - return e = s(e, { fixed: 5, min: 0, max: 8848 }), this.floating({ + return e = l(e, { fixed: 5, min: 0, max: 8848 }), this.floating({ min: e.min, max: e.max, fixed: e.fixed }); }, i.prototype.areacode = function(e) { - e = s(e, { parens: !0 }); + e = l(e, { parens: !0 }); var a = e.exampleNumber ? "555" : this.natural({ min: 2, max: 9 }).toString() + this.natural({ min: 0, max: 8 }).toString() + this.natural({ min: 0, max: 9 }).toString(); return e.parens ? "(" + a + ")" : a; }, i.prototype.city = function() { @@ -776,27 +776,27 @@ var ie = { exports: {} }; }, i.prototype.countries = function() { return this.get("countries"); }, i.prototype.country = function(e) { - e = s(e); + e = l(e); var a = this.pick(this.countries()); return e.raw ? a : e.full ? a.name : a.abbreviation; }, i.prototype.depth = function(e) { - return e = s(e, { fixed: 5, min: -10994, max: 0 }), this.floating({ + return e = l(e, { fixed: 5, min: -10994, max: 0 }), this.floating({ min: e.min, max: e.max, fixed: e.fixed }); }, i.prototype.geohash = function(e) { - return e = s(e, { length: 7 }), this.string({ length: e.length, pool: "0123456789bcdefghjkmnpqrstuvwxyz" }); + return e = l(e, { length: 7 }), this.string({ length: e.length, pool: "0123456789bcdefghjkmnpqrstuvwxyz" }); }, i.prototype.geojson = function(e) { return this.latitude(e) + ", " + this.longitude(e) + ", " + this.altitude(e); }, i.prototype.latitude = function(e) { var [a, n, c] = ["ddm", "dms", "dd"]; - e = s( + e = l( e, e && e.format && [a, n].includes(e.format.toLowerCase()) ? { min: 0, max: 89, fixed: 4 } : { fixed: 5, min: -90, max: 90, format: c } ); - var u = e.format.toLowerCase(); - switch ((u === a || u === n) && (t(e.min < 0 || e.min > 89, "Chance: Min specified is out of range. Should be between 0 - 89"), t(e.max < 0 || e.max > 89, "Chance: Max specified is out of range. Should be between 0 - 89"), t(e.fixed > 4, "Chance: Fixed specified should be below or equal to 4")), u) { + var m = e.format.toLowerCase(); + switch ((m === a || m === n) && (t(e.min < 0 || e.min > 89, "Chance: Min specified is out of range. Should be between 0 - 89"), t(e.max < 0 || e.max > 89, "Chance: Max specified is out of range. Should be between 0 - 89"), t(e.fixed > 4, "Chance: Fixed specified should be below or equal to 4")), m) { case a: return this.integer({ min: e.min, max: e.max }) + "\xB0" + this.floating({ min: 0, max: 59, fixed: e.fixed }); case n: @@ -807,12 +807,12 @@ var ie = { exports: {} }; } }, i.prototype.longitude = function(e) { var [a, n, c] = ["ddm", "dms", "dd"]; - e = s( + e = l( e, e && e.format && [a, n].includes(e.format.toLowerCase()) ? { min: 0, max: 179, fixed: 4 } : { fixed: 5, min: -180, max: 180, format: c } ); - var u = e.format.toLowerCase(); - switch ((u === a || u === n) && (t(e.min < 0 || e.min > 179, "Chance: Min specified is out of range. Should be between 0 - 179"), t(e.max < 0 || e.max > 179, "Chance: Max specified is out of range. Should be between 0 - 179"), t(e.fixed > 4, "Chance: Fixed specified should be below or equal to 4")), u) { + var m = e.format.toLowerCase(); + switch ((m === a || m === n) && (t(e.min < 0 || e.min > 179, "Chance: Min specified is out of range. Should be between 0 - 179"), t(e.max < 0 || e.max > 179, "Chance: Max specified is out of range. Should be between 0 - 179"), t(e.fixed > 4, "Chance: Fixed specified should be below or equal to 4")), m) { case a: return this.integer({ min: e.min, max: e.max }) + "\xB0" + this.floating({ min: 0, max: 59.9999, fixed: e.fixed }); case n: @@ -828,16 +828,16 @@ var ie = { exports: {} }; O.push(a.string({ pool: "0123456789", length: z })); }), _.area + O.join(" "); }; - e = s(e, { + e = l(e, { formatted: !0, country: "us", mobile: !1, exampleNumber: !1 }), e.formatted || (e.parens = !1); - var u; + var m; switch (e.country) { case "fr": - e.mobile ? (n = this.pick(["06", "07"]) + a.string({ pool: "0123456789", length: 8 }), u = e.formatted ? n.match(/../g).join(" ") : n) : (n = this.pick([ + e.mobile ? (n = this.pick(["06", "07"]) + a.string({ pool: "0123456789", length: 8 }), m = e.formatted ? n.match(/../g).join(" ") : n) : (n = this.pick([ // Valid zone and département codes. "01" + this.pick(["30", "34", "39", "40", "41", "42", "43", "44", "45", "46", "47", "48", "49", "53", "55", "56", "58", "60", "64", "69", "70", "72", "73", "74", "75", "76", "77", "78", "79", "80", "81", "82", "83"]) + a.string({ pool: "0123456789", length: 6 }), "02" + this.pick(["14", "18", "22", "23", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37", "38", "40", "41", "43", "44", "45", "46", "47", "48", "49", "50", "51", "52", "53", "54", "56", "57", "61", "62", "69", "72", "76", "77", "78", "85", "90", "96", "97", "98", "99"]) + a.string({ pool: "0123456789", length: 6 }), @@ -845,13 +845,13 @@ var ie = { exports: {} }; "04" + this.pick(["11", "13", "15", "20", "22", "26", "27", "30", "32", "34", "37", "42", "43", "44", "50", "56", "57", "63", "66", "67", "68", "69", "70", "71", "72", "73", "74", "75", "76", "77", "78", "79", "80", "81", "82", "83", "84", "85", "86", "88", "89", "90", "91", "92", "93", "94", "95", "97", "98"]) + a.string({ pool: "0123456789", length: 6 }), "05" + this.pick(["08", "16", "17", "19", "24", "31", "32", "33", "34", "35", "40", "45", "46", "47", "49", "53", "55", "56", "57", "58", "59", "61", "62", "63", "64", "65", "67", "79", "81", "82", "86", "87", "90", "94"]) + a.string({ pool: "0123456789", length: 6 }), "09" + a.string({ pool: "0123456789", length: 8 }) - ]), u = e.formatted ? n.match(/../g).join(" ") : n); + ]), m = e.formatted ? n.match(/../g).join(" ") : n); break; case "uk": e.mobile ? (n = this.pick([ { area: "07" + this.pick(["4", "5", "7", "8", "9"]), sections: [2, 6] }, { area: "07624 ", sections: [6] } - ]), u = e.formatted ? c(n) : c(n).replace(" ", "")) : (n = this.pick([ + ]), m = e.formatted ? c(n) : c(n).replace(" ", "")) : (n = this.pick([ //valid area codes of major cities/counties followed by random numbers in required format. { area: "01" + this.character({ pool: "234569" }) + "1 ", sections: [3, 4] }, { area: "020 " + this.character({ pool: "378" }), sections: [3, 4] }, @@ -866,7 +866,7 @@ var ie = { exports: {} }; { area: "017" + this.pick(["26", "44", "50", "68"]) + " ", sections: [6] }, { area: "018" + this.pick(["27", "37", "84", "97"]) + " ", sections: [6] }, { area: "019" + this.pick(["00", "05", "35", "46", "49", "63", "95"]) + " ", sections: [6] } - ]), u = e.formatted ? c(n) : c(n).replace(" ", "", "g")); + ]), m = e.formatted ? c(n) : c(n).replace(" ", "", "g")); break; case "za": e.mobile ? (n = this.pick([ @@ -876,49 +876,49 @@ var ie = { exports: {} }; "071" + this.pick(["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"]) + a.string({ pool: "0123456789", length: 6 }), "07" + this.pick(["2", "3", "4", "6", "7", "8", "9"]) + a.string({ pool: "0123456789", length: 7 }), "08" + this.pick(["0", "1", "2", "3", "4", "5"]) + a.string({ pool: "0123456789", length: 7 }) - ]), u = e.formatted || n) : (n = this.pick([ + ]), m = e.formatted || n) : (n = this.pick([ "01" + this.pick(["0", "1", "2", "3", "4", "5", "6", "7", "8"]) + a.string({ pool: "0123456789", length: 7 }), "02" + this.pick(["1", "2", "3", "4", "7", "8"]) + a.string({ pool: "0123456789", length: 7 }), "03" + this.pick(["1", "2", "3", "5", "6", "9"]) + a.string({ pool: "0123456789", length: 7 }), "04" + this.pick(["1", "2", "3", "4", "5", "6", "7", "8", "9"]) + a.string({ pool: "0123456789", length: 7 }), "05" + this.pick(["1", "3", "4", "6", "7", "8"]) + a.string({ pool: "0123456789", length: 7 }) - ]), u = e.formatted || n); + ]), m = e.formatted || n); break; case "us": var C = this.areacode(e).toString(), P = this.natural({ min: 2, max: 9 }).toString() + this.natural({ min: 0, max: 9 }).toString() + this.natural({ min: 0, max: 9 }).toString(), f = this.natural({ min: 1e3, max: 9999 }).toString(); - u = e.formatted ? C + " " + P + "-" + f : C + P + f; + m = e.formatted ? C + " " + P + "-" + f : C + P + f; break; case "br": - var y = this.pick(["11", "12", "13", "14", "15", "16", "17", "18", "19", "21", "22", "24", "27", "28", "31", "32", "33", "34", "35", "37", "38", "41", "42", "43", "44", "45", "46", "47", "48", "49", "51", "53", "54", "55", "61", "62", "63", "64", "65", "66", "67", "68", "69", "71", "73", "74", "75", "77", "79", "81", "82", "83", "84", "85", "86", "87", "88", "89", "91", "92", "93", "94", "95", "96", "97", "98", "99"]), A; - e.mobile ? A = "9" + a.string({ pool: "0123456789", length: 4 }) : A = this.natural({ min: 2e3, max: 5999 }).toString(); - var S = a.string({ pool: "0123456789", length: 4 }); - u = e.formatted ? "(" + y + ") " + A + "-" + S : y + A + S; + var A = this.pick(["11", "12", "13", "14", "15", "16", "17", "18", "19", "21", "22", "24", "27", "28", "31", "32", "33", "34", "35", "37", "38", "41", "42", "43", "44", "45", "46", "47", "48", "49", "51", "53", "54", "55", "61", "62", "63", "64", "65", "66", "67", "68", "69", "71", "73", "74", "75", "77", "79", "81", "82", "83", "84", "85", "86", "87", "88", "89", "91", "92", "93", "94", "95", "96", "97", "98", "99"]), v; + e.mobile ? v = "9" + a.string({ pool: "0123456789", length: 4 }) : v = this.natural({ min: 2e3, max: 5999 }).toString(); + var y = a.string({ pool: "0123456789", length: 4 }); + m = e.formatted ? "(" + A + ") " + v + "-" + y : A + v + y; break; } - return u; + return m; }, i.prototype.postal = function() { var e = this.character({ pool: "XVTSRPNKLMHJGECBA" }), a = e + this.natural({ max: 9 }) + this.character({ alpha: !0, casing: "upper" }), n = this.natural({ max: 9 }) + this.character({ alpha: !0, casing: "upper" }) + this.natural({ max: 9 }); return a + " " + n; }, i.prototype.postcode = function() { - var e = this.pick(this.get("postcodeAreas")).code, a = this.natural({ max: 9 }), n = this.bool() ? this.character({ alpha: !0, casing: "upper" }) : "", c = e + a + n, u = this.natural({ max: 9 }), C = this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }), P = u + C; + var e = this.pick(this.get("postcodeAreas")).code, a = this.natural({ max: 9 }), n = this.bool() ? this.character({ alpha: !0, casing: "upper" }) : "", c = e + a + n, m = this.natural({ max: 9 }), C = this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }), P = m + C; return c + " " + P; }, i.prototype.counties = function(e) { - return e = s(e, { country: "uk" }), this.get("counties")[e.country.toLowerCase()]; + return e = l(e, { country: "uk" }), this.get("counties")[e.country.toLowerCase()]; }, i.prototype.county = function(e) { return this.pick(this.counties(e)).name; }, i.prototype.provinces = function(e) { - return e = s(e, { country: "ca" }), this.get("provinces")[e.country.toLowerCase()]; + return e = l(e, { country: "ca" }), this.get("provinces")[e.country.toLowerCase()]; }, i.prototype.province = function(e) { return e && e.full ? this.pick(this.provinces(e)).name : this.pick(this.provinces(e)).abbreviation; }, i.prototype.state = function(e) { return e && e.full ? this.pick(this.states(e)).name : this.pick(this.states(e)).abbreviation; }, i.prototype.states = function(e) { - e = s(e, { country: "us", us_states_and_dc: !0 }); + e = l(e, { country: "us", us_states_and_dc: !0 }); var a; switch (e.country.toLowerCase()) { case "us": - var n = this.get("us_states_and_dc"), c = this.get("territories"), u = this.get("armed_forces"); - a = [], e.us_states_and_dc && (a = a.concat(n)), e.territories && (a = a.concat(c)), e.armed_forces && (a = a.concat(u)); + var n = this.get("us_states_and_dc"), c = this.get("territories"), m = this.get("armed_forces"); + a = [], e.us_states_and_dc && (a = a.concat(n)), e.territories && (a = a.concat(c)), e.armed_forces && (a = a.concat(m)); break; case "it": case "mx": @@ -930,7 +930,7 @@ var ie = { exports: {} }; } return a; }, i.prototype.street = function(e) { - e = s(e, { country: "us", syllables: 2 }); + e = l(e, { country: "us", syllables: 2 }); var a; switch (e.country.toLowerCase()) { case "us": @@ -942,9 +942,9 @@ var ie = { exports: {} }; } return a; }, i.prototype.street_suffix = function(e) { - return e = s(e, { country: "us" }), this.pick(this.street_suffixes(e)); + return e = l(e, { country: "us" }), this.pick(this.street_suffixes(e)); }, i.prototype.street_suffixes = function(e) { - return e = s(e, { country: "us" }), this.get("street_suffixes")[e.country.toLowerCase()]; + return e = l(e, { country: "us" }), this.get("street_suffixes")[e.country.toLowerCase()]; }, i.prototype.zip = function(e) { var a = this.n(this.natural, 5, { max: 9 }); return e && e.plusfour === !0 && (a.push("-"), a = a.concat(this.n(this.natural, 4, { max: 9 }))), a.join(""); @@ -953,15 +953,15 @@ var ie = { exports: {} }; }, i.prototype.date = function(e) { var a, n; if (e && (e.min || e.max)) { - e = s(e, { + e = l(e, { american: !0, string: !1 }); - var c = typeof e.min < "u" ? e.min.getTime() : 1, u = typeof e.max < "u" ? e.max.getTime() : 864e13; - n = new Date(this.integer({ min: c, max: u })); + var c = typeof e.min < "u" ? e.min.getTime() : 1, m = typeof e.max < "u" ? e.max.getTime() : 864e13; + n = new Date(this.integer({ min: c, max: m })); } else { var C = this.month({ raw: !0 }), P = C.days; - e && e.month && (P = this.get("months")[(e.month % 12 + 12) % 12].days), e = s(e, { + e && e.month && (P = this.get("months")[(e.month % 12 + 12) % 12].days), e = l(e, { year: parseInt(this.year(), 10), // Necessary to subtract 1 because Date() 0-indexes month but not day or year // for some reason. @@ -979,16 +979,16 @@ var ie = { exports: {} }; }, i.prototype.hammertime = function(e) { return this.date(e).getTime(); }, i.prototype.hour = function(e) { - return e = s(e, { + return e = l(e, { min: e && e.twentyfour ? 0 : 1, max: e && e.twentyfour ? 23 : 12 }), t(e.min < 0, "Chance: Min cannot be less than 0."), t(e.twentyfour && e.max > 23, "Chance: Max cannot be greater than 23 for twentyfour option."), t(!e.twentyfour && e.max > 12, "Chance: Max cannot be greater than 12."), t(e.min > e.max, "Chance: Min cannot be greater than Max."), this.natural({ min: e.min, max: e.max }); }, i.prototype.millisecond = function() { return this.natural({ max: 999 }); }, i.prototype.minute = i.prototype.second = function(e) { - return e = s(e, { min: 0, max: 59 }), t(e.min < 0, "Chance: Min cannot be less than 0."), t(e.max > 59, "Chance: Max cannot be greater than 59."), t(e.min > e.max, "Chance: Min cannot be greater than Max."), this.natural({ min: e.min, max: e.max }); + return e = l(e, { min: 0, max: 59 }), t(e.min < 0, "Chance: Min cannot be less than 0."), t(e.max > 59, "Chance: Max cannot be greater than 59."), t(e.min > e.max, "Chance: Min cannot be greater than Max."), this.natural({ min: e.min, max: e.max }); }, i.prototype.month = function(e) { - e = s(e, { min: 1, max: 12 }), t(e.min < 1, "Chance: Min cannot be less than 1."), t(e.max > 12, "Chance: Max cannot be greater than 12."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); + e = l(e, { min: 1, max: 12 }), t(e.min < 1, "Chance: Min cannot be less than 1."), t(e.max > 12, "Chance: Max cannot be greater than 12."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); var a = this.pick(this.months().slice(e.min - 1, e.max)); return e.raw ? a : a.name; }, i.prototype.months = function() { @@ -998,19 +998,19 @@ var ie = { exports: {} }; }, i.prototype.timestamp = function() { return this.natural({ min: 1, max: parseInt((/* @__PURE__ */ new Date()).getTime() / 1e3, 10) }); }, i.prototype.weekday = function(e) { - e = s(e, { weekday_only: !1 }); + e = l(e, { weekday_only: !1 }); var a = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"]; return e.weekday_only || (a.push("Saturday"), a.push("Sunday")), this.pickone(a); }, i.prototype.year = function(e) { - return e = s(e, { min: (/* @__PURE__ */ new Date()).getFullYear() }), e.max = typeof e.max < "u" ? e.max : e.min + 100, this.natural(e).toString(); + return e = l(e, { min: (/* @__PURE__ */ new Date()).getFullYear() }), e.max = typeof e.max < "u" ? e.max : e.min + 100, this.natural(e).toString(); }, i.prototype.cc = function(e) { - e = s(e); + e = l(e); var a, n, c; return a = e.type ? this.cc_type({ name: e.type, raw: !0 }) : this.cc_type({ raw: !0 }), n = a.prefix.split(""), c = a.length - a.prefix.length - 1, n = n.concat(this.n(this.integer, c, { min: 0, max: 9 })), n.push(this.luhn_calculate(n.join(""))), n.join(""); }, i.prototype.cc_types = function() { return this.get("cc_types"); }, i.prototype.cc_type = function(e) { - e = s(e); + e = l(e); var a = this.cc_types(), n = null; if (e.name) { for (var c = 0; c < a.length; c++) @@ -1034,24 +1034,24 @@ var ie = { exports: {} }; }, i.prototype.currency_pair = function(e) { var a = this.unique(this.currency, 2, { comparator: function(n, c) { - return n.reduce(function(u, C) { - return u || C.code === c.code; + return n.reduce(function(m, C) { + return m || C.code === c.code; }, !1); } }); return e ? a[0].code + "/" + a[1].code : a; }, i.prototype.dollar = function(e) { - e = s(e, { max: 1e4, min: 0 }); + e = l(e, { max: 1e4, min: 0 }); var a = this.floating({ min: e.min, max: e.max, fixed: 2 }).toString(), n = a.split(".")[1]; return n === void 0 ? a += ".00" : n.length < 2 && (a = a + "0"), a < 0 ? "-$" + a.replace("-", "") : "$" + a; }, i.prototype.euro = function(e) { return Number(this.dollar(e).replace("$", "")).toLocaleString() + "\u20AC"; }, i.prototype.exp = function(e) { - e = s(e); + e = l(e); var a = {}; return a.year = this.exp_year(), a.year === (/* @__PURE__ */ new Date()).getFullYear().toString() ? a.month = this.exp_month({ future: !0 }) : a.month = this.exp_month(), e.raw ? a : a.month + "/" + a.year; }, i.prototype.exp_month = function(e) { - e = s(e); + e = l(e); var a, n, c = (/* @__PURE__ */ new Date()).getMonth() + 1; if (e.future && c !== 12) do @@ -1064,7 +1064,7 @@ var ie = { exports: {} }; var e = (/* @__PURE__ */ new Date()).getMonth() + 1, a = (/* @__PURE__ */ new Date()).getFullYear(); return this.year({ min: e === 12 ? a + 1 : a, max: a + 10 }); }, i.prototype.vat = function(e) { - switch (e = s(e, { country: "it" }), e.country.toLowerCase()) { + switch (e = l(e, { country: "it" }), e.country.toLowerCase()) { case "it": return this.it_vat(); } @@ -1076,22 +1076,22 @@ var ie = { exports: {} }; return e = this.pad(e, 7) + this.pad(this.pick(this.provinces({ country: "it" })).code, 3), e + this.luhn_calculate(e); }, i.prototype.cf = function(e) { e = e || {}; - var a = e.gender ? e.gender : this.gender(), n = e.first ? e.first : this.first({ gender: a, nationality: "it" }), c = e.last ? e.last : this.last({ nationality: "it" }), u = e.birthday ? e.birthday : this.birthday(), C = e.city ? e.city : this.pickone(["A", "B", "C", "D", "E", "F", "G", "H", "I", "L", "M", "Z"]) + this.pad(this.natural({ max: 999 }), 3), P = [], f = function(S, _) { + var a = e.gender ? e.gender : this.gender(), n = e.first ? e.first : this.first({ gender: a, nationality: "it" }), c = e.last ? e.last : this.last({ nationality: "it" }), m = e.birthday ? e.birthday : this.birthday(), C = e.city ? e.city : this.pickone(["A", "B", "C", "D", "E", "F", "G", "H", "I", "L", "M", "Z"]) + this.pad(this.natural({ max: 999 }), 3), P = [], f = function(y, _) { var O, z = []; - return S.length < 3 ? z = S.split("").concat("XXX".split("")).splice(0, 3) : (O = S.toUpperCase().split("").map(function(J) { + return y.length < 3 ? z = y.split("").concat("XXX".split("")).splice(0, 3) : (O = y.toUpperCase().split("").map(function(J) { return "BCDFGHJKLMNPRSTVWZ".indexOf(J) !== -1 ? J : void 0; - }).join(""), O.length > 3 && (_ ? O = O.substr(0, 3) : O = O[0] + O.substr(2, 2)), O.length < 3 && (z = O, O = S.toUpperCase().split("").map(function(J) { + }).join(""), O.length > 3 && (_ ? O = O.substr(0, 3) : O = O[0] + O.substr(2, 2)), O.length < 3 && (z = O, O = y.toUpperCase().split("").map(function(J) { return "AEIOU".indexOf(J) !== -1 ? J : void 0; }).join("").substr(0, 3 - z.length)), z = z + O), z; - }, y = function(S, _, O) { + }, A = function(y, _, O) { var z = ["A", "B", "C", "D", "E", "H", "L", "M", "P", "R", "S", "T"]; - return S.getFullYear().toString().substr(2) + z[S.getMonth()] + O.pad(S.getDate() + (_.toLowerCase() === "female" ? 40 : 0), 2); - }, A = function(S) { + return y.getFullYear().toString().substr(2) + z[y.getMonth()] + O.pad(y.getDate() + (_.toLowerCase() === "female" ? 40 : 0), 2); + }, v = function(y) { for (var _ = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ", O = "ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ", z = "ABCDEFGHIJKLMNOPQRSTUVWXYZ", J = "BAKPLCQDREVOSFTGUHMINJWZYX", V = 0, U = 0; U < 15; U++) - U % 2 !== 0 ? V += z.indexOf(O[_.indexOf(S[U])]) : V += J.indexOf(O[_.indexOf(S[U])]); + U % 2 !== 0 ? V += z.indexOf(O[_.indexOf(y[U])]) : V += J.indexOf(O[_.indexOf(y[U])]); return z[V % 26]; }; - return P = P.concat(f(c, !0), f(n), y(u, a, this), C.toUpperCase().split("")).join(""), P += A(P.toUpperCase()), P.toUpperCase(); + return P = P.concat(f(c, !0), f(n), A(m, a, this), C.toUpperCase().split("")).join(""), P += v(P.toUpperCase()), P.toUpperCase(); }, i.prototype.pl_pesel = function() { for (var e = this.natural({ min: 1, max: 9999999999 }), a = this.pad(e, 10).split(""), n = 0; n < a.length; n++) a[n] = parseInt(a[n]); @@ -1108,7 +1108,7 @@ var ie = { exports: {} }; var c = (8 * a[0] + 9 * a[1] + 2 * a[2] + 3 * a[3] + 4 * a[4] + 5 * a[5] + 6 * a[6] + 7 * a[7]) % 11; return c === 10 && (c = 0), a.join("") + c; }, i.prototype.note = function(e) { - e = s(e, { notes: "flatKey" }); + e = l(e, { notes: "flatKey" }); var a = { naturals: ["C", "D", "E", "F", "G", "A", "B"], flats: ["D\u266D", "E\u266D", "G\u266D", "A\u266D", "B\u266D"], @@ -1117,9 +1117,9 @@ var ie = { exports: {} }; return a.all = a.naturals.concat(a.flats.concat(a.sharps)), a.flatKey = a.naturals.concat(a.flats), a.sharpKey = a.naturals.concat(a.sharps), this.pickone(a[e.notes]); }, i.prototype.midi_note = function(e) { var a = 0, n = 127; - return e = s(e, { min: a, max: n }), this.integer({ min: e.min, max: e.max }); + return e = l(e, { min: a, max: n }), this.integer({ min: e.min, max: e.max }); }, i.prototype.chord_quality = function(e) { - e = s(e, { jazz: !0 }); + e = l(e, { jazz: !0 }); var a = ["maj", "min", "aug", "dim"]; return e.jazz && (a = [ "maj7", @@ -1130,46 +1130,46 @@ var ie = { exports: {} }; "\xF8" ]), this.pickone(a); }, i.prototype.chord = function(e) { - return e = s(e), this.note(e) + this.chord_quality(e); + return e = l(e), this.note(e) + this.chord_quality(e); }, i.prototype.tempo = function(e) { var a = 40, n = 320; - return e = s(e, { min: a, max: n }), this.integer({ min: e.min, max: e.max }); + return e = l(e, { min: a, max: n }), this.integer({ min: e.min, max: e.max }); }, i.prototype.coin = function() { return this.bool() ? "heads" : "tails"; }; - function M(e) { + function S(e) { return function() { return this.natural(e); }; } - i.prototype.d4 = M({ min: 1, max: 4 }), i.prototype.d6 = M({ min: 1, max: 6 }), i.prototype.d8 = M({ min: 1, max: 8 }), i.prototype.d10 = M({ min: 1, max: 10 }), i.prototype.d12 = M({ min: 1, max: 12 }), i.prototype.d20 = M({ min: 1, max: 20 }), i.prototype.d30 = M({ min: 1, max: 30 }), i.prototype.d100 = M({ min: 1, max: 100 }), i.prototype.rpg = function(e, a) { - if (a = s(a), e) { + i.prototype.d4 = S({ min: 1, max: 4 }), i.prototype.d6 = S({ min: 1, max: 6 }), i.prototype.d8 = S({ min: 1, max: 8 }), i.prototype.d10 = S({ min: 1, max: 10 }), i.prototype.d12 = S({ min: 1, max: 12 }), i.prototype.d20 = S({ min: 1, max: 20 }), i.prototype.d30 = S({ min: 1, max: 30 }), i.prototype.d100 = S({ min: 1, max: 100 }), i.prototype.rpg = function(e, a) { + if (a = l(a), e) { var n = e.toLowerCase().split("d"), c = []; if (n.length !== 2 || !parseInt(n[0], 10) || !parseInt(n[1], 10)) throw new Error("Chance: Invalid format provided. Please provide #d# where the first # is the number of dice to roll, the second # is the max of each die"); - for (var u = n[0]; u > 0; u--) - c[u - 1] = this.natural({ min: 1, max: n[1] }); + for (var m = n[0]; m > 0; m--) + c[m - 1] = this.natural({ min: 1, max: n[1] }); return typeof a.sum < "u" && a.sum ? c.reduce(function(C, P) { return C + P; }) : c; } else throw new RangeError("Chance: A type of die roll must be included"); }, i.prototype.guid = function(e) { - e = s(e, { version: 5 }); + e = l(e, { version: 5 }); var a = "abcdef1234567890", n = "ab89", c = this.string({ pool: a, length: 8 }) + "-" + this.string({ pool: a, length: 4 }) + "-" + // The Version e.version + this.string({ pool: a, length: 3 }) + "-" + // The Variant this.string({ pool: n, length: 1 }) + this.string({ pool: a, length: 3 }) + "-" + this.string({ pool: a, length: 12 }); return c; }, i.prototype.hash = function(e) { - e = s(e, { length: 40, casing: "lower" }); - var a = e.casing === "upper" ? g.toUpperCase() : g; + e = l(e, { length: 40, casing: "lower" }); + var a = e.casing === "upper" ? p.toUpperCase() : p; return this.string({ pool: a, length: e.length }); }, i.prototype.luhn_check = function(e) { var a = e.toString(), n = +a.substring(a.length - 1); return n === this.luhn_calculate(+a.substring(0, a.length - 1)); }, i.prototype.luhn_calculate = function(e) { - for (var a = e.toString().split("").reverse(), n = 0, c, u = 0, C = a.length; C > u; ++u) - c = +a[u], u % 2 === 0 && (c *= 2, c > 9 && (c -= 9)), n += c; + for (var a = e.toString().split("").reverse(), n = 0, c, m = 0, C = a.length; C > m; ++m) + c = +a[m], m % 2 === 0 && (c *= 2, c > 9 && (c -= 9)), n += c; return n * 9 % 10; }, i.prototype.md5 = function(e) { var a = { str: "", key: null, raw: !1 }; @@ -1183,29 +1183,29 @@ var ie = { exports: {} }; if (e.constructor === "Array") return null; } - if (a = s(e, a), !a.str) + if (a = l(e, a), !a.str) throw new Error("A parameter is required to return an md5 hash."); return this.bimd5.md5(a.str, a.key, a.raw); }, i.prototype.file = function(e) { - var a = e || {}, n = "fileExtension", c = Object.keys(this.get("fileExtension")), u, C; - if (u = this.word({ length: a.length }), a.extension) - return C = a.extension, u + "." + C; + var a = e || {}, n = "fileExtension", c = Object.keys(this.get("fileExtension")), m, C; + if (m = this.word({ length: a.length }), a.extension) + return C = a.extension, m + "." + C; if (a.extensions) { if (Array.isArray(a.extensions)) - return C = this.pickone(a.extensions), u + "." + C; + return C = this.pickone(a.extensions), m + "." + C; if (a.extensions.constructor === Object) { var P = a.extensions, f = Object.keys(P); - return C = this.pickone(P[this.pickone(f)]), u + "." + C; + return C = this.pickone(P[this.pickone(f)]), m + "." + C; } throw new Error("Chance: Extensions must be an Array or Object"); } if (a.fileType) { - var y = a.fileType; - if (c.indexOf(y) !== -1) - return C = this.pickone(this.get(n)[y]), u + "." + C; + var A = a.fileType; + if (c.indexOf(A) !== -1) + return C = this.pickone(this.get(n)[A]), m + "." + C; throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'"); } - return C = this.pickone(this.get(n)[this.pickone(c)]), u + "." + C; + return C = this.pickone(this.get(n)[this.pickone(c)]), m + "." + C; }, i.prototype.fileWithContent = function(e) { var a = e || {}, n = "fileName" in a ? a.fileName : this.file().split(".")[0]; if (n += "." + ("fileExtension" in a ? a.fileExtension : this.file().split(".")[1]), typeof a.fileSize != "number") @@ -1216,7 +1216,7 @@ var ie = { exports: {} }; }; return c; }; - var L = { + var E = { firstNames: { male: { en: ["James", "John", "Robert", "Michael", "William", "David", "Richard", "Joseph", "Charles", "Thomas", "Christopher", "Daniel", "Matthew", "George", "Donald", "Anthony", "Paul", "Mark", "Edward", "Steven", "Kenneth", "Andrew", "Brian", "Joshua", "Kevin", "Ronald", "Timothy", "Jason", "Jeffrey", "Frank", "Gary", "Ryan", "Nicholas", "Eric", "Stephen", "Jacob", "Larry", "Jonathan", "Scott", "Raymond", "Justin", "Brandon", "Gregory", "Samuel", "Benjamin", "Patrick", "Jack", "Henry", "Walter", "Dennis", "Jerry", "Alexander", "Peter", "Tyler", "Douglas", "Harold", "Aaron", "Jose", "Adam", "Arthur", "Zachary", "Carl", "Nathan", "Albert", "Kyle", "Lawrence", "Joe", "Willie", "Gerald", "Roger", "Keith", "Jeremy", "Terry", "Harry", "Ralph", "Sean", "Jesse", "Roy", "Louis", "Billy", "Austin", "Bruce", "Eugene", "Christian", "Bryan", "Wayne", "Russell", "Howard", "Fred", "Ethan", "Jordan", "Philip", "Alan", "Juan", "Randy", "Vincent", "Bobby", "Dylan", "Johnny", "Phillip", "Victor", "Clarence", "Ernest", "Martin", "Craig", "Stanley", "Shawn", "Travis", "Bradley", "Leonard", "Earl", "Gabriel", "Jimmy", "Francis", "Todd", "Noah", "Danny", "Dale", "Cody", "Carlos", "Allen", "Frederick", "Logan", "Curtis", "Alex", "Joel", "Luis", "Norman", "Marvin", "Glenn", "Tony", "Nathaniel", "Rodney", "Melvin", "Alfred", "Steve", "Cameron", "Chad", "Edwin", "Caleb", "Evan", "Antonio", "Lee", "Herbert", "Jeffery", "Isaac", "Derek", "Ricky", "Marcus", "Theodore", "Elijah", "Luke", "Jesus", "Eddie", "Troy", "Mike", "Dustin", "Ray", "Adrian", "Bernard", "Leroy", "Angel", "Randall", "Wesley", "Ian", "Jared", "Mason", "Hunter", "Calvin", "Oscar", "Clifford", "Jay", "Shane", "Ronnie", "Barry", "Lucas", "Corey", "Manuel", "Leo", "Tommy", "Warren", "Jackson", "Isaiah", "Connor", "Don", "Dean", "Jon", "Julian", "Miguel", "Bill", "Lloyd", "Charlie", "Mitchell", "Leon", "Jerome", "Darrell", "Jeremiah", "Alvin", "Brett", "Seth", "Floyd", "Jim", "Blake", "Micheal", "Gordon", "Trevor", "Lewis", "Erik", "Edgar", "Vernon", "Devin", "Gavin", "Jayden", "Chris", "Clyde", "Tom", "Derrick", "Mario", "Brent", "Marc", "Herman", "Chase", "Dominic", "Ricardo", "Franklin", "Maurice", "Max", "Aiden", "Owen", "Lester", "Gilbert", "Elmer", "Gene", "Francisco", "Glen", "Cory", "Garrett", "Clayton", "Sam", "Jorge", "Chester", "Alejandro", "Jeff", "Harvey", "Milton", "Cole", "Ivan", "Andre", "Duane", "Landon"], @@ -7027,15 +7027,15 @@ var ie = { exports: {} }; "sadness", "fear" ] - }, w = Object.prototype.hasOwnProperty, E = Object.keys || function(e) { + }, D = Object.prototype.hasOwnProperty, L = Object.keys || function(e) { var a = []; for (var n in e) - w.call(e, n) && a.push(n); + D.call(e, n) && a.push(n); return a; }; - function D(e, a) { - for (var n = E(e), c, u = 0, C = n.length; u < C; u++) - c = n[u], a[c] = e[c] || a[c]; + function N(e, a) { + for (var n = L(e), c, m = 0, C = n.length; m < C; m++) + c = n[m], a[c] = e[c] || a[c]; } function F(e, a) { for (var n = 0, c = e.length; n < c; n++) @@ -7043,16 +7043,16 @@ var ie = { exports: {} }; } function R(e, a) { var n = Array.isArray(e), c = a || (n ? new Array(e.length) : {}); - return n ? F(e, c) : D(e, c), c; + return n ? F(e, c) : N(e, c), c; } i.prototype.get = function(e) { - return R(L[e]); + return R(E[e]); }, i.prototype.mac_address = function(e) { - e = s(e), e.separator || (e.separator = e.networkVersion ? "." : ":"); + e = l(e), e.separator || (e.separator = e.networkVersion ? "." : ":"); var a = "ABCDEF1234567890", n = ""; return e.networkVersion ? n = this.n(this.string, 3, { pool: a, length: 4 }).join(e.separator) : n = this.n(this.string, 6, { pool: a, length: 2 }).join(e.separator), n; }, i.prototype.normal = function(e) { - if (e = s(e, { mean: 0, dev: 1, pool: [] }), t( + if (e = l(e, { mean: 0, dev: 1, pool: [] }), t( e.pool.constructor !== Array, "Chance: The pool option must be a valid array." ), t( @@ -7063,11 +7063,11 @@ var ie = { exports: {} }; "Chance: Standard deviation (dev) must be a number" ), e.pool.length > 0) return this.normal_pool(e); - var a, n, c, u, C = e.mean, P = e.dev; + var a, n, c, m, C = e.mean, P = e.dev; do n = this.random() * 2 - 1, c = this.random() * 2 - 1, a = n * n + c * c; while (a >= 1); - return u = n * Math.sqrt(-2 * Math.log(a) / a), P * u + C; + return m = n * Math.sqrt(-2 * Math.log(a) / a), P * m + C; }, i.prototype.normal_pool = function(e) { var a = 0; do { @@ -7078,7 +7078,7 @@ var ie = { exports: {} }; } while (a < 100); throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust."); }, i.prototype.radio = function(e) { - e = s(e, { side: "?" }); + e = l(e, { side: "?" }); var a = ""; switch (e.side.toLowerCase()) { case "east": @@ -7095,7 +7095,7 @@ var ie = { exports: {} }; } return a + this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }); }, i.prototype.set = function(e, a) { - typeof e == "string" ? L[e] = a : L = R(e, L); + typeof e == "string" ? E[e] = a : E = R(e, E); }, i.prototype.tv = function(e) { return this.radio(e); }, i.prototype.cnpj = function() { @@ -7117,10 +7117,10 @@ var ie = { exports: {} }; for (this.mt[0] = e >>> 0, this.mti = 1; this.mti < this.N; this.mti++) e = this.mt[this.mti - 1] ^ this.mt[this.mti - 1] >>> 30, this.mt[this.mti] = (((e & 4294901760) >>> 16) * 1812433253 << 16) + (e & 65535) * 1812433253 + this.mti, this.mt[this.mti] >>>= 0; }, H.prototype.init_by_array = function(e, a) { - var n = 1, c = 0, u, C; - for (this.init_genrand(19650218), u = this.N > a ? this.N : a; u; u--) + var n = 1, c = 0, m, C; + for (this.init_genrand(19650218), m = this.N > a ? this.N : a; m; m--) C = this.mt[n - 1] ^ this.mt[n - 1] >>> 30, this.mt[n] = (this.mt[n] ^ (((C & 4294901760) >>> 16) * 1664525 << 16) + (C & 65535) * 1664525) + e[c] + c, this.mt[n] >>>= 0, n++, c++, n >= this.N && (this.mt[0] = this.mt[this.N - 1], n = 1), c >= a && (c = 0); - for (u = this.N - 1; u; u--) + for (m = this.N - 1; m; m--) C = this.mt[n - 1] ^ this.mt[n - 1] >>> 30, this.mt[n] = (this.mt[n] ^ (((C & 4294901760) >>> 16) * 1566083941 << 16) + (C & 65535) * 1566083941) - n, this.mt[n] >>>= 0, n++, n >= this.N && (this.mt[0] = this.mt[this.N - 1], n = 1); this.mt[0] = 2147483648; }, H.prototype.genrand_int32 = function() { @@ -7149,26 +7149,26 @@ var ie = { exports: {} }; var G = function() { }; G.prototype.VERSION = "1.0.1", G.prototype.safe_add = function(a, n) { - var c = (a & 65535) + (n & 65535), u = (a >> 16) + (n >> 16) + (c >> 16); - return u << 16 | c & 65535; + var c = (a & 65535) + (n & 65535), m = (a >> 16) + (n >> 16) + (c >> 16); + return m << 16 | c & 65535; }, G.prototype.bit_roll = function(e, a) { return e << a | e >>> 32 - a; - }, G.prototype.md5_cmn = function(e, a, n, c, u, C) { - return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a, e), this.safe_add(c, C)), u), n); - }, G.prototype.md5_ff = function(e, a, n, c, u, C, P) { - return this.md5_cmn(a & n | ~a & c, e, a, u, C, P); - }, G.prototype.md5_gg = function(e, a, n, c, u, C, P) { - return this.md5_cmn(a & c | n & ~c, e, a, u, C, P); - }, G.prototype.md5_hh = function(e, a, n, c, u, C, P) { - return this.md5_cmn(a ^ n ^ c, e, a, u, C, P); - }, G.prototype.md5_ii = function(e, a, n, c, u, C, P) { - return this.md5_cmn(n ^ (a | ~c), e, a, u, C, P); + }, G.prototype.md5_cmn = function(e, a, n, c, m, C) { + return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a, e), this.safe_add(c, C)), m), n); + }, G.prototype.md5_ff = function(e, a, n, c, m, C, P) { + return this.md5_cmn(a & n | ~a & c, e, a, m, C, P); + }, G.prototype.md5_gg = function(e, a, n, c, m, C, P) { + return this.md5_cmn(a & c | n & ~c, e, a, m, C, P); + }, G.prototype.md5_hh = function(e, a, n, c, m, C, P) { + return this.md5_cmn(a ^ n ^ c, e, a, m, C, P); + }, G.prototype.md5_ii = function(e, a, n, c, m, C, P) { + return this.md5_cmn(n ^ (a | ~c), e, a, m, C, P); }, G.prototype.binl_md5 = function(e, a) { e[a >> 5] |= 128 << a % 32, e[(a + 64 >>> 9 << 4) + 14] = a; - var n, c, u, C, P, f = 1732584193, y = -271733879, A = -1732584194, S = 271733878; + var n, c, m, C, P, f = 1732584193, A = -271733879, v = -1732584194, y = 271733878; for (n = 0; n < e.length; n += 16) - c = f, u = y, C = A, P = S, f = this.md5_ff(f, y, A, S, e[n], 7, -680876936), S = this.md5_ff(S, f, y, A, e[n + 1], 12, -389564586), A = this.md5_ff(A, S, f, y, e[n + 2], 17, 606105819), y = this.md5_ff(y, A, S, f, e[n + 3], 22, -1044525330), f = this.md5_ff(f, y, A, S, e[n + 4], 7, -176418897), S = this.md5_ff(S, f, y, A, e[n + 5], 12, 1200080426), A = this.md5_ff(A, S, f, y, e[n + 6], 17, -1473231341), y = this.md5_ff(y, A, S, f, e[n + 7], 22, -45705983), f = this.md5_ff(f, y, A, S, e[n + 8], 7, 1770035416), S = this.md5_ff(S, f, y, A, e[n + 9], 12, -1958414417), A = this.md5_ff(A, S, f, y, e[n + 10], 17, -42063), y = this.md5_ff(y, A, S, f, e[n + 11], 22, -1990404162), f = this.md5_ff(f, y, A, S, e[n + 12], 7, 1804603682), S = this.md5_ff(S, f, y, A, e[n + 13], 12, -40341101), A = this.md5_ff(A, S, f, y, e[n + 14], 17, -1502002290), y = this.md5_ff(y, A, S, f, e[n + 15], 22, 1236535329), f = this.md5_gg(f, y, A, S, e[n + 1], 5, -165796510), S = this.md5_gg(S, f, y, A, e[n + 6], 9, -1069501632), A = this.md5_gg(A, S, f, y, e[n + 11], 14, 643717713), y = this.md5_gg(y, A, S, f, e[n], 20, -373897302), f = this.md5_gg(f, y, A, S, e[n + 5], 5, -701558691), S = this.md5_gg(S, f, y, A, e[n + 10], 9, 38016083), A = this.md5_gg(A, S, f, y, e[n + 15], 14, -660478335), y = this.md5_gg(y, A, S, f, e[n + 4], 20, -405537848), f = this.md5_gg(f, y, A, S, e[n + 9], 5, 568446438), S = this.md5_gg(S, f, y, A, e[n + 14], 9, -1019803690), A = this.md5_gg(A, S, f, y, e[n + 3], 14, -187363961), y = this.md5_gg(y, A, S, f, e[n + 8], 20, 1163531501), f = this.md5_gg(f, y, A, S, e[n + 13], 5, -1444681467), S = this.md5_gg(S, f, y, A, e[n + 2], 9, -51403784), A = this.md5_gg(A, S, f, y, e[n + 7], 14, 1735328473), y = this.md5_gg(y, A, S, f, e[n + 12], 20, -1926607734), f = this.md5_hh(f, y, A, S, e[n + 5], 4, -378558), S = this.md5_hh(S, f, y, A, e[n + 8], 11, -2022574463), A = this.md5_hh(A, S, f, y, e[n + 11], 16, 1839030562), y = this.md5_hh(y, A, S, f, e[n + 14], 23, -35309556), f = this.md5_hh(f, y, A, S, e[n + 1], 4, -1530992060), S = this.md5_hh(S, f, y, A, e[n + 4], 11, 1272893353), A = this.md5_hh(A, S, f, y, e[n + 7], 16, -155497632), y = this.md5_hh(y, A, S, f, e[n + 10], 23, -1094730640), f = this.md5_hh(f, y, A, S, e[n + 13], 4, 681279174), S = this.md5_hh(S, f, y, A, e[n], 11, -358537222), A = this.md5_hh(A, S, f, y, e[n + 3], 16, -722521979), y = this.md5_hh(y, A, S, f, e[n + 6], 23, 76029189), f = this.md5_hh(f, y, A, S, e[n + 9], 4, -640364487), S = this.md5_hh(S, f, y, A, e[n + 12], 11, -421815835), A = this.md5_hh(A, S, f, y, e[n + 15], 16, 530742520), y = this.md5_hh(y, A, S, f, e[n + 2], 23, -995338651), f = this.md5_ii(f, y, A, S, e[n], 6, -198630844), S = this.md5_ii(S, f, y, A, e[n + 7], 10, 1126891415), A = this.md5_ii(A, S, f, y, e[n + 14], 15, -1416354905), y = this.md5_ii(y, A, S, f, e[n + 5], 21, -57434055), f = this.md5_ii(f, y, A, S, e[n + 12], 6, 1700485571), S = this.md5_ii(S, f, y, A, e[n + 3], 10, -1894986606), A = this.md5_ii(A, S, f, y, e[n + 10], 15, -1051523), y = this.md5_ii(y, A, S, f, e[n + 1], 21, -2054922799), f = this.md5_ii(f, y, A, S, e[n + 8], 6, 1873313359), S = this.md5_ii(S, f, y, A, e[n + 15], 10, -30611744), A = this.md5_ii(A, S, f, y, e[n + 6], 15, -1560198380), y = this.md5_ii(y, A, S, f, e[n + 13], 21, 1309151649), f = this.md5_ii(f, y, A, S, e[n + 4], 6, -145523070), S = this.md5_ii(S, f, y, A, e[n + 11], 10, -1120210379), A = this.md5_ii(A, S, f, y, e[n + 2], 15, 718787259), y = this.md5_ii(y, A, S, f, e[n + 9], 21, -343485551), f = this.safe_add(f, c), y = this.safe_add(y, u), A = this.safe_add(A, C), S = this.safe_add(S, P); - return [f, y, A, S]; + c = f, m = A, C = v, P = y, f = this.md5_ff(f, A, v, y, e[n], 7, -680876936), y = this.md5_ff(y, f, A, v, e[n + 1], 12, -389564586), v = this.md5_ff(v, y, f, A, e[n + 2], 17, 606105819), A = this.md5_ff(A, v, y, f, e[n + 3], 22, -1044525330), f = this.md5_ff(f, A, v, y, e[n + 4], 7, -176418897), y = this.md5_ff(y, f, A, v, e[n + 5], 12, 1200080426), v = this.md5_ff(v, y, f, A, e[n + 6], 17, -1473231341), A = this.md5_ff(A, v, y, f, e[n + 7], 22, -45705983), f = this.md5_ff(f, A, v, y, e[n + 8], 7, 1770035416), y = this.md5_ff(y, f, A, v, e[n + 9], 12, -1958414417), v = this.md5_ff(v, y, f, A, e[n + 10], 17, -42063), A = this.md5_ff(A, v, y, f, e[n + 11], 22, -1990404162), f = this.md5_ff(f, A, v, y, e[n + 12], 7, 1804603682), y = this.md5_ff(y, f, A, v, e[n + 13], 12, -40341101), v = this.md5_ff(v, y, f, A, e[n + 14], 17, -1502002290), A = this.md5_ff(A, v, y, f, e[n + 15], 22, 1236535329), f = this.md5_gg(f, A, v, y, e[n + 1], 5, -165796510), y = this.md5_gg(y, f, A, v, e[n + 6], 9, -1069501632), v = this.md5_gg(v, y, f, A, e[n + 11], 14, 643717713), A = this.md5_gg(A, v, y, f, e[n], 20, -373897302), f = this.md5_gg(f, A, v, y, e[n + 5], 5, -701558691), y = this.md5_gg(y, f, A, v, e[n + 10], 9, 38016083), v = this.md5_gg(v, y, f, A, e[n + 15], 14, -660478335), A = this.md5_gg(A, v, y, f, e[n + 4], 20, -405537848), f = this.md5_gg(f, A, v, y, e[n + 9], 5, 568446438), y = this.md5_gg(y, f, A, v, e[n + 14], 9, -1019803690), v = this.md5_gg(v, y, f, A, e[n + 3], 14, -187363961), A = this.md5_gg(A, v, y, f, e[n + 8], 20, 1163531501), f = this.md5_gg(f, A, v, y, e[n + 13], 5, -1444681467), y = this.md5_gg(y, f, A, v, e[n + 2], 9, -51403784), v = this.md5_gg(v, y, f, A, e[n + 7], 14, 1735328473), A = this.md5_gg(A, v, y, f, e[n + 12], 20, -1926607734), f = this.md5_hh(f, A, v, y, e[n + 5], 4, -378558), y = this.md5_hh(y, f, A, v, e[n + 8], 11, -2022574463), v = this.md5_hh(v, y, f, A, e[n + 11], 16, 1839030562), A = this.md5_hh(A, v, y, f, e[n + 14], 23, -35309556), f = this.md5_hh(f, A, v, y, e[n + 1], 4, -1530992060), y = this.md5_hh(y, f, A, v, e[n + 4], 11, 1272893353), v = this.md5_hh(v, y, f, A, e[n + 7], 16, -155497632), A = this.md5_hh(A, v, y, f, e[n + 10], 23, -1094730640), f = this.md5_hh(f, A, v, y, e[n + 13], 4, 681279174), y = this.md5_hh(y, f, A, v, e[n], 11, -358537222), v = this.md5_hh(v, y, f, A, e[n + 3], 16, -722521979), A = this.md5_hh(A, v, y, f, e[n + 6], 23, 76029189), f = this.md5_hh(f, A, v, y, e[n + 9], 4, -640364487), y = this.md5_hh(y, f, A, v, e[n + 12], 11, -421815835), v = this.md5_hh(v, y, f, A, e[n + 15], 16, 530742520), A = this.md5_hh(A, v, y, f, e[n + 2], 23, -995338651), f = this.md5_ii(f, A, v, y, e[n], 6, -198630844), y = this.md5_ii(y, f, A, v, e[n + 7], 10, 1126891415), v = this.md5_ii(v, y, f, A, e[n + 14], 15, -1416354905), A = this.md5_ii(A, v, y, f, e[n + 5], 21, -57434055), f = this.md5_ii(f, A, v, y, e[n + 12], 6, 1700485571), y = this.md5_ii(y, f, A, v, e[n + 3], 10, -1894986606), v = this.md5_ii(v, y, f, A, e[n + 10], 15, -1051523), A = this.md5_ii(A, v, y, f, e[n + 1], 21, -2054922799), f = this.md5_ii(f, A, v, y, e[n + 8], 6, 1873313359), y = this.md5_ii(y, f, A, v, e[n + 15], 10, -30611744), v = this.md5_ii(v, y, f, A, e[n + 6], 15, -1560198380), A = this.md5_ii(A, v, y, f, e[n + 13], 21, 1309151649), f = this.md5_ii(f, A, v, y, e[n + 4], 6, -145523070), y = this.md5_ii(y, f, A, v, e[n + 11], 10, -1120210379), v = this.md5_ii(v, y, f, A, e[n + 2], 15, 718787259), A = this.md5_ii(A, v, y, f, e[n + 9], 21, -343485551), f = this.safe_add(f, c), A = this.safe_add(A, m), v = this.safe_add(v, C), y = this.safe_add(y, P); + return [f, A, v, y]; }, G.prototype.binl2rstr = function(e) { var a, n = ""; for (a = 0; a < e.length * 32; a += 8) @@ -7184,14 +7184,14 @@ var ie = { exports: {} }; }, G.prototype.rstr_md5 = function(e) { return this.binl2rstr(this.binl_md5(this.rstr2binl(e), e.length * 8)); }, G.prototype.rstr_hmac_md5 = function(e, a) { - var n, c = this.rstr2binl(e), u = [], C = [], P; - for (u[15] = C[15] = void 0, c.length > 16 && (c = this.binl_md5(c, e.length * 8)), n = 0; n < 16; n += 1) - u[n] = c[n] ^ 909522486, C[n] = c[n] ^ 1549556828; - return P = this.binl_md5(u.concat(this.rstr2binl(a)), 512 + a.length * 8), this.binl2rstr(this.binl_md5(C.concat(P), 512 + 128)); + var n, c = this.rstr2binl(e), m = [], C = [], P; + for (m[15] = C[15] = void 0, c.length > 16 && (c = this.binl_md5(c, e.length * 8)), n = 0; n < 16; n += 1) + m[n] = c[n] ^ 909522486, C[n] = c[n] ^ 1549556828; + return P = this.binl_md5(m.concat(this.rstr2binl(a)), 512 + a.length * 8), this.binl2rstr(this.binl_md5(C.concat(P), 512 + 128)); }, G.prototype.rstr2hex = function(e) { - var a = "0123456789abcdef", n = "", c, u; - for (u = 0; u < e.length; u += 1) - c = e.charCodeAt(u), n += a.charAt(c >>> 4 & 15) + a.charAt(c & 15); + var a = "0123456789abcdef", n = "", c, m; + for (m = 0; m < e.length; m += 1) + c = e.charCodeAt(m), n += a.charAt(c >>> 4 & 15) + a.charAt(c & 15); return n; }, G.prototype.str2rstr_utf8 = function(e) { return unescape(encodeURIComponent(e)); @@ -7210,49 +7210,49 @@ var ie = { exports: {} }; })(ie, ie.exports); var pe = ie.exports; const ge = /* @__PURE__ */ be(pe); -function se(d, h, k, N) { +function se(d, h, x, w) { var I = new ge(te); - k == null && console.log(); - let x = k.toUpperCase(), p = d.toUpperCase(), g = h.toUpperCase(); - if (N != null && 0 < N.length) { - let r = 0, t = N.length; - var T = "'"; - (x.startsWith("INTEGER") || x.startsWith("NUMBER") || x.startsWith("DATE")) && (T = ""); - let o = N[Math.floor(X() * (t - r)) + r]; - return o.toLowerCase && o.toLowerCase() == "null" && (T = ""), o.replaceAll && (o = o.replaceAll("'", "''")), T + o + T; + x == null && console.log(); + let k = x.toUpperCase(), b = d.toUpperCase(), p = h.toUpperCase(); + if (w != null && 0 < w.length) { + let r = 0, t = w.length; + var M = "'"; + (k.startsWith("INTEGER") || k.startsWith("NUMBER") || k.startsWith("DATE")) && (M = ""); + let o = w[Math.floor(X() * (t - r)) + r]; + return o.toLowerCase && o.toLowerCase() == "null" && (M = ""), o.replaceAll && (o = o.replaceAll("'", "''")), M + o + M; } - if (g == "NAME" && 0 <= p.indexOf("DEPARTMENT")) { - var b = ["Sales", "Finance", "Delivery", "Manufacturing"]; - let r = 0, t = b.length; - return "'" + b[Math.floor(X() * (t - r)) + r] + "'"; + if (p == "NAME" && 0 <= b.indexOf("DEPARTMENT")) { + var B = ["Sales", "Finance", "Delivery", "Manufacturing"]; + let r = 0, t = B.length; + return "'" + B[Math.floor(X() * (t - r)) + r] + "'"; } - if (I[g.toLowerCase()] != null && g.indexOf("NAME") < 0) - return "'" + I[g.toLowerCase()]() + "'"; - if (g == "FIRST_NAME") + if (I[p.toLowerCase()] != null && p.indexOf("NAME") < 0) + return "'" + I[p.toLowerCase()]() + "'"; + if (p == "FIRST_NAME") return "'" + I.first() + "'"; - if (g == "LAST_NAME") + if (p == "LAST_NAME") return "'" + I.last() + "'"; - if (0 <= g.indexOf("NAME")) + if (0 <= p.indexOf("NAME")) return "'" + I.name() + "'"; - if (0 < g.indexOf("ADDRESS")) + if (0 < p.indexOf("ADDRESS")) return "'" + I.address() + "'"; - if (g == "LOCATION") + if (p == "LOCATION") return "'" + I.city() + "'"; - if (g == "DESCRIPTION") + if (p == "DESCRIPTION") return "'" + I.paragraph({ sentences: 2 }) + "'"; - if (g == "JOB") { + if (p == "JOB") { var i = ["Engineer", "Consultant", "Architect", "Manager", "Analyst", "Specialist", "Evangelist", "Salesman"]; let r = 0, t = i.length; return "'" + i[Math.floor(X() * (t - r)) + r] + "'"; } - if (x.startsWith("INTEGER") || x.startsWith("NUMBER")) { + if (k.startsWith("INTEGER") || k.startsWith("NUMBER")) { let r = 0, t = 100; return Math.floor(X() * (t - r)) + r; } - if (x.startsWith("DATE") || x.startsWith("TIMESTAMP")) { + if (k.startsWith("DATE") || k.startsWith("TIMESTAMP")) { let r = 0, t = 100; - var s = Math.floor(X() * (t - r)) + r; - return "sysdate-" + s; + var l = Math.floor(X() * (t - r)) + r; + return "sysdate-" + l; } return "'N/A'"; } @@ -7265,169 +7265,169 @@ function X() { return d - Math.floor(d); } var $ = function() { - function d(h, k) { - for (var N = [], I = "", x = 0; x < h.length; x++) { - for (var p = h.charAt(x), g = N.length, T = 0; T < k.length; T++) { - var b = k.charAt(T); - if (p == b) { - 0 < I.length && N.push(I), N.push(p), I = ""; + function d(h, x) { + for (var w = [], I = "", k = 0; k < h.length; k++) { + for (var b = h.charAt(k), p = w.length, M = 0; M < x.length; M++) { + var B = x.charAt(M); + if (b == B) { + 0 < I.length && w.push(I), w.push(b), I = ""; continue; } } - g == N.length && (I = I + p); + p == w.length && (I = I + b); } - return 0 < I.length && N.push(I), N; + return 0 < I.length && w.push(I), w; } return d; }(), Z = function() { - function d(I, x, p, g, T, b) { - this.type = g, this.value = I, this.begin = x, this.end = p, this.line = T, this.col = b, this.toString = function() { - return "{type:" + g + ",value:" + I + "}"; + function d(I, k, b, p, M, B) { + this.type = p, this.value = I, this.begin = k, this.end = b, this.line = M, this.col = B, this.toString = function() { + return "{type:" + p + ",value:" + I + "}"; }, this.isStandardLiteral = function() { if (this.value.length < 2 || !(this.value.charAt(0) == "'" || this.value.charAt(0) == "n" || this.value.charAt(0) == "N")) return !1; - var s = this.value; - if (s.charAt(0) == "n" || s.charAt(0) == "N") { - if (s.length < 3) + var l = this.value; + if (l.charAt(0) == "n" || l.charAt(0) == "N") { + if (l.length < 3) return !1; - s = s.substring(1); + l = l.substring(1); } - return s.length < 2 ? !1 : s.charAt(0) == "'" && s.charAt(s.length - 1) == "'"; + return l.length < 2 ? !1 : l.charAt(0) == "'" && l.charAt(l.length - 1) == "'"; }, this.isAltLiteral = function() { if (this.value.length < 5 || !(this.value.charAt(0) == "q" || this.value.charAt(0) == "Q" || this.value.charAt(0) == "n" || this.value.charAt(0) == "N")) return !1; - var s = this.value; + var l = this.value; if (this.value.charAt(0) == "q" || this.value.charAt(0) == "Q") - s = s.substring(1); + l = l.substring(1); else if ( /*content.startsWith("Nq")*/ (this.value.charAt(0) == "n" || this.value.charAt(0) == "N") && (this.value.charAt(1) == "q" || this.value.charAt(1) == "Q") ) { - if (s.length < 6) + if (l.length < 6) return !1; - s = s.substring(2); + l = l.substring(2); } else return !1; - if (s.charAt(0) == "'" && s.charAt(s.length - 1) == "'") - s = s.substring(1, s.length - 1); + if (l.charAt(0) == "'" && l.charAt(l.length - 1) == "'") + l = l.substring(1, l.length - 1); else return !1; - return i(s.charAt(0)) == s.charAt(s.length - 1); + return i(l.charAt(0)) == l.charAt(l.length - 1); }; - function i(s) { - return s == "<" ? ">" : s == "[" ? "]" : s == "{" ? "}" : s == "(" ? ")" : s; + function i(l) { + return l == "<" ? ">" : l == "[" ? "]" : l == "{" ? "}" : l == "(" ? ")" : l; } } - function h(I, x, p) { - for (var g = [], T = `(){}[]^-|!*+.><='",;:%@?/\\#~` + p, b = ` + function h(I, k, b) { + for (var p = [], M = `(){}[]^-|!*+.><='",;:%@?/\\#~` + b, B = ` \r `, i = $( I, //".*-+/|><=()\'\", \n\r\t" - T + b - ), s = 0, r = 0, t = 0, o = 0; o < i.length; o++) { - var l = i[o], m = null; - if (g.length > 0 && (m = g[g.length - 1]), l == ` + M + B + ), l = 0, r = 0, t = 0, o = 0; o < i.length; o++) { + var s = i[o], u = null; + if (p.length > 0 && (u = p[p.length - 1]), s == ` ` ? (r++, t = 0) : o > 0 && i[o - 1] !== ` -` ? t = t + i[o - 1].length : t = 0, s += l.length, m != null && m.type == "comment" && (m.value.lastIndexOf("*/") != m.value.length - 2 || m.value == "/*/")) { - l == "*" || l == "/" ? m.value = m.value + l : m.value = "/* ... ", m.end = s, m != null && m.type == "comment" && m.value.lastIndexOf("*/") == m.value.length - 2 && m.value != "/*/" && (m.value = I.substring(m.begin, m.end)); +` ? t = t + i[o - 1].length : t = 0, l += s.length, u != null && u.type == "comment" && (u.value.lastIndexOf("*/") != u.value.length - 2 || u.value == "/*/")) { + s == "*" || s == "/" ? u.value = u.value + s : u.value = "/* ... ", u.end = l, u != null && u.type == "comment" && u.value.lastIndexOf("*/") == u.value.length - 2 && u.value != "/*/" && (u.value = I.substring(u.begin, u.end)); continue; } - if (m != null && (m.type == "line-comment" || m.type == "dbtools-command") && l != ` + if (u != null && (u.type == "line-comment" || u.type == "dbtools-command") && s != ` `) { - m.value = m.value + l; + u.value = u.value + s; continue; } - if (m != null && (m.type == "line-comment" || m.type == "dbtools-command") && l == ` -` && (m.end = m.begin + m.value.length), m != null && m.type == "quoted-string" && !(m.isStandardLiteral() || m.isAltLiteral())) { - m.value = m.value + l, m.end = m.begin + m.value.length; + if (u != null && (u.type == "line-comment" || u.type == "dbtools-command") && s == ` +` && (u.end = u.begin + u.value.length), u != null && u.type == "quoted-string" && !(u.isStandardLiteral() || u.isAltLiteral())) { + u.value = u.value + s, u.end = u.begin + u.value.length; continue; } - if (!(m != null && m.type == "dquoted-string" && l != '"' && !(m.value.endsWith('"') && m.value.length > 1))) { - if (m != null && m.type == "dquoted-string" && l == '"') { - m.end = s, m.value = I.substring(m.begin, m.end); + if (!(u != null && u.type == "dquoted-string" && s != '"' && !(u.value.endsWith('"') && u.value.length > 1))) { + if (u != null && u.type == "dquoted-string" && s == '"') { + u.end = l, u.value = I.substring(u.begin, u.end); continue; } - if (!(m != null && m.type == "bquoted-string" && l != "`" && !(m.value.endsWith("`") && m.value.length > 1))) { - if (m != null && m.type == "bquoted-string" && l == "`") { - m.end = s, m.value = I.substring(m.begin, m.end); + if (!(u != null && u.type == "bquoted-string" && s != "`" && !(u.value.endsWith("`") && u.value.length > 1))) { + if (u != null && u.type == "bquoted-string" && s == "`") { + u.end = l, u.value = I.substring(u.begin, u.end); continue; } - if (l == "*" && m != null && m.value == "/") { - m.value = m.value + l, m.end = m.begin + m.value.length, m.type = "comment"; + if (s == "*" && u != null && u.value == "/") { + u.value = u.value + s, u.end = u.begin + u.value.length, u.type = "comment"; continue; } - if (l == "-" && m != null && m.value == "-") { - m.value = m.value + l, m.type = "line-comment"; + if (s == "-" && u != null && u.value == "-") { + u.value = u.value + s, u.type = "line-comment"; continue; } - if ((l.toUpperCase() == "REM" || l.toUpperCase() == "REMA" || l.toUpperCase() == "REMAR" || l.toUpperCase() == "REMARK" || l.toUpperCase() == "PRO" || l.toUpperCase() == "PROM" || l.toUpperCase() == "PROMP" || l.toUpperCase() == "PROMPT") && (m == null || m.value == ` -` || m.value == "\r")) { - g.push(new d(l, s - l.length, -9, "line-comment", r, t)); + if ((s.toUpperCase() == "REM" || s.toUpperCase() == "REMA" || s.toUpperCase() == "REMAR" || s.toUpperCase() == "REMARK" || s.toUpperCase() == "PRO" || s.toUpperCase() == "PROM" || s.toUpperCase() == "PROMP" || s.toUpperCase() == "PROMPT") && (u == null || u.value == ` +` || u.value == "\r")) { + p.push(new d(s, l - s.length, -9, "line-comment", r, t)); continue; } - if (l.toUpperCase() == "SODA" && (m == null || m.value == ` -` || m.value == "\r")) { - g.push(new d(l, s - l.length, -9, "dbtools-command", r, t)); + if (s.toUpperCase() == "SODA" && (u == null || u.value == ` +` || u.value == "\r")) { + p.push(new d(s, l - s.length, -9, "dbtools-command", r, t)); continue; } - if (m != null && m.type == "identifier" && m.end == -11 && m.value.indexOf("@") == 0 && !(l == ` -` || l == "\r")) { - m.value = m.value + l; + if (u != null && u.type == "identifier" && u.end == -11 && u.value.indexOf("@") == 0 && !(s == ` +` || s == "\r")) { + u.value = u.value + s; continue; } - if (m != null && m.type == "identifier" && m.end == -11 && m.value.indexOf("@") == 0 && (l == ` -` || l == "\r")) { - m.end = s - 1, g.push(new d(l, s - 1, s, "ws", r, t)); + if (u != null && u.type == "identifier" && u.end == -11 && u.value.indexOf("@") == 0 && (s == ` +` || s == "\r")) { + u.end = l - 1, p.push(new d(s, l - 1, l, "ws", r, t)); continue; } - if (x && l == "'") { - m != null && (m.value.toUpperCase() == "Q" || m.value.toUpperCase() == "N" || m.value.toUpperCase() == "U" || m.value.toUpperCase() == "NQ") ? (m.value += l, m.type = "quoted-string") : g.push(new d(l, s - 1, -10, "quoted-string", r, t)); + if (k && s == "'") { + u != null && (u.value.toUpperCase() == "Q" || u.value.toUpperCase() == "N" || u.value.toUpperCase() == "U" || u.value.toUpperCase() == "NQ") ? (u.value += s, u.type = "quoted-string") : p.push(new d(s, l - 1, -10, "quoted-string", r, t)); continue; } - if (x && l == '"') { - g.push(new d(l, s - 1, -11, "dquoted-string", r, t)); + if (k && s == '"') { + p.push(new d(s, l - 1, -11, "dquoted-string", r, t)); continue; } - if (l == "`" && 0 <= T.indexOf("`")) { - g.push(new d(l, s - 1, -11, "bquoted-string", r, t)); + if (s == "`" && 0 <= M.indexOf("`")) { + p.push(new d(s, l - 1, -11, "bquoted-string", r, t)); continue; } - if (l.length == 1 && 0 <= T.indexOf(l)) { - g.push(new d(l, s - 1, s, "operation", r, t)); + if (s.length == 1 && 0 <= M.indexOf(s)) { + p.push(new d(s, l - 1, l, "operation", r, t)); continue; } - if (l.length == 1 && 0 <= b.indexOf(l)) { - g.push(new d(l, s - 1, s, "ws", r, t)); + if (s.length == 1 && 0 <= B.indexOf(s)) { + p.push(new d(s, l - 1, l, "ws", r, t)); continue; } - if ("0" <= l.charAt(0) && l.charAt(0) <= "9") { - k(l, g, s - l.length, r) || (l.charAt(l.length - 1) == "K" || l.charAt(l.length - 1) == "k" || l.charAt(l.length - 1) == "M" || l.charAt(l.length - 1) == "m" || l.charAt(l.length - 1) == "G" || l.charAt(l.length - 1) == "g" || l.charAt(l.length - 1) == "T" || l.charAt(l.length - 1) == "t" || l.charAt(l.length - 1) == "P" || l.charAt(l.length - 1) == "p" || l.charAt(l.length - 1) == "E" || l.charAt(l.length - 1) == "e" ? (g.push(new d(l.substring(0, l.length - 1), s - l.length, s - 1, "constant.numeric", r, t)), g.push(new d(l.substring(l.length - 1), s - 1, s, "constant.numeric", r, t))) : g.push(new d(l, s - l.length, s, "constant.numeric", r, t))); + if ("0" <= s.charAt(0) && s.charAt(0) <= "9") { + x(s, p, l - s.length, r) || (s.charAt(s.length - 1) == "K" || s.charAt(s.length - 1) == "k" || s.charAt(s.length - 1) == "M" || s.charAt(s.length - 1) == "m" || s.charAt(s.length - 1) == "G" || s.charAt(s.length - 1) == "g" || s.charAt(s.length - 1) == "T" || s.charAt(s.length - 1) == "t" || s.charAt(s.length - 1) == "P" || s.charAt(s.length - 1) == "p" || s.charAt(s.length - 1) == "E" || s.charAt(s.length - 1) == "e" ? (p.push(new d(s.substring(0, s.length - 1), l - s.length, l - 1, "constant.numeric", r, t)), p.push(new d(s.substring(s.length - 1), l - 1, l, "constant.numeric", r, t))) : p.push(new d(s, l - s.length, l, "constant.numeric", r, t))); continue; } - var v = "identifier"; - o + 1 < i.length && i[o + 1], g.push(new d(l, s - l.length, s, v, r, t)); + var g = "identifier"; + o + 1 < i.length && i[o + 1], p.push(new d(s, l - s.length, l, g, r, t)); } } } - if (g.length > 0) { - var m = g[g.length - 1]; - m.end = I.length; + if (p.length > 0) { + var u = p[p.length - 1]; + u.end = I.length; } - return g; + return p; } - function k(I, x, p, g) { + function x(I, k, b, p) { if (0 > I.indexOf("e") && 0 > I.indexOf("f") && 0 > I.indexOf("d")) return !1; 0 <= I.indexOf("e"), 0 <= I.indexOf("e"), !(0 <= I.indexOf("e")) && 0 <= I.indexOf("f"); - for (var T = $(I, "efd"), b = 0; b < T.length; b++) { - var i = T[b]; - p += i.length, "0" <= i.charAt(0) && i.charAt(0) <= "9" ? x.push(new d(i, p - i.length, p, "constant.numeric", g)) : x.push(new d(i, p - i.length, p, "identifier", g)); + for (var M = $(I, "efd"), B = 0; B < M.length; B++) { + var i = M[B]; + b += i.length, "0" <= i.charAt(0) && i.charAt(0) <= "9" ? k.push(new d(i, b - i.length, b, "constant.numeric", p)) : k.push(new d(i, b - i.length, b, "identifier", p)); } return !0; } - function N(I, x, p, g) { - for (var T = [], b = h(I, p, g), i = null, s = 0; s < b.length; s++) { - var r = b[s]; + function w(I, k, b, p) { + for (var M = [], B = h(I, b, p), i = null, l = 0; l < B.length; l++) { + var r = B[l]; if (r.type == "quoted-string") { if (i != null && i.type == "quoted-string") { i.value = i.value + r.value, i.end = r.end; @@ -7452,11 +7452,11 @@ var $ = function() { || token.value.equals("$ELSE") || token.value.equals("$THEN") ||*/ - r.value.indexOf("$$") == 0 && (r.value = "$$VAR"), (x || r.type != "ws" && r.type != "comment" && r.type != "line-comment") && T.push(r), i = r; + r.value.indexOf("$$") == 0 && (r.value = "$$VAR"), (k || r.type != "ws" && r.type != "comment" && r.type != "line-comment") && M.push(r), i = r; } - return T; + return M; } - return N; + return w; }(); function ve(d) { const h = { @@ -7570,14 +7570,14 @@ function ve(d) { WHERE: "Y", WITH: "Y" }; - let k = d.toUpperCase(); - return h[k] != null ? "the_" + d : d; + let x = d.toUpperCase(); + return h[x] != null ? "the_" + d : d; } let ce = function() { - let d, h = " ", k = ["string", "varchar2", "varchar", "vc", "char"]; - var N = ["yn", "boolean", "bool"]; - function I(T, b, i) { - this.line = T, this.parent = i, this.children = [], i != null && i.children.push(this), this.fks = null, this.findChild = function(r) { + let d, h = " ", x = ["string", "varchar2", "varchar", "vc", "char"]; + var w = ["yn", "boolean", "bool"]; + function I(M, B, i) { + this.line = M, this.parent = i, this.children = [], i != null && i.children.push(this), this.fks = null, this.findChild = function(r) { for (var t = 0; t < this.children.length; t++) if (this.children[t].parseName() == r) return this.children[t]; @@ -7591,34 +7591,34 @@ let ce = function() { }, this.maxChildNameLen = function() { var r = 2, t = this.trimmedContent().toUpperCase(); if ((d.optionEQvalue("rowkey", !0) || 0 < t.indexOf("/ROWKEY")) && (r = 7), (d.optionEQvalue("Row Version Number", "yes") || 0 < t.indexOf("/ROWVERSION")) && (r = 11), d.optionEQvalue("Audit Columns", "yes") || 0 < t.indexOf("/AUDITCOLS") || 0 < t.indexOf("/AUDIT COL")) { - let B = d.getOptionValue("createdcol").length; - r < B && (r = B), B = d.getOptionValue("createdbycol").length, r < B && (r = B), B = d.getOptionValue("updatedcol").length, r < B && (r = B), B = d.getOptionValue("updatedbycol").length, r < B && (r = B); + let T = d.getOptionValue("createdcol").length; + r < T && (r = T), T = d.getOptionValue("createdbycol").length, r < T && (r = T), T = d.getOptionValue("updatedcol").length, r < T && (r = T), T = d.getOptionValue("updatedbycol").length, r < T && (r = T); } if (this.fks != null) for (var o in this.fks) { - var l = o.length; - let B = d.find(o); - B != null && B.isMany2One() && (l += 3), r < l && (r = l); + var s = o.length; + let T = d.find(o); + T != null && T.isMany2One() && (s += 3), r < s && (r = s); } - for (var m = 0; m < this.children.length; m++) { - let B = this.children[m]; - if (0 < B.children.length) + for (var u = 0; u < this.children.length; u++) { + let T = this.children[u]; + if (0 < T.children.length) continue; - let M = B.parseName().length; - 0 < B.indexOf("file") && (M += 9), r < M && (r = M); + let S = T.parseName().length; + 0 < T.indexOf("file") && (S += 9), r < S && (r = S); } - var v = d.additionalColumns(); - for (let B in v) { - let M = B.length; - r < M && (r = M); + var g = d.additionalColumns(); + for (let T in g) { + let S = T.length; + r < S && (r = S); } return r; }; - function s(r) { + function l(r) { let t = r; return t = t.replace(/ timestamp with local time zone/gi, " tswltz"), t = t.replace(/ timestamp with time zone/gi, " tswtz"), t = t.replace(/ timestamp/gi, " ts"), t; } - this.content = s(b), this.comment, this.indexOf = function(r, t) { + this.content = l(B), this.comment, this.indexOf = function(r, t) { for (let o = 0; o < this.src.length; o++) { if (t && this.src[o].value.toLowerCase().indexOf(r.toLowerCase()) == 0) return o; @@ -7636,31 +7636,31 @@ let ce = function() { if (0 <= t && t < o) return r.substring(t, o + 1); (r.indexOf(">") == 0 || r.indexOf("<") == 0) && (r = r.substring(1).trim()); - const l = r.toLowerCase(); - if (l.indexOf("view ") == 0) { - var m = r.split(" "); - return m[1]; + const s = r.toLowerCase(); + if (s.indexOf("view ") == 0) { + var u = r.split(" "); + return u[1]; } - r = p(r, " d"); - var v = r.indexOf("/"); - 0 < v && (r = r.substring(0, v)), r = r.trim(), r = p(r, " integer"), r = p(r, " number"), r = p(r, " int"), r = p(r, " num"), r = p(r, " clob"), r = p(r, " blob"), r = p(r, " json"), r = p(r, " file"), r = p(r, " date"), r = p(r, " tstz"), r = p(r, " tswtz"), r = p(r, " tswltz"), r = p(r, " ts"), r = r.replace(/ vc\d+k/g, ""), r = r.replace(/ vc\(\d+\)/g, ""), r = r.replace(/ vc\d+/g, ""); - for (let M in k) { - let L = l.indexOf(" " + k[M]); - if (0 < L) { - r = r.substring(0, L) + r.substring(L + k[M].length + 1); + r = b(r, " d"); + var g = r.indexOf("/"); + 0 < g && (r = r.substring(0, g)), r = r.trim(), r = b(r, " integer"), r = b(r, " number"), r = b(r, " int"), r = b(r, " num"), r = b(r, " clob"), r = b(r, " blob"), r = b(r, " json"), r = b(r, " file"), r = b(r, " date"), r = b(r, " tstz"), r = b(r, " tswtz"), r = b(r, " tswltz"), r = b(r, " ts"), r = r.replace(/ vc\d+k/g, ""), r = r.replace(/ vc\(\d+\)/g, ""), r = r.replace(/ vc\d+/g, ""); + for (let S in x) { + let E = s.indexOf(" " + x[S]); + if (0 < E) { + r = r.substring(0, E) + r.substring(E + x[S].length + 1); break; } } - for (let M in N) { - let L = l.indexOf(" " + N[M]); - if (0 < L) { - r = r.substring(0, L) + r.substring(L + N[M].length + 1); + for (let S in w) { + let E = s.indexOf(" " + w[S]); + if (0 < E) { + r = r.substring(0, E) + r.substring(E + w[S].length + 1); break; } } r = r.replace(/ num(ber)?\(\d+\)/g, ""), r = r.replace(/ num(ber)?\(\d+,\d+\)/g, ""), r = r.replace(/ num(ber)?\d+/g, ""), r = r.trim(), this.children.length == 0 && this.parent != null && this.parent.colprefix != null && (r = this.parent.colprefix + "_" + r); - var B = r.substr(0, 1); - return B >= "0" && B <= "9" && (r = "x" + r), ve(he(r)); + var T = r.substr(0, 1); + return T >= "0" && T <= "9" && (r = "x" + r), ve(he(r)); }, this.parseType = function(r) { if (this.children != null && 0 < this.children.length) return "table"; @@ -7671,72 +7671,72 @@ let ce = function() { return "dv"; if (this.parent == null) return "table"; - var o = d.semantics(), l = 4e3; - (t[0].value.startsWith("name") || t[0].value.startsWith("email")) && (l = 255); - const m = this.indexOf("vc", !0); - if (0 < m) { - t[m].begin, t[m].end; - let E = t[m].value.substring(2); - E == "" && this.indexOf("(") == m + 1 && (E = t[m + 2].value), E != "" && (l = parseInt(E)), t[m].value.endsWith("k") && (l < 32 ? l = l * 1024 : l = l * 1024 - 1); + var o = d.semantics(), s = 4e3; + (t[0].value.startsWith("name") || t[0].value.startsWith("email")) && (s = 255); + const u = this.indexOf("vc", !0); + if (0 < u) { + t[u].begin, t[u].end; + let L = t[u].value.substring(2); + L == "" && this.indexOf("(") == u + 1 && (L = t[u + 2].value), L != "" && (s = parseInt(L)), t[u].value.endsWith("k") && (s < 32 ? s = s * 1024 : s = s * 1024 - 1); } - var v = "varchar2(" + l + o + ")"; - r == "plsql" && (v = "varchar2"), t[0].value.endsWith("_id") && m < 0 && this.indexOf("date") < 0 && (v = "number"), t[1] && t[1].value == "id" && (v = "number"), t[0].value == "quantity" && (v = "number"), t[0].value.endsWith("id") && m < 0 && this.indexOf("/") + 1 == this.indexOf("pk") && (v = "number"), 0 < this.indexOf("int", !0) && (v = "integer"); - const B = K(i.parseName(), "_", this.parseName()); - (t[0].value.endsWith("_yn") || t[0].value.startsWith("is_")) && (v = "varchar2(1 char) constraint " + K(d.objPrefix(), B) + ` -`, v += h + h + " ".repeat(i.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"); - for (let E in N) - if (0 < this.indexOf(N[E])) { - v = "varchar2(1 char) constraint " + K(d.objPrefix(), B) + ` -`, v += h + h + " ".repeat(i.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"; + var g = "varchar2(" + s + o + ")"; + r == "plsql" && (g = "varchar2"), t[0].value.endsWith("_id") && u < 0 && this.indexOf("date") < 0 && (g = "number"), t[1] && t[1].value == "id" && (g = "number"), t[0].value == "quantity" && (g = "number"), t[0].value.endsWith("id") && u < 0 && this.indexOf("/") + 1 == this.indexOf("pk") && (g = "number"), 0 < this.indexOf("int", !0) && (g = "integer"); + const T = K(i.parseName(), "_", this.parseName()); + (t[0].value.endsWith("_yn") || t[0].value.startsWith("is_")) && (g = "varchar2(1 char) constraint " + K(d.objPrefix(), T) + ` +`, g += h + h + " ".repeat(i.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"); + for (let L in w) + if (0 < this.indexOf(w[L])) { + g = "varchar2(1 char) constraint " + K(d.objPrefix(), T) + ` +`, g += h + h + " ".repeat(i.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"; break; } - this.indexOf("phone_number") == 0 && (v = "number"); - let M = this.indexOf("num", !0); - 0 < M && (v = "number"); - let L = this.indexOf(")"); - if (0 < M && 0 < L && (v += this.content.toLowerCase().substring(t[M + 1].begin, t[L].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value.startsWith("created") || t[0].value.startsWith("updated")) && (v = d.getOptionValue("Date Data Type").toLowerCase()), m < 0 && (0 < this.indexOf("clob") && (v = "clob"), (0 < this.indexOf("blob") || 0 < this.indexOf("file")) && (v = "blob"), 0 < this.indexOf("json") && (v = "clob check (" + this.parseName() + " is json)")), 0 < this.indexOf("tswltz") ? v = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : 0 < this.indexOf("tswtz") || 0 < this.indexOf("tstz") ? v = "TIMESTAMP WITH TIME ZONE".toLowerCase() : 0 < this.indexOf("ts") && (v = "TIMESTAMP".toLowerCase()), r) { + this.indexOf("phone_number") == 0 && (g = "number"); + let S = this.indexOf("num", !0); + 0 < S && (g = "number"); + let E = this.indexOf(")"); + if (0 < S && 0 < E && (g += this.content.toLowerCase().substring(t[S + 1].begin, t[E].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value.startsWith("created") || t[0].value.startsWith("updated")) && (g = d.getOptionValue("Date Data Type").toLowerCase()), u < 0 && (0 < this.indexOf("clob") && (g = "clob"), (0 < this.indexOf("blob") || 0 < this.indexOf("file")) && (g = "blob"), 0 < this.indexOf("json") && (g = "clob check (" + this.parseName() + " is json)")), 0 < this.indexOf("tswltz") ? g = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : 0 < this.indexOf("tswtz") || 0 < this.indexOf("tstz") ? g = "TIMESTAMP WITH TIME ZONE".toLowerCase() : 0 < this.indexOf("ts") && (g = "TIMESTAMP".toLowerCase()), r) { if (0 < this.indexOf("fk") || 0 < this.indexOf("reference", !0)) { - const E = this.refId(); - let D = "number"; - v == "integer" && (D = v); - let F = d.find(E); - return F != null && F.getExplicitPkNode() != null && (D = F.getExplicitPkNode().parseType((R) => !0)), D; + const L = this.refId(); + let N = "number"; + g == "integer" && (N = g); + let F = d.find(L); + return F != null && F.getExplicitPkNode() != null && (N = F.getExplicitPkNode().parseType((R) => !0)), N; } - return v; + return g; } - 0 < this.indexOf("unique") && (v += ` -`, v += h + h + " ".repeat(i.maxChildNameLen()) + "constraint " + B + "_unq unique"); - var w = "'"; - if ((v.startsWith("integer") || v.startsWith("number") || v.startsWith("date")) && (w = ""), 0 < this.indexOf("default")) { - const E = t[this.indexOf("default") + 1].value; - v += " default on null " + w + E + w; + 0 < this.indexOf("unique") && (g += ` +`, g += h + h + " ".repeat(i.maxChildNameLen()) + "constraint " + T + "_unq unique"); + var D = "'"; + if ((g.startsWith("integer") || g.startsWith("number") || g.startsWith("date")) && (D = ""), 0 < this.indexOf("default")) { + const L = t[this.indexOf("default") + 1].value; + g += " default on null " + D + L + D; } - if ((0 < this.indexOf("nn") || this.indexOf("not") + 1 == this.indexOf("null")) && this.indexOf("pk") < 0 && (v += " not null"), (0 < this.indexOf("hidden") || 0 < this.indexOf("invincible")) && (v += " invisible"), v += this.genConstraint(w), 0 < this.indexOf("between")) { - const E = this.indexOf("between"), D = t[E + 1].value + " and " + t[E + 3].value; - v += " constraint " + K(B, "_bet") + ` -`, v += " check (" + this.parseName() + " between " + D + ")"; + if ((0 < this.indexOf("nn") || this.indexOf("not") + 1 == this.indexOf("null")) && this.indexOf("pk") < 0 && (g += " not null"), (0 < this.indexOf("hidden") || 0 < this.indexOf("invincible")) && (g += " invisible"), g += this.genConstraint(D), 0 < this.indexOf("between")) { + const L = this.indexOf("between"), N = t[L + 1].value + " and " + t[L + 3].value; + g += " constraint " + K(T, "_bet") + ` +`, g += " check (" + this.parseName() + " between " + N + ")"; } if (0 < this.indexOf("pk")) { - let E = " not null"; - v.startsWith("number") && d.optionEQvalue("pk", "identityDataType") && (E = " GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), v.startsWith("number") && d.optionEQvalue("pk", "seq") && (E = " default on null " + (d.objPrefix() + this.parent.parseName()) + "_seq.NEXTVAL ".toLowerCase()), v.startsWith("number") && d.optionEQvalue("pk", "guid") && (E = " default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), v += E + ` -`, v += h + h + " ".repeat(i.maxChildNameLen()) + "constraint " + K(d.objPrefix(), B, "_pk") + " primary key"; + let L = " not null"; + g.startsWith("number") && d.optionEQvalue("pk", "identityDataType") && (L = " GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), g.startsWith("number") && d.optionEQvalue("pk", "seq") && (L = " default on null " + (d.objPrefix() + this.parent.parseName()) + "_seq.NEXTVAL ".toLowerCase()), g.startsWith("number") && d.optionEQvalue("pk", "guid") && (L = " default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), g += L + ` +`, g += h + h + " ".repeat(i.maxChildNameLen()) + "constraint " + K(d.objPrefix(), T, "_pk") + " primary key"; } - return v; + return g; }, this.genConstraint = function(r) { let t = ""; if (0 < this.indexOf("check")) { let o = ""; i != null && (o = i.parseName() + "_"); - const l = K(o, this.parseName()), m = this.trimmedContent().toLowerCase(), v = m.indexOf("/check"); - let B = m.lastIndexOf("/"); - B == v && (B = m.length); - let M = this.trimmedContent().substr(v + 6, B - v - 6).trim(); - const L = Z(M, !1, !0, ""); - let w = h; - i != null && (w = " ".repeat(i.maxChildNameLen())), this.children != null && 0 < this.children.length ? (L[0].value != "(" && (M = "( " + M + ")"), t += h + "constraint " + K(d.objPrefix(), l, "_ck"), t += " check " + M + `, -`) : L[0].value == "(" && L[L.length - 1].value == ")" ? (t += " constraint " + K(d.objPrefix(), l, "_ck") + ` -`, t += h + h + w + "check " + M) : (0 < M.indexOf(", ") ? M = M.replace(/, /g, r + "," + r) : 0 < M.indexOf(",") ? M = M.replace(/,/g, r + "," + r) : M = M.replace(/ /g, r + "," + r), t += " constraint " + K(d.objPrefix(), l, "_ck") + ` -`, t += h + h + w + "check (" + this.parseName() + " in (" + r + M + r + "))", t = t.replace(/''/gm, "'")); + const s = K(o, this.parseName()), u = this.trimmedContent().toLowerCase(), g = u.indexOf("/check"); + let T = u.lastIndexOf("/"); + T == g && (T = u.length); + let S = this.trimmedContent().substr(g + 6, T - g - 6).trim(); + const E = Z(S, !1, !0, ""); + let D = h; + i != null && (D = " ".repeat(i.maxChildNameLen())), this.children != null && 0 < this.children.length ? (E[0].value != "(" && (S = "( " + S + ")"), t += h + "constraint " + K(d.objPrefix(), s, "_ck"), t += " check " + S + `, +`) : E[0].value == "(" && E[E.length - 1].value == ")" ? (t += " constraint " + K(d.objPrefix(), s, "_ck") + ` +`, t += h + h + D + "check " + S) : (0 < S.indexOf(", ") ? S = S.replace(/, /g, r + "," + r) : 0 < S.indexOf(",") ? S = S.replace(/,/g, r + "," + r) : S = S.replace(/ /g, r + "," + r), t += " constraint " + K(d.objPrefix(), s, "_ck") + ` +`, t += h + h + D + "check (" + this.parseName() + " in (" + r + S + r + "))", t = t.replace(/''/gm, "'")); } return t; }, this.isMany2One = function() { @@ -7760,27 +7760,27 @@ let ce = function() { } return t = r.indexOf("/fk"), 0 < t ? (r = r.substr(t + 3).trim(), t = r.indexOf("/"), 0 < t && (r = r.substring(0, t).trim()), r.replace(" ", "_")) : (t = r.indexOf("/reference"), 0 < t ? (r = r.substr(t + 10).trim(), r.indexOf("s") == 0 && (r = r.substring(1).trim()), t = r.indexOf("/"), 0 < t && (r = r.substring(0, t).trim()), r.replace(" ", "_")) : null); }, this.parseValues = function() { - var r = this.trimmedContent().toUpperCase(), t, o, l; + var r = this.trimmedContent().toUpperCase(), t, o, s; if (0 <= r.indexOf("/CHECK") || 0 <= r.indexOf("/VALUES")) { - var m = "/CHECK"; - return t = r.indexOf(m), t < 0 && (m = "/VALUES", t = r.indexOf(m)), o = r.lastIndexOf("/"), o == t && (o = r.length), l = r.substr(t + m.length, o - t - m.length).trim(), 0 < l.indexOf(",") ? (l = l.replace(/ /g, ""), l.split(",")) : l.split(" "); + var u = "/CHECK"; + return t = r.indexOf(u), t < 0 && (u = "/VALUES", t = r.indexOf(u)), o = r.lastIndexOf("/"), o == t && (o = r.length), s = r.substr(t + u.length, o - t - u.length).trim(), 0 < s.indexOf(",") ? (s = s.replace(/ /g, ""), s.split(",")) : s.split(" "); } if (0 <= r.indexOf("/BETWEEN")) { - t = r.indexOf("/BETWEEN"), o = r.lastIndexOf("/"), o == t && (o = r.length), l = r.substr(t + 8, o - t - 8).trim(), l = l.replace(" AND ", " "); - for (var v = [], B = parseInt(l.split(" ")[0]); B <= parseInt(l.split(" ")[1]); B++) - v.push(B); - return v; + t = r.indexOf("/BETWEEN"), o = r.lastIndexOf("/"), o == t && (o = r.length), s = r.substr(t + 8, o - t - 8).trim(), s = s.replace(" AND ", " "); + for (var g = [], T = parseInt(s.split(" ")[0]); T <= parseInt(s.split(" ")[1]); T++) + g.push(T); + return g; } return null; }, this.apparentDepth = function() { let r = this.content.split(/ |\t/), t = 0; for (var o = 0; o < r.length; o++) { - var l = r[o]; - if (l == " ") { + var s = r[o]; + if (s == " ") { t += this.tab; continue; } - if (l == "") { + if (s == "") { t++; continue; } @@ -7823,18 +7823,18 @@ let ce = function() { this.colprefix = n[0]; } var o = ""; - const l = d.objPrefix() + this.parseName(); - d.optionEQvalue("pk", "SEQ") && d.optionEQvalue("genpk", !0) && (o = o + "create sequence " + l + `_seq; + const s = d.objPrefix() + this.parseName(); + d.optionEQvalue("pk", "SEQ") && d.optionEQvalue("genpk", !0) && (o = o + "create sequence " + s + `_seq; -`), o = o + "create table " + l + ` ( +`), o = o + "create table " + s + ` ( `; - var m = h + " ".repeat(this.maxChildNameLen() - 2); - let v = this.getGenIdColName(); - if (v != null) { + var u = h + " ".repeat(this.maxChildNameLen() - 2); + let g = this.getGenIdColName(); + if (g != null) { let a = "not null"; - d.optionEQvalue("pk", "identityDataType") && (a = "GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), d.optionEQvalue("pk", "seq") && (a = "default on null " + l + "_seq.NEXTVAL ".toLowerCase()), d.optionEQvalue("pk", "guid") && (a = "default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), o += h + v + m + "number " + a + ` + d.optionEQvalue("pk", "identityDataType") && (a = "GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), d.optionEQvalue("pk", "seq") && (a = "default on null " + s + "_seq.NEXTVAL ".toLowerCase()), d.optionEQvalue("pk", "guid") && (a = "default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), o += h + g + u + "number " + a + ` `; - const n = K(d.objPrefix("no schema") + this.parseName(), "_", v); + const n = K(d.objPrefix("no schema") + this.parseName(), "_", g); o += h + h + " ".repeat(this.maxChildNameLen()) + "constraint " + K(n, "_pk") + ` primary key, `; } else { @@ -7847,45 +7847,45 @@ let ce = function() { } for (let a in this.fks) { let n = this.fks[a], c = "number"; - const u = this.findChild(a); - u != null && (c = u.parseType("fk")); + const m = this.findChild(a); + m != null && (c = m.parseType("fk")); let C = d.find(n), P = ""; - C != null && C.getExplicitPkNode() != null ? c = C.getExplicitPkNode().parseType((A) => !0) : C == null && (C = d.find(a), C.isMany2One() & !a.endsWith("_id") && (n = a, a = W(a), P = "_id")), m = h + " ".repeat(this.maxChildNameLen() - a.length), o += h + a + P + m + c + ` -`, o += h + h + " ".repeat(this.maxChildNameLen()) + "constraint " + l + "_" + a + `_fk + C != null && C.getExplicitPkNode() != null ? c = C.getExplicitPkNode().parseType((v) => !0) : C == null && (C = d.find(a), C.isMany2One() & !a.endsWith("_id") && (n = a, a = W(a), P = "_id")), u = h + " ".repeat(this.maxChildNameLen() - a.length), o += h + a + P + u + c + ` +`, o += h + h + " ".repeat(this.maxChildNameLen()) + "constraint " + s + "_" + a + `_fk `; let f = ""; 0 <= r.indexOf("/CASCADE") && (f = " on delete cascade"); - let y = ""; - for (let A in this.children) { - let S = this.children[A]; - if (a == S.parseName()) { - let _ = S.trimmedContent().toUpperCase(); - (0 <= _.indexOf("/NN") || 0 <= _.indexOf("/NOTNULL")) && (y = " NOT NULL".toLowerCase()), 0 <= _.indexOf("/CASCADE") && (f = " on delete cascade"); + let A = ""; + for (let v in this.children) { + let y = this.children[v]; + if (a == y.parseName()) { + let _ = y.trimmedContent().toUpperCase(); + (0 <= _.indexOf("/NN") || 0 <= _.indexOf("/NOTNULL")) && (A = " NOT NULL".toLowerCase()), 0 <= _.indexOf("/CASCADE") && (f = " on delete cascade"); break; } } - o += h + h + " ".repeat(this.maxChildNameLen()) + "references " + d.objPrefix() + n + f + y + `, + o += h + h + " ".repeat(this.maxChildNameLen()) + "references " + d.objPrefix() + n + f + A + `, `; } if (d.optionEQvalue("rowkey", !0) || 0 < r.indexOf("/ROWKEY")) { let a = h + " ".repeat(this.maxChildNameLen() - 7); o += h + "row_key" + a + `varchar2(30 char) -`, o += h + h + " ".repeat(this.maxChildNameLen()) + "constraint " + l + `_row_key_unq unique not null, +`, o += h + h + " ".repeat(this.maxChildNameLen()) + "constraint " + s + `_row_key_unq unique not null, `; } for (let a = 0; a < this.children.length; a++) { let n = this.children[a]; - if (!(v != null && n.parseName() == "id") && !(0 < n.children.length) && n.refId() == null) { + if (!(g != null && n.parseName() == "id") && !(0 < n.children.length) && n.refId() == null) { if (n == this.getExplicitPkNode()) continue; if (o += h + n.singleDDL() + `, `, 0 < n.indexOf("file")) { const c = n.parseName().toUpperCase(); - let u = c + "_FILENAME", C = h + " ".repeat(this.maxChildNameLen() - u.length); - o += h + u.toLowerCase() + C + "varchar2(255" + d.semantics() + `), -`, u = c + "_MIMETYPE", C = h + " ".repeat(this.maxChildNameLen() - u.length), o += h + u.toLowerCase() + C + "varchar2(255" + d.semantics() + `), -`, u = c + "_CHARSET", C = h + " ".repeat(this.maxChildNameLen() - u.length), o += h + u.toLowerCase() + C + "varchar2(255" + d.semantics() + `), -`, u = c + "_LASTUPD", C = h + " ".repeat(this.maxChildNameLen() - u.length), o += h + u.toLowerCase() + C + d.getOptionValue("Date Data Type").toLowerCase() + `, + let m = c + "_FILENAME", C = h + " ".repeat(this.maxChildNameLen() - m.length); + o += h + m.toLowerCase() + C + "varchar2(255" + d.semantics() + `), +`, m = c + "_MIMETYPE", C = h + " ".repeat(this.maxChildNameLen() - m.length), o += h + m.toLowerCase() + C + "varchar2(255" + d.semantics() + `), +`, m = c + "_CHARSET", C = h + " ".repeat(this.maxChildNameLen() - m.length), o += h + m.toLowerCase() + C + "varchar2(255" + d.semantics() + `), +`, m = c + "_LASTUPD", C = h + " ".repeat(this.maxChildNameLen() - m.length), o += h + m.toLowerCase() + C + d.getOptionValue("Date Data Type").toLowerCase() + `, `; } } @@ -7902,56 +7902,56 @@ let ce = function() { let c = d.getOptionValue("createdbycol"); n = h + " ".repeat(this.maxChildNameLen() - c.length), o += h + c + n + "varchar2(255" + d.semantics() + `) not null, `; - let u = d.getOptionValue("updatedcol"); - n = h + " ".repeat(this.maxChildNameLen() - u.length), o += h + u + n + d.getOptionValue("Date Data Type").toLowerCase() + ` not null, + let m = d.getOptionValue("updatedcol"); + n = h + " ".repeat(this.maxChildNameLen() - m.length), o += h + m + n + d.getOptionValue("Date Data Type").toLowerCase() + ` not null, `; let C = d.getOptionValue("updatedbycol"); n = h + " ".repeat(this.maxChildNameLen() - C.length), o += h + C + n + "varchar2(255" + d.semantics() + `) not null, `; } - var B = d.additionalColumns(); - for (let a in B) { - var M = B[a]; - m = h + " ".repeat(this.maxChildNameLen() - a.length), o += h + a.toUpperCase() + m + M + ` not null, + var T = d.additionalColumns(); + for (let a in T) { + var S = T[a]; + u = h + " ".repeat(this.maxChildNameLen() - a.length), o += h + a.toUpperCase() + u + S + ` not null, `; } o += this.genConstraint(), o.lastIndexOf(`, -`) == o.length - 2 && (o = o.substr(0, o.length - 2) + ` +`) == o.length - 2 && (o = o.substring(0, o.length - 2) + ` `), o += ")" + (d.optionEQvalue("compress", "yes") || 0 < r.indexOf("/COMPRESS") ? " compress" : "") + `; `; - const L = r.indexOf("/AUDIT"), w = r.indexOf("/AUDITCOLS"), E = r.indexOf("/AUDIT COL"); - 0 < L && w < 0 && E < 0 && (o += "audit all on " + l + `; + const E = r.indexOf("/AUDIT"), D = r.indexOf("/AUDITCOLS"), L = r.indexOf("/AUDIT COL"); + 0 < E && D < 0 && L < 0 && (o += "audit all on " + s + `; `); - let D = 1; + let N = 1; for (let a in this.fks) if (!this.isMany2One()) { var F = this.fks[a], R = F, H = a; - H == null && (H = W(R) + "_id"), D == 1 && (o += `-- table index -`), o += "create index " + l + "_i" + D++ + " on " + l + " (" + H + `); + H == null && (H = W(R) + "_id"), N == 1 && (o += `-- table index +`), o += "create index " + s + "_i" + N++ + " on " + s + " (" + H + `); `; } let G = r.indexOf("/UNIQUE "); if (0 < G) { let a = r.substr(G + 8), n = a.indexOf("/"); - 0 < n && (a = a.substring(0, n).trim()), o += "alter table " + l + " add constraint " + l + "_uk unique (" + a + `); + 0 < n && (a = a.substring(0, n).trim()), o += "alter table " + s + " add constraint " + s + "_uk unique (" + a + `); `; } for (let a = 0; a < this.children.length; a++) { var e = this.children[a]; let n = e.trimmedContent().toUpperCase(); - (0 <= n.indexOf("/IDX") || 0 <= n.indexOf("/INDEX")) && (D == 1 && (o += `-- table index -`), o += "create index " + l + "_i" + D++ + " on " + l + " (" + e.parseName() + `); + (0 <= n.indexOf("/IDX") || 0 <= n.indexOf("/INDEX")) && (N == 1 && (o += `-- table index +`), o += "create index " + s + "_i" + N++ + " on " + s + " (" + e.parseName() + `); `); } - this.comment != null && (o += "comment on table " + l + " is '" + this.comment + `'; + this.comment != null && (o += "comment on table " + s + " is '" + this.comment + `'; `); for (let a = 0; a < this.children.length; a++) { let n = this.children[a]; - n.comment != null && n.children.length == 0 && (o += "comment on column " + l + "." + n.parseName() + " is '" + n.comment + `'; + n.comment != null && n.children.length == 0 && (o += "comment on column " + s + "." + n.parseName() + " is '" + n.comment + `'; `); } return o += ` @@ -7984,118 +7984,118 @@ let ce = function() { if (d.optionEQvalue("Duality View", "yes") || this.parseType() == "dv") try { return this.generateDualityView(); - } catch (u) { - if (u.message == this.one2many2oneUnsupoported) + } catch (m) { + if (m.message == this.one2many2oneUnsupoported) return ""; - throw u; + throw m; } let r = d.objPrefix() + this.parseName(); - var o = this.trimmedContent().split(" "), l = "create or replace view " + r + ` as + var o = this.trimmedContent().split(" "), s = "create or replace view " + r + ` as `; - l += `select + s += `select `; - for (var m = 0, v = 2; v < o.length; v++) { - let u = d.find(o[v]); - if (u == null) + for (var u = 0, g = 2; g < o.length; g++) { + let m = d.find(o[g]); + if (m == null) return ""; - var B = (o[v] + ".id").length; - m < B && (m = B); - for (var M = 0; M < u.children.length; M++) { - var L = u.children[M]; - B = (o[v] + "." + L.parseName()).length, m < B && (m = B); + var T = (o[g] + ".id").length; + u < T && (u = T); + for (var S = 0; S < m.children.length; S++) { + var E = m.children[S]; + T = (o[g] + "." + E.parseName()).length, u < T && (u = T); } } - var w = {}; - for (let u = 2; u < o.length; u++) { - let C = d.find(o[u]); + var D = {}; + for (let m = 2; m < o.length; m++) { + let C = d.find(o[m]); if (C != null) for (let P = 0; P < C.children.length; P++) { - var E = C.children[P].parseName(), D = w[E]; - D == null && (D = 0), w[E] = D + 1; + var L = C.children[P].parseName(), N = D[L]; + N == null && (N = 0), D[L] = N + 1; } } - for (let u = 2; u < o.length; u++) { - let C = d.find(o[u]); + for (let m = 2; m < o.length; m++) { + let C = d.find(o[m]); if (C == null) continue; - let P = " ".repeat(m - (o[u] + ".id").length); - l += h + o[u] + ".id" + h + P + W(o[u]) + `_id, + let P = " ".repeat(u - (o[m] + ".id").length); + s += h + o[m] + ".id" + h + P + W(o[m]) + `_id, `; - for (let y = 0; y < C.children.length; y++) { - let A = C.children[y]; - if (A.children.length == 0) { - P = " ".repeat(m - (o[u] + "." + A.parseName()).length); + for (let A = 0; A < C.children.length; A++) { + let v = C.children[A]; + if (v.children.length == 0) { + P = " ".repeat(u - (o[m] + "." + v.parseName()).length); var F = ""; - 1 < w[A.parseName()] && (F = W(o[u]) + "_"), l += h + o[u] + "." + A.parseName() + h + P + F + A.parseName() + `, + 1 < D[v.parseName()] && (F = W(o[m]) + "_"), s += h + o[m] + "." + v.parseName() + h + P + F + v.parseName() + `, `; } } let f = C.trimmedContent().toUpperCase(); if (d.optionEQvalue("rowVersion", "yes") || 0 < f.indexOf("/ROWVERSION")) { - let y = h + " ".repeat(C.maxChildNameLen() - 11); - l += h + o[u] + ".row_version" + W(y + o[u]) + `_row_version, + let A = h + " ".repeat(C.maxChildNameLen() - 11); + s += h + o[m] + ".row_version" + W(A + o[m]) + `_row_version, `; } if (d.optionEQvalue("rowkey", "yes") || 0 < f.indexOf("/ROWKEY")) { - let y = h + " ".repeat(C.maxChildNameLen() - 7); - l += h + o[u] + ".ROW_KEY" + W(y + o[u]) + `_ROW_KEY, + let A = h + " ".repeat(C.maxChildNameLen() - 7); + s += h + o[m] + ".ROW_KEY" + W(A + o[m]) + `_ROW_KEY, `; } if (d.optionEQvalue("Audit Columns", "yes") || 0 < f.indexOf("/AUDITCOLS") || 0 < f.indexOf("/AUDIT COL")) { - let y = d.getOptionValue("createdcol"), A = h + " ".repeat(C.maxChildNameLen() - y.length); - l += h + o[u] + "." + y + W(A + o[u]) + "_" + y + `, + let A = d.getOptionValue("createdcol"), v = h + " ".repeat(C.maxChildNameLen() - A.length); + s += h + o[m] + "." + A + W(v + o[m]) + "_" + A + `, `; - let S = d.getOptionValue("createdbycol"); - A = h + " ".repeat(C.maxChildNameLen() - S.length), l += h + o[u] + "." + S + W(A + o[u]) + "_" + S + `, + let y = d.getOptionValue("createdbycol"); + v = h + " ".repeat(C.maxChildNameLen() - y.length), s += h + o[m] + "." + y + W(v + o[m]) + "_" + y + `, `; let _ = d.getOptionValue("updatedcol"); - A = h + " ".repeat(C.maxChildNameLen() - _.length), l += h + o[u] + "." + _ + W(A + o[u]) + "_" + _ + `, + v = h + " ".repeat(C.maxChildNameLen() - _.length), s += h + o[m] + "." + _ + W(v + o[m]) + "_" + _ + `, `; let O = d.getOptionValue("updatedbycol"); - A = h + " ".repeat(C.maxChildNameLen() - O.length), l += h + o[u] + "." + O + W(A + o[u]) + "_" + O + `, + v = h + " ".repeat(C.maxChildNameLen() - O.length), s += h + o[m] + "." + O + W(v + o[m]) + "_" + O + `, `; } } - l.lastIndexOf(`, -`) == l.length - 2 && (l = l.substr(0, l.length - 2) + ` -`), l += `from + s.lastIndexOf(`, +`) == s.length - 2 && (s = s.substr(0, s.length - 2) + ` +`), s += `from `; - for (let u = 2; u < o.length; u++) { - let C = " ".repeat(m - o[u].length); - var R = o[u]; - d.objPrefix() != null && d.objPrefix() != "" && (R = d.objPrefix() + o[u] + C + o[u]), l += h + R + `, + for (let m = 2; m < o.length; m++) { + let C = " ".repeat(u - o[m].length); + var R = o[m]; + d.objPrefix() != null && d.objPrefix() != "" && (R = d.objPrefix() + o[m] + C + o[m]), s += h + R + `, `; } - l.lastIndexOf(`, -`) == l.length - 2 && (l = l.substr(0, l.length - 2) + ` -`), l += `where + s.lastIndexOf(`, +`) == s.length - 2 && (s = s.substr(0, s.length - 2) + ` +`), s += `where `; - for (let u = 2; u < o.length; u++) + for (let m = 2; m < o.length; m++) for (let C = 2; C < o.length; C++) - if (C != u) { - var H = o[u], G = o[C], e = d.find(H); + if (C != m) { + var H = o[m], G = o[C], e = d.find(H); if (e != null) { var a = d.find(G); if (a != null) for (var n in e.fks) { var c = e.fks[n]; - c == G && (l += h + H + "." + W(c) + "_id(+) = " + G + `.id and + c == G && (s += h + H + "." + W(c) + "_id(+) = " + G + `.id and `); } } } - return l = p(l, `where -`), l.lastIndexOf(" and") == l.length - 4 && (l = l.substring(0, l.length - 4) + ` -`), l += `/ -`, l.toLowerCase(); + return s = b(s, `where +`), s.lastIndexOf(" and") == s.length - 4 && (s = s.substring(0, s.length - 4) + ` +`), s += `/ +`, s.toLowerCase(); }, this.restEnable = function() { if (this.parseType() != "table" || this.trimmedContent().toUpperCase().indexOf("/REST") < 0) return ""; let o = this.parseName(); - const l = o.indexOf('"') == 0; - let m = d.objPrefix() + o; - return l ? m = d.objPrefix() + o.substring(1, o.length - 1) : m = (d.objPrefix() + o).toUpperCase(), `begin -` + h + "ords.enable_object(p_enabled=>TRUE, p_object=>'" + m + `'); + const s = o.indexOf('"') == 0; + let u = d.objPrefix() + o; + return s ? u = d.objPrefix() + o.substring(1, o.length - 1) : u = (d.objPrefix() + o).toUpperCase(), `begin +` + h + "ords.enable_object(p_enabled=>TRUE, p_object=>'" + u + `'); end; / `; @@ -8111,8 +8111,8 @@ end; `, o += " on " + t.toLowerCase() + ` `, o += ` for each row `; - let l = this.trimmedContent().toUpperCase(); - (d.optionEQvalue("Rowkey", "yes") || 0 < l.indexOf("/ROWKEY")) && (o += `declare + let s = this.trimmedContent().toUpperCase(); + (d.optionEQvalue("Rowkey", "yes") || 0 < s.indexOf("/ROWKEY")) && (o += `declare function compress_int (n in integer ) return varchar2 as ret varchar2(30); @@ -8137,39 +8137,39 @@ end; end compress_int; `), o += `begin `; - var m = !1, v = "user"; - d.optionEQvalue("apex", "yes") && (v = "coalesce(sys_context('APEX$SESSION','APP_USER'),user)"), (d.optionEQvalue("rowkey", "yes") || 0 < l.indexOf("/ROWKEY")) && (o += ` if inserting then + var u = !1, g = "user"; + d.optionEQvalue("apex", "yes") && (g = "coalesce(sys_context('APEX$SESSION','APP_USER'),user)"), (d.optionEQvalue("rowkey", "yes") || 0 < s.indexOf("/ROWKEY")) && (o += ` if inserting then `, o += ` :new.row_key := compress_int(row_key_seq.nextval); `, o += ` end if; -`, m = !0); - for (var B = 0; B < this.children.length; B++) { - var M = this.children[B]; - let D = null; - 0 < M.content.indexOf("/lower") ? D = "LOWER".toLowerCase() : 0 < M.content.indexOf("/upper") && (D = "UPPER".toLowerCase()), D != null && (o += " :new." + M.parseName().toLowerCase() + " := " + D + "(:new." + M.parseName().toLowerCase() + `); -`, m = !0); +`, u = !0); + for (var T = 0; T < this.children.length; T++) { + var S = this.children[T]; + let N = null; + 0 < S.content.indexOf("/lower") ? N = "LOWER".toLowerCase() : 0 < S.content.indexOf("/upper") && (N = "UPPER".toLowerCase()), N != null && (o += " :new." + S.parseName().toLowerCase() + " := " + N + "(:new." + S.parseName().toLowerCase() + `); +`, u = !0); } - (d.optionEQvalue("Row Version Number", "yes") || 0 < l.indexOf("/ROWVERSION")) && (o += ` if inserting then + (d.optionEQvalue("Row Version Number", "yes") || 0 < s.indexOf("/ROWVERSION")) && (o += ` if inserting then `, o += ` :new.row_version := 1; `, o += ` elsif updating then `, o += ` :new.row_version := NVL(:old.row_version, 0) + 1; `, o += ` end if; -`, m = !0), (d.optionEQvalue("Audit Columns", "yes") || 0 < l.indexOf("/AUDITCOLS") || 0 < l.indexOf("/AUDIT COL")) && (o += ` if inserting then +`, u = !0), (d.optionEQvalue("Audit Columns", "yes") || 0 < s.indexOf("/AUDITCOLS") || 0 < s.indexOf("/AUDIT COL")) && (o += ` if inserting then `, o += " :new." + d.getOptionValue("createdcol") + ` := SYSDATE; -`.toLowerCase(), o += " :new." + d.getOptionValue("createdbycol") + " := " + v + `; +`.toLowerCase(), o += " :new." + d.getOptionValue("createdbycol") + " := " + g + `; `.toLowerCase(), o += ` end if; `, o += " :new." + d.getOptionValue("updatedcol") + ` := SYSDATE; -`.toLowerCase(), o += " :new." + d.getOptionValue("updatedbycol") + " := " + v + `; -`.toLowerCase(), m = !0); - var L = d.additionalColumns(); - for (var w in L) { - var E = L[w]; - o += " if :new." + w + ` is null then -`, E.startsWith("INT") ? o += " " + w + ` := 0; -` : o += " " + w + ` := 'N/A'; +`.toLowerCase(), o += " :new." + d.getOptionValue("updatedbycol") + " := " + g + `; +`.toLowerCase(), u = !0); + var E = d.additionalColumns(); + for (var D in E) { + var L = E[D]; + o += " if :new." + D + ` is null then +`, L.startsWith("INT") ? o += " " + D + ` := 0; +` : o += " " + D + ` := 'N/A'; `, o += ` end if; -`, m = !0; +`, u = !0; } - return m ? (o += "end " + t.toLowerCase() + `_BIU; + return u ? (o += "end " + t.toLowerCase() + `_BIU; / `.toLowerCase(), o) : ""; @@ -8178,69 +8178,69 @@ end; r != "get" && (t = " default null"); let o = "out"; r != "get" && (o = " in"); - let l = h + "procedure " + r + `_row ( + let s = h + "procedure " + r + `_row ( `; - l += h + h + "p_id in number" + t; - for (var m in this.fks) { - let B = this.fks[m], M = "number", L = d.find(B); - L != null && L.getExplicitPkNode() != null && (M = L.getExplicitPkNode().parseType((w) => !0)), l += `, -`, l += h + h + "P_" + m + " " + o + " " + M + t; + s += h + h + "p_id in number" + t; + for (var u in this.fks) { + let T = this.fks[u], S = "number", E = d.find(T); + E != null && E.getExplicitPkNode() != null && (S = E.getExplicitPkNode().parseType((D) => !0)), s += `, +`, s += h + h + "P_" + u + " " + o + " " + S + t; } - for (let B = 0; B < this.children.length; B++) { - var v = this.children[B]; - v.refId() == null && v.children.length == 0 && (l += `, -`, l += h + h + "P_" + v.parseName() + " " + o + " " + v.parseType("plsql") + t); + for (let T = 0; T < this.children.length; T++) { + var g = this.children[T]; + g.refId() == null && g.children.length == 0 && (s += `, +`, s += h + h + "P_" + g.parseName() + " " + o + " " + g.parseType("plsql") + t); } - return l += ` - )`, l; + return s += ` + )`, s; }, this.procBody = function(r) { let t = d.objPrefix() + this.parseName(), o = h + `is `; o += h + `begin `; - let l = h + h + "for c1 in (select * from " + t + ` where id = p_id) loop + let s = h + h + "for c1 in (select * from " + t + ` where id = p_id) loop `; - r == "insert" && (l = h + h + "insert into " + t + ` ( -`, l += h + h + h + "id"), r == "update" && (l = h + h + "update " + t + ` set -`, l += h + h + h + "id = p_id"), o += l; - for (let M in this.fks) { - let L = this.fks[M], w = d.find(L); - w != null && w.getExplicitPkNode() != null && w.getExplicitPkNode().parseType((D) => !0), (r == "insert" || r == "update") && (o += `, + r == "insert" && (s = h + h + "insert into " + t + ` ( +`, s += h + h + h + "id"), r == "update" && (s = h + h + "update " + t + ` set +`, s += h + h + h + "id = p_id"), o += s; + for (let S in this.fks) { + let E = this.fks[S], D = d.find(E); + D != null && D.getExplicitPkNode() != null && D.getExplicitPkNode().parseType((N) => !0), (r == "insert" || r == "update") && (o += `, `); - let E = h + h + h + "P_" + M + " := c1." + M + `; + let L = h + h + h + "P_" + S + " := c1." + S + `; `; - r == "insert" && (E = h + h + h + M), r == "update" && (E = h + h + h + M + " = P_" + M + ` -`), o += E; + r == "insert" && (L = h + h + h + S), r == "update" && (L = h + h + h + S + " = P_" + S + ` +`), o += L; } - for (var m = 0; m < this.children.length; m++) { - var v = this.children[m]; - if (v.refId() != null || v.children.length != 0) + for (var u = 0; u < this.children.length; u++) { + var g = this.children[u]; + if (g.refId() != null || g.children.length != 0) continue; (r == "insert" || r == "update") && (o += `, `); - let M = h + h + h + "P_" + v.parseName().toLowerCase() + " := c1." + v.parseName().toLowerCase() + `; + let S = h + h + h + "P_" + g.parseName().toLowerCase() + " := c1." + g.parseName().toLowerCase() + `; `; - r == "insert" && (M = h + h + h + v.parseName().toLowerCase()), r == "update" && (M = h + h + h + v.parseName().toLowerCase() + " = P_" + v.parseName().toLowerCase() + ` -`), o += M; + r == "insert" && (S = h + h + h + g.parseName().toLowerCase()), r == "update" && (S = h + h + h + g.parseName().toLowerCase() + " = P_" + g.parseName().toLowerCase() + ` +`), o += S; } if (r == "insert") { o += ` ` + h + h + `) values ( `, o += h + h + h + "p_id"; - for (let M in this.fks) + for (let S in this.fks) o += `, -`, o += h + h + h + "p_" + M; - for (let M = 0; M < this.children.length; M++) { - let L = this.children[M]; - L.refId() == null && L.children.length == 0 && (o += `, -`, o += h + h + h + "p_" + L.parseName()); +`, o += h + h + h + "p_" + S; + for (let S = 0; S < this.children.length; S++) { + let E = this.children[S]; + E.refId() == null && E.children.length == 0 && (o += `, +`, o += h + h + h + "p_" + E.parseName()); } } - let B = ` + let T = ` end loop; `; - return r == "insert" && (B = ` -` + h + h + ");"), r == "update" && (B = h + h + "where id = p_id;"), o += B, o += ` + return r == "insert" && (T = ` +` + h + h + ");"), r == "update" && (T = h + h + "where id = p_id;"), o += T, o += ` ` + h + "end " + r + `_row; `, o += ` `, o; @@ -8284,132 +8284,132 @@ is let r = this.trimmedContent().toLowerCase(), t = r.indexOf("/insert "); if (0 < t) { r = r.substr(t + 8); - let o = r.split(" "), l = parseInt(o[0]); - const m = d.getOptionValue("datalimit"); - return m < l && (l = m), l; + let o = r.split(" "), s = parseInt(o[0]); + const u = d.getOptionValue("datalimit"); + return u < s && (s = u), s; } return 0; }, this.generateData = function(r) { if (Ce(), d.optionEQvalue("inserts", !1)) return ""; const t = this.inserts4tbl(r), o = this.orderedTableNodes(); - let l = ""; - for (let m = 0; m < o.length; m++) { - const v = t[o[m].parseName()]; - v != null && (l += v); + let s = ""; + for (let u = 0; u < o.length; u++) { + const g = t[o[u].parseName()]; + g != null && (s += g); } - return l; + return s; }, this.inserts4tbl = function(r) { let t = {}; if (d.optionEQvalue("inserts", !1)) return ""; - let o = d.objPrefix() + this.parseName(), l = "", m = null, v = null; - for (let M = 0; M < this.cardinality(); M++) { - let L = null; + let o = d.objPrefix() + this.parseName(), s = "", u = null, g = null; + for (let S = 0; S < this.cardinality(); S++) { + let E = null; if (r != null) { - const E = r[o]; - E != null && Array.isArray(E) && (L = E[M]); + const L = r[o]; + L != null && Array.isArray(L) && (E = L[S]); } - l += "insert into " + o + ` ( + s += "insert into " + o + ` ( `; - let w = this.getGenIdColName(); - if (w != null) - m = w, l += h + m + `, + let D = this.getGenIdColName(); + if (D != null) + u = D, s += h + u + `, `; else { - let E = this.getExplicitPkNode(); - E != null && (m = E.parseName(), l += h + m + `, + let L = this.getExplicitPkNode(); + L != null && (u = L.parseName(), s += h + u + `, `); } - for (let E in this.fks) { - let D = this.fks[E], F = d.find(D), R = ""; - F == null && (F = d.find(E), F.isMany2One() & !E.endsWith("_id") && (D = E, E = W(E), R = "_id")), l += h + E + R + `, + for (let L in this.fks) { + let N = this.fks[L], F = d.find(N), R = ""; + F == null && (F = d.find(L), F.isMany2One() & !L.endsWith("_id") && (N = L, L = W(L), R = "_id")), s += h + L + R + `, `; } - for (let E = 0; E < this.children.length; E++) { - let D = this.children[E]; - if (!(w != null && D.parseName() == "id") && D.refId() == null) { - if (D == this.getExplicitPkNode()) + for (let L = 0; L < this.children.length; L++) { + let N = this.children[L]; + if (!(D != null && N.parseName() == "id") && N.refId() == null) { + if (N == this.getExplicitPkNode()) continue; - D.children.length == 0 && (l += h + D.parseName() + `, + N.children.length == 0 && (s += h + N.parseName() + `, `); } } - if (l.lastIndexOf(`, -`) == l.length - 2 && (l = l.substr(0, l.length - 2) + ` -`), l += `) values ( -`, w != null) - v = M + 1, l += h + v + `, + if (s.lastIndexOf(`, +`) == s.length - 2 && (s = s.substr(0, s.length - 2) + ` +`), s += `) values ( +`, D != null) + g = S + 1, s += h + g + `, `; else { - let E = this.getExplicitPkNode(); - if (E != null) { - const D = E.parseName(); - let F = g(d.data, null, D, this.parseName()), R = -1; - L != null && (R = L[D]), F != null && F[M] != null && (R = F[M]), R.replaceAll && (R = "'" + R + "'"), v = R != -1 ? R : M + 1, l += h + v + `, + let L = this.getExplicitPkNode(); + if (L != null) { + const N = L.parseName(); + let F = p(d.data, null, N, this.parseName()), R = -1; + E != null && (R = E[N]), F != null && F[S] != null && (R = F[S]), R.replaceAll && (R = "'" + R + "'"), g = R != -1 ? R : S + 1, s += h + g + `, `; } } - for (let E in this.fks) { - let D = this.fks[E], F = d.find(D), R = [], H = "INTEGER"; + for (let L in this.fks) { + let N = this.fks[L], F = d.find(N), R = [], H = "INTEGER"; for (let G = 1; G <= F.cardinality(); G++) R.push(G); - if (L != null) { - let G = L[E]; + if (E != null) { + let G = E[L]; if (G != null) typeof G == "string" && (H = "STRING"), R = [], R[0] = G; else { - const e = o + "_" + D, a = d.data[e]; + const e = o + "_" + N, a = d.data[e]; if (a != null) { for (const n in a) - if (a[n][o + "_id"] == v) { - const c = a[n][E]; + if (a[n][o + "_id"] == g) { + const c = a[n][L]; c != null && (typeof c == "string" && (H = "STRING"), R = [], R[0] = c); break; } } else { - let n = F.getPkName(), c = L[n]; + let n = F.getPkName(), c = E[n]; c != null && (typeof c == "string" && (H = "STRING"), R = [], R[0] = c); } } } - l += h + le(d.getOptionValue("Data Language"), se(o, W(D) + "_id", H, R)) + `, + s += h + le(d.getOptionValue("Data Language"), se(o, W(N) + "_id", H, R)) + `, `; } - for (let E = 0; E < this.children.length; E++) { - let D = this.children[E]; - if (!(w != null && D.parseName() == "id") && D.refId() == null) { - if (D == this.getExplicitPkNode()) + for (let L = 0; L < this.children.length; L++) { + let N = this.children[L]; + if (!(D != null && N.parseName() == "id") && N.refId() == null) { + if (N == this.getExplicitPkNode()) continue; - if (D.children.length == 0) { - let F = D.parseValues(), R = D.parseName(); - if (L != null) { - let G = L[R]; + if (N.children.length == 0) { + let F = N.parseValues(), R = N.parseName(); + if (E != null) { + let G = E[R]; G != null && (F = [], F[0] = G); } - let H = se(o, R, D.parseType(), F); - l += h + le(d.getOptionValue("Data Language"), H) + `, + let H = se(o, R, N.parseType(), F); + s += h + le(d.getOptionValue("Data Language"), H) + `, `; } } } - l.lastIndexOf(`, -`) == l.length - 2 && (l = l.substr(0, l.length - 2) + ` -`), l += `); + s.lastIndexOf(`, +`) == s.length - 2 && (s = s.substr(0, s.length - 2) + ` +`), s += `); `; } - l != "" && (l += ` + s != "" && (s += ` commit; `); - let B = this.getGenIdColName(); - B != null && 1 < this.cardinality() && !d.optionEQvalue("pk", "guid") && (l += "alter table " + o + ` -modify ` + B + " generated always as identity restart start with " + (this.cardinality() + 1) + `; + let T = this.getGenIdColName(); + T != null && 1 < this.cardinality() && !d.optionEQvalue("pk", "guid") && (s += "alter table " + o + ` +modify ` + T + " generated always as identity restart start with " + (this.cardinality() + 1) + `; -`), t[o] = l; - for (let M = 0; M < this.children.length; M++) { - const L = this.children[M]; - 0 < L.children.length && (t = { ...t, ...L.inserts4tbl(r) }); +`), t[o] = s; + for (let S = 0; S < this.children.length; S++) { + const E = this.children[S]; + 0 < E.children.length && (t = { ...t, ...E.inserts4tbl(r) }); } return t; }, this.isArray = function() { @@ -8426,32 +8426,32 @@ modify ` + B + " generated always as identity restart start with " + (this.card let o = ""; this.getExplicitPkNode == null && (o += r + "'" + this.getGenIdColName() + "' : " + t + "." + this.getGenIdColName() + `, `); - for (var l = 0; l < this.children.length; l++) { - var m = this.children[l], v = m.parseName(); - if (m.children.length == 0) { - if (this.hasNonArrayChildId(v)) + for (var s = 0; s < this.children.length; s++) { + var u = this.children[s], g = u.parseName(); + if (u.children.length == 0) { + if (this.hasNonArrayChildId(g)) continue; - o += r + "'" + v + "' : " + t + "." + v; + o += r + "'" + g + "' : " + t + "." + g; } else { - if (o += r + "'" + v + `' : [ -`, m.isMany2One(), r += " ", o += r + `select JSON { + if (o += r + "'" + g + `' : [ +`, u.isMany2One(), r += " ", o += r + `select JSON { `, this.isMany2One()) throw new Error(this.one2many2oneUnsupoported); - o += m.generateSelectJsonTopDown(r + " "), o += r + " WITH NOCHECK } from " + v + ` with INSERT UPDATE + o += u.generateSelectJsonTopDown(r + " "), o += r + " WITH NOCHECK } from " + g + ` with INSERT UPDATE `; - let L = null; - for (var B in m.fks) { - var M = m.fks[B]; - if (M == t) { - L = B; + let E = null; + for (var T in u.fks) { + var S = u.fks[T]; + if (S == t) { + E = T; break; } } - const w = t + "." + this.getPkName(), E = v + "." + L; - o += r + "where " + E + " = " + w + ` + const D = t + "." + this.getPkName(), L = g + "." + E; + o += r + "where " + L + " = " + D + ` `, r = r.slice(0, -2), o += r + "]"; } - o += l < this.children.length - 1 ? `, + o += s < this.children.length - 1 ? `, ` : ` `; } @@ -8461,355 +8461,386 @@ modify ` + B + " generated always as identity restart start with " + (this.card var r = this.trimmedContent(), t = r.split(" "); if (3 < t.length) throw "max 1 table is allowed in DV"; - var o = "", l = d.find(t[2]); - return l != null && (o += "create or replace json relational duality view " + t[1] + ` as + var o = "", s = d.find(t[2]); + return s != null && (o += "create or replace json relational duality view " + t[1] + ` as `, o += `select JSON { -`, o += l.isMany2One() ? l.generateSelectJsonBottomUp(" ") : l.generateSelectJsonTopDown(" "), o += "} from " + l.parseName() + ` with INSERT UPDATE DELETE; +`, o += s.isMany2One() ? s.generateSelectJsonBottomUp(" ") : s.generateSelectJsonTopDown(" "), o += "} from " + s.parseName() + ` with INSERT UPDATE DELETE; `), o; }; } - function x(T) { - d = T; - const b = T.input; - let i = [], s = []; - const r = Z(b + ` + function k(M) { + d = M; + const B = M.input; + let i = [], l = []; + const r = Z(B + ` `, !0, !0, ""); d.data = null; - let t = null, o = "", l = 0; + let t = null, o = "", s = 0; e: - for (let m in r) { - const v = r[m]; - if (v.value == ` + for (let u in r) { + const g = r[u]; + if (g.value == ` ` && t == null) { if (o = o.replace(/\r/g, ""), o.replace(/\r/g, "").replace(/ /g, "") == "") { - o = "", l++; + o = "", s++; continue; } - let M = new I(l, o, null), L = !1; - for (let w = 0; w < i.length; w++) { - let E = i[w]; - if (M.apparentDepth() <= E.apparentDepth()) - if (0 < w) { - let D = i[w - 1]; - M = new I(l, o, D), i[w] = M, i = i.slice(0, w + 1), L = !0; + let S = new I(s, o, null), E = !1; + for (let D = 0; D < i.length; D++) { + let L = i[D]; + if (S.apparentDepth() <= L.apparentDepth()) + if (0 < D) { + let N = i[D - 1]; + S = new I(s, o, N), i[D] = S, i = i.slice(0, D + 1), E = !0; break; } else - i[0] = M, i = i.slice(0, 1), s.push(M), L = !0; + i[0] = S, i = i.slice(0, 1), l.push(S), E = !0; } - if (!L) { + if (!E) { if (0 < i.length) { - let w = i[i.length - 1]; - M = new I(l, o, w); + let D = i[i.length - 1]; + S = new I(s, o, D); } - i.push(M), M.apparentDepth() == 0 && s.push(M); + i.push(S), S.apparentDepth() == 0 && l.push(S); } - if (M.isMany2One()) { - const w = M.parent; - w.fks == null && (w.fks = []); - let E = M.refId(); - E == null && (E = M.parseName()), w.fks[M.parseName() + "_id"] = E; + if (S.isMany2One()) { + const D = S.parent; + D.fks == null && (D.fks = []); + let L = S.refId(); + L == null && (L = S.parseName()), D.fks[S.parseName() + "_id"] = L; } - l++, o = ""; + s++, o = ""; continue; } - if (t == null && v.value == "#") { + if (t == null && g.value == "#") { t = ""; continue; } if (t != null) { - if (t += v.value, v.value != ` -` && v.value != "}") + if (t += g.value, g.value != ` +` && g.value != "}") continue; - const B = Z(t, !1, !0, ""); - if (B.length % 4 == 3 && B[1].value == ":") { - T.setOptions(t), t = null, o = ""; + const T = Z(t, !1, !0, ""); + if (T.length % 4 == 3 && T[1].value == ":") { + M.setOptions(t), t = null, o = ""; continue; } - let M = null, L = null; - for (let w in B) { - const E = B[w]; - if (M == null && E.value == "flattened") { - M = ""; + let S = null, E = null; + for (let D in T) { + const L = T[D]; + if (S == null && L.value == "flattened") { + S = ""; continue; } - if (M != null) { - if (M += E.value, M == "=" || M.charAt(M.length - 1) != "}") + if (S != null) { + if (S += L.value, S == "=" || S.charAt(S.length - 1) != "}") continue; - let D = M.substring(1); + let N = S.substring(1); try { - d.data = JSON.parse(D), t = null, o = ""; + d.data = JSON.parse(N), t = null, o = ""; continue e; } catch { } } - if (L == null && E.value == "settings") { - L = ""; + if (E == null && L.value == "settings") { + E = ""; continue; } - if (L != null) { - L += E.value, L.substring(1); + if (E != null) { + E += L.value, E.substring(1); try { - T.setOptions(L), t = null, o = ""; + M.setOptions(E), t = null, o = ""; continue e; } catch { } } } } - if (v.type != "comment") { - if (v.type == "line-comment") { - 0 < o.trim().length && (o += v.value); + if (g.type != "comment") { + if (g.type == "line-comment") { + 0 < o.trim().length && (o += g.value); continue; } - o += v.value; + o += g.value; } } - return s; + return l; } - function p(T, b) { - let i = b.toLowerCase(); - return 0 < T.indexOf(i) && T.indexOf(i) == T.length - i.length ? T.substring(0, T.length - i.length) : T.trim(); + function b(M, B) { + let i = B.toLowerCase(); + return 0 < M.indexOf(i) && M.indexOf(i) == M.length - i.length ? M.substring(0, M.length - i.length) : M.trim(); } - function g(T, b, i, s) { + function p(M, B, i, l) { let r = []; - if (T == null || typeof T != "object") + if (M == null || typeof M != "object") return null; - let t = T[i]; - t != null && b == s && r.push(t); - for (var o in T) { - let l = T[o]; - t = g(l, o, i, s), t != null && (r = r.concat(t)); + let t = M[i]; + t != null && B == l && r.push(t); + for (var o in M) { + let s = M[o]; + t = p(s, o, i, l), t != null && (r = r.concat(t)); } return r; } - return x; + return k; }(); var Ae = function() { - function d(b) { - for (var i = "", s = 0; s < b; s++) - i = i + " "; - return i; + function d(i) { + for (var l = "", r = 0; r < i; r++) + l = l + " "; + return l; } - function h(b, i) { - for (const s in b) - if (JSON.stringify(b[s]) == JSON.stringify(i)) + function h(i, l) { + for (const r in i) + if (JSON.stringify(i[r]) == JSON.stringify(l)) return !0; return !1; } - function k(b) { - let i = ["_id", "Id"]; - if (b.id != null) - return { key: "id", value: b.id }; - for (let s = 0; s < i.length; s++) { - const r = i[s]; - for (let t in b) - if (t.endsWith(r)) - return { key: t, value: b[t] }; + function x(i) { + let l = ["_id", "Id"]; + if (i.id != null) + return { key: "id", value: i.id }; + for (let r = 0; r < l.length; r++) { + const t = l[r]; + for (let o in i) + if (o.endsWith(t)) + return { key: o, value: i[o] }; } } - function N(b) { - return W(b) + "_id"; - } - function I(b) { - for (let i in b) - if (!(b[i] != null && typeof b[i] == "object")) + function w(i) { + for (let l in i) + if (!(i[l] != null && typeof i[l] == "object")) return !0; return !1; } - function x(b) { - let i = null; + function I(i) { + let l = null; e: - for (const s in b) - if (s == 0) - for (const r in b[s]) { - i = r; + for (const r in i) + if (r == 0) + for (const t in i[r]) { + l = t; break e; } else { - i = s; + l = r; break e; } - return i.toLowerCase() == "id" ? null : i.toLowerCase().endsWith("_id") ? i.substring(0, i.length - 3) : i.endsWith("Id") ? i.substring(0, i.length - 2) : null; + return l.toLowerCase() == "id" ? null : l.toLowerCase().endsWith("_id") ? l.substring(0, l.length - 3) : l.endsWith("Id") ? l.substring(0, l.length - 2) : null; } - function p(b, i, s) { - let r = !1, t = !1; - for (const l in b) - for (var o = 0; o < l; o++) - if (b[l][i] == b[o][i] && b[l][s] != b[o][s] ? r = !0 : b[l][i] != b[o][i] && b[l][s] == b[o][s] && (t = !0), r && t) + function k(i, l, r) { + let t = !1, o = !1; + for (const u in i) + for (var s = 0; s < u; s++) + if (i[u][l] == i[s][l] && i[u][r] != i[s][r] ? t = !0 : i[u][l] != i[s][l] && i[u][r] == i[s][r] && (o = !0), t && o) return !0; return !1; } - function g(b, i) { - const s = JSON.parse(b), r = x(s); - r != null && (i = r), i == null && (i = "root_tbl"); - const t = new T(); - t.duplicatesAndParents(i, s), t.flatten(i, s); - let o = t.output(i, s, 0); - return o += ` + function b(i) { + if (typeof i != "object") + return ""; + let l = "("; + for (let r in i) { + if (r == 0) + return b(i[r]); + i[r] != null && typeof i[r] == "object" || (l += r + ","); + } + return l.lastIndexOf(",") == l.length - 1 && (l = l.substring(0, l.length - 1)), l + ")"; + } + function p(i, l) { + let r = i.indexOf("("); + return 0 < r && (i = i.substring(0, r)), r = l.indexOf("("), 0 < r && (l = l.substring(0, r)), i + "_" + l + "(" + i + "_id," + l + "_id)"; + } + function M(i, l) { + const r = JSON.parse(i), t = I(r); + t != null && (l = t), l == null && (l = "root_tbl"); + const o = new B(); + o.duplicatesAndParents(l + b(r), r), o.flatten(l + b(r), r); + let s = o.output(l + b(r), r, 0); + s += ` -#settings = { genpk: false, drop: true }`, o += ` +#settings = { genpk: false, drop: true }`, s += ` #flattened = -`, o += JSON.stringify(t.tables, null, 3), o += ` -`, o += ` +`; + const u = {}; + for (const g in o.tableContent) + u[o.tableName(g)] = o.tableContent[g]; + return s += JSON.stringify(u, null, 3), s += ` +`, s += ` -- Generated by json2qsql.js ${oe()} ` + (/* @__PURE__ */ new Date()).toLocaleString() + ` -`, o += `#document = -`, o += JSON.stringify(s, null, 3), o += ` -`, o; +`, s += `#document = +`, s += JSON.stringify(r, null, 3), s += ` +`, s; } - function T() { - this.tables = {}, this.notNormalized = [], this.allTables = [], this.child2parent = {}, this.objCounts = {}, this.output = function(b, i, s, r) { - if (r != !1 && this.notNormalized.includes(b)) { - const l = this.parent(b) + "_" + b, m = this.tables[l]; - if (m != null) { - let v = ` -` + d(s) + l + " /insert " + m.length; - if (m[0], p(m, N(this.parent(b)), N(b))) - return v += this.output(b, i, s + 1, !1), v; + function B() { + this.tableContent = {}, this.notNormalized = [], this.tableSignatures = [], this.child2parent = {}, this.objCounts = {}, this.output = function(i, l, r, t) { + if (t != !1 && this.notNormalized.includes(i)) { + const u = p(this.parent(i), i), g = this.tableContent[u]; + if (g != null) { + let T = ` +` + d(r) + this.tableName(u) + " /insert " + g.length; + if (g[0], k(g, this.refIdName(this.parent(i)), this.refIdName(i))) + return T += this.output(i, l, r + 1, !1), T; } } - let t = b, o = ""; - if (this.notNormalized.includes(b) && (o = ">"), 0 < s && (t = ` -` + d(s) + o + b), typeof i == "string" && (t += " vc"), typeof i == "number" && (t += " num", b.endsWith("_id") || b.endsWith("Id"))) - return t += " /pk", t; - if (b == "id") + let o = this.tableName(i), s = ""; + if (this.notNormalized.includes(i) && (s = ">"), 0 < r && (o = ` +` + d(r) + s + this.tableName(i)), typeof l == "string" && (o += " vc"), typeof l == "number" && (o += " num", i.endsWith("_id") || i.endsWith("Id"))) + return o += " /pk", o; + if (i == "id") return ` -` + d(s) + "id vc32 /pk"; +` + d(r) + "id vc32 /pk"; e: - if (typeof i == "object") { - if (Array.isArray(i)) - for (const m in i) { - 1 <= m && console.log("1 <= property !"); - const v = i[m]; - t = this.output(b, v, s, r); + if (typeof l == "object") { + if (Array.isArray(l)) + for (const g in l) { + 1 <= g && console.log("1 <= property !"); + const T = l[g]; + o = this.output(i, T, r, t); break e; } else - b != "" && (t += " /insert " + this.tables[b].length); - let l = ""; - for (let m in i) { - const v = i[m]; - if (m != null) { - const M = W(b), L = m.toLowerCase(); - if (b != null && M + "_id" == L && 0 < s && (l = m), M + "_id" == L) + i != "" && (this.tableContent[i] == null && console.log(), o += " /insert " + this.tableContent[i].length); + let u = ""; + for (let g in l) { + const T = l[g]; + if (g != null) { + const E = W(i), D = g.toLowerCase(); + if (i != null && E + "_id" == D && 0 < r && (u = g), E + "_id" == D) continue; } - this.allTables.includes(b) || (t = "", s--); - const B = this.output(m, v, s + 1); - t += B; + this.tableSignatures.includes(i) || (o = "", r--); + const S = this.output(g + b(T), T, r + 1); + o += S; } - l != "" && (t += ` -` + d(s) + l); + u != "" && (o += ` +` + d(r) + u); } - return t; - }, this.flatten = function(b, i, s) { - let r = {}; - for (let l in i) - if (i[l] != null && typeof i[l] == "object") { - let m = b, v = s; - if (isNaN(l)) { - m = l; - const B = k(r); - B != null && (v = B); + return o; + }, this.idSeq = 1, this.flatten = function(i, l, r) { + let t = {}; + for (let u in l) + if (l[u] != null && typeof l[u] == "object") { + let g = i, T = r; + if (isNaN(u)) { + g = u + b(l[u]); + const S = x(t); + S != null && (T = S); } - this.flatten(m, i[l], v); + this.flatten(g, l[u], T); } else - r[l] = i[l]; - !this.notNormalized.includes(b) && s != null && Object.keys(r).length && (r[s.key] = s.value); - const t = 0 < Object.keys(r).length; - let o = this.tables[b]; - if (t) { - if (o == null && (o = []), h(o, r) || o.push(r), this.notNormalized.includes(b)) { - const l = this.parent(b); - if (l != null) { - const m = l + "_" + b; - let v = this.tables[m]; - v == null && (v = []); - const B = {}; - B[N(l)] = s.value, B[N(b)] = k(r).value, v.push(B), this.tables[m] = v; + t[u] = l[u]; + !this.notNormalized.includes(i) && r != null && Object.keys(t).length && (t[r.key] = r.value); + const o = 0 < Object.keys(t).length; + let s = this.tableContent[i]; + if (o) { + if (s == null && (s = []), h(s, t) || s.push(t), this.notNormalized.includes(i)) { + const u = this.parent(i); + if (u != null) { + const g = p(u, i); + let T = this.tableContent[g]; + T == null && (T = []); + const S = {}; + S[this.refIdName(u)] = r.value; + let E = x(t); + E == null && (t.id = this.idSeq++, E = x(t)), S[this.refIdName(i)] = E.value, T.push(S), this.tableContent[g] = T; } } - this.tables[b] = o; + this.tableContent[i] = s; } else - o == null && (this.tables[b] = []); - }, this.duplicatesAndParents = function(b, i) { - const s = '"' + b + '":' + JSON.stringify(i); - let r = this.objCounts[s]; - r == null && (r = 0); - let t = !1; - for (let l in i) - if (i[l] != null && typeof i[l] == "object") { - let m = b; - isNaN(l) && (m = l), m != b && (this.child2parent[m] = b), this.duplicatesAndParents(m, i[l]), t = !0; + s == null && (this.tableContent[i] = []); + }, this.duplicatesAndParents = function(i, l) { + const r = '"' + i + '":' + JSON.stringify(l); + let t = this.objCounts[r]; + t == null && (t = 0); + let o = !1; + for (let u in l) + if (l[u] != null && typeof l[u] == "object") { + let g = i; + isNaN(u) && (g = u + b(l[u])), g != i && (this.child2parent[g] = i), this.duplicatesAndParents(g, l[u]), o = !0; } - I(i) && !this.allTables.includes(b) && this.allTables.push(b), t || (this.objCounts[s] = r + 1), 1 < this.objCounts[s] && !this.notNormalized.includes(b) && this.notNormalized.push(b); - }, this.parent = function(b) { - let i = this.child2parent[b]; - return i != null && !this.allTables.includes(i) ? this.parent(i) : i; + w(l) && !this.tableSignatures.includes(i) && this.tableSignatures.push(i), o || (this.objCounts[r] = t + 1), 1 < this.objCounts[r] && !this.notNormalized.includes(i) && this.notNormalized.push(i); + }, this.parent = function(i) { + let l = this.child2parent[i]; + return l != null && !this.tableSignatures.includes(l) ? this.parent(l) : l; + }, this.tableName = function(i) { + const l = i.indexOf("("); + if (l < 0) + return i; + const r = i.substring(0, l); + let t = 0, o = -1; + for (const s in this.tableSignatures) { + const u = this.tableSignatures[s]; + u.substring(0, u.indexOf("(")) == r && t++, u == i && (o = t); + } + return t < 2 ? r : r + o; + }, this.refIdName = function(i) { + return W(this.tableName(i)) + "_id"; }; } - return g; + return M; }(); const ye = function() { - function d(p, g, T, b) { - this.from = g, this.to = T, T == null && (this.to = new h(g.line, g.depth + 1)), this.message = p, this.severity = b, b == null && (this.severity = "error"); + function d(b, p, M, B) { + this.from = p, this.to = M, M == null && (this.to = new h(p.line, p.depth + 1)), this.message = b, this.severity = B, B == null && (this.severity = "error"); } - function h(p, g) { - this.line = p, this.depth = g; + function h(b, p) { + this.line = b, this.depth = p; } - function k(p) { - const g = p, T = p.input; - let b = []; - const i = T.split(` + function x(b) { + const p = b, M = b.input; + let B = []; + const i = M.split(` `); - b = b.concat(x(i)); - const s = g.descendants(); - for (let r = 0; r < s.length; r++) { - const t = s[r]; - if (g.optionEQvalue("genpk", !0) && s[r].parseName() == "id") { - const m = t.content.toLowerCase().indexOf("id"); - b.push(new d(j.duplicateId, new h(t.line, m))); + B = B.concat(k(i)); + const l = p.descendants(); + for (let r = 0; r < l.length; r++) { + const t = l[r]; + if (p.optionEQvalue("genpk", !0) && l[r].parseName() == "id") { + const u = t.content.toLowerCase().indexOf("id"); + B.push(new d(j.duplicateId, new h(t.line, u))); continue; } const o = t.src[2]; if (2 < t.src.length && o.value == "-") { - const m = o.begin; - b.push(new d(j.invalidDatatype, new h(t.line, m))); + const u = o.begin; + B.push(new d(j.invalidDatatype, new h(t.line, u))); continue; } - const l = t.src[1]; - if (1 < t.src.length && 0 < l.value.indexOf("0")) { - const m = l.begin; - b.push(new d(j.invalidDatatype, new h(t.line, m))); + const s = t.src[1]; + if (1 < t.src.length && 0 < s.value.indexOf("0")) { + const u = s.begin; + B.push(new d(j.invalidDatatype, new h(t.line, u))); continue; } - b = b.concat(N(g, t)), b = b.concat(I(g, t)); + B = B.concat(w(p, t)), B = B.concat(I(p, t)); } - return b; + return B; } - function N(p, g) { - var T = [], b = g.content.toLowerCase(); - if (g.parseType() == "view") { - var i = $(b, " "); + function w(b, p) { + var M = [], B = p.content.toLowerCase(); + if (p.parseType() == "view") { + var i = $(B, " "); let t = 0; - for (var s = 0; s < i.length; s++) - if (t += i[s].length, i[s] != " " && i[s] != "view" && s != 1) { - var r = p.find(i[s]); - r == null && T.push(new d( - j.undefinedObject + i[s], - new h(g.line, t - i[s].length) + for (var l = 0; l < i.length; l++) + if (t += i[l].length, i[l] != " " && i[l] != "view" && l != 1) { + var r = b.find(i[l]); + r == null && M.push(new d( + j.undefinedObject + i[l], + new h(p.line, t - i[l].length) )); } } - return T; + return M; } - function I(p, g) { - var T = [], b = g.content.toLowerCase(); - if (0 < b.indexOf("/fk") || 0 < b.indexOf("/reference")) { - let r = $(b, " "), t = 0, o = !1; + function I(b, p) { + var M = [], B = p.content.toLowerCase(); + if (0 < B.indexOf("/fk") || 0 < B.indexOf("/reference")) { + let r = $(B, " "), t = 0, o = !1; for (var i = 0; i < r.length; i++) if (t += r[i].length, r[i] != " ") { if (r[i] == "/fk" || r[i].indexOf("/reference") == 0) { @@ -8817,68 +8848,68 @@ const ye = function() { continue; } if (o) { - var s = p.find(r[i]); - if (s == null) { - T.push(new d( + var l = b.find(r[i]); + if (l == null) { + M.push(new d( j.undefinedObject + r[i], - new h(g.line, t - r[i].length) + new h(p.line, t - r[i].length) )); break; } } } } - return T; + return M; } - function x(p) { - for (var g = [], T = Se(p), b = 1; b < p.length; b++) { - var i = p[b - 1], s = p[b], r = re(i), t = re(s); - t != 0 && r < t && t < r + T && g.push( + function k(b) { + for (var p = [], M = Se(b), B = 1; B < b.length; B++) { + var i = b[B - 1], l = b[B], r = re(i), t = re(l); + t != 0 && r < t && t < r + M && p.push( new d( - j.misalignedAttribute + T, - new h(b, t) + j.misalignedAttribute + M, + new h(B, t) ) ); } - return g; + return p; } - return k; + return x; }(); function Se(d) { let h = []; - for (var k = 0; k < d.length; k++) { - var N = d[k]; - h[k] = re(N); + for (var x = 0; x < d.length; x++) { + var w = d[x]; + h[x] = re(w); } let I = []; - for (let p = 0; p < h.length; p++) { - let g = Me(h, p); - if (g != null) { - let T = I[h[p] - h[g]]; - T == null && (T = 0), I[h[p] - h[g]] = T + 1; + for (let b = 0; b < h.length; b++) { + let p = Me(h, b); + if (p != null) { + let M = I[h[b] - h[p]]; + M == null && (M = 0), I[h[b] - h[p]] = M + 1; } } - let x = null; - for (let p in I) - (x == null || I[x] <= I[p]) && (x = p); - return x; + let k = null; + for (let b in I) + (k == null || I[k] <= I[b]) && (k = b); + return k; } function re(d) { - for (var h = d.split(/ |\t/), k = 0, N = 0; N < h.length; N++) { - var I = h[N]; - if (I == " " && (k += 4), I == "") { - k++; + for (var h = d.split(/ |\t/), x = 0, w = 0; w < h.length; w++) { + var I = h[w]; + if (I == " " && (x += 4), I == "") { + x++; continue; } if (!/[^.a-zA-Z0-9_"]/.test(I)) - return k; + return x; } return 0; } function Me(d, h) { - for (let k = h; 0 <= k; k--) - if (d[k] < d[h]) - return k; + for (let x = h; 0 <= x; x--) + if (d[x] < d[h]) + return x; return null; } const j = { @@ -8920,234 +8951,234 @@ const j = { //"Auxiliary Columns": {label: "Auxiliary Columns", value:''}, // e.g. security_group_id integer //namecase: {label: 'Object and Field name convention', value:'canonic',check:['canonic','json']}, }; - function h(N) { - if (N == null) + function h(w) { + if (w == null) return null; - let I = N; + let I = w; return typeof I == "string" && (I = I.toLowerCase()), I == "yes" ? !0 : I == "no" ? !1 : I == "y" ? !0 : I == "n" ? !1 : I == "true" ? !0 : I == "false" ? !1 : I == ne.toLowerCase() ? "identity" : I == ue.toLowerCase() ? "guid" : I == me.toLowerCase() ? "tswtz" : I == de.toLowerCase() ? "tswltz" : I; } - function k(N, I) { - this.ddl = null, this.erd = null, this.errors = null, this.options = JSON.parse(JSON.stringify(d)), this.input = N, this.getOptionValue = function(p) { - const g = p.toLowerCase(); - let T = this.options[g]; - if (!(g in this.options)) - for (let b in this.options) { - const i = this.options[b].label; + function x(w, I) { + this.ddl = null, this.erd = null, this.errors = null, this.options = JSON.parse(JSON.stringify(d)), this.input = w, this.getOptionValue = function(b) { + const p = b.toLowerCase(); + let M = this.options[p]; + if (!(p in this.options)) + for (let B in this.options) { + const i = this.options[B].label; if (i == null) continue; - i.toLowerCase() == g && (T = this.options[b]); + i.toLowerCase() == p && (M = this.options[B]); } - return T == null ? null : T.value; - }, this.optionEQvalue = function(p, g) { - var T = this.getOptionValue(p); - return h(T) == h(g); + return M == null ? null : M.value; + }, this.optionEQvalue = function(b, p) { + var M = this.getOptionValue(b); + return h(M) == h(p); }, this.nonDefaultOptions = function() { - let p = {}; - for (let g in this.options) - d[g] && !this.optionEQvalue(g, d[g].value) && (p[g] = this.options[g].value); - return p; + let b = {}; + for (let p in this.options) + d[p] && !this.optionEQvalue(p, d[p].value) && (b[p] = this.options[p].value); + return b; }, this.unknownOptions = function() { - let p = []; - for (let g in this.options) - d[g] == null && p.push(g); - return p; - }, this.setOptionValue = function(p, g) { - let T = p.toLowerCase(); - if (!(T in this.options)) { + let b = []; + for (let p in this.options) + d[p] == null && b.push(p); + return b; + }, this.setOptionValue = function(b, p) { + let M = b.toLowerCase(); + if (!(M in this.options)) { for (let i in this.options) - if (this.options[i].label == p) { - this.options[i].value = g; + if (this.options[i].label == b) { + this.options[i].value = p; return; } } - g == null && (g = ""); - let b = this.options[T]; - b == null && (b = {}, this.options[T] = b), b.value = g; + p == null && (p = ""); + let B = this.options[M]; + B == null && (B = {}, this.options[M] = B), B.value = p; }, this.semantics = function() { - var p = ""; - return this.optionEQvalue("semantics", "CHAR") ? p = " char" : this.optionEQvalue("semantics", "BYTE") && (p = " byte"), p; - }, this.find = function(p) { - for (var g = 0; g < this.forest.length; g++) - for (var T = this.forest[g].descendants(), b = 0; b < T.length; b++) { - var i = T[b]; - if (i.parseName() == he(p)) + var b = ""; + return this.optionEQvalue("semantics", "CHAR") ? b = " char" : this.optionEQvalue("semantics", "BYTE") && (b = " byte"), b; + }, this.find = function(b) { + for (var p = 0; p < this.forest.length; p++) + for (var M = this.forest[p].descendants(), B = 0; B < M.length; B++) { + var i = M[B]; + if (i.parseName() == he(b)) return i; } return null; - }, this.setOptions = function(p) { - p = p.trim(), p.startsWith("#") && (p = p.substring(1).trim()); - const g = p.indexOf("="); - let T = p.substring(g + 1).trim(); - T.indexOf("{") < 0 && (T = "{" + p + "}"); - let b = "", i = Z(T, !0, !0, ""); + }, this.setOptions = function(b) { + b = b.trim(), b.startsWith("#") && (b = b.substring(1).trim()); + const p = b.indexOf("="); + let M = b.substring(p + 1).trim(); + M.indexOf("{") < 0 && (M = "{" + b + "}"); + let B = "", i = Z(M, !0, !0, ""); for (let r in i) { let t = i[r]; - t.type == "identifier" && t.value != "true" && t.value != "false" && t.value != "null" ? b += '"' + t.value + '"' : b += t.value; + t.type == "identifier" && t.value != "true" && t.value != "false" && t.value != "null" ? B += '"' + t.value + '"' : B += t.value; } - let s = JSON.parse(b); - for (let r in s) - this.setOptionValue(r.toLowerCase(), s[r]); + let l = JSON.parse(B); + for (let r in l) + this.setOptionValue(r.toLowerCase(), l[r]); }, this.descendants = function() { - for (var p = [], g = 0; g < this.forest.length; g++) - p = p.concat(this.forest[g].descendants()); - return p; + for (var b = [], p = 0; p < this.forest.length; p++) + b = b.concat(this.forest[p].descendants()); + return b; }, this.additionalColumns = function() { - var p = [], g = this.getOptionValue("Auxiliary Columns"); - if (g == null) - return p; - for (var T = g.split(","), b = 0; b < T.length; b++) { - var i = T[b].trim(), s = "VARCHAR2(4000)", r = i.indexOf(" "); - 0 < r && (s = i.substring(r + 1).toUpperCase(), i = i.substring(0, r)), p[i] = s; + var b = [], p = this.getOptionValue("Auxiliary Columns"); + if (p == null) + return b; + for (var M = p.split(","), B = 0; B < M.length; B++) { + var i = M[B].trim(), l = "VARCHAR2(4000)", r = i.indexOf(" "); + 0 < r && (l = i.substring(r + 1).toUpperCase(), i = i.substring(0, r)), b[i] = l; } - return p; - }, this.objPrefix = function(p) { - var g = this.getOptionValue("schema"); - g == null && (g = ""), g != "" && p == null ? g = g + "." : g = ""; - var T = ""; - return this.getOptionValue("prefix") != null && (T = this.getOptionValue("prefix")), g = g + T, T != "" && (g = g + "_"), g.toLowerCase(); + return b; + }, this.objPrefix = function(b) { + var p = this.getOptionValue("schema"); + p == null && (p = ""), p != "" && b == null ? p = p + "." : p = ""; + var M = ""; + return this.getOptionValue("prefix") != null && (M = this.getOptionValue("prefix")), p = p + M, M != "" && (p = p + "_"), p.toLowerCase(); }; - let x = ""; - 0 < N.toLowerCase().indexOf("overridesettings") && ce(this), I != null && this.optionEQvalue("overrideSettings", !1) && (x = "# settings = " + I + ` + let k = ""; + 0 < w.toLowerCase().indexOf("overridesettings") && ce(this), I != null && this.optionEQvalue("overrideSettings", !1) && (k = "# settings = " + I + ` -`), this.input = x + N, this.forest = ce(this), this.getERD = function() { +`), this.input = k + w, this.forest = ce(this), this.getERD = function() { if (this.erd != null) return this.erd; - let p = this.descendants(), g = { items: [] }; - for (let i = 0; i < p.length; i++) { - if (p[i].parseType() != "table") + let b = this.descendants(), p = { items: [] }; + for (let i = 0; i < b.length; i++) { + if (b[i].parseType() != "table") continue; - let s = { name: this.objPrefix("no schema") + p[i].parseName("") }, r = this.getOptionValue("schema"); - r == "" && (r = null), s.schema = r, s.columns = [], g.items.push(s); - let t = p[i].getGenIdColName(); - t != null && s.columns.push({ name: t, datatype: "number" }); - for (let l = 0; l < p[i].children.length; l++) { - let m = p[i].children[l]; - if (m.parseType() != "table" && (s.columns.push({ name: m.parseName(""), datatype: m.parseType((v) => !0) }), 0 < m.indexOf("file"))) { - const v = m.parseName(); - s.columns.push({ name: v + "_filename", datatype: "varchar2(255" + this.semantics() + ")" }), s.columns.push({ name: v + "_mimetype", datatype: "varchar2(255" + this.semantics() + ")" }), s.columns.push({ name: v + "_charset", datatype: "varchar2(255" + this.semantics() + ")" }), s.columns.push({ name: v + "_lastupd", datatype: "date" }); + let l = { name: this.objPrefix("no schema") + b[i].parseName("") }, r = this.getOptionValue("schema"); + r == "" && (r = null), l.schema = r, l.columns = [], p.items.push(l); + let t = b[i].getGenIdColName(); + t != null && l.columns.push({ name: t, datatype: "number" }); + for (let s = 0; s < b[i].children.length; s++) { + let u = b[i].children[s]; + if (u.parseType() != "table" && (l.columns.push({ name: u.parseName(""), datatype: u.parseType((g) => !0) }), 0 < u.indexOf("file"))) { + const g = u.parseName(); + l.columns.push({ name: g + "_filename", datatype: "varchar2(255" + this.semantics() + ")" }), l.columns.push({ name: g + "_mimetype", datatype: "varchar2(255" + this.semantics() + ")" }), l.columns.push({ name: g + "_charset", datatype: "varchar2(255" + this.semantics() + ")" }), l.columns.push({ name: g + "_lastupd", datatype: "date" }); } } - const o = p[i].trimmedContent().toUpperCase(); - if ((this.optionEQvalue("rowkey", !0) || 0 < o.indexOf("/ROWKEY")) && s.columns.push({ name: "row_key", datatype: "varchar2(30 char)" }), (this.optionEQvalue("rowVersion", "yes") || 0 < o.indexOf("/ROWVERSION")) && s.columns.push({ name: "row_version", datatype: "integer" }), this.optionEQvalue("Audit Columns", "yes") || 0 < o.indexOf("/AUDITCOLS")) { - let l = this.getOptionValue("createdcol"); - s.columns.push({ name: l, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); - let m = this.getOptionValue("createdbycol"); - s.columns.push({ name: m, datatype: "varchar2(255" + this.semantics() + ")" }); - let v = this.getOptionValue("updatedcol"); - s.columns.push({ name: v, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); - let B = this.getOptionValue("updatedbycol"); - s.columns.push({ name: B, datatype: "varchar2(255" + this.semantics() + ")" }); + const o = b[i].trimmedContent().toUpperCase(); + if ((this.optionEQvalue("rowkey", !0) || 0 < o.indexOf("/ROWKEY")) && l.columns.push({ name: "row_key", datatype: "varchar2(30 char)" }), (this.optionEQvalue("rowVersion", "yes") || 0 < o.indexOf("/ROWVERSION")) && l.columns.push({ name: "row_version", datatype: "integer" }), this.optionEQvalue("Audit Columns", "yes") || 0 < o.indexOf("/AUDITCOLS")) { + let s = this.getOptionValue("createdcol"); + l.columns.push({ name: s, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); + let u = this.getOptionValue("createdbycol"); + l.columns.push({ name: u, datatype: "varchar2(255" + this.semantics() + ")" }); + let g = this.getOptionValue("updatedcol"); + l.columns.push({ name: g, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); + let T = this.getOptionValue("updatedbycol"); + l.columns.push({ name: T, datatype: "varchar2(255" + this.semantics() + ")" }); } - var T = this.additionalColumns(); - for (let l in T) { - var b = T[l]; - pad = tab + " ".repeat(this.maxChildNameLen() - l.length), ret += tab + l.toUpperCase() + pad + b + ` not null, + var M = this.additionalColumns(); + for (let s in M) { + var B = M[s]; + pad = tab + " ".repeat(this.maxChildNameLen() - s.length), ret += tab + s.toUpperCase() + pad + B + ` not null, `; } } - g.links = []; - for (let i = 0; i < p.length; i++) - if (p[i].parseType() == "table") { - p[i].toDDL(); - for (let s in p[i].fks) { - let r = p[i].fks[s], t = this.find(r); + p.links = []; + for (let i = 0; i < b.length; i++) + if (b[i].parseType() == "table") { + b[i].toDDL(); + for (let l in b[i].fks) { + let r = b[i].fks[l], t = this.find(r); if (t == null) continue; let o = "id"; - t.getExplicitPkNode() != null && (o = t.getExplicitPkNode().parseName()), g.links.push({ + t.getExplicitPkNode() != null && (o = t.getExplicitPkNode().parseName()), p.links.push({ source: this.objPrefix() + r, source_id: o, - target: this.objPrefix() + p[i].parseName(""), - target_id: s + target: this.objPrefix() + b[i].parseName(""), + target_id: l }); } } - return this.erd = g, g; + return this.erd = p, p; }, this.getDDL = function() { if (this.ddl != null) return this.ddl; - var p = "", g = this.descendants(); + var b = "", p = this.descendants(); if (this.optionEQvalue("Include Drops", "yes")) - for (let i = 0; i < g.length; i++) { - let s = g[i].generateDrop(); - s != "" && (p += s); + for (let i = 0; i < p.length; i++) { + let l = p[i].generateDrop(); + l != "" && (b += l); } if (this.optionEQvalue("rowkey", !0)) - p += `create sequence row_key_seq; + b += `create sequence row_key_seq; `; else for (let i = 0; i < this.forest.length; i++) if (0 < this.forest[i].trimmedContent().toUpperCase().indexOf("/ROWKEY")) { - p += `create sequence row_key_seq; + b += `create sequence row_key_seq; `; break; } - p += `-- create tables + b += `-- create tables `; for (let i = 0; i < this.forest.length; i++) - p += this.forest[i].toDDL() + ` + b += this.forest[i].toDDL() + ` `; - let T = 0; - for (let i = 0; i < g.length; i++) { - let s = g[i].generateTrigger(); - s != "" && (T++ == 0 && (p += `-- triggers -`), p += s + ` + let M = 0; + for (let i = 0; i < p.length; i++) { + let l = p[i].generateTrigger(); + l != "" && (M++ == 0 && (b += `-- triggers +`), b += l + ` `); } - T = 0; - for (let i = 0; i < g.length; i++) { - let s = g[i].restEnable(); - s != "" && (p += s + ` + M = 0; + for (let i = 0; i < p.length; i++) { + let l = p[i].restEnable(); + l != "" && (b += l + ` `); } - T = 0; - for (let i = 0; i < g.length; i++) { - if (this.optionEQvalue("api", !1) && g[i].trimmedContent().toLowerCase().indexOf("/api") < 0) + M = 0; + for (let i = 0; i < p.length; i++) { + if (this.optionEQvalue("api", !1) && p[i].trimmedContent().toLowerCase().indexOf("/api") < 0) continue; - let s = g[i].generateTAPI(); - s != "" && (T++ == 0 && (p += `-- APIs -`), p += s + ` + let l = p[i].generateTAPI(); + l != "" && (M++ == 0 && (b += `-- APIs +`), b += l + ` `); } - T = 0; + M = 0; for (let i = 0; i < this.forest.length; i++) { - let s = this.forest[i].generateView(); - s != "" && (T++ == 0 && (p += `-- create views -`), p += s + ` + let l = this.forest[i].generateView(); + l != "" && (M++ == 0 && (b += `-- create views +`), b += l + ` `); } - T = 0; + M = 0; for (let i = 0; i < this.forest.length; i++) { - let s = this.forest[i].generateData(this.data); - s != "" && (T++ == 0 && (p += `-- load data + let l = this.forest[i].generateData(this.data); + l != "" && (M++ == 0 && (b += `-- load data -`), p += s + ` +`), b += l + ` `); } - T = 0, p += `-- Generated by Quick SQL ${this.version()} ` + (/* @__PURE__ */ new Date()).toLocaleString() + ` + M = 0, b += `-- Generated by Quick SQL ${this.version()} ` + (/* @__PURE__ */ new Date()).toLocaleString() + ` -`, p += `/* +`, b += `/* `; - let b = N; - b = b.replace(/#.+/g, ` -`), b = b.replace(/\/\*/g, "--<--"), b = b.replace(/\*\//g, "-->--"), b = b.replace(/\/* Non-default options:/g, ""), p += b, p += ` + let B = w; + B = B.replace(/#.+/g, ` +`), B = B.replace(/\/\*/g, "--<--"), B = B.replace(/\*\//g, "-->--"), B = B.replace(/\/* Non-default options:/g, ""), b += B, b += ` `; for (let i = 0; i < this.unknownOptions().length; i++) - p += "*** Unknown setting: " + this.unknownOptions()[i] + ` + b += "*** Unknown setting: " + this.unknownOptions()[i] + ` `; - return p += ` + return b += ` Non-default options: # settings = ` + JSON.stringify(this.nonDefaultOptions()) + ` -`, p += ` -*/`, this.ddl = p, p; +`, b += ` +*/`, this.ddl = b, b; }, this.getErrors = function() { return this.errors != null ? this.errors : (this.errors = Te.findErrors(this, this.fullInput), this.errors); }, this.version = oe; } - return k; + return x; }(); function Ie(d, h) { return Ae(d, h); diff --git a/dist/quick-sql.umd.cjs b/dist/quick-sql.umd.cjs index 7882268..37ef115 100644 --- a/dist/quick-sql.umd.cjs +++ b/dist/quick-sql.umd.cjs @@ -1,93 +1,93 @@ -(function(V,W){typeof exports=="object"&&typeof module<"u"?W(exports):typeof define=="function"&&define.amd?define(["exports"],W):(V=typeof globalThis<"u"?globalThis:V||self,W(V.quickSQL={}))})(this,function(V){"use strict";function W(d){return d==null?d:d.toUpperCase().endsWith("IES")?d.substring(0,d.length-3)+"y":d.toUpperCase().endsWith("ES")||d.toUpperCase().endsWith("S")?d.substring(0,d.length-1):d}function ve(d,h){let k='"';if(d==null)return null;let N=!1;const I="$#_ ";if(!d.startsWith(k)&&!N){const x=d;if(x.length>0&&"0"<=x[0]&&x[0]<="9")N=!0;else for(let p in x){const g=x[p];if(I.indexOf(g)<0&&(g<"0"||"9""u"&&(e[n]=a[n]);return e}function r(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var o=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?o=btoa:typeof Buffer=="function"&&(o=function(a){return new Buffer(a).toString("base64")})})(),i.prototype.bool=function(e){return e=s(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100c,"Chance: Max specified is out of range with fixed. Max should be, at most, "+c),e=s(e,{min:u,max:c}),a=this.integer({min:e.min*n,max:e.max*n});var C=(a/n).toFixed(e.fixed);return parseFloat(C)},i.prototype.integer=function(e){return e=s(e,{min:N,max:k}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},i.prototype.natural=function(e){if(e=s(e,{min:0,max:k}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),c=e.exclude.sort();for(var u in c){if(ne.max,"Chance: Min cannot be greater than Max.");var a=L.primes[L.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&L.primes.push(n);var c=L.primes.filter(function(u){return u>=e.min&&u<=e.max});return this.pick(c)},i.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},i.prototype.hex=function(e){e=s(e,{min:0,max:k,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},i.prototype.letter=function(e){e=s(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},i.prototype.string=function(e){e=s(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function m(e){this.c=e}m.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function v(e){this.c=e}v.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:p})},a:function(e){return e.character({pool:x})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function B(e){for(var a=[],n="identity",c=0;c"u")throw new T("Sorry, the buffer() function is not supported on your platform");e=s(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},i.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},i.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},i.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var c=function(S,_){return S.indexOf(_)!==-1};n&&(c=n.comparator||c);for(var u=[],C=0,P,f=a*50,y=b.call(arguments,2);u.lengthf)throw new RangeError("Chance: num is likely too large for sample set")}return u},i.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,c=[],u=b.call(arguments,2);for(n=Math.max(0,n),null;n--;null)c.push(e.apply(this,u));return c},i.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},i.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},i.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},i.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),c=n.length;return this.n(function(){var u=this.natural({max:--c}),C=n[u];return n[u]=n[c],C},Math.min(c,a))},i.prototype.shuffle=function(e){for(var a=[],n=0,c=Number(e.length),u=r(c),C=c-1,P,f=0;f0&&(c+=u)}if(c===0)throw new RangeError("Chance: No valid entries in array weights");var P=this.random()*c,f=0,y=-1,A;for(C=0;C0){if(P<=f){A=C;break}y=C}C===a.length-1&&(A=y)}var S=e[A];return n=typeof n>"u"?!1:n,n&&(e.splice(A,1),a.splice(A,1)),S},i.prototype.paragraph=function(e){e=s(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),c=e.linebreak===!0?` -`:" ";return n.join(c)},i.prototype.sentence=function(e){e=s(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,c,u=this.n(this.word,a);return c=u.join(" "),c=this.capitalize(c),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(c+=n),c},i.prototype.syllable=function(e){e=s(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",c="aeiou",u=n+c,C="",P,f=0;fe.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var P=e.minAge!==void 0?e.minAge:0,f=e.maxAge!==void 0?e.maxAge:100,y=new Date(c-f-1,n.getMonth(),n.getDate()),A=new Date(c-P,n.getMonth(),n.getDate());y.setDate(y.getDate()+1),A.setDate(A.getDate()+1),A.setMilliseconds(A.getMilliseconds()-1),e=s(e,{min:y,max:A})}else e=s(e,{year:c-a});return this.date(e)},i.prototype.cpf=function(e){e=s(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var c=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;c=11-c%11,c>=10&&(c=0);var u=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+c;return e.formatted?u:u.replace(/\D/g,"")},i.prototype.cnpj=function(e){e=s(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var c=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;c=11-c%11,c<2&&(c=0);var u=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+c;return e.formatted?u:u.replace(/\D/g,"")},i.prototype.first=function(e){return e=s(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},i.prototype.profession=function(e){return e=s(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},i.prototype.company=function(){return this.pick(this.get("company"))},i.prototype.gender=function(e){return e=s(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},i.prototype.last=function(e){if(e=s(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(c){a=a.concat(n[c])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},i.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},i.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},i.prototype.tld=function(){return this.pick(this.tlds())},i.prototype.twitter=function(){return"@"+this.word()},i.prototype.url=function(e){e=s(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},i.prototype.port=function(){return this.integer({min:0,max:65535})},i.prototype.locale=function(e){return e=s(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},i.prototype.locales=function(e){return e=s(e),e.region?this.get("locale_regions"):this.get("locale_languages")},i.prototype.loremPicsum=function(e){e=s(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},i.prototype.address=function(e){return e=s(e),this.natural({min:5,max:2e3})+" "+this.street(e)},i.prototype.altitude=function(e){return e=s(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},i.prototype.areacode=function(e){e=s(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},i.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},i.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},i.prototype.countries=function(){return this.get("countries")},i.prototype.country=function(e){e=s(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},i.prototype.depth=function(e){return e=s(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},i.prototype.geohash=function(e){return e=s(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},i.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},i.prototype.latitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=s(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:c});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},i.prototype.longitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=s(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:c});var u=e.format.toLowerCase();switch((u===a||u===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),u){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},i.prototype.phone=function(e){var a=this,n,c=function(_){var O=[];return _.sections.forEach(function(z){O.push(a.string({pool:"0123456789",length:z}))}),_.area+O.join(" ")};e=s(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var u;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),u=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),u=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),u=e.formatted?c(n):c(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),u=e.formatted?c(n):c(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),u=e.formatted||n);break;case"us":var C=this.areacode(e).toString(),P=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),f=this.natural({min:1e3,max:9999}).toString();u=e.formatted?C+" "+P+"-"+f:C+P+f;break;case"br":var y=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),A;e.mobile?A="9"+a.string({pool:"0123456789",length:4}):A=this.natural({min:2e3,max:5999}).toString();var S=a.string({pool:"0123456789",length:4});u=e.formatted?"("+y+") "+A+"-"+S:y+A+S;break}return u},i.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},i.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",c=e+a+n,u=this.natural({max:9}),C=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),P=u+C;return c+" "+P},i.prototype.counties=function(e){return e=s(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},i.prototype.county=function(e){return this.pick(this.counties(e)).name},i.prototype.provinces=function(e){return e=s(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},i.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},i.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},i.prototype.states=function(e){e=s(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),c=this.get("territories"),u=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(c)),e.armed_forces&&(a=a.concat(u));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},i.prototype.street=function(e){e=s(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},i.prototype.street_suffix=function(e){return e=s(e,{country:"us"}),this.pick(this.street_suffixes(e))},i.prototype.street_suffixes=function(e){return e=s(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},i.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},i.prototype.ampm=function(){return this.bool()?"am":"pm"},i.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=s(e,{american:!0,string:!1});var c=typeof e.min<"u"?e.min.getTime():1,u=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:c,max:u}))}else{var C=this.month({raw:!0}),P=C.days;e&&e.month&&(P=this.get("months")[(e.month%12+12)%12].days),e=s(e,{year:parseInt(this.year(),10),month:C.numeric-1,day:this.natural({min:1,max:P}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},i.prototype.hammertime=function(e){return this.date(e).getTime()},i.prototype.hour=function(e){return e=s(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},i.prototype.millisecond=function(){return this.natural({max:999})},i.prototype.minute=i.prototype.second=function(e){return e=s(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},i.prototype.month=function(e){e=s(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},i.prototype.months=function(){return this.get("months")},i.prototype.second=function(){return this.natural({max:59})},i.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},i.prototype.weekday=function(e){e=s(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},i.prototype.year=function(e){return e=s(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},i.prototype.cc=function(e){e=s(e);var a,n,c;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),c=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,c,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},i.prototype.cc_types=function(){return this.get("cc_types")},i.prototype.cc_type=function(e){e=s(e);var a=this.cc_types(),n=null;if(e.name){for(var c=0;c3&&(_?O=O.substr(0,3):O=O[0]+O.substr(2,2)),O.length<3&&(z=O,O=S.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+O),z},y=function(S,_,O){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return S.getFullYear().toString().substr(2)+z[S.getMonth()]+O.pad(S.getDate()+(_.toLowerCase()==="female"?40:0),2)},A=function(S){for(var _="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",O="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(O[_.indexOf(S[U])]):K+=j.indexOf(O[_.indexOf(S[U])]);return z[K%26]};return P=P.concat(f(c,!0),f(n),y(u,a,this),C.toUpperCase().split("")).join(""),P+=A(P.toUpperCase()),P.toUpperCase()},i.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;u--)c[u-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?c.reduce(function(C,P){return C+P}):c}else throw new RangeError("Chance: A type of die roll must be included")},i.prototype.guid=function(e){e=s(e,{version:5});var a="abcdef1234567890",n="ab89",c=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return c},i.prototype.hash=function(e){e=s(e,{length:40,casing:"lower"});var a=e.casing==="upper"?g.toUpperCase():g;return this.string({pool:a,length:e.length})},i.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},i.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,c,u=0,C=a.length;C>u;++u)c=+a[u],u%2===0&&(c*=2,c>9&&(c-=9)),n+=c;return n*9%10},i.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=s(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},i.prototype.file=function(e){var a=e||{},n="fileExtension",c=Object.keys(this.get("fileExtension")),u,C;if(u=this.word({length:a.length}),a.extension)return C=a.extension,u+"."+C;if(a.extensions){if(Array.isArray(a.extensions))return C=this.pickone(a.extensions),u+"."+C;if(a.extensions.constructor===Object){var P=a.extensions,f=Object.keys(P);return C=this.pickone(P[this.pickone(f)]),u+"."+C}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var y=a.fileType;if(c.indexOf(y)!==-1)return C=this.pickone(this.get(n)[y]),u+"."+C;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return C=this.pickone(this.get(n)[this.pickone(c)]),u+"."+C},i.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var c={fileData:this.buffer({length:a.fileSize}),fileName:n};return c};var L={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},w=Object.prototype.hasOwnProperty,E=Object.keys||function(e){var a=[];for(var n in e)w.call(e,n)&&a.push(n);return a};function D(e,a){for(var n=E(e),c,u=0,C=n.length;u0)return this.normal_pool(e);var a,n,c,u,C=e.mean,P=e.dev;do n=this.random()*2-1,c=this.random()*2-1,a=n*n+c*c;while(a>=1);return u=n*Math.sqrt(-2*Math.log(a)/a),P*u+C},i.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},i.prototype.radio=function(e){e=s(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},i.prototype.set=function(e,a){typeof e=="string"?L[e]=a:L=R(e,L)},i.prototype.tv=function(e){return this.radio(e)},i.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},i.prototype.emotion=function(){return this.pick(this.get("emotions"))},i.prototype.mersenne_twister=function(e){return new H(e)},i.prototype.blueimp_md5=function(){return new G};var H=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};H.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},H.prototype.init_by_array=function(e,a){var n=1,c=0,u,C;for(this.init_genrand(19650218),u=this.N>a?this.N:a;u;u--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1664525<<16)+(C&65535)*1664525)+e[c]+c,this.mt[n]>>>=0,n++,c++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),c>=a&&(c=0);for(u=this.N-1;u;u--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1566083941<<16)+(C&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},H.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},H.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},H.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},H.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},H.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},H.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var G=function(){};G.prototype.VERSION="1.0.1",G.prototype.safe_add=function(a,n){var c=(a&65535)+(n&65535),u=(a>>16)+(n>>16)+(c>>16);return u<<16|c&65535},G.prototype.bit_roll=function(e,a){return e<>>32-a},G.prototype.md5_cmn=function(e,a,n,c,u,C){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(c,C)),u),n)},G.prototype.md5_ff=function(e,a,n,c,u,C,P){return this.md5_cmn(a&n|~a&c,e,a,u,C,P)},G.prototype.md5_gg=function(e,a,n,c,u,C,P){return this.md5_cmn(a&c|n&~c,e,a,u,C,P)},G.prototype.md5_hh=function(e,a,n,c,u,C,P){return this.md5_cmn(a^n^c,e,a,u,C,P)},G.prototype.md5_ii=function(e,a,n,c,u,C,P){return this.md5_cmn(n^(a|~c),e,a,u,C,P)},G.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,c,u,C,P,f=1732584193,y=-271733879,A=-1732584194,S=271733878;for(n=0;n>5]>>>a%32&255);return n},G.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(c=this.binl_md5(c,e.length*8)),n=0;n<16;n+=1)u[n]=c[n]^909522486,C[n]=c[n]^1549556828;return P=this.binl_md5(u.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(C.concat(P),512+128))},G.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",c,u;for(u=0;u>>4&15)+a.charAt(c&15);return n},G.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},G.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},G.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},G.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},G.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},G.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},d.exports&&(h=d.exports=i),h.Chance=i,typeof importScripts<"u"&&(chance=new i,self.Chance=i),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=i,window.chance=new i)})()})(ne,ne.exports);var ye=ne.exports;const Se=Ae(ye);function ue(d,h,k,N){var I=new Se(ie);k==null&&console.log();let x=k.toUpperCase(),p=d.toUpperCase(),g=h.toUpperCase();if(N!=null&&0":s=="["?"]":s=="{"?"}":s=="("?")":s}}function h(I,x,p){for(var g=[],T=`(){}[]^-|!*+.><='",;:%@?/\\#~`+p,b=` -\r `,i=$(I,T+b),s=0,r=0,t=0,o=0;o0&&(m=g[g.length-1]),l==` +(function(V,W){typeof exports=="object"&&typeof module<"u"?W(exports):typeof define=="function"&&define.amd?define(["exports"],W):(V=typeof globalThis<"u"?globalThis:V||self,W(V.quickSQL={}))})(this,function(V){"use strict";function W(d){return d==null?d:d.toUpperCase().endsWith("IES")?d.substring(0,d.length-3)+"y":d.toUpperCase().endsWith("ES")||d.toUpperCase().endsWith("S")?d.substring(0,d.length-1):d}function ve(d,h){let k='"';if(d==null)return null;let w=!1;const I="$#_ ";if(!d.startsWith(k)&&!w){const x=d;if(x.length>0&&"0"<=x[0]&&x[0]<="9")w=!0;else for(let b in x){const p=x[b];if(I.indexOf(p)<0&&(p<"0"||"9""u"&&(e[n]=a[n]);return e}function r(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var o=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?o=btoa:typeof Buffer=="function"&&(o=function(a){return new Buffer(a).toString("base64")})})(),i.prototype.bool=function(e){return e=l(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100c,"Chance: Max specified is out of range with fixed. Max should be, at most, "+c),e=l(e,{min:m,max:c}),a=this.integer({min:e.min*n,max:e.max*n});var C=(a/n).toFixed(e.fixed);return parseFloat(C)},i.prototype.integer=function(e){return e=l(e,{min:w,max:k}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},i.prototype.natural=function(e){if(e=l(e,{min:0,max:k}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),c=e.exclude.sort();for(var m in c){if(ne.max,"Chance: Min cannot be greater than Max.");var a=E.primes[E.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&E.primes.push(n);var c=E.primes.filter(function(m){return m>=e.min&&m<=e.max});return this.pick(c)},i.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},i.prototype.hex=function(e){e=l(e,{min:0,max:k,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},i.prototype.letter=function(e){e=l(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},i.prototype.string=function(e){e=l(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function s(e){this.c=e}s.prototype={substitute:function(){return this.c}};function u(e){this.c=e}u.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function g(e){this.c=e}g.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:b})},a:function(e){return e.character({pool:x})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function T(e){for(var a=[],n="identity",c=0;c"u")throw new M("Sorry, the buffer() function is not supported on your platform");e=l(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},i.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},i.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},i.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var c=function(y,_){return y.indexOf(_)!==-1};n&&(c=n.comparator||c);for(var m=[],C=0,P,f=a*50,A=B.call(arguments,2);m.lengthf)throw new RangeError("Chance: num is likely too large for sample set")}return m},i.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,c=[],m=B.call(arguments,2);for(n=Math.max(0,n),null;n--;null)c.push(e.apply(this,m));return c},i.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},i.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},i.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},i.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),c=n.length;return this.n(function(){var m=this.natural({max:--c}),C=n[m];return n[m]=n[c],C},Math.min(c,a))},i.prototype.shuffle=function(e){for(var a=[],n=0,c=Number(e.length),m=r(c),C=c-1,P,f=0;f0&&(c+=m)}if(c===0)throw new RangeError("Chance: No valid entries in array weights");var P=this.random()*c,f=0,A=-1,v;for(C=0;C0){if(P<=f){v=C;break}A=C}C===a.length-1&&(v=A)}var y=e[v];return n=typeof n>"u"?!1:n,n&&(e.splice(v,1),a.splice(v,1)),y},i.prototype.paragraph=function(e){e=l(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),c=e.linebreak===!0?` +`:" ";return n.join(c)},i.prototype.sentence=function(e){e=l(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,c,m=this.n(this.word,a);return c=m.join(" "),c=this.capitalize(c),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(c+=n),c},i.prototype.syllable=function(e){e=l(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",c="aeiou",m=n+c,C="",P,f=0;fe.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var P=e.minAge!==void 0?e.minAge:0,f=e.maxAge!==void 0?e.maxAge:100,A=new Date(c-f-1,n.getMonth(),n.getDate()),v=new Date(c-P,n.getMonth(),n.getDate());A.setDate(A.getDate()+1),v.setDate(v.getDate()+1),v.setMilliseconds(v.getMilliseconds()-1),e=l(e,{min:A,max:v})}else e=l(e,{year:c-a});return this.date(e)},i.prototype.cpf=function(e){e=l(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var c=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;c=11-c%11,c>=10&&(c=0);var m=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},i.prototype.cnpj=function(e){e=l(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var c=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;c=11-c%11,c<2&&(c=0);var m=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},i.prototype.first=function(e){return e=l(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},i.prototype.profession=function(e){return e=l(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},i.prototype.company=function(){return this.pick(this.get("company"))},i.prototype.gender=function(e){return e=l(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},i.prototype.last=function(e){if(e=l(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(c){a=a.concat(n[c])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},i.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},i.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},i.prototype.tld=function(){return this.pick(this.tlds())},i.prototype.twitter=function(){return"@"+this.word()},i.prototype.url=function(e){e=l(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},i.prototype.port=function(){return this.integer({min:0,max:65535})},i.prototype.locale=function(e){return e=l(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},i.prototype.locales=function(e){return e=l(e),e.region?this.get("locale_regions"):this.get("locale_languages")},i.prototype.loremPicsum=function(e){e=l(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},i.prototype.address=function(e){return e=l(e),this.natural({min:5,max:2e3})+" "+this.street(e)},i.prototype.altitude=function(e){return e=l(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},i.prototype.areacode=function(e){e=l(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},i.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},i.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},i.prototype.countries=function(){return this.get("countries")},i.prototype.country=function(e){e=l(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},i.prototype.depth=function(e){return e=l(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},i.prototype.geohash=function(e){return e=l(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},i.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},i.prototype.latitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=l(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},i.prototype.longitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=l(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},i.prototype.phone=function(e){var a=this,n,c=function(_){var O=[];return _.sections.forEach(function(z){O.push(a.string({pool:"0123456789",length:z}))}),_.area+O.join(" ")};e=l(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var m;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),m=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),m=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n);break;case"us":var C=this.areacode(e).toString(),P=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),f=this.natural({min:1e3,max:9999}).toString();m=e.formatted?C+" "+P+"-"+f:C+P+f;break;case"br":var A=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),v;e.mobile?v="9"+a.string({pool:"0123456789",length:4}):v=this.natural({min:2e3,max:5999}).toString();var y=a.string({pool:"0123456789",length:4});m=e.formatted?"("+A+") "+v+"-"+y:A+v+y;break}return m},i.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},i.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",c=e+a+n,m=this.natural({max:9}),C=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),P=m+C;return c+" "+P},i.prototype.counties=function(e){return e=l(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},i.prototype.county=function(e){return this.pick(this.counties(e)).name},i.prototype.provinces=function(e){return e=l(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},i.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},i.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},i.prototype.states=function(e){e=l(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),c=this.get("territories"),m=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(c)),e.armed_forces&&(a=a.concat(m));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},i.prototype.street=function(e){e=l(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},i.prototype.street_suffix=function(e){return e=l(e,{country:"us"}),this.pick(this.street_suffixes(e))},i.prototype.street_suffixes=function(e){return e=l(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},i.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},i.prototype.ampm=function(){return this.bool()?"am":"pm"},i.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=l(e,{american:!0,string:!1});var c=typeof e.min<"u"?e.min.getTime():1,m=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:c,max:m}))}else{var C=this.month({raw:!0}),P=C.days;e&&e.month&&(P=this.get("months")[(e.month%12+12)%12].days),e=l(e,{year:parseInt(this.year(),10),month:C.numeric-1,day:this.natural({min:1,max:P}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},i.prototype.hammertime=function(e){return this.date(e).getTime()},i.prototype.hour=function(e){return e=l(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},i.prototype.millisecond=function(){return this.natural({max:999})},i.prototype.minute=i.prototype.second=function(e){return e=l(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},i.prototype.month=function(e){e=l(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},i.prototype.months=function(){return this.get("months")},i.prototype.second=function(){return this.natural({max:59})},i.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},i.prototype.weekday=function(e){e=l(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},i.prototype.year=function(e){return e=l(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},i.prototype.cc=function(e){e=l(e);var a,n,c;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),c=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,c,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},i.prototype.cc_types=function(){return this.get("cc_types")},i.prototype.cc_type=function(e){e=l(e);var a=this.cc_types(),n=null;if(e.name){for(var c=0;c3&&(_?O=O.substr(0,3):O=O[0]+O.substr(2,2)),O.length<3&&(z=O,O=y.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+O),z},A=function(y,_,O){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return y.getFullYear().toString().substr(2)+z[y.getMonth()]+O.pad(y.getDate()+(_.toLowerCase()==="female"?40:0),2)},v=function(y){for(var _="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",O="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(O[_.indexOf(y[U])]):K+=j.indexOf(O[_.indexOf(y[U])]);return z[K%26]};return P=P.concat(f(c,!0),f(n),A(m,a,this),C.toUpperCase().split("")).join(""),P+=v(P.toUpperCase()),P.toUpperCase()},i.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;m--)c[m-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?c.reduce(function(C,P){return C+P}):c}else throw new RangeError("Chance: A type of die roll must be included")},i.prototype.guid=function(e){e=l(e,{version:5});var a="abcdef1234567890",n="ab89",c=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return c},i.prototype.hash=function(e){e=l(e,{length:40,casing:"lower"});var a=e.casing==="upper"?p.toUpperCase():p;return this.string({pool:a,length:e.length})},i.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},i.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,c,m=0,C=a.length;C>m;++m)c=+a[m],m%2===0&&(c*=2,c>9&&(c-=9)),n+=c;return n*9%10},i.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=l(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},i.prototype.file=function(e){var a=e||{},n="fileExtension",c=Object.keys(this.get("fileExtension")),m,C;if(m=this.word({length:a.length}),a.extension)return C=a.extension,m+"."+C;if(a.extensions){if(Array.isArray(a.extensions))return C=this.pickone(a.extensions),m+"."+C;if(a.extensions.constructor===Object){var P=a.extensions,f=Object.keys(P);return C=this.pickone(P[this.pickone(f)]),m+"."+C}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var A=a.fileType;if(c.indexOf(A)!==-1)return C=this.pickone(this.get(n)[A]),m+"."+C;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return C=this.pickone(this.get(n)[this.pickone(c)]),m+"."+C},i.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var c={fileData:this.buffer({length:a.fileSize}),fileName:n};return c};var E={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},D=Object.prototype.hasOwnProperty,L=Object.keys||function(e){var a=[];for(var n in e)D.call(e,n)&&a.push(n);return a};function N(e,a){for(var n=L(e),c,m=0,C=n.length;m0)return this.normal_pool(e);var a,n,c,m,C=e.mean,P=e.dev;do n=this.random()*2-1,c=this.random()*2-1,a=n*n+c*c;while(a>=1);return m=n*Math.sqrt(-2*Math.log(a)/a),P*m+C},i.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},i.prototype.radio=function(e){e=l(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},i.prototype.set=function(e,a){typeof e=="string"?E[e]=a:E=R(e,E)},i.prototype.tv=function(e){return this.radio(e)},i.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},i.prototype.emotion=function(){return this.pick(this.get("emotions"))},i.prototype.mersenne_twister=function(e){return new H(e)},i.prototype.blueimp_md5=function(){return new G};var H=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};H.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},H.prototype.init_by_array=function(e,a){var n=1,c=0,m,C;for(this.init_genrand(19650218),m=this.N>a?this.N:a;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1664525<<16)+(C&65535)*1664525)+e[c]+c,this.mt[n]>>>=0,n++,c++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),c>=a&&(c=0);for(m=this.N-1;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1566083941<<16)+(C&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},H.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},H.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},H.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},H.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},H.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},H.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var G=function(){};G.prototype.VERSION="1.0.1",G.prototype.safe_add=function(a,n){var c=(a&65535)+(n&65535),m=(a>>16)+(n>>16)+(c>>16);return m<<16|c&65535},G.prototype.bit_roll=function(e,a){return e<>>32-a},G.prototype.md5_cmn=function(e,a,n,c,m,C){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(c,C)),m),n)},G.prototype.md5_ff=function(e,a,n,c,m,C,P){return this.md5_cmn(a&n|~a&c,e,a,m,C,P)},G.prototype.md5_gg=function(e,a,n,c,m,C,P){return this.md5_cmn(a&c|n&~c,e,a,m,C,P)},G.prototype.md5_hh=function(e,a,n,c,m,C,P){return this.md5_cmn(a^n^c,e,a,m,C,P)},G.prototype.md5_ii=function(e,a,n,c,m,C,P){return this.md5_cmn(n^(a|~c),e,a,m,C,P)},G.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,c,m,C,P,f=1732584193,A=-271733879,v=-1732584194,y=271733878;for(n=0;n>5]>>>a%32&255);return n},G.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(c=this.binl_md5(c,e.length*8)),n=0;n<16;n+=1)m[n]=c[n]^909522486,C[n]=c[n]^1549556828;return P=this.binl_md5(m.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(C.concat(P),512+128))},G.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",c,m;for(m=0;m>>4&15)+a.charAt(c&15);return n},G.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},G.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},G.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},G.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},G.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},G.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},d.exports&&(h=d.exports=i),h.Chance=i,typeof importScripts<"u"&&(chance=new i,self.Chance=i),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=i,window.chance=new i)})()})(ne,ne.exports);var ye=ne.exports;const Se=Ae(ye);function ue(d,h,k,w){var I=new Se(ie);k==null&&console.log();let x=k.toUpperCase(),b=d.toUpperCase(),p=h.toUpperCase();if(w!=null&&0":l=="["?"]":l=="{"?"}":l=="("?")":l}}function h(I,x,b){for(var p=[],M=`(){}[]^-|!*+.><='",;:%@?/\\#~`+b,B=` +\r `,i=$(I,M+B),l=0,r=0,t=0,o=0;o0&&(u=p[p.length-1]),s==` `?(r++,t=0):o>0&&i[o-1]!==` -`?t=t+i[o-1].length:t=0,s+=l.length,m!=null&&m.type=="comment"&&(m.value.lastIndexOf("*/")!=m.value.length-2||m.value=="/*/")){l=="*"||l=="/"?m.value=m.value+l:m.value="/* ... ",m.end=s,m!=null&&m.type=="comment"&&m.value.lastIndexOf("*/")==m.value.length-2&&m.value!="/*/"&&(m.value=I.substring(m.begin,m.end));continue}if(m!=null&&(m.type=="line-comment"||m.type=="dbtools-command")&&l!=` -`){m.value=m.value+l;continue}if(m!=null&&(m.type=="line-comment"||m.type=="dbtools-command")&&l==` -`&&(m.end=m.begin+m.value.length),m!=null&&m.type=="quoted-string"&&!(m.isStandardLiteral()||m.isAltLiteral())){m.value=m.value+l,m.end=m.begin+m.value.length;continue}if(!(m!=null&&m.type=="dquoted-string"&&l!='"'&&!(m.value.endsWith('"')&&m.value.length>1))){if(m!=null&&m.type=="dquoted-string"&&l=='"'){m.end=s,m.value=I.substring(m.begin,m.end);continue}if(!(m!=null&&m.type=="bquoted-string"&&l!="`"&&!(m.value.endsWith("`")&&m.value.length>1))){if(m!=null&&m.type=="bquoted-string"&&l=="`"){m.end=s,m.value=I.substring(m.begin,m.end);continue}if(l=="*"&&m!=null&&m.value=="/"){m.value=m.value+l,m.end=m.begin+m.value.length,m.type="comment";continue}if(l=="-"&&m!=null&&m.value=="-"){m.value=m.value+l,m.type="line-comment";continue}if((l.toUpperCase()=="REM"||l.toUpperCase()=="REMA"||l.toUpperCase()=="REMAR"||l.toUpperCase()=="REMARK"||l.toUpperCase()=="PRO"||l.toUpperCase()=="PROM"||l.toUpperCase()=="PROMP"||l.toUpperCase()=="PROMPT")&&(m==null||m.value==` -`||m.value=="\r")){g.push(new d(l,s-l.length,-9,"line-comment",r,t));continue}if(l.toUpperCase()=="SODA"&&(m==null||m.value==` -`||m.value=="\r")){g.push(new d(l,s-l.length,-9,"dbtools-command",r,t));continue}if(m!=null&&m.type=="identifier"&&m.end==-11&&m.value.indexOf("@")==0&&!(l==` -`||l=="\r")){m.value=m.value+l;continue}if(m!=null&&m.type=="identifier"&&m.end==-11&&m.value.indexOf("@")==0&&(l==` -`||l=="\r")){m.end=s-1,g.push(new d(l,s-1,s,"ws",r,t));continue}if(x&&l=="'"){m!=null&&(m.value.toUpperCase()=="Q"||m.value.toUpperCase()=="N"||m.value.toUpperCase()=="U"||m.value.toUpperCase()=="NQ")?(m.value+=l,m.type="quoted-string"):g.push(new d(l,s-1,-10,"quoted-string",r,t));continue}if(x&&l=='"'){g.push(new d(l,s-1,-11,"dquoted-string",r,t));continue}if(l=="`"&&0<=T.indexOf("`")){g.push(new d(l,s-1,-11,"bquoted-string",r,t));continue}if(l.length==1&&0<=T.indexOf(l)){g.push(new d(l,s-1,s,"operation",r,t));continue}if(l.length==1&&0<=b.indexOf(l)){g.push(new d(l,s-1,s,"ws",r,t));continue}if("0"<=l.charAt(0)&&l.charAt(0)<="9"){k(l,g,s-l.length,r)||(l.charAt(l.length-1)=="K"||l.charAt(l.length-1)=="k"||l.charAt(l.length-1)=="M"||l.charAt(l.length-1)=="m"||l.charAt(l.length-1)=="G"||l.charAt(l.length-1)=="g"||l.charAt(l.length-1)=="T"||l.charAt(l.length-1)=="t"||l.charAt(l.length-1)=="P"||l.charAt(l.length-1)=="p"||l.charAt(l.length-1)=="E"||l.charAt(l.length-1)=="e"?(g.push(new d(l.substring(0,l.length-1),s-l.length,s-1,"constant.numeric",r,t)),g.push(new d(l.substring(l.length-1),s-1,s,"constant.numeric",r,t))):g.push(new d(l,s-l.length,s,"constant.numeric",r,t)));continue}var v="identifier";o+10){var m=g[g.length-1];m.end=I.length}return g}function k(I,x,p,g){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var T=$(I,"efd"),b=0;b")==0||r.indexOf("<")==0)&&(r=r.substring(1).trim());const l=r.toLowerCase();if(l.indexOf("view ")==0){var m=r.split(" ");return m[1]}r=p(r," d");var v=r.indexOf("/");0="0"&&B<="9"&&(r="x"+r),Te(se(r))},this.parseType=function(r){if(this.children!=null&&0!0)),D}return v}0");return t==0},this.getExplicitPkNode=function(){for(var r=0;rr.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(d.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),d.optionEQvalue("prefixPKwithTname","yes")&&(t=W(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let r=this.getGenIdColName();if(r==null){let t=this.getExplicitPkNode();return t==null?null:t.parseName()}return r},this.singleDDL=function(){if(this.children.length==0&&01))){if(u!=null&&u.type=="dquoted-string"&&s=='"'){u.end=l,u.value=I.substring(u.begin,u.end);continue}if(!(u!=null&&u.type=="bquoted-string"&&s!="`"&&!(u.value.endsWith("`")&&u.value.length>1))){if(u!=null&&u.type=="bquoted-string"&&s=="`"){u.end=l,u.value=I.substring(u.begin,u.end);continue}if(s=="*"&&u!=null&&u.value=="/"){u.value=u.value+s,u.end=u.begin+u.value.length,u.type="comment";continue}if(s=="-"&&u!=null&&u.value=="-"){u.value=u.value+s,u.type="line-comment";continue}if((s.toUpperCase()=="REM"||s.toUpperCase()=="REMA"||s.toUpperCase()=="REMAR"||s.toUpperCase()=="REMARK"||s.toUpperCase()=="PRO"||s.toUpperCase()=="PROM"||s.toUpperCase()=="PROMP"||s.toUpperCase()=="PROMPT")&&(u==null||u.value==` +`||u.value=="\r")){p.push(new d(s,l-s.length,-9,"line-comment",r,t));continue}if(s.toUpperCase()=="SODA"&&(u==null||u.value==` +`||u.value=="\r")){p.push(new d(s,l-s.length,-9,"dbtools-command",r,t));continue}if(u!=null&&u.type=="identifier"&&u.end==-11&&u.value.indexOf("@")==0&&!(s==` +`||s=="\r")){u.value=u.value+s;continue}if(u!=null&&u.type=="identifier"&&u.end==-11&&u.value.indexOf("@")==0&&(s==` +`||s=="\r")){u.end=l-1,p.push(new d(s,l-1,l,"ws",r,t));continue}if(x&&s=="'"){u!=null&&(u.value.toUpperCase()=="Q"||u.value.toUpperCase()=="N"||u.value.toUpperCase()=="U"||u.value.toUpperCase()=="NQ")?(u.value+=s,u.type="quoted-string"):p.push(new d(s,l-1,-10,"quoted-string",r,t));continue}if(x&&s=='"'){p.push(new d(s,l-1,-11,"dquoted-string",r,t));continue}if(s=="`"&&0<=M.indexOf("`")){p.push(new d(s,l-1,-11,"bquoted-string",r,t));continue}if(s.length==1&&0<=M.indexOf(s)){p.push(new d(s,l-1,l,"operation",r,t));continue}if(s.length==1&&0<=B.indexOf(s)){p.push(new d(s,l-1,l,"ws",r,t));continue}if("0"<=s.charAt(0)&&s.charAt(0)<="9"){k(s,p,l-s.length,r)||(s.charAt(s.length-1)=="K"||s.charAt(s.length-1)=="k"||s.charAt(s.length-1)=="M"||s.charAt(s.length-1)=="m"||s.charAt(s.length-1)=="G"||s.charAt(s.length-1)=="g"||s.charAt(s.length-1)=="T"||s.charAt(s.length-1)=="t"||s.charAt(s.length-1)=="P"||s.charAt(s.length-1)=="p"||s.charAt(s.length-1)=="E"||s.charAt(s.length-1)=="e"?(p.push(new d(s.substring(0,s.length-1),l-s.length,l-1,"constant.numeric",r,t)),p.push(new d(s.substring(s.length-1),l-1,l,"constant.numeric",r,t))):p.push(new d(s,l-s.length,l,"constant.numeric",r,t)));continue}var g="identifier";o+10){var u=p[p.length-1];u.end=I.length}return p}function k(I,x,b,p){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var M=$(I,"efd"),B=0;B")==0||r.indexOf("<")==0)&&(r=r.substring(1).trim());const s=r.toLowerCase();if(s.indexOf("view ")==0){var u=r.split(" ");return u[1]}r=b(r," d");var g=r.indexOf("/");0="0"&&T<="9"&&(r="x"+r),Te(se(r))},this.parseType=function(r){if(this.children!=null&&0!0)),N}return g}0");return t==0},this.getExplicitPkNode=function(){for(var r=0;rr.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(d.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),d.optionEQvalue("prefixPKwithTname","yes")&&(t=W(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let r=this.getGenIdColName();if(r==null){let t=this.getExplicitPkNode();return t==null?null:t.parseName()}return r},this.singleDDL=function(){if(this.children.length==0&&0!0):C==null&&(C=d.find(a),C.isMany2One()&!a.endsWith("_id")&&(n=a,a=W(a),P="_id")),m=h+" ".repeat(this.maxChildNameLen()-a.length),o+=h+a+P+m+c+` -`,o+=h+h+" ".repeat(this.maxChildNameLen())+"constraint "+l+"_"+a+`_fk -`;let f="";0<=r.indexOf("/CASCADE")&&(f=" on delete cascade");let y="";for(let A in this.children){let S=this.children[A];if(a==S.parseName()){let _=S.trimmedContent().toUpperCase();(0<=_.indexOf("/NN")||0<=_.indexOf("/NOTNULL"))&&(y=" NOT NULL".toLowerCase()),0<=_.indexOf("/CASCADE")&&(f=" on delete cascade");break}}o+=h+h+" ".repeat(this.maxChildNameLen())+"references "+d.objPrefix()+n+f+y+`, +`}}for(let a in this.fks){let n=this.fks[a],c="number";const m=this.findChild(a);m!=null&&(c=m.parseType("fk"));let C=d.find(n),P="";C!=null&&C.getExplicitPkNode()!=null?c=C.getExplicitPkNode().parseType(v=>!0):C==null&&(C=d.find(a),C.isMany2One()&!a.endsWith("_id")&&(n=a,a=W(a),P="_id")),u=h+" ".repeat(this.maxChildNameLen()-a.length),o+=h+a+P+u+c+` +`,o+=h+h+" ".repeat(this.maxChildNameLen())+"constraint "+s+"_"+a+`_fk +`;let f="";0<=r.indexOf("/CASCADE")&&(f=" on delete cascade");let A="";for(let v in this.children){let y=this.children[v];if(a==y.parseName()){let _=y.trimmedContent().toUpperCase();(0<=_.indexOf("/NN")||0<=_.indexOf("/NOTNULL"))&&(A=" NOT NULL".toLowerCase()),0<=_.indexOf("/CASCADE")&&(f=" on delete cascade");break}}o+=h+h+" ".repeat(this.maxChildNameLen())+"references "+d.objPrefix()+n+f+A+`, `}if(d.optionEQvalue("rowkey",!0)||0TRUE, p_object=>'"+m+`'); +`)),t.toLowerCase()},this.generateView=function(){if(this.parseType()!="view"&&this.parseType()!="dv")return"";if(d.optionEQvalue("Duality View","yes")||this.parseType()=="dv")try{return this.generateDualityView()}catch(m){if(m.message==this.one2many2oneUnsupoported)return"";throw m}let r=d.objPrefix()+this.parseName();var o=this.trimmedContent().split(" "),s="create or replace view "+r+` as +`;s+=`select +`;for(var u=0,g=2;gTRUE, p_object=>'"+u+`'); end; / `},this.generateTrigger=function(){if(this.parseType()!="table")return"";let r="";d.optionEQvalue("editionable","yes")&&(r=" editionable");let t=d.objPrefix()+this.parseName();var o="create or replace"+r+" trigger "+t.toLowerCase()+`_BIU `.toLowerCase();o+=` before insert or update `,o+=" on "+t.toLowerCase()+` `,o+=` for each row -`;let l=this.trimmedContent().toUpperCase();(d.optionEQvalue("Rowkey","yes")||0!0)),l+=`, -`,l+=h+h+"P_"+m+" "+o+" "+M+t}for(let B=0;B!0)),s+=`, +`,s+=h+h+"P_"+u+" "+o+" "+S+t}for(let T=0;T!0),(r=="insert"||r=="update")&&(o+=`, -`);let E=h+h+h+"P_"+M+" := c1."+M+`; -`;r=="insert"&&(E=h+h+h+M),r=="update"&&(E=h+h+h+M+" = P_"+M+` -`),o+=E}for(var m=0;m!0),(r=="insert"||r=="update")&&(o+=`, +`);let L=h+h+h+"P_"+S+" := c1."+S+`; +`;r=="insert"&&(L=h+h+h+S),r=="update"&&(L=h+h+h+S+" = P_"+S+` +`),o+=L}for(var u=0;uo.children.length>0&&o.parseName()==t&&!o.isArray())},this.generateSelectJsonBottomUp=function(r){throw new Error("generateSelectJsonBottomUp() not implemented yet")},this.one2many2oneUnsupoported="one to many to one is not supported",this.generateSelectJsonTopDown=function(r){var t=this.parseName();let o="";this.getExplicitPkNode==null&&(o+=r+"'"+this.getGenIdColName()+"' : "+t+"."+this.getGenIdColName()+`, -`);for(var l=0;lo.children.length>0&&o.parseName()==t&&!o.isArray())},this.generateSelectJsonBottomUp=function(r){throw new Error("generateSelectJsonBottomUp() not implemented yet")},this.one2many2oneUnsupoported="one to many to one is not supported",this.generateSelectJsonTopDown=function(r){var t=this.parseName();let o="";this.getExplicitPkNode==null&&(o+=r+"'"+this.getGenIdColName()+"' : "+t+"."+this.getGenIdColName()+`, +`);for(var s=0;s"),0"),0!0)}),0!0)}),0--"),b=b.replace(/\/* Non-default options:/g,""),p+=b,p+=` -`;for(let i=0;i--"),B=B.replace(/\/* Non-default options:/g,""),b+=B,b+=` +`;for(let i=0;i [{"id":"1001","type":"Regular"},...], ... } - this.notNormalized = []; // e.g. ['batter', 'topping'] - this.allTables = []; - this.child2parent = {} // e.g. 'topping' -> 'donut' + this.tableContent = {}; // e.g. {'batter(id,type)' -> [{"id":"1001","type":"Regular"},...], ... } + this.notNormalized = []; // e.g. ['batter(id,type)', 'topping(...)'] + this.tableSignatures = []; // e.g. ['batter(id,type)', ] + this.child2parent = {} // e.g. {'batter(id,type)' -> 'donut(...)', ... this.objCounts = {}; this.output = function( key, value, level, m2m ) { if( m2m != false && this.notNormalized.includes(key) ) { - const auxTable =this.parent(key)+'_'+key; - const tContent = this.tables[auxTable]; + const auxTable = auxTabSignature(this.parent(key),key); + const tContent = this.tableContent[auxTable]; if( tContent != null ) { - let output = '\n'+indent(level)+auxTable+" /insert "+tContent.length; + let output = '\n'+indent(level)+this.tableName(auxTable)+" /insert "+tContent.length; const record = tContent[0]; - //for( const attr in record ) - //output += '\n'+indent(level+1)+attr+' '+typeOf(record[attr]); - if( isM2M(tContent,refIdName(this.parent(key)), refIdName(key)) ) { + if( isM2M(tContent,this.refIdName(this.parent(key)), this.refIdName(key)) ) { output += this.output(key, value, level+1, false); return output; } } } - let output = key; + let output = this.tableName(key); let m2o = ''; if( this.notNormalized.includes(key) ) m2o = '>' if( 0 < level ) - output = '\n'+indent(level)+m2o+key; + output = '\n'+indent(level)+m2o+this.tableName(key); if( typeof value == 'string' ) { output += ' vc'; @@ -178,7 +207,9 @@ var json2qsql = (function () { } } else { if( key != "" ) { - output += ' /insert '+this.tables[key].length; + if( this.tableContent[key] == null ) + console.log(); + output += ' /insert '+this.tableContent[key].length; } } let promotedField = ""; @@ -187,16 +218,16 @@ var json2qsql = (function () { if( property != null ) { const fld = singular(key); const cmp = property.toLowerCase(); - if( key != null && fld + "_id" == cmp /*&& arraySize == */ && 0 < level ) + if( key != null && fld + "_id" == cmp && 0 < level ) promotedField = property; if( fld + "_id" == cmp ) continue; } - if( !this.allTables.includes(key) ) { + if( !this.tableSignatures.includes(key) ) { output = ''; level--; } - const subtree = this.output(property, field, level + 1); + const subtree = this.output(property+signature(field), field, level + 1); output += subtree; } if( promotedField != "" ) @@ -207,6 +238,8 @@ var json2qsql = (function () { return output; } + this.idSeq = 1; + this.flatten = function( key, value, parentId ) { let record = {} @@ -215,7 +248,7 @@ var json2qsql = (function () { let k = key; let pId = parentId; if( isNaN(property) ) { - k = property; + k = property+signature(value[property]); const tmp = getId(record); if( tmp != null ) pId = tmp; @@ -230,7 +263,7 @@ var json2qsql = (function () { record[parentId.key]=parentId.value; const hasKeys = 0 < Object.keys(record).length; - let array = this.tables[key]; + let array = this.tableContent[key]; if( hasKeys ) { if( array == null ) array = []; @@ -240,20 +273,25 @@ var json2qsql = (function () { if( this.notNormalized.includes(key) ) { const parent = this.parent(key); if( parent != null ) { - const m2m = parent+'_'+key; - let array2 = this.tables[m2m]; + const m2m = auxTabSignature(parent,key); + let array2 = this.tableContent[m2m]; if( array2 == null ) array2 = []; const newObj = {}; - newObj[refIdName(parent)] = parentId.value; - newObj[refIdName(key)] = getId(record).value; + newObj[this.refIdName(parent)] = parentId.value; + let id = getId(record); + if( id == null ) { + record['id'] = this.idSeq++; + id = getId(record); + } + newObj[this.refIdName(key)] = id.value; array2.push(newObj); - this.tables[m2m] = array2; + this.tableContent[m2m] = array2; } } - this.tables[key] = array; + this.tableContent[key] = array; } else if( array == null ) - this.tables[key] = []; + this.tableContent[key] = []; } this.duplicatesAndParents = function ( attr, value ) { @@ -267,7 +305,7 @@ var json2qsql = (function () { if( value[property] != null && typeof value[property] == "object" ) { let k = attr; if( isNaN(property) ) - k = property; + k = property+signature(value[property]); if( k != attr ) this.child2parent[k] = attr; this.duplicatesAndParents( k, value[property] ); @@ -276,8 +314,8 @@ var json2qsql = (function () { } const hasPrimAttr = hasPrimitiveAttr(value); - if( hasPrimAttr && !this.allTables.includes(attr) ) - this.allTables.push(attr); + if( hasPrimAttr && !this.tableSignatures.includes(attr) ) + this.tableSignatures.push(attr); if( !isComposite ) { this.objCounts[key] = tmp + 1; } @@ -287,11 +325,36 @@ var json2qsql = (function () { this.parent = function ( table ) { let ret = this.child2parent[table]; - if( ret != null && !this.allTables.includes(ret) ) + if( ret != null && !this.tableSignatures.includes(ret) ) return this.parent(ret); return ret; } + this.tableName = function ( tableSignature ) { + const ip = tableSignature.indexOf('('); + if( ip < 0 ) + return tableSignature; + const table = tableSignature.substring(0,ip); + let cnt = 0; + let pos = -1; + for( const property in this.tableSignatures ) { + const cmp = this.tableSignatures[property]; + const cmpTable = cmp.substring(0,cmp.indexOf('(')); + if( cmpTable == table ) + cnt++; + if( cmp == tableSignature ) + pos = cnt; + } + if( cnt < 2 ) + return table; + return table+pos; + } + + this.refIdName = function ( tableSignature ) { + return singular(this.tableName(tableSignature))+'_id'; + } + + } return translate; diff --git a/src/tree.js b/src/tree.js index d194f5f..2e1c67c 100644 --- a/src/tree.js +++ b/src/tree.js @@ -740,7 +740,7 @@ let tree = (function(){ } ret += this.genConstraint(); if( ret.lastIndexOf(',\n') == ret.length-2 ) - ret = ret.substr(0,ret.length-2)+'\n'; + ret = ret.substring(0,ret.length-2)+'\n'; ret += ')'+(ddl.optionEQvalue('compress','yes') || 0 < nodeContent.indexOf('/COMPRESS')?' compress':'')+';\n\n'; const auditPos = nodeContent.indexOf('/AUDIT'); diff --git a/test/experimental/2.json b/test/experimental/2.json new file mode 100644 index 0000000..65ea99c --- /dev/null +++ b/test/experimental/2.json @@ -0,0 +1,25 @@ +[{"driverId" : 101, + "name" : "Max Verstappen", + "points" : 258, + "teamInfo" : {"teamId" : 301, "name" : "Red Bull"}, + "race" : [ {"driverRaceMapId" : 3, + "raceInfo" : {"raceId" : 201, + "name" : "Bahrain Grand Prix"}, + "finalPosition" : 19}, + {"driverRaceMapId" : 11, + "raceInfo" : {"raceId" : 202, + "name" : "Saudi Arabian Grand Prix"}, + "finalPosition" : 1} ]} +, { "driverId" : 102, +"name" : "Luigi Pinole", +"points" : 123, +"teamInfo" : {"teamId" : 301, "name" : "Red Bull"}, +"race" : [ {"driverRaceMapId" : 4, + "raceInfo" : {"raceId" : 201, + "name" : "Bahrain Grand Prix"}, + "finalPosition" : 20}, + {"driverRaceMapId" : 12, + "raceInfo" : {"raceId" : 203, + "name" : "Monaco Grand Prix"}, + "finalPosition" : 2} ]} +] \ No newline at end of file diff --git a/test/experimental/donuts.json b/test/experimental/donuts.json deleted file mode 100644 index e522622..0000000 --- a/test/experimental/donuts.json +++ /dev/null @@ -1,70 +0,0 @@ -[ - { - "id": "0001", - "type": "donut", - "name": "Cake", - "ppu": 0.55, - "batters": - { - "batter": - [ - { "id": "1001", "type": "Regular" }, - { "id": "1002", "type": "Chocolate" }, - { "id": "1003", "type": "Blueberry" }, - { "id": "1004", "type": "Devil's Food" } - ] - }, - "topping": - [ - { "id": "5001", "type": "None" }, - { "id": "5002", "type": "Glazed" }, - { "id": "5005", "type": "Sugar" }, - { "id": "5007", "type": "Powdered Sugar" }, - { "id": "5006", "type": "Chocolate with Sprinkles" }, - { "id": "5003", "type": "Chocolate" }, - { "id": "5004", "type": "Maple" } - ] - }, - { - "id": "0002", - "type": "donut", - "name": "Raised", - "ppu": 0.55, - "batters": - { - "batter": - [ - { "id": "1001", "type": "Regular" } - ] - }, - "topping": - [ - { "id": "5001", "type": "None" }, - { "id": "5002", "type": "Glazed" }, - { "id": "5005", "type": "Sugar" }, - { "id": "5003", "type": "Chocolate" }, - { "id": "5004", "type": "Maple" } - ] - }, - { - "id": "0003", - "type": "donut", - "name": "Old Fashioned", - "ppu": 0.55, - "batters": - { - "batter": - [ - { "id": "1001", "type": "Regular" }, - { "id": "1002", "type": "Chocolate" } - ] - }, - "topping": - [ - { "id": "5001", "type": "None" }, - { "id": "5002", "type": "Glazed" }, - { "id": "5003", "type": "Chocolate" }, - { "id": "5004", "type": "Maple" } - ] - } -] \ No newline at end of file diff --git a/test/experimental/donuts.qsql b/test/experimental/donuts.qsql deleted file mode 100644 index 1efc5d1..0000000 --- a/test/experimental/donuts.qsql +++ /dev/null @@ -1,319 +0,0 @@ -donuts /insert 3 - id vc32 /pk - type vc - name vc - ppu num - donuts_batter /insert 7 - >batter /insert 4 - id vc32 /pk - type vc - donuts_topping /insert 16 - >topping /insert 7 - id vc32 /pk - type vc - -#settings = { genpk: false, drop: true } - -#flattened = -{ - "donuts_batter": [ - { - "donut_id": "0001", - "batter_id": "1001" - }, - { - "donut_id": "0001", - "batter_id": "1002" - }, - { - "donut_id": "0001", - "batter_id": "1003" - }, - { - "donut_id": "0001", - "batter_id": "1004" - }, - { - "donut_id": "0002", - "batter_id": "1001" - }, - { - "donut_id": "0003", - "batter_id": "1001" - }, - { - "donut_id": "0003", - "batter_id": "1002" - } - ], - "batter": [ - { - "id": "1001", - "type": "Regular" - }, - { - "id": "1002", - "type": "Chocolate" - }, - { - "id": "1003", - "type": "Blueberry" - }, - { - "id": "1004", - "type": "Devil's Food" - } - ], - "batters": [], - "donuts_topping": [ - { - "donut_id": "0001", - "topping_id": "5001" - }, - { - "donut_id": "0001", - "topping_id": "5002" - }, - { - "donut_id": "0001", - "topping_id": "5005" - }, - { - "donut_id": "0001", - "topping_id": "5007" - }, - { - "donut_id": "0001", - "topping_id": "5006" - }, - { - "donut_id": "0001", - "topping_id": "5003" - }, - { - "donut_id": "0001", - "topping_id": "5004" - }, - { - "donut_id": "0002", - "topping_id": "5001" - }, - { - "donut_id": "0002", - "topping_id": "5002" - }, - { - "donut_id": "0002", - "topping_id": "5005" - }, - { - "donut_id": "0002", - "topping_id": "5003" - }, - { - "donut_id": "0002", - "topping_id": "5004" - }, - { - "donut_id": "0003", - "topping_id": "5001" - }, - { - "donut_id": "0003", - "topping_id": "5002" - }, - { - "donut_id": "0003", - "topping_id": "5003" - }, - { - "donut_id": "0003", - "topping_id": "5004" - } - ], - "topping": [ - { - "id": "5001", - "type": "None" - }, - { - "id": "5002", - "type": "Glazed" - }, - { - "id": "5005", - "type": "Sugar" - }, - { - "id": "5007", - "type": "Powdered Sugar" - }, - { - "id": "5006", - "type": "Chocolate with Sprinkles" - }, - { - "id": "5003", - "type": "Chocolate" - }, - { - "id": "5004", - "type": "Maple" - } - ], - "donuts": [ - { - "id": "0001", - "type": "donut", - "name": "Cake", - "ppu": 0.55 - }, - { - "id": "0002", - "type": "donut", - "name": "Raised", - "ppu": 0.55 - }, - { - "id": "0003", - "type": "donut", - "name": "Old Fashioned", - "ppu": 0.55 - } - ] -} - - --- Generated by json2qsql.js development 1/24/2024, 4:38:58 PM - -#document = -[ - { - "id": "0001", - "type": "donut", - "name": "Cake", - "ppu": 0.55, - "batters": { - "batter": [ - { - "id": "1001", - "type": "Regular" - }, - { - "id": "1002", - "type": "Chocolate" - }, - { - "id": "1003", - "type": "Blueberry" - }, - { - "id": "1004", - "type": "Devil's Food" - } - ] - }, - "topping": [ - { - "id": "5001", - "type": "None" - }, - { - "id": "5002", - "type": "Glazed" - }, - { - "id": "5005", - "type": "Sugar" - }, - { - "id": "5007", - "type": "Powdered Sugar" - }, - { - "id": "5006", - "type": "Chocolate with Sprinkles" - }, - { - "id": "5003", - "type": "Chocolate" - }, - { - "id": "5004", - "type": "Maple" - } - ] - }, - { - "id": "0002", - "type": "donut", - "name": "Raised", - "ppu": 0.55, - "batters": { - "batter": [ - { - "id": "1001", - "type": "Regular" - } - ] - }, - "topping": [ - { - "id": "5001", - "type": "None" - }, - { - "id": "5002", - "type": "Glazed" - }, - { - "id": "5005", - "type": "Sugar" - }, - { - "id": "5003", - "type": "Chocolate" - }, - { - "id": "5004", - "type": "Maple" - } - ] - }, - { - "id": "0003", - "type": "donut", - "name": "Old Fashioned", - "ppu": 0.55, - "batters": { - "batter": [ - { - "id": "1001", - "type": "Regular" - }, - { - "id": "1002", - "type": "Chocolate" - } - ] - }, - "topping": [ - { - "id": "5001", - "type": "None" - }, - { - "id": "5002", - "type": "Glazed" - }, - { - "id": "5003", - "type": "Chocolate" - }, - { - "id": "5004", - "type": "Maple" - } - ] - } -] diff --git a/test/experimental/donuts.sql b/test/experimental/donuts.sql deleted file mode 100644 index 96f4cc7..0000000 --- a/test/experimental/donuts.sql +++ /dev/null @@ -1,681 +0,0 @@ -drop table donuts cascade constraints; -drop table donuts_batter cascade constraints; -drop table batter cascade constraints; -drop table donuts_topping cascade constraints; -drop table topping cascade constraints; --- create tables - -create table topping ( - id varchar2(32 char) not null - constraint topping_id_pk primary key, - type varchar2(4000 char) -); - - -create table batter ( - id varchar2(32 char) not null - constraint batter_id_pk primary key, - type varchar2(4000 char) -); - - -create table donuts ( - id varchar2(32 char) not null - constraint donuts_id_pk primary key, - type varchar2(4000 char), - name varchar2(255 char), - ppu number -); - - -create table donuts_batter ( - batter_id varchar2(32 char) - constraint donuts_batter_batter_id_fk - references batter, - donut_id varchar2(32 char) - constraint donuts_batter_donut_id_fk - references donuts -); - --- table index -create index donuts_batter_i1 on donuts_batter (batter_id); - -create index donuts_batter_i2 on donuts_batter (donut_id); - - -create table donuts_topping ( - topping_id varchar2(32 char) - constraint donuts_topping_topping_id_fk - references topping, - donut_id varchar2(32 char) - constraint donuts_topping_donut_id_fk - references donuts -); - --- table index -create index donuts_topping_i1 on donuts_topping (topping_id); - -create index donuts_topping_i2 on donuts_topping (donut_id); - - - --- load data - -insert into topping ( - id, - type -) values ( - '5001', - 'None' -); -insert into topping ( - id, - type -) values ( - '5002', - 'Glazed' -); -insert into topping ( - id, - type -) values ( - '5005', - 'Sugar' -); -insert into topping ( - id, - type -) values ( - '5007', - 'Powdered Sugar' -); -insert into topping ( - id, - type -) values ( - '5006', - 'Chocolate with Sprinkles' -); -insert into topping ( - id, - type -) values ( - '5003', - 'Chocolate' -); -insert into topping ( - id, - type -) values ( - '5004', - 'Maple' -); - -commit; - -insert into batter ( - id, - type -) values ( - '1001', - 'Regular' -); -insert into batter ( - id, - type -) values ( - '1002', - 'Chocolate' -); -insert into batter ( - id, - type -) values ( - '1003', - 'Blueberry' -); -insert into batter ( - id, - type -) values ( - '1004', - 'Devil''s Food' -); - -commit; - -insert into donuts ( - id, - type, - name, - ppu -) values ( - '0001', - 'donut', - 'Cake', - 0.55 -); -insert into donuts ( - id, - type, - name, - ppu -) values ( - '0002', - 'donut', - 'Raised', - 0.55 -); -insert into donuts ( - id, - type, - name, - ppu -) values ( - '0003', - 'donut', - 'Old Fashioned', - 0.55 -); - -commit; - -insert into donuts_batter ( - batter_id, - donut_id -) values ( - '1001', - '0001' -); -insert into donuts_batter ( - batter_id, - donut_id -) values ( - '1002', - '0001' -); -insert into donuts_batter ( - batter_id, - donut_id -) values ( - '1003', - '0001' -); -insert into donuts_batter ( - batter_id, - donut_id -) values ( - '1004', - '0001' -); -insert into donuts_batter ( - batter_id, - donut_id -) values ( - '1001', - '0002' -); -insert into donuts_batter ( - batter_id, - donut_id -) values ( - '1001', - '0003' -); -insert into donuts_batter ( - batter_id, - donut_id -) values ( - '1002', - '0003' -); - -commit; - -insert into donuts_topping ( - topping_id, - donut_id -) values ( - '5001', - '0001' -); -insert into donuts_topping ( - topping_id, - donut_id -) values ( - '5002', - '0001' -); -insert into donuts_topping ( - topping_id, - donut_id -) values ( - '5005', - '0001' -); -insert into donuts_topping ( - topping_id, - donut_id -) values ( - '5007', - '0001' -); -insert into donuts_topping ( - topping_id, - donut_id -) values ( - '5006', - '0001' -); -insert into donuts_topping ( - topping_id, - donut_id -) values ( - '5003', - '0001' -); -insert into donuts_topping ( - topping_id, - donut_id -) values ( - '5004', - '0001' -); -insert into donuts_topping ( - topping_id, - donut_id -) values ( - '5001', - '0002' -); -insert into donuts_topping ( - topping_id, - donut_id -) values ( - '5002', - '0002' -); -insert into donuts_topping ( - topping_id, - donut_id -) values ( - '5005', - '0002' -); -insert into donuts_topping ( - topping_id, - donut_id -) values ( - '5003', - '0002' -); -insert into donuts_topping ( - topping_id, - donut_id -) values ( - '5004', - '0002' -); -insert into donuts_topping ( - topping_id, - donut_id -) values ( - '5001', - '0003' -); -insert into donuts_topping ( - topping_id, - donut_id -) values ( - '5002', - '0003' -); -insert into donuts_topping ( - topping_id, - donut_id -) values ( - '5003', - '0003' -); -insert into donuts_topping ( - topping_id, - donut_id -) values ( - '5004', - '0003' -); - -commit; - - --- Generated by Quick SQL development 1/24/2024, 4:38:58 PM - -/* -donuts /insert 3 - id vc32 /pk - type vc - name vc - ppu num - donuts_batter /insert 7 - >batter /insert 4 - id vc32 /pk - type vc - donuts_topping /insert 16 - >topping /insert 7 - id vc32 /pk - type vc - - - - - - -{ - "donuts_batter": [ - { - "donut_id": "0001", - "batter_id": "1001" - }, - { - "donut_id": "0001", - "batter_id": "1002" - }, - { - "donut_id": "0001", - "batter_id": "1003" - }, - { - "donut_id": "0001", - "batter_id": "1004" - }, - { - "donut_id": "0002", - "batter_id": "1001" - }, - { - "donut_id": "0003", - "batter_id": "1001" - }, - { - "donut_id": "0003", - "batter_id": "1002" - } - ], - "batter": [ - { - "id": "1001", - "type": "Regular" - }, - { - "id": "1002", - "type": "Chocolate" - }, - { - "id": "1003", - "type": "Blueberry" - }, - { - "id": "1004", - "type": "Devil's Food" - } - ], - "batters": [], - "donuts_topping": [ - { - "donut_id": "0001", - "topping_id": "5001" - }, - { - "donut_id": "0001", - "topping_id": "5002" - }, - { - "donut_id": "0001", - "topping_id": "5005" - }, - { - "donut_id": "0001", - "topping_id": "5007" - }, - { - "donut_id": "0001", - "topping_id": "5006" - }, - { - "donut_id": "0001", - "topping_id": "5003" - }, - { - "donut_id": "0001", - "topping_id": "5004" - }, - { - "donut_id": "0002", - "topping_id": "5001" - }, - { - "donut_id": "0002", - "topping_id": "5002" - }, - { - "donut_id": "0002", - "topping_id": "5005" - }, - { - "donut_id": "0002", - "topping_id": "5003" - }, - { - "donut_id": "0002", - "topping_id": "5004" - }, - { - "donut_id": "0003", - "topping_id": "5001" - }, - { - "donut_id": "0003", - "topping_id": "5002" - }, - { - "donut_id": "0003", - "topping_id": "5003" - }, - { - "donut_id": "0003", - "topping_id": "5004" - } - ], - "topping": [ - { - "id": "5001", - "type": "None" - }, - { - "id": "5002", - "type": "Glazed" - }, - { - "id": "5005", - "type": "Sugar" - }, - { - "id": "5007", - "type": "Powdered Sugar" - }, - { - "id": "5006", - "type": "Chocolate with Sprinkles" - }, - { - "id": "5003", - "type": "Chocolate" - }, - { - "id": "5004", - "type": "Maple" - } - ], - "donuts": [ - { - "id": "0001", - "type": "donut", - "name": "Cake", - "ppu": 0.55 - }, - { - "id": "0002", - "type": "donut", - "name": "Raised", - "ppu": 0.55 - }, - { - "id": "0003", - "type": "donut", - "name": "Old Fashioned", - "ppu": 0.55 - } - ] -} - - --- Generated by json2qsql.js development 1/24/2024, 4:38:58 PM - - - -[ - { - "id": "0001", - "type": "donut", - "name": "Cake", - "ppu": 0.55, - "batters": { - "batter": [ - { - "id": "1001", - "type": "Regular" - }, - { - "id": "1002", - "type": "Chocolate" - }, - { - "id": "1003", - "type": "Blueberry" - }, - { - "id": "1004", - "type": "Devil's Food" - } - ] - }, - "topping": [ - { - "id": "5001", - "type": "None" - }, - { - "id": "5002", - "type": "Glazed" - }, - { - "id": "5005", - "type": "Sugar" - }, - { - "id": "5007", - "type": "Powdered Sugar" - }, - { - "id": "5006", - "type": "Chocolate with Sprinkles" - }, - { - "id": "5003", - "type": "Chocolate" - }, - { - "id": "5004", - "type": "Maple" - } - ] - }, - { - "id": "0002", - "type": "donut", - "name": "Raised", - "ppu": 0.55, - "batters": { - "batter": [ - { - "id": "1001", - "type": "Regular" - } - ] - }, - "topping": [ - { - "id": "5001", - "type": "None" - }, - { - "id": "5002", - "type": "Glazed" - }, - { - "id": "5005", - "type": "Sugar" - }, - { - "id": "5003", - "type": "Chocolate" - }, - { - "id": "5004", - "type": "Maple" - } - ] - }, - { - "id": "0003", - "type": "donut", - "name": "Old Fashioned", - "ppu": 0.55, - "batters": { - "batter": [ - { - "id": "1001", - "type": "Regular" - }, - { - "id": "1002", - "type": "Chocolate" - } - ] - }, - "topping": [ - { - "id": "5001", - "type": "None" - }, - { - "id": "5002", - "type": "Glazed" - }, - { - "id": "5003", - "type": "Chocolate" - }, - { - "id": "5004", - "type": "Maple" - } - ] - } -] - - - Non-default options: -# settings = {"genpk":false,"drop":true} - -*/ \ No newline at end of file diff --git a/test/experimental/food_product.json b/test/experimental/food_product.json index 29a914a..5a1d427 100644 --- a/test/experimental/food_product.json +++ b/test/experimental/food_product.json @@ -9,17 +9,6 @@ "artificial", "barbeque", "beverage", - "cereal", - "chip", - "crisp", - "food", - "frie", - "in", - "no", - "oil", - "plant-based", - "popchip", - "potato", "potatoe", "preservative", "salty", @@ -226,128 +215,14 @@ "transportation_scores": { "ad": 0, "al": 0, - "at": 0, - "ax": 0, - "ba": 0, - "be": 0, - "bg": 0, - "ch": 0, - "cy": 0, - "cz": 0, - "de": 0, - "dk": 0, - "dz": 0, - "ee": 0, - "eg": 0, - "es": 0, - "fi": 0, - "fo": 0, - "fr": 0, - "gg": 0, - "gi": 0, - "gr": 0, - "hr": 0, - "hu": 0, - "ie": 0, - "il": 0, - "im": 0, - "is": 0, - "it": 0, - "je": 0, - "lb": 0, - "li": 0, - "lt": 0, - "lu": 0, - "lv": 0, - "ly": 0, - "ma": 0, - "mc": 0, - "md": 0, - "me": 0, - "mk": 0, - "mt": 0, - "nl": 0, - "no": 0, - "pl": 0, - "ps": 0, - "pt": 0, - "ro": 0, - "rs": 0, - "se": 0, - "si": 0, - "sj": 0, - "sk": 0, - "sm": 0, - "sy": 0, - "tn": 0, - "tr": 0, - "ua": 0, - "uk": 0, - "us": 0, - "va": 0, + "va": 0, "world": 0, "xk": 0 }, "transportation_value": 0, "transportation_values": { "ad": 0, - "al": 0, - "at": 0, - "ax": 0, - "ba": 0, - "be": 0, - "bg": 0, - "ch": 0, - "cy": 0, - "cz": 0, - "de": 0, - "dk": 0, - "dz": 0, - "ee": 0, - "eg": 0, - "es": 0, - "fi": 0, - "fo": 0, - "fr": 0, - "gg": 0, - "gi": 0, - "gr": 0, - "hr": 0, - "hu": 0, - "ie": 0, - "il": 0, - "im": 0, - "is": 0, - "it": 0, - "je": 0, - "lb": 0, - "li": 0, - "lt": 0, - "lu": 0, - "lv": 0, - "ly": 0, - "ma": 0, - "mc": 0, - "md": 0, - "me": 0, - "mk": 0, - "mt": 0, - "nl": 0, - "no": 0, - "pl": 0, - "ps": 0, - "pt": 0, - "ro": 0, - "rs": 0, - "se": 0, - "si": 0, - "sj": 0, - "sk": 0, - "sm": 0, - "sy": 0, - "tn": 0, - "tr": 0, - "ua": 0, + "ua": 0, "uk": 0, "us": 0, "va": 0, @@ -359,62 +234,7 @@ "ad": -5, "al": -5, "at": -5, - "ax": -5, - "ba": -5, - "be": -5, - "bg": -5, - "ch": -5, - "cy": -5, - "cz": -5, - "de": -5, - "dk": -5, - "dz": -5, - "ee": -5, - "eg": -5, - "es": -5, - "fi": -5, - "fo": -5, - "fr": -5, - "gg": -5, - "gi": -5, - "gr": -5, - "hr": -5, - "hu": -5, - "ie": -5, - "il": -5, - "im": -5, - "is": -5, - "it": -5, - "je": -5, - "lb": -5, - "li": -5, - "lt": -5, - "lu": -5, - "lv": -5, - "ly": -5, - "ma": -5, - "mc": -5, - "md": -5, - "me": -5, - "mk": -5, - "mt": -5, - "nl": -5, - "no": -5, - "pl": -5, - "ps": -5, - "pt": -5, - "ro": -5, - "rs": -5, - "se": -5, - "si": -5, - "sj": -5, - "sk": -5, - "sm": -5, - "sy": -5, - "tn": -5, - "tr": -5, - "ua": -5, - "uk": -5, + "uk": -5, "us": -5, "va": -5, "world": -5, @@ -478,61 +298,7 @@ "grades": { "ad": "b", "al": "b", - "at": "b", - "ax": "b", - "ba": "b", - "be": "b", - "bg": "b", - "ch": "b", - "cy": "b", - "cz": "b", - "de": "b", - "dk": "b", - "dz": "b", - "ee": "b", - "eg": "b", - "es": "b", - "fi": "b", - "fo": "b", - "fr": "b", - "gg": "b", - "gi": "b", - "gr": "b", - "hr": "b", - "hu": "b", - "ie": "b", - "il": "b", - "im": "b", - "is": "b", - "it": "b", - "je": "b", - "lb": "b", - "li": "b", - "lt": "b", - "lu": "b", - "lv": "b", - "ly": "b", - "ma": "b", - "mc": "b", - "md": "b", - "me": "b", - "mk": "b", - "mt": "b", - "nl": "b", - "no": "b", - "pl": "b", - "ps": "b", - "pt": "b", - "ro": "b", - "rs": "b", - "se": "b", - "si": "b", - "sj": "b", - "sk": "b", - "sm": "b", - "sy": "b", - "tn": "b", - "tr": "b", + "tr": "b", "ua": "b", "uk": "b", "us": "b", @@ -577,64 +343,7 @@ "ad": 67, "al": 67, "at": 67, - "ax": 67, - "ba": 67, - "be": 67, - "bg": 67, - "ch": 67, - "cy": 67, - "cz": 67, - "de": 67, - "dk": 67, - "dz": 67, - "ee": 67, - "eg": 67, - "es": 67, - "fi": 67, - "fo": 67, - "fr": 67, - "gg": 67, - "gi": 67, - "gr": 67, - "hr": 67, - "hu": 67, - "ie": 67, - "il": 67, - "im": 67, - "is": 67, - "it": 67, - "je": 67, - "lb": 67, - "li": 67, - "lt": 67, - "lu": 67, - "lv": 67, - "ly": 67, - "ma": 67, - "mc": 67, - "md": 67, - "me": 67, - "mk": 67, - "mt": 67, - "nl": 67, - "no": 67, - "pl": 67, - "ps": 67, - "pt": 67, - "ro": 67, - "rs": 67, - "se": 67, - "si": 67, - "sj": 67, - "sk": 67, - "sm": 67, - "sy": 67, - "tn": 67, - "tr": 67, - "ua": 67, - "uk": 67, - "us": 67, - "va": 67, + "va": 67, "world": 67, "xk": 67 }, @@ -1418,31 +1127,7 @@ "en:tuber", "en:sunflower-oil", "en:oil-and-fat", - "en:vegetable-oil-and-fat", - "en:vegetable-oil", - "en:coating", - "en:rice-flour", - "en:flour", - "en:rice", - "en:potato-starch", - "en:starch", - "en:sugar", - "en:added-sugar", - "en:disaccharide", - "en:whey-powder", - "en:dairy", - "en:whey", - "en:salt", - "en:onion", - "en:onion-family-vegetable", - "en:yeast-powder", - "en:yeast", - "en:garlic", - "en:tomato", - "en:fruit-vegetable", - "en:oak-smoked-sea-salti-yeast-extract", - "en:flavouring", - "en:spice", + "en:spice", "en:condiment", "en:acid", "en:colour", @@ -1455,18 +1140,6 @@ "sunflower-oil", "seasoning", "sugar", - "whey-powder", - "milk", - "salt", - "onion-powder", - "yeast-powder", - "garlic-powder", - "tomato-powder", - "oak-smoked-sea-salti-yeast-extract", - "flavourings", - "spices", - "acid", - "citric-acid", "colour", "paprika-extract", "rice-flour", @@ -1504,38 +1177,7 @@ "en:potato", "en:vegetable", "en:root-vegetable", - "en:tuber", - "en:sunflower-oil", - "en:oil-and-fat", - "en:vegetable-oil-and-fat", - "en:vegetable-oil", - "en:coating", - "en:rice-flour", - "en:flour", - "en:rice", - "en:potato-starch", - "en:starch", - "en:sugar", - "en:added-sugar", - "en:disaccharide", - "en:whey-powder", - "en:dairy", - "en:whey", - "en:salt", - "en:onion", - "en:onion-family-vegetable", - "en:yeast-powder", - "en:yeast", - "en:garlic", - "en:tomato", - "en:fruit-vegetable", - "en:oak-smoked-sea-salti-yeast-extract", - "en:flavouring", - "en:spice", - "en:condiment", - "en:acid", - "en:colour", - "en:milk", + "en:milk", "en:e330", "en:e160c" ], @@ -1710,48 +1352,6 @@ "carbohydrates_value": 62, "carbon-footprint-from-known-ingredients_100g": 32.4, "carbon-footprint-from-known-ingredients_product": 7.45, - "carbon-footprint-from-known-ingredients_serving": 7.45, - "energy": 1759, - "energy-kcal": 420, - "energy-kcal_100g": 420, - "energy-kcal_serving": 96.6, - "energy-kcal_unit": "kcal", - "energy-kcal_value": 420, - "energy-kcal_value_computed": 413.6, - "energy-kj": 1759, - "energy-kj_100g": 1759, - "energy-kj_serving": 405, - "energy-kj_unit": "kJ", - "energy-kj_value": 1759, - "energy-kj_value_computed": 1737.1, - "energy_100g": 1759, - "energy_serving": 405, - "energy_unit": "kJ", - "energy_value": 1759, - "fat": 15, - "fat_100g": 15, - "fat_serving": 3.45, - "fat_unit": "g", - "fat_value": 15, - "fiber": 3.9, - "fiber_100g": 3.9, - "fiber_serving": 0.897, - "fiber_unit": "g", - "fiber_value": 3.9, - "fruits-vegetables-legumes-estimate-from-ingredients_100g": 0, - "fruits-vegetables-legumes-estimate-from-ingredients_serving": 0, - "fruits-vegetables-nuts-estimate-from-ingredients_100g": 0, - "fruits-vegetables-nuts-estimate-from-ingredients_serving": 0, - "nova-group": 4, - "nova-group_100g": 4, - "nova-group_serving": 4, - "nutrition-score-fr": 12, - "nutrition-score-fr_100g": 12, - "proteins": 5.7, - "proteins_100g": 5.7, - "proteins_serving": 1.31, - "proteins_unit": "g", - "proteins_value": 5.7, "salt": 2.1, "salt_100g": 2.1, "salt_serving": 0.483, @@ -1782,25 +1382,6 @@ "energy_value": 1759, "fiber": 3.9, "fiber_points": 4, - "fiber_value": 3.9, - "fruits_vegetables_nuts_colza_walnut_olive_oils": "0", - "fruits_vegetables_nuts_colza_walnut_olive_oils_points": 0, - "fruits_vegetables_nuts_colza_walnut_olive_oils_value": 0, - "is_beverage": 0, - "is_cheese": 0, - "is_fat": 0, - "is_water": 0, - "negative_points": 16, - "positive_points": 4, - "proteins": 5.7, - "proteins_points": 3, - "proteins_value": 5.7, - "saturated_fat": 1.4, - "saturated_fat_points": 1, - "saturated_fat_value": 1.4, - "sodium": 840, - "sodium_points": 9, - "sodium_value": 840, "sugars": 8.7, "sugars_points": 1, "sugars_value": 8.7 @@ -1817,15 +1398,7 @@ "count_proteins": 0, "count_proteins_reason": "negative_points_more_than_11", "energy": 1759, - "energy_points": 5, - "fiber": 3.9, - "fiber_points": 1, - "fruits_vegetables_legumes": 0, - "fruits_vegetables_legumes_points": 0, - "is_beverage": 0, - "is_cheese": 0, - "is_fat_oil_nuts_seeds": 0, - "is_red_meat_product": 0, + "is_red_meat_product": 0, "is_water": 0, "negative_nutrients": [ "energy", @@ -1976,57 +1549,6 @@ "popularity_tags": [ "bottom-25-percent-scans-2019", "bottom-20-percent-scans-2019", - "bottom-15-percent-scans-2019", - "top-90-percent-scans-2019", - "top-10000-gb-scans-2019", - "top-50000-gb-scans-2019", - "top-100000-gb-scans-2019", - "top-country-gb-scans-2019", - "bottom-25-percent-scans-2020", - "top-80-percent-scans-2020", - "top-85-percent-scans-2020", - "top-90-percent-scans-2020", - "top-5000-gb-scans-2020", - "top-10000-gb-scans-2020", - "top-50000-gb-scans-2020", - "top-100000-gb-scans-2020", - "top-country-gb-scans-2020", - "top-100000-scans-2021", - "at-least-5-scans-2021", - "top-75-percent-scans-2021", - "top-80-percent-scans-2021", - "top-85-percent-scans-2021", - "top-90-percent-scans-2021", - "top-5000-gb-scans-2021", - "top-10000-gb-scans-2021", - "top-50000-gb-scans-2021", - "top-100000-gb-scans-2021", - "top-country-gb-scans-2021", - "at-least-5-gb-scans-2021", - "top-5000-ie-scans-2021", - "top-10000-ie-scans-2021", - "top-50000-ie-scans-2021", - "top-100000-ie-scans-2021", - "top-1000-mu-scans-2021", - "top-5000-mu-scans-2021", - "top-10000-mu-scans-2021", - "top-50000-mu-scans-2021", - "top-100000-mu-scans-2021", - "top-100000-scans-2022", - "top-75-percent-scans-2022", - "top-80-percent-scans-2022", - "top-85-percent-scans-2022", - "top-90-percent-scans-2022", - "top-5000-gb-scans-2022", - "top-10000-gb-scans-2022", - "top-50000-gb-scans-2022", - "top-100000-gb-scans-2022", - "top-country-gb-scans-2022", - "top-500-hk-scans-2022", - "top-1000-hk-scans-2022", - "top-5000-hk-scans-2022", - "top-10000-hk-scans-2022", - "top-50000-hk-scans-2022", "top-100000-hk-scans-2022", "top-10000-us-scans-2022", "top-50000-us-scans-2022", @@ -2086,18 +1608,6 @@ "en:to-be-completed", "en:nutrition-facts-completed", "en:ingredients-completed", - "en:expiration-date-completed", - "en:packaging-code-to-be-completed", - "en:characteristics-to-be-completed", - "en:origins-to-be-completed", - "en:categories-completed", - "en:brands-completed", - "en:packaging-completed", - "en:quantity-completed", - "en:product-name-completed", - "en:photos-to-be-validated", - "en:packaging-photo-to-be-selected", - "en:nutrition-photo-selected", "en:ingredients-photo-selected", "en:front-photo-selected", "en:photos-uploaded" @@ -2106,18 +1616,6 @@ "en:to-be-completed", "en:nutrition-facts-completed", "en:ingredients-completed", - "en:expiration-date-completed", - "en:packaging-code-to-be-completed", - "en:characteristics-to-be-completed", - "en:origins-to-be-completed", - "en:categories-completed", - "en:brands-completed", - "en:packaging-completed", - "en:quantity-completed", - "en:product-name-completed", - "en:photos-to-be-validated", - "en:packaging-photo-to-be-selected", - "en:nutrition-photo-selected", "en:ingredients-photo-selected", "en:front-photo-selected", "en:photos-uploaded" diff --git a/test/experimental/food_product_full.json b/test/experimental/food_product_full.json new file mode 100644 index 0000000..99f672f --- /dev/null +++ b/test/experimental/food_product_full.json @@ -0,0 +1,2175 @@ +{ + "code": "5060292302201", + "product": { + "_id": "5060292302201", + "_keywords": [ + "and", + "anything", + "appetizer", + "artificial", + "barbeque", + "beverage", + "cereal", + "chip", + "crisp", + "food", + "frie", + "in", + "no", + "oil", + "plant-based", + "popchip", + "potato", + "potatoe", + "preservative", + "salty", + "snack", + "sunflower", + "vegetarian" + ], + "added_countries_tags": [], + "additives_debug_tags": [], + "additives_n": 2, + "additives_old_n": 2, + "additives_old_tags": [ + "en:e330", + "en:e160c" + ], + "additives_original_tags": [ + "en:e330", + "en:e160c" + ], + "additives_prev_original_tags": [ + "en:e330", + "en:e160c" + ], + "additives_tags": [ + "en:e160c", + "en:e330" + ], + "allergens": "en:milk", + "allergens_from_ingredients": "en:milk, milk", + "allergens_from_user": "(en) en:milk", + "allergens_hierarchy": [ + "en:milk" + ], + "allergens_lc": "en", + "allergens_tags": [ + "en:milk" + ], + "amino_acids_prev_tags": [], + "amino_acids_tags": [], + "brands": "Popchips", + "brands_tags": [ + "popchips" + ], + "carbon_footprint_from_known_ingredients_debug": "en:potato 54% x 0.6 = 32.4 g - ", + "carbon_footprint_percent_of_known_ingredients": 54, + "categories": "Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil", + "categories_hierarchy": [ + "en:plant-based-foods-and-beverages", + "en:plant-based-foods", + "en:snacks", + "en:cereals-and-potatoes", + "en:salty-snacks", + "en:appetizers", + "en:chips-and-fries", + "en:crisps", + "en:potato-crisps", + "en:potato-crisps-in-sunflower-oil" + ], + "categories_lc": "en", + "categories_old": "Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil", + "categories_properties": { + "agribalyse_food_code:en": "4004", + "ciqual_food_code:en": "4004" + }, + "categories_properties_tags": [ + "all-products", + "categories-known", + "agribalyse-food-code-4004", + "agribalyse-food-code-known", + "agribalyse-proxy-food-code-unknown", + "ciqual-food-code-4004", + "ciqual-food-code-known", + "agribalyse-known", + "agribalyse-4004" + ], + "categories_tags": [ + "en:plant-based-foods-and-beverages", + "en:plant-based-foods", + "en:snacks", + "en:cereals-and-potatoes", + "en:salty-snacks", + "en:appetizers", + "en:chips-and-fries", + "en:crisps", + "en:potato-crisps", + "en:potato-crisps-in-sunflower-oil" + ], + "category_properties": { + "ciqual_food_name:en": "Potato crisps", + "ciqual_food_name:fr": "Chips de pommes de terre, standard" + }, + "checkers_tags": [], + "ciqual_food_name_tags": [ + "potato-crisps" + ], + "cities_tags": [], + "code": "5060292302201", + "codes_tags": [ + "code-13", + "5060292302xxx", + "506029230xxxx", + "50602923xxxxx", + "5060292xxxxxx", + "506029xxxxxxx", + "50602xxxxxxxx", + "5060xxxxxxxxx", + "506xxxxxxxxxx", + "50xxxxxxxxxxx", + "5xxxxxxxxxxxx" + ], + "compared_to_category": "en:potato-crisps-in-sunflower-oil", + "complete": 0, + "completeness": 0.8875, + "correctors_tags": [ + "tacite", + "tacite-mass-editor", + "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", + "openfoodfacts-contributors", + "swipe-studio", + "yuka.sY2b0xO6T85zoF3NwEKvllZnctbb-gn-LDr4mHzUyem0FYPXMO5by7b5NKg", + "kiliweb", + "packbot", + "foodless", + "yuka.sY2b0xO6T85zoF3NwEKvlmBZVPXu-gnlBU3miFTQ-NeSIbDaMdUtu4fLGas", + "aleene" + ], + "countries": "France,United Kingdom", + "countries_hierarchy": [ + "en:france", + "en:united-kingdom" + ], + "countries_lc": "en", + "countries_tags": [ + "en:france", + "en:united-kingdom" + ], + "created_t": 1433338177, + "creator": "kyzh", + "data_quality_bugs_tags": [], + "data_quality_errors_tags": [], + "data_quality_info_tags": [ + "en:packaging-data-incomplete", + "en:ingredients-percent-analysis-ok", + "en:carbon-footprint-from-known-ingredients-but-not-from-meat-or-fish", + "en:ecoscore-extended-data-computed", + "en:ecoscore-extended-data-less-precise-than-agribalyse", + "en:food-groups-1-known", + "en:food-groups-2-known", + "en:food-groups-3-unknown" + ], + "data_quality_tags": [ + "en:packaging-data-incomplete", + "en:ingredients-percent-analysis-ok", + "en:carbon-footprint-from-known-ingredients-but-not-from-meat-or-fish", + "en:ecoscore-extended-data-computed", + "en:ecoscore-extended-data-less-precise-than-agribalyse", + "en:food-groups-1-known", + "en:food-groups-2-known", + "en:food-groups-3-unknown", + "en:nutrition-value-very-low-for-category-energy", + "en:nutrition-value-very-low-for-category-fat", + "en:nutrition-value-very-high-for-category-sugars", + "en:vegetarian-label-but-could-not-confirm-for-all-ingredients", + "en:ecoscore-origins-of-ingredients-origins-are-100-percent-unknown", + "en:ecoscore-production-system-no-label" + ], + "data_quality_warnings_tags": [ + "en:nutrition-value-very-low-for-category-energy", + "en:nutrition-value-very-low-for-category-fat", + "en:nutrition-value-very-high-for-category-sugars", + "en:vegetarian-label-but-could-not-confirm-for-all-ingredients", + "en:ecoscore-origins-of-ingredients-origins-are-100-percent-unknown", + "en:ecoscore-production-system-no-label" + ], + "data_sources": "App - yuka, Apps, App - Horizon", + "data_sources_tags": [ + "app-yuka", + "apps", + "app-horizon" + ], + "debug_param_sorted_langs": [ + "en" + ], + "ecoscore_data": { + "adjustments": { + "origins_of_ingredients": { + "aggregated_origins": [ + { + "epi_score": "0", + "origin": "en:unknown", + "percent": 100, + "transportation_score": null + } + ], + "epi_score": 0, + "epi_value": -5, + "origins_from_categories": [ + "en:unknown" + ], + "origins_from_origins_field": [ + "en:unknown" + ], + "transportation_score": 0, + "transportation_scores": { + "ad": 0, + "al": 0, + "at": 0, + "ax": 0, + "ba": 0, + "be": 0, + "bg": 0, + "ch": 0, + "cy": 0, + "cz": 0, + "de": 0, + "dk": 0, + "dz": 0, + "ee": 0, + "eg": 0, + "es": 0, + "fi": 0, + "fo": 0, + "fr": 0, + "gg": 0, + "gi": 0, + "gr": 0, + "hr": 0, + "hu": 0, + "ie": 0, + "il": 0, + "im": 0, + "is": 0, + "it": 0, + "je": 0, + "lb": 0, + "li": 0, + "lt": 0, + "lu": 0, + "lv": 0, + "ly": 0, + "ma": 0, + "mc": 0, + "md": 0, + "me": 0, + "mk": 0, + "mt": 0, + "nl": 0, + "no": 0, + "pl": 0, + "ps": 0, + "pt": 0, + "ro": 0, + "rs": 0, + "se": 0, + "si": 0, + "sj": 0, + "sk": 0, + "sm": 0, + "sy": 0, + "tn": 0, + "tr": 0, + "ua": 0, + "uk": 0, + "us": 0, + "va": 0, + "world": 0, + "xk": 0 + }, + "transportation_value": 0, + "transportation_values": { + "ad": 0, + "al": 0, + "at": 0, + "ax": 0, + "ba": 0, + "be": 0, + "bg": 0, + "ch": 0, + "cy": 0, + "cz": 0, + "de": 0, + "dk": 0, + "dz": 0, + "ee": 0, + "eg": 0, + "es": 0, + "fi": 0, + "fo": 0, + "fr": 0, + "gg": 0, + "gi": 0, + "gr": 0, + "hr": 0, + "hu": 0, + "ie": 0, + "il": 0, + "im": 0, + "is": 0, + "it": 0, + "je": 0, + "lb": 0, + "li": 0, + "lt": 0, + "lu": 0, + "lv": 0, + "ly": 0, + "ma": 0, + "mc": 0, + "md": 0, + "me": 0, + "mk": 0, + "mt": 0, + "nl": 0, + "no": 0, + "pl": 0, + "ps": 0, + "pt": 0, + "ro": 0, + "rs": 0, + "se": 0, + "si": 0, + "sj": 0, + "sk": 0, + "sm": 0, + "sy": 0, + "tn": 0, + "tr": 0, + "ua": 0, + "uk": 0, + "us": 0, + "va": 0, + "world": 0, + "xk": 0 + }, + "value": -5, + "values": { + "ad": -5, + "al": -5, + "at": -5, + "ax": -5, + "ba": -5, + "be": -5, + "bg": -5, + "ch": -5, + "cy": -5, + "cz": -5, + "de": -5, + "dk": -5, + "dz": -5, + "ee": -5, + "eg": -5, + "es": -5, + "fi": -5, + "fo": -5, + "fr": -5, + "gg": -5, + "gi": -5, + "gr": -5, + "hr": -5, + "hu": -5, + "ie": -5, + "il": -5, + "im": -5, + "is": -5, + "it": -5, + "je": -5, + "lb": -5, + "li": -5, + "lt": -5, + "lu": -5, + "lv": -5, + "ly": -5, + "ma": -5, + "mc": -5, + "md": -5, + "me": -5, + "mk": -5, + "mt": -5, + "nl": -5, + "no": -5, + "pl": -5, + "ps": -5, + "pt": -5, + "ro": -5, + "rs": -5, + "se": -5, + "si": -5, + "sj": -5, + "sk": -5, + "sm": -5, + "sy": -5, + "tn": -5, + "tr": -5, + "ua": -5, + "uk": -5, + "us": -5, + "va": -5, + "world": -5, + "xk": -5 + }, + "warning": "origins_are_100_percent_unknown" + }, + "packaging": { + "non_recyclable_and_non_biodegradable_materials": 2, + "packagings": [ + { + "ecoscore_material_score": 0, + "ecoscore_shape_ratio": 1, + "material": "en:plastic", + "non_recyclable_and_non_biodegradable": "maybe", + "shape": "en:packet" + }, + { + "ecoscore_material_score": 0, + "ecoscore_shape_ratio": 1, + "material": "en:plastic", + "non_recyclable_and_non_biodegradable": "maybe", + "shape": "en:packet" + } + ], + "score": -100, + "value": -15 + }, + "production_system": { + "labels": [], + "value": 0, + "warning": "no_label" + }, + "threatened_species": {} + }, + "agribalyse": { + "agribalyse_food_code": "4004", + "co2_agriculture": 0.82655583, + "co2_consumption": 0, + "co2_distribution": 0.019537154, + "co2_packaging": 0.28154442, + "co2_processing": 0.23156851, + "co2_total": 1.543669164, + "co2_transportation": 0.18446325, + "code": "4004", + "dqr": "2.45", + "ef_agriculture": 0.14029442, + "ef_consumption": 0, + "ef_distribution": 0.004831936, + "ef_packaging": 0.02370999, + "ef_processing": 0.038707917, + "ef_total": 0.223317319, + "ef_transportation": 0.015773056, + "is_beverage": 0, + "name_en": "Potato crisps", + "name_fr": "Chips de pommes de terre, standard", + "score": 87, + "version": "3.1" + }, + "grade": "b", + "grades": { + "ad": "b", + "al": "b", + "at": "b", + "ax": "b", + "ba": "b", + "be": "b", + "bg": "b", + "ch": "b", + "cy": "b", + "cz": "b", + "de": "b", + "dk": "b", + "dz": "b", + "ee": "b", + "eg": "b", + "es": "b", + "fi": "b", + "fo": "b", + "fr": "b", + "gg": "b", + "gi": "b", + "gr": "b", + "hr": "b", + "hu": "b", + "ie": "b", + "il": "b", + "im": "b", + "is": "b", + "it": "b", + "je": "b", + "lb": "b", + "li": "b", + "lt": "b", + "lu": "b", + "lv": "b", + "ly": "b", + "ma": "b", + "mc": "b", + "md": "b", + "me": "b", + "mk": "b", + "mt": "b", + "nl": "b", + "no": "b", + "pl": "b", + "ps": "b", + "pt": "b", + "ro": "b", + "rs": "b", + "se": "b", + "si": "b", + "sj": "b", + "sk": "b", + "sm": "b", + "sy": "b", + "tn": "b", + "tr": "b", + "ua": "b", + "uk": "b", + "us": "b", + "va": "b", + "world": "b", + "xk": "b" + }, + "missing": { + "labels": 1, + "origins": 1 + }, + "missing_data_warning": 1, + "previous_data": { + "agribalyse": { + "agribalyse_food_code": "4004", + "co2_agriculture": 1.2992636, + "co2_consumption": 0, + "co2_distribution": 0.029120657, + "co2_packaging": 0.28581962, + "co2_processing": 0.39294234, + "co2_total": 2.2443641, + "co2_transportation": 0.23728203, + "code": "4004", + "dqr": "2.45", + "ef_agriculture": 0.18214682, + "ef_consumption": 0, + "ef_distribution": 0.0098990521, + "ef_packaging": 0.021558384, + "ef_processing": 0.057508389, + "ef_total": 0.29200269, + "ef_transportation": 0.020894187, + "is_beverage": 0, + "name_en": "Potato crisps", + "name_fr": "Chips de pommes de terre, standard", + "score": 78 + }, + "grade": "b", + "score": 63 + }, + "score": 67, + "scores": { + "ad": 67, + "al": 67, + "at": 67, + "ax": 67, + "ba": 67, + "be": 67, + "bg": 67, + "ch": 67, + "cy": 67, + "cz": 67, + "de": 67, + "dk": 67, + "dz": 67, + "ee": 67, + "eg": 67, + "es": 67, + "fi": 67, + "fo": 67, + "fr": 67, + "gg": 67, + "gi": 67, + "gr": 67, + "hr": 67, + "hu": 67, + "ie": 67, + "il": 67, + "im": 67, + "is": 67, + "it": 67, + "je": 67, + "lb": 67, + "li": 67, + "lt": 67, + "lu": 67, + "lv": 67, + "ly": 67, + "ma": 67, + "mc": 67, + "md": 67, + "me": 67, + "mk": 67, + "mt": 67, + "nl": 67, + "no": 67, + "pl": 67, + "ps": 67, + "pt": 67, + "ro": 67, + "rs": 67, + "se": 67, + "si": 67, + "sj": 67, + "sk": 67, + "sm": 67, + "sy": 67, + "tn": 67, + "tr": 67, + "ua": 67, + "uk": 67, + "us": 67, + "va": 67, + "world": 67, + "xk": 67 + }, + "status": "known" + }, + "ecoscore_extended_data": { + "impact": { + "ef_single_score_log_stddev": 0.0664290643574977, + "likeliest_impacts": { + "Climate_change": 0.0835225930657116, + "EF_single_score": 0.0132996566234689 + }, + "likeliest_recipe": { + "en:Oak_smoked_sea_salti_yeast_extract": 0.103505496656251, + "en:e160c": 0.10350549665625, + "en:e330": 0.10350549665625, + "en:flavouring": 0.10350549665625, + "en:garlic_powder": 0.103505496656251, + "en:milk": 1.55847864453775, + "en:onion": 0.15510736429208, + "en:potato": 69.2208020730349, + "en:potato_starch": 10.5320407294931, + "en:rice_flour": 13.8595510001351, + "en:salt": 1.3345917157533, + "en:spice": 0.10350549665625, + "en:sugar": 10.2883618334396, + "en:sunflower_oil": 14.1645835312727, + "en:tomato_powder": 0.10350549665625, + "en:water": 6.24510964041154, + "en:yeast_powder": 0.103505496656251 + }, + "mass_ratio_uncharacterized": 0.0244618467395455, + "uncharacterized_ingredients": { + "impact": [ + "en:yeast-powder", + "en:flavouring", + "en:Oak smoked sea salti yeast extract", + "en:e160c", + "en:e330" + ], + "nutrition": [ + "en:flavouring", + "en:Oak smoked sea salti yeast extract" + ] + }, + "uncharacterized_ingredients_mass_proportion": { + "impact": 0.0244618467395455, + "nutrition": 0.0106506947223728 + }, + "uncharacterized_ingredients_ratio": { + "impact": 0.3125, + "nutrition": 0.125 + }, + "warnings": [ + "Fermentation agents are present in the product (en:yeast-powder). Carbohydrates and sugars mass balance will not be considered to estimate potential recipes", + "The product has a high number of impact uncharacterized ingredients: 31%" + ] + } + }, + "ecoscore_extended_data_version": "4", + "ecoscore_grade": "b", + "ecoscore_score": 67, + "ecoscore_tags": [ + "b" + ], + "editors": [ + "kyzh", + "tacite" + ], + "editors_tags": [ + "kiliweb", + "openfoodfacts-contributors", + "aleene", + "tacite-mass-editor", + "yuka.sY2b0xO6T85zoF3NwEKvlmBZVPXu-gnlBU3miFTQ-NeSIbDaMdUtu4fLGas", + "kyzh", + "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", + "ecoscore-impact-estimator", + "tacite", + "foodless", + "yuka.sY2b0xO6T85zoF3NwEKvllZnctbb-gn-LDr4mHzUyem0FYPXMO5by7b5NKg", + "swipe-studio", + "packbot" + ], + "emb_codes": "", + "emb_codes_20141016": "", + "emb_codes_orig": "", + "emb_codes_tags": [], + "entry_dates_tags": [ + "2015-06-03", + "2015-06", + "2015" + ], + "expiration_date": "11/05/2016", + "food_groups": "en:appetizers", + "food_groups_tags": [ + "en:salty-snacks", + "en:appetizers" + ], + "fruits-vegetables-nuts_100g_estimate": 0, + "generic_name": "", + "generic_name_en": "", + "generic_name_fr": "", + "generic_name_fr_debug_tags": [], + "id": "5060292302201", + "image_front_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", + "image_front_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", + "image_front_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", + "image_ingredients_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg", + "image_ingredients_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg", + "image_ingredients_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg", + "image_nutrition_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg", + "image_nutrition_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg", + "image_nutrition_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg", + "image_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", + "image_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", + "image_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", + "images": { + "1": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338177, + "uploader": "kyzh" + }, + "2": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338194, + "uploader": "kyzh" + }, + "3": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338203, + "uploader": "kyzh" + }, + "4": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338215, + "uploader": "kyzh" + }, + "5": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338229, + "uploader": "kyzh" + }, + "6": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338245, + "uploader": "kyzh" + }, + "7": { + "sizes": { + "100": { + "h": 43, + "w": 100 + }, + "400": { + "h": 171, + "w": 400 + }, + "full": { + "h": 846, + "w": 1974 + } + }, + "uploaded_t": "1508236270", + "uploader": "kiliweb" + }, + "8": { + "sizes": { + "100": { + "h": 100, + "w": 82 + }, + "400": { + "h": 400, + "w": 326 + }, + "full": { + "h": 1140, + "w": 930 + } + }, + "uploaded_t": 1620505759, + "uploader": "kiliweb" + }, + "9": { + "sizes": { + "100": { + "h": 56, + "w": 100 + }, + "400": { + "h": 225, + "w": 400 + }, + "full": { + "h": 569, + "w": 1011 + } + }, + "uploaded_t": 1656075071, + "uploader": "kiliweb" + }, + "front": { + "geometry": "1421x1825-0-95", + "imgid": "1", + "normalize": "false", + "rev": "9", + "sizes": { + "100": { + "h": 100, + "w": 78 + }, + "200": { + "h": 200, + "w": 156 + }, + "400": { + "h": 400, + "w": 311 + }, + "full": { + "h": 1825, + "w": 1421 + } + }, + "white_magic": "true" + }, + "front_en": { + "angle": 0, + "coordinates_image_size": "full", + "geometry": "0x0--1--1", + "imgid": "8", + "normalize": null, + "rev": "23", + "sizes": { + "100": { + "h": 100, + "w": 82 + }, + "200": { + "h": 200, + "w": 163 + }, + "400": { + "h": 400, + "w": 326 + }, + "full": { + "h": 1140, + "w": 930 + } + }, + "white_magic": null, + "x1": "-1", + "x2": "-1", + "y1": "-1", + "y2": "-1" + }, + "ingredients": { + "geometry": "1730x526-125-304", + "imgid": "5", + "normalize": "false", + "ocr": 1, + "orientation": "0", + "rev": "11", + "sizes": { + "100": { + "h": 30, + "w": 100 + }, + "200": { + "h": 61, + "w": 200 + }, + "400": { + "h": 122, + "w": 400 + }, + "full": { + "h": 526, + "w": 1730 + } + }, + "white_magic": "false" + }, + "ingredients_en": { + "geometry": "1730x526-125-304", + "imgid": "5", + "normalize": "false", + "ocr": 1, + "orientation": "0", + "rev": "11", + "sizes": { + "100": { + "h": 30, + "w": 100 + }, + "200": { + "h": 61, + "w": 200 + }, + "400": { + "h": 122, + "w": 400 + }, + "full": { + "h": 526, + "w": 1730 + } + }, + "white_magic": "false" + }, + "nutrition": { + "geometry": "1131x920-150-794", + "imgid": "3", + "normalize": "false", + "ocr": 1, + "orientation": "0", + "rev": "10", + "sizes": { + "100": { + "h": 81, + "w": 100 + }, + "200": { + "h": 163, + "w": 200 + }, + "400": { + "h": 325, + "w": 400 + }, + "full": { + "h": 920, + "w": 1131 + } + }, + "white_magic": "false" + }, + "nutrition_en": { + "angle": 0, + "coordinates_image_size": "full", + "geometry": "0x0--1--1", + "imgid": "9", + "normalize": null, + "rev": "32", + "sizes": { + "100": { + "h": 56, + "w": 100 + }, + "200": { + "h": 113, + "w": 200 + }, + "400": { + "h": 225, + "w": 400 + }, + "full": { + "h": 569, + "w": 1011 + } + }, + "white_magic": null, + "x1": "-1", + "x2": "-1", + "y1": "-1", + "y2": "-1" + } + }, + "informers_tags": [ + "kyzh", + "tacite", + "tacite-mass-editor", + "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", + "openfoodfacts-contributors", + "aleene" + ], + "ingredients": [ + { + "ciqual_food_code": "4003", + "id": "en:potato", + "percent": 54, + "percent_estimate": 54, + "percent_max": 54, + "percent_min": 54, + "processing": "en:dried", + "rank": 1, + "text": "potatoes", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "17440", + "from_palm_oil": "no", + "id": "en:sunflower-oil", + "percent_estimate": 28.75, + "percent_max": 46, + "percent_min": 11.5, + "rank": 2, + "text": "sunflower oil", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "has_sub_ingredients": "yes", + "id": "en:coating", + "percent_estimate": 8.625, + "percent_max": 33.3333333333333, + "percent_min": 0, + "rank": 3, + "text": "seasoning", + "vegan": "maybe", + "vegetarian": "maybe" + }, + { + "ciqual_food_code": "9520", + "id": "en:rice-flour", + "percent_estimate": 4.3125, + "percent_max": 17.25, + "percent_min": 0, + "rank": 4, + "text": "rice flour", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "en:potato-starch", + "percent_estimate": 4.3125, + "percent_max": 11.5, + "percent_min": 0, + "rank": 5, + "text": "potato starch", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "en:sugar", + "percent_estimate": 4.3125, + "percent_max": 8.7, + "percent_min": 0, + "text": "sugar", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "has_sub_ingredients": "yes", + "id": "en:whey-powder", + "percent_estimate": 2.15625, + "percent_max": 8.7, + "percent_min": 0, + "text": "whey powder", + "vegan": "no", + "vegetarian": "maybe" + }, + { + "ciqual_food_code": "11058", + "id": "en:salt", + "percent_estimate": 1.05, + "percent_max": 2.1, + "percent_min": 0, + "text": "salt", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "20034", + "id": "en:onion", + "percent_estimate": 0.553125, + "percent_max": 2.1, + "percent_min": 0, + "processing": "en:powder", + "text": "onion", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "en:yeast-powder", + "percent_estimate": 0.2765625, + "percent_max": 2.1, + "percent_min": 0, + "text": "yeast powder", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "11000", + "id": "en:garlic", + "percent_estimate": 0.13828125, + "percent_max": 2.1, + "percent_min": 0, + "processing": "en:powder", + "text": "garlic", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "20047", + "id": "en:tomato", + "percent_estimate": 0.0691406250000002, + "percent_max": 2.1, + "percent_min": 0, + "processing": "en:powder", + "text": "tomato", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "en:oak-smoked-sea-salti-yeast-extract", + "percent_estimate": 0.0345703124999996, + "percent_max": 2.1, + "percent_min": 0, + "text": "Oak smoked sea salti yeast extract" + }, + { + "id": "en:flavouring", + "percent_estimate": 0.0172851562499998, + "percent_max": 2.1, + "percent_min": 0, + "text": "flavourings", + "vegan": "maybe", + "vegetarian": "maybe" + }, + { + "id": "en:spice", + "percent_estimate": 0.00864257812500036, + "percent_max": 2.1, + "percent_min": 0, + "text": "spices", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "has_sub_ingredients": "yes", + "id": "en:acid", + "percent_estimate": 0.00432128906250018, + "percent_max": 2.1, + "percent_min": 0, + "text": "acid" + }, + { + "has_sub_ingredients": "yes", + "id": "en:colour", + "percent_estimate": 0.00432128906249929, + "percent_max": 2.1, + "percent_min": 0, + "text": "colour" + }, + { + "id": "en:milk", + "percent_estimate": 2.15625, + "percent_max": 8.7, + "percent_min": 0, + "text": "milk", + "vegan": "no", + "vegetarian": "yes" + }, + { + "id": "en:e330", + "percent_estimate": 0.00432128906250018, + "percent_max": 2.1, + "percent_min": 0, + "text": "citric acid", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "en:e160c", + "percent_estimate": 0.00432128906249929, + "percent_max": 2.1, + "percent_min": 0, + "text": "paprika extract", + "vegan": "yes", + "vegetarian": "yes" + } + ], + "ingredients_analysis": { + "en:non-vegan": [ + "en:whey-powder", + "en:milk" + ], + "en:palm-oil-content-unknown": [ + "en:oak-smoked-sea-salti-yeast-extract" + ], + "en:vegan-status-unknown": [ + "en:oak-smoked-sea-salti-yeast-extract" + ], + "en:vegetarian-status-unknown": [ + "en:oak-smoked-sea-salti-yeast-extract" + ] + }, + "ingredients_analysis_tags": [ + "en:palm-oil-free", + "en:non-vegan", + "en:vegetarian" + ], + "ingredients_debug": [ + "54% dried potatoes", + ",", + null, + null, + null, + " sunflower oil", + ",", + null, + null, + null, + " seasoning ", + "(", + "(", + null, + null, + "sugar", + ",", + null, + null, + null, + " whey powder ", + "[", + "[", + null, + null, + "milk]", + ",", + null, + null, + null, + " salt", + ",", + null, + null, + null, + " onion powder", + ",", + null, + null, + null, + " yeast powder", + ",", + null, + null, + null, + " garlic powder", + ",", + null, + null, + null, + " tomato powder", + ",", + null, + null, + null, + " Oak smoked sea salti yeast extract", + ",", + null, + null, + null, + " flavourings", + ",", + null, + null, + null, + " spices", + ",", + null, + null, + null, + " acid", + ":", + ":", + null, + null, + " citric acid", + ",", + null, + null, + null, + " colour", + ":", + ":", + null, + null, + " paprika extract)", + ",", + null, + null, + null, + " rice flour", + ",", + null, + null, + null, + " potato starch." + ], + "ingredients_from_or_that_may_be_from_palm_oil_n": 0, + "ingredients_from_palm_oil_n": 0, + "ingredients_from_palm_oil_tags": [], + "ingredients_hierarchy": [ + "en:potato", + "en:vegetable", + "en:root-vegetable", + "en:tuber", + "en:sunflower-oil", + "en:oil-and-fat", + "en:vegetable-oil-and-fat", + "en:vegetable-oil", + "en:coating", + "en:rice-flour", + "en:flour", + "en:rice", + "en:potato-starch", + "en:starch", + "en:sugar", + "en:added-sugar", + "en:disaccharide", + "en:whey-powder", + "en:dairy", + "en:whey", + "en:salt", + "en:onion", + "en:onion-family-vegetable", + "en:yeast-powder", + "en:yeast", + "en:garlic", + "en:tomato", + "en:fruit-vegetable", + "en:oak-smoked-sea-salti-yeast-extract", + "en:flavouring", + "en:spice", + "en:condiment", + "en:acid", + "en:colour", + "en:milk", + "en:e330", + "en:e160c" + ], + "ingredients_ids_debug": [ + "54-dried-potatoes", + "sunflower-oil", + "seasoning", + "sugar", + "whey-powder", + "milk", + "salt", + "onion-powder", + "yeast-powder", + "garlic-powder", + "tomato-powder", + "oak-smoked-sea-salti-yeast-extract", + "flavourings", + "spices", + "acid", + "citric-acid", + "colour", + "paprika-extract", + "rice-flour", + "potato-starch" + ], + "ingredients_n": 20, + "ingredients_n_tags": [ + "20", + "11-20" + ], + "ingredients_original_tags": [ + "en:potato", + "en:sunflower-oil", + "en:coating", + "en:rice-flour", + "en:potato-starch", + "en:sugar", + "en:whey-powder", + "en:salt", + "en:onion", + "en:yeast-powder", + "en:garlic", + "en:tomato", + "en:oak-smoked-sea-salti-yeast-extract", + "en:flavouring", + "en:spice", + "en:acid", + "en:colour", + "en:milk", + "en:e330", + "en:e160c" + ], + "ingredients_percent_analysis": 1, + "ingredients_tags": [ + "en:potato", + "en:vegetable", + "en:root-vegetable", + "en:tuber", + "en:sunflower-oil", + "en:oil-and-fat", + "en:vegetable-oil-and-fat", + "en:vegetable-oil", + "en:coating", + "en:rice-flour", + "en:flour", + "en:rice", + "en:potato-starch", + "en:starch", + "en:sugar", + "en:added-sugar", + "en:disaccharide", + "en:whey-powder", + "en:dairy", + "en:whey", + "en:salt", + "en:onion", + "en:onion-family-vegetable", + "en:yeast-powder", + "en:yeast", + "en:garlic", + "en:tomato", + "en:fruit-vegetable", + "en:oak-smoked-sea-salti-yeast-extract", + "en:flavouring", + "en:spice", + "en:condiment", + "en:acid", + "en:colour", + "en:milk", + "en:e330", + "en:e160c" + ], + "ingredients_text": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_debug": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_debug_tags": [], + "ingredients_text_en": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_fr": "", + "ingredients_text_fr_debug_tags": [], + "ingredients_text_with_allergens": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_with_allergens_en": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_that_may_be_from_palm_oil_n": 0, + "ingredients_that_may_be_from_palm_oil_tags": [], + "ingredients_with_specified_percent_n": 1, + "ingredients_with_specified_percent_sum": 54, + "ingredients_with_unspecified_percent_n": 15, + "ingredients_with_unspecified_percent_sum": 46, + "ingredients_without_ciqual_codes": [ + "en:e160c", + "en:e330", + "en:flavouring", + "en:milk", + "en:oak-smoked-sea-salti-yeast-extract", + "en:potato-starch", + "en:spice", + "en:sugar", + "en:yeast-powder" + ], + "ingredients_without_ciqual_codes_n": 9, + "interface_version_created": "20120622", + "interface_version_modified": "20190830", + "known_ingredients_n": 36, + "labels": "Vegetarian, No preservatives, No artificial anything", + "labels_hierarchy": [ + "en:vegetarian", + "en:no-preservatives", + "en:No artificial anything" + ], + "labels_lc": "en", + "labels_old": "Vegetarian,No preservatives,No artificial anything", + "labels_tags": [ + "en:vegetarian", + "en:no-preservatives", + "en:no-artificial-anything" + ], + "lang": "en", + "languages": { + "en:english": 5 + }, + "languages_codes": { + "en": 5 + }, + "languages_hierarchy": [ + "en:english" + ], + "languages_tags": [ + "en:english", + "en:1" + ], + "last_edit_dates_tags": [ + "2023-03-24", + "2023-03", + "2023" + ], + "last_editor": "aleene", + "last_image_dates_tags": [ + "2022-06-24", + "2022-06", + "2022" + ], + "last_image_t": 1656075071, + "last_modified_by": "aleene", + "last_modified_t": 1679645675, + "last_updated_t": 1705604943, + "lc": "en", + "link": "", + "main_countries_tags": [], + "manufacturing_places": "European Union", + "manufacturing_places_tags": [ + "european-union" + ], + "max_imgid": "9", + "minerals_prev_tags": [], + "minerals_tags": [], + "misc_tags": [ + "en:nutriscore-computed", + "en:nutrition-fruits-vegetables-nuts-from-category", + "en:nutrition-fruits-vegetables-nuts-from-category-en-potato-crisps-in-sunflower-oil", + "en:nutrition-fruits-vegetables-legumes-from-category", + "en:nutrition-fruits-vegetables-legumes-from-category-en-potato-crisps-in-sunflower-oil", + "en:nutriscore-2021-same-as-2023", + "en:nutriscore-2021-d-2023-d", + "en:packagings-number-of-components-2", + "en:packagings-not-complete", + "en:packagings-not-empty-but-not-complete", + "en:packagings-not-empty", + "en:ecoscore-extended-data-computed", + "en:ecoscore-extended-data-version-4", + "en:ecoscore-missing-data-warning", + "en:ecoscore-missing-data-labels", + "en:ecoscore-missing-data-origins", + "en:ecoscore-computed", + "en:ecoscore-changed" + ], + "no_nutrition_data": "", + "nova_group": 4, + "nova_group_debug": "", + "nova_groups": "4", + "nova_groups_markers": { + "3": [ + [ + "categories", + "en:salty-snacks" + ], + [ + "ingredients", + "en:salt" + ], + [ + "ingredients", + "en:starch" + ], + [ + "ingredients", + "en:sugar" + ], + [ + "ingredients", + "en:vegetable-oil" + ] + ], + "4": [ + [ + "additives", + "en:e160c" + ], + [ + "ingredients", + "en:colour" + ], + [ + "ingredients", + "en:flavouring" + ], + [ + "ingredients", + "en:whey" + ] + ] + }, + "nova_groups_tags": [ + "en:4-ultra-processed-food-and-drink-products" + ], + "nucleotides_prev_tags": [], + "nucleotides_tags": [], + "nutrient_levels": { + "fat": "moderate", + "salt": "high", + "saturated-fat": "low", + "sugars": "moderate" + }, + "nutrient_levels_tags": [ + "en:fat-in-moderate-quantity", + "en:saturated-fat-in-low-quantity", + "en:sugars-in-moderate-quantity", + "en:salt-in-high-quantity" + ], + "nutriments": { + "carbohydrates": 62, + "carbohydrates_100g": 62, + "carbohydrates_serving": 14.3, + "carbohydrates_unit": "g", + "carbohydrates_value": 62, + "carbon-footprint-from-known-ingredients_100g": 32.4, + "carbon-footprint-from-known-ingredients_product": 7.45, + "carbon-footprint-from-known-ingredients_serving": 7.45, + "energy": 1759, + "energy-kcal": 420, + "energy-kcal_100g": 420, + "energy-kcal_serving": 96.6, + "energy-kcal_unit": "kcal", + "energy-kcal_value": 420, + "energy-kcal_value_computed": 413.6, + "energy-kj": 1759, + "energy-kj_100g": 1759, + "energy-kj_serving": 405, + "energy-kj_unit": "kJ", + "energy-kj_value": 1759, + "energy-kj_value_computed": 1737.1, + "energy_100g": 1759, + "energy_serving": 405, + "energy_unit": "kJ", + "energy_value": 1759, + "fat": 15, + "fat_100g": 15, + "fat_serving": 3.45, + "fat_unit": "g", + "fat_value": 15, + "fiber": 3.9, + "fiber_100g": 3.9, + "fiber_serving": 0.897, + "fiber_unit": "g", + "fiber_value": 3.9, + "fruits-vegetables-legumes-estimate-from-ingredients_100g": 0, + "fruits-vegetables-legumes-estimate-from-ingredients_serving": 0, + "fruits-vegetables-nuts-estimate-from-ingredients_100g": 0, + "fruits-vegetables-nuts-estimate-from-ingredients_serving": 0, + "nova-group": 4, + "nova-group_100g": 4, + "nova-group_serving": 4, + "nutrition-score-fr": 12, + "nutrition-score-fr_100g": 12, + "proteins": 5.7, + "proteins_100g": 5.7, + "proteins_serving": 1.31, + "proteins_unit": "g", + "proteins_value": 5.7, + "salt": 2.1, + "salt_100g": 2.1, + "salt_serving": 0.483, + "salt_unit": "g", + "salt_value": 2.1, + "saturated-fat": 1.4, + "saturated-fat_100g": 1.4, + "saturated-fat_serving": 0.322, + "saturated-fat_unit": "g", + "saturated-fat_value": 1.4, + "sodium": 0.84, + "sodium_100g": 0.84, + "sodium_serving": 0.193, + "sodium_unit": "g", + "sodium_value": 0.84, + "sugars": 8.7, + "sugars_100g": 8.7, + "sugars_serving": 2, + "sugars_unit": "g", + "sugars_value": 8.7 + }, + "nutriscore": { + "2021": { + "category_available": 1, + "data": { + "energy": 1759, + "energy_points": 5, + "energy_value": 1759, + "fiber": 3.9, + "fiber_points": 4, + "fiber_value": 3.9, + "fruits_vegetables_nuts_colza_walnut_olive_oils": "0", + "fruits_vegetables_nuts_colza_walnut_olive_oils_points": 0, + "fruits_vegetables_nuts_colza_walnut_olive_oils_value": 0, + "is_beverage": 0, + "is_cheese": 0, + "is_fat": 0, + "is_water": 0, + "negative_points": 16, + "positive_points": 4, + "proteins": 5.7, + "proteins_points": 3, + "proteins_value": 5.7, + "saturated_fat": 1.4, + "saturated_fat_points": 1, + "saturated_fat_value": 1.4, + "sodium": 840, + "sodium_points": 9, + "sodium_value": 840, + "sugars": 8.7, + "sugars_points": 1, + "sugars_value": 8.7 + }, + "grade": "d", + "nutrients_available": 1, + "nutriscore_applicable": 1, + "nutriscore_computed": 1, + "score": 12 + }, + "2023": { + "category_available": 1, + "data": { + "count_proteins": 0, + "count_proteins_reason": "negative_points_more_than_11", + "energy": 1759, + "energy_points": 5, + "fiber": 3.9, + "fiber_points": 1, + "fruits_vegetables_legumes": 0, + "fruits_vegetables_legumes_points": 0, + "is_beverage": 0, + "is_cheese": 0, + "is_fat_oil_nuts_seeds": 0, + "is_red_meat_product": 0, + "is_water": 0, + "negative_nutrients": [ + "energy", + "sugars", + "saturated_fat", + "salt", + "non_nutritive_sweeteners" + ], + "negative_points": 18, + "positive_nutrients": [ + "fruits_vegetables_legumes", + "fiber" + ], + "positive_points": 1, + "proteins": 5.7, + "proteins_points": 2, + "salt": 2.1, + "salt_points": 10, + "saturated_fat": 1.4, + "saturated_fat_points": 1, + "sugars": 8.7, + "sugars_points": 2 + }, + "grade": "d", + "nutrients_available": 1, + "nutriscore_applicable": 1, + "nutriscore_computed": 1, + "score": 17 + } + }, + "nutriscore_2021_tags": [ + "d" + ], + "nutriscore_2023_tags": [ + "d" + ], + "nutriscore_data": { + "energy": 1759, + "energy_points": 5, + "energy_value": 1759, + "fiber": 3.9, + "fiber_points": 4, + "fiber_value": 3.9, + "fruits_vegetables_nuts_colza_walnut_olive_oils": "0", + "fruits_vegetables_nuts_colza_walnut_olive_oils_points": 0, + "fruits_vegetables_nuts_colza_walnut_olive_oils_value": 0, + "grade": "d", + "is_beverage": 0, + "is_cheese": 0, + "is_fat": 0, + "is_water": 0, + "negative_points": 16, + "positive_points": 4, + "proteins": 5.7, + "proteins_points": 3, + "proteins_value": 5.7, + "saturated_fat": 1.4, + "saturated_fat_points": 1, + "saturated_fat_value": 1.4, + "score": 12, + "sodium": 840, + "sodium_points": 9, + "sodium_value": 840, + "sugars": 8.7, + "sugars_points": 1, + "sugars_value": 8.7 + }, + "nutriscore_grade": "d", + "nutriscore_score": 12, + "nutriscore_score_opposite": -12, + "nutriscore_tags": [ + "d" + ], + "nutriscore_version": "2021", + "nutrition_data": "on", + "nutrition_data_per": "100g", + "nutrition_data_prepared": "", + "nutrition_data_prepared_per": "100g", + "nutrition_grade_fr": "d", + "nutrition_grades": "d", + "nutrition_grades_tags": [ + "d" + ], + "nutrition_score_beverage": 0, + "nutrition_score_debug": "", + "obsolete": "", + "obsolete_since_date": "", + "origin": "", + "origin_en": "", + "origins": "", + "origins_hierarchy": [], + "origins_lc": "en", + "origins_old": "", + "origins_tags": [], + "other_nutritional_substances_tags": [], + "packaging": "Plastic,Mixed plastic film-packet", + "packaging_hierarchy": [ + "en:plastic", + "en:Mixed plastic film-packet" + ], + "packaging_lc": "en", + "packaging_materials_tags": [ + "en:plastic" + ], + "packaging_old": "Plastic, Mixed plastic-packet", + "packaging_old_before_taxonomization": "Plastic, en:mixed plastic-packet", + "packaging_recycling_tags": [], + "packaging_shapes_tags": [ + "en:packet" + ], + "packaging_tags": [ + "en:plastic", + "en:mixed-plastic-film-packet" + ], + "packaging_text": "", + "packaging_text_en": "", + "packagings": [ + { + "material": "en:plastic", + "shape": "en:packet" + }, + { + "material": "en:plastic", + "shape": "en:packet" + } + ], + "packagings_complete": 0, + "packagings_materials": { + "all": {}, + "en:plastic": {} + }, + "packagings_n": 2, + "photographers_tags": [ + "kyzh", + "kiliweb" + ], + "pnns_groups_1": "Salty snacks", + "pnns_groups_1_tags": [ + "salty-snacks", + "known" + ], + "pnns_groups_2": "Appetizers", + "pnns_groups_2_tags": [ + "appetizers", + "known" + ], + "popularity_key": 22950000016, + "popularity_tags": [ + "bottom-25-percent-scans-2019", + "bottom-20-percent-scans-2019", + "bottom-15-percent-scans-2019", + "top-90-percent-scans-2019", + "top-10000-gb-scans-2019", + "top-50000-gb-scans-2019", + "top-100000-gb-scans-2019", + "top-country-gb-scans-2019", + "bottom-25-percent-scans-2020", + "top-80-percent-scans-2020", + "top-85-percent-scans-2020", + "top-90-percent-scans-2020", + "top-5000-gb-scans-2020", + "top-10000-gb-scans-2020", + "top-50000-gb-scans-2020", + "top-100000-gb-scans-2020", + "top-country-gb-scans-2020", + "top-100000-scans-2021", + "at-least-5-scans-2021", + "top-75-percent-scans-2021", + "top-80-percent-scans-2021", + "top-85-percent-scans-2021", + "top-90-percent-scans-2021", + "top-5000-gb-scans-2021", + "top-10000-gb-scans-2021", + "top-50000-gb-scans-2021", + "top-100000-gb-scans-2021", + "top-country-gb-scans-2021", + "at-least-5-gb-scans-2021", + "top-5000-ie-scans-2021", + "top-10000-ie-scans-2021", + "top-50000-ie-scans-2021", + "top-100000-ie-scans-2021", + "top-1000-mu-scans-2021", + "top-5000-mu-scans-2021", + "top-10000-mu-scans-2021", + "top-50000-mu-scans-2021", + "top-100000-mu-scans-2021", + "top-100000-scans-2022", + "top-75-percent-scans-2022", + "top-80-percent-scans-2022", + "top-85-percent-scans-2022", + "top-90-percent-scans-2022", + "top-5000-gb-scans-2022", + "top-10000-gb-scans-2022", + "top-50000-gb-scans-2022", + "top-100000-gb-scans-2022", + "top-country-gb-scans-2022", + "top-500-hk-scans-2022", + "top-1000-hk-scans-2022", + "top-5000-hk-scans-2022", + "top-10000-hk-scans-2022", + "top-50000-hk-scans-2022", + "top-100000-hk-scans-2022", + "top-10000-us-scans-2022", + "top-50000-us-scans-2022", + "top-100000-us-scans-2022", + "top-50000-scans-2023", + "top-100000-scans-2023", + "at-least-5-scans-2023", + "at-least-10-scans-2023", + "top-75-percent-scans-2023", + "top-80-percent-scans-2023", + "top-85-percent-scans-2023", + "top-90-percent-scans-2023", + "top-5000-gb-scans-2023", + "top-10000-gb-scans-2023", + "top-50000-gb-scans-2023", + "top-100000-gb-scans-2023", + "top-country-gb-scans-2023", + "at-least-5-gb-scans-2023", + "at-least-10-gb-scans-2023", + "top-10000-pl-scans-2023", + "top-50000-pl-scans-2023", + "top-100000-pl-scans-2023", + "top-500-gg-scans-2023", + "top-1000-gg-scans-2023", + "top-5000-gg-scans-2023", + "top-10000-gg-scans-2023", + "top-50000-gg-scans-2023", + "top-100000-gg-scans-2023", + "top-10000-hr-scans-2023", + "top-50000-hr-scans-2023", + "top-100000-hr-scans-2023" + ], + "product_name": "Barbeque Potato Chips", + "product_name_en": "Barbeque Potato Chips", + "product_name_fr": "", + "product_name_fr_debug_tags": [], + "product_quantity": "23", + "purchase_places": "", + "purchase_places_tags": [], + "quantity": "23 g", + "removed_countries_tags": [], + "rev": 33, + "scans_n": 19, + "selected_images": { + "front": { + "display": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg" + }, + "small": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg" + }, + "thumb": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg" + } + }, + "ingredients": { + "display": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg" + }, + "small": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg" + }, + "thumb": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg" + } + }, + "nutrition": { + "display": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg" + }, + "small": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg" + }, + "thumb": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg" + } + } + }, + "serving_quantity": "23", + "serving_size": "23 g", + "sortkey": 1535456524, + "states": "en:to-be-completed, en:nutrition-facts-completed, en:ingredients-completed, en:expiration-date-completed, en:packaging-code-to-be-completed, en:characteristics-to-be-completed, en:origins-to-be-completed, en:categories-completed, en:brands-completed, en:packaging-completed, en:quantity-completed, en:product-name-completed, en:photos-to-be-validated, en:packaging-photo-to-be-selected, en:nutrition-photo-selected, en:ingredients-photo-selected, en:front-photo-selected, en:photos-uploaded", + "states_hierarchy": [ + "en:to-be-completed", + "en:nutrition-facts-completed", + "en:ingredients-completed", + "en:expiration-date-completed", + "en:packaging-code-to-be-completed", + "en:characteristics-to-be-completed", + "en:origins-to-be-completed", + "en:categories-completed", + "en:brands-completed", + "en:packaging-completed", + "en:quantity-completed", + "en:product-name-completed", + "en:photos-to-be-validated", + "en:packaging-photo-to-be-selected", + "en:nutrition-photo-selected", + "en:ingredients-photo-selected", + "en:front-photo-selected", + "en:photos-uploaded" + ], + "states_tags": [ + "en:to-be-completed", + "en:nutrition-facts-completed", + "en:ingredients-completed", + "en:expiration-date-completed", + "en:packaging-code-to-be-completed", + "en:characteristics-to-be-completed", + "en:origins-to-be-completed", + "en:categories-completed", + "en:brands-completed", + "en:packaging-completed", + "en:quantity-completed", + "en:product-name-completed", + "en:photos-to-be-validated", + "en:packaging-photo-to-be-selected", + "en:nutrition-photo-selected", + "en:ingredients-photo-selected", + "en:front-photo-selected", + "en:photos-uploaded" + ], + "stores": "", + "stores_tags": [], + "teams": "swipe-studio", + "teams_tags": [ + "swipe-studio" + ], + "traces": "", + "traces_from_ingredients": "", + "traces_from_user": "(en) ", + "traces_hierarchy": [], + "traces_lc": "en", + "traces_tags": [], + "unique_scans_n": 16, + "unknown_ingredients_n": 1, + "unknown_nutrients_tags": [], + "update_key": "sort_key_2024", + "vitamins_prev_tags": [], + "vitamins_tags": [], + "weighers_tags": [] + }, + "status": 1, + "status_verbose": "product found" +} \ No newline at end of file diff --git a/test/explain_plan.sql b/test/explain_plan.sql new file mode 100644 index 0000000..e69de29 diff --git a/test/single_test.js b/test/single_test.js index 770aed6..85c7316 100644 --- a/test/single_test.js +++ b/test/single_test.js @@ -4,9 +4,7 @@ import fs from "fs"; try { let file = '//bugs/Bug35669377.quicksql'; - //file = '//DV/car_racing/2.qsql'; - //file = '//star/sales_product_customers.qsql'; - file = '//experimental/donuts.json'; + file = '//experimental/food_product.json'; let args = process.argv.slice(2); if( 0 < args.length ) From 8ae3810dbabd97b6b4b6e96111b2fdcb26e6383a Mon Sep 17 00:00:00 2001 From: Vadim Tropashko Date: Mon, 29 Jan 2024 10:07:24 -0800 Subject: [PATCH 14/22] Issue 46 --- dist/quick-sql.js | 433 +++++++++++++++++++++-------------------- dist/quick-sql.umd.cjs | 90 ++++----- src/ddl.js | 1 + src/json2qsql.js | 4 +- src/tree.js | 12 +- test/small_tests.js | 17 +- 6 files changed, 292 insertions(+), 265 deletions(-) diff --git a/dist/quick-sql.js b/dist/quick-sql.js index 4678d18..ac3d8d5 100644 --- a/dist/quick-sql.js +++ b/dist/quick-sql.js @@ -13,8 +13,8 @@ function fe(d, h) { w = !0; else for (let b in k) { - const p = k[b]; - if (I.indexOf(p) < 0 && (p < "0" || "9" < p && p < "A" || "Z" < p && p < "a" || "z" < p)) { + const g = k[b]; + if (I.indexOf(g) < 0 && (g < "0" || "9" < g && g < "A" || "Z" < g && g < "a" || "z" < g)) { w = !0; break; } @@ -80,9 +80,9 @@ var le = function() { if (typeof k != "string" || I.substring(0, 2).toLowerCase() == "en") return k; k.indexOf("'") == 0 && (k = k.substring(1, k.length - 1)); - for (var b = -1, p = 0; p < d.length; p++) - if (d[p] == k) { - b = p; + for (var b = -1, g = 0; g < d.length; g++) + if (d[g] == k) { + b = g; break; } return 0 <= b && I.substring(0, 2).toLowerCase() == "jp" && b < h.length ? "'" + h[b] + "'" : 0 <= b && I.substring(0, 2).toLowerCase() == "kr" && b < x.length ? "'" + x[b] + "'" : k; @@ -95,7 +95,7 @@ function be(d) { var ie = { exports: {} }; (function(d, h) { (function() { - var x = 9007199254740992, w = -x, I = "0123456789", k = "abcdefghijklmnopqrstuvwxyz", b = k.toUpperCase(), p = I + "abcdef"; + var x = 9007199254740992, w = -x, I = "0123456789", k = "abcdefghijklmnopqrstuvwxyz", b = k.toUpperCase(), g = I + "abcdef"; function M(e) { this.name = "UnsupportedError", this.message = e || "This feature is not supported on this platform"; } @@ -250,10 +250,10 @@ var ie = { exports: {} }; return this.c; } }; - function g(e) { + function p(e) { this.c = e; } - g.prototype = { + p.prototype = { replacers: { "#": function(e) { return e.character({ pool: I }); @@ -283,7 +283,7 @@ var ie = { exports: {} }; m === "{" ? n = "replace" : m === "\\" ? n = "escape" : a.push(new s(m)); break; case "replace": - m === "}" ? n = "identity" : a.push(new g(m)); + m === "}" ? n = "identity" : a.push(new p(m)); break; } } @@ -1162,7 +1162,7 @@ var ie = { exports: {} }; return c; }, i.prototype.hash = function(e) { e = l(e, { length: 40, casing: "lower" }); - var a = e.casing === "upper" ? p.toUpperCase() : p; + var a = e.casing === "upper" ? g.toUpperCase() : g; return this.string({ pool: a, length: e.length }); }, i.prototype.luhn_check = function(e) { var a = e.toString(), n = +a.substring(a.length - 1); @@ -7213,7 +7213,7 @@ const ge = /* @__PURE__ */ be(pe); function se(d, h, x, w) { var I = new ge(te); x == null && console.log(); - let k = x.toUpperCase(), b = d.toUpperCase(), p = h.toUpperCase(); + let k = x.toUpperCase(), b = d.toUpperCase(), g = h.toUpperCase(); if (w != null && 0 < w.length) { let r = 0, t = w.length; var M = "'"; @@ -7221,26 +7221,26 @@ function se(d, h, x, w) { let o = w[Math.floor(X() * (t - r)) + r]; return o.toLowerCase && o.toLowerCase() == "null" && (M = ""), o.replaceAll && (o = o.replaceAll("'", "''")), M + o + M; } - if (p == "NAME" && 0 <= b.indexOf("DEPARTMENT")) { + if (g == "NAME" && 0 <= b.indexOf("DEPARTMENT")) { var B = ["Sales", "Finance", "Delivery", "Manufacturing"]; let r = 0, t = B.length; return "'" + B[Math.floor(X() * (t - r)) + r] + "'"; } - if (I[p.toLowerCase()] != null && p.indexOf("NAME") < 0) - return "'" + I[p.toLowerCase()]() + "'"; - if (p == "FIRST_NAME") + if (I[g.toLowerCase()] != null && g.indexOf("NAME") < 0) + return "'" + I[g.toLowerCase()]() + "'"; + if (g == "FIRST_NAME") return "'" + I.first() + "'"; - if (p == "LAST_NAME") + if (g == "LAST_NAME") return "'" + I.last() + "'"; - if (0 <= p.indexOf("NAME")) + if (0 <= g.indexOf("NAME")) return "'" + I.name() + "'"; - if (0 < p.indexOf("ADDRESS")) + if (0 < g.indexOf("ADDRESS")) return "'" + I.address() + "'"; - if (p == "LOCATION") + if (g == "LOCATION") return "'" + I.city() + "'"; - if (p == "DESCRIPTION") + if (g == "DESCRIPTION") return "'" + I.paragraph({ sentences: 2 }) + "'"; - if (p == "JOB") { + if (g == "JOB") { var i = ["Engineer", "Consultant", "Architect", "Manager", "Analyst", "Specialist", "Evangelist", "Salesman"]; let r = 0, t = i.length; return "'" + i[Math.floor(X() * (t - r)) + r] + "'"; @@ -7267,22 +7267,22 @@ function X() { var $ = function() { function d(h, x) { for (var w = [], I = "", k = 0; k < h.length; k++) { - for (var b = h.charAt(k), p = w.length, M = 0; M < x.length; M++) { + for (var b = h.charAt(k), g = w.length, M = 0; M < x.length; M++) { var B = x.charAt(M); if (b == B) { 0 < I.length && w.push(I), w.push(b), I = ""; continue; } } - p == w.length && (I = I + b); + g == w.length && (I = I + b); } return 0 < I.length && w.push(I), w; } return d; }(), Z = function() { - function d(I, k, b, p, M, B) { - this.type = p, this.value = I, this.begin = k, this.end = b, this.line = M, this.col = B, this.toString = function() { - return "{type:" + p + ",value:" + I + "}"; + function d(I, k, b, g, M, B) { + this.type = g, this.value = I, this.begin = k, this.end = b, this.line = M, this.col = B, this.toString = function() { + return "{type:" + g + ",value:" + I + "}"; }, this.isStandardLiteral = function() { if (this.value.length < 2 || !(this.value.charAt(0) == "'" || this.value.charAt(0) == "n" || this.value.charAt(0) == "N")) return !1; @@ -7319,14 +7319,14 @@ var $ = function() { } } function h(I, k, b) { - for (var p = [], M = `(){}[]^-|!*+.><='",;:%@?/\\#~` + b, B = ` + for (var g = [], M = `(){}[]^-|!*+.><='",;:%@?/\\#~` + b, B = ` \r `, i = $( I, //".*-+/|><=()\'\", \n\r\t" M + B ), l = 0, r = 0, t = 0, o = 0; o < i.length; o++) { var s = i[o], u = null; - if (p.length > 0 && (u = p[p.length - 1]), s == ` + if (g.length > 0 && (u = g[g.length - 1]), s == ` ` ? (r++, t = 0) : o > 0 && i[o - 1] !== ` ` ? t = t + i[o - 1].length : t = 0, l += s.length, u != null && u.type == "comment" && (u.value.lastIndexOf("*/") != u.value.length - 2 || u.value == "/*/")) { s == "*" || s == "/" ? u.value = u.value + s : u.value = "/* ... ", u.end = l, u != null && u.type == "comment" && u.value.lastIndexOf("*/") == u.value.length - 2 && u.value != "/*/" && (u.value = I.substring(u.begin, u.end)); @@ -7362,12 +7362,12 @@ var $ = function() { } if ((s.toUpperCase() == "REM" || s.toUpperCase() == "REMA" || s.toUpperCase() == "REMAR" || s.toUpperCase() == "REMARK" || s.toUpperCase() == "PRO" || s.toUpperCase() == "PROM" || s.toUpperCase() == "PROMP" || s.toUpperCase() == "PROMPT") && (u == null || u.value == ` ` || u.value == "\r")) { - p.push(new d(s, l - s.length, -9, "line-comment", r, t)); + g.push(new d(s, l - s.length, -9, "line-comment", r, t)); continue; } if (s.toUpperCase() == "SODA" && (u == null || u.value == ` ` || u.value == "\r")) { - p.push(new d(s, l - s.length, -9, "dbtools-command", r, t)); + g.push(new d(s, l - s.length, -9, "dbtools-command", r, t)); continue; } if (u != null && u.type == "identifier" && u.end == -11 && u.value.indexOf("@") == 0 && !(s == ` @@ -7377,56 +7377,56 @@ var $ = function() { } if (u != null && u.type == "identifier" && u.end == -11 && u.value.indexOf("@") == 0 && (s == ` ` || s == "\r")) { - u.end = l - 1, p.push(new d(s, l - 1, l, "ws", r, t)); + u.end = l - 1, g.push(new d(s, l - 1, l, "ws", r, t)); continue; } if (k && s == "'") { - u != null && (u.value.toUpperCase() == "Q" || u.value.toUpperCase() == "N" || u.value.toUpperCase() == "U" || u.value.toUpperCase() == "NQ") ? (u.value += s, u.type = "quoted-string") : p.push(new d(s, l - 1, -10, "quoted-string", r, t)); + u != null && (u.value.toUpperCase() == "Q" || u.value.toUpperCase() == "N" || u.value.toUpperCase() == "U" || u.value.toUpperCase() == "NQ") ? (u.value += s, u.type = "quoted-string") : g.push(new d(s, l - 1, -10, "quoted-string", r, t)); continue; } if (k && s == '"') { - p.push(new d(s, l - 1, -11, "dquoted-string", r, t)); + g.push(new d(s, l - 1, -11, "dquoted-string", r, t)); continue; } if (s == "`" && 0 <= M.indexOf("`")) { - p.push(new d(s, l - 1, -11, "bquoted-string", r, t)); + g.push(new d(s, l - 1, -11, "bquoted-string", r, t)); continue; } if (s.length == 1 && 0 <= M.indexOf(s)) { - p.push(new d(s, l - 1, l, "operation", r, t)); + g.push(new d(s, l - 1, l, "operation", r, t)); continue; } if (s.length == 1 && 0 <= B.indexOf(s)) { - p.push(new d(s, l - 1, l, "ws", r, t)); + g.push(new d(s, l - 1, l, "ws", r, t)); continue; } if ("0" <= s.charAt(0) && s.charAt(0) <= "9") { - x(s, p, l - s.length, r) || (s.charAt(s.length - 1) == "K" || s.charAt(s.length - 1) == "k" || s.charAt(s.length - 1) == "M" || s.charAt(s.length - 1) == "m" || s.charAt(s.length - 1) == "G" || s.charAt(s.length - 1) == "g" || s.charAt(s.length - 1) == "T" || s.charAt(s.length - 1) == "t" || s.charAt(s.length - 1) == "P" || s.charAt(s.length - 1) == "p" || s.charAt(s.length - 1) == "E" || s.charAt(s.length - 1) == "e" ? (p.push(new d(s.substring(0, s.length - 1), l - s.length, l - 1, "constant.numeric", r, t)), p.push(new d(s.substring(s.length - 1), l - 1, l, "constant.numeric", r, t))) : p.push(new d(s, l - s.length, l, "constant.numeric", r, t))); + x(s, g, l - s.length, r) || (s.charAt(s.length - 1) == "K" || s.charAt(s.length - 1) == "k" || s.charAt(s.length - 1) == "M" || s.charAt(s.length - 1) == "m" || s.charAt(s.length - 1) == "G" || s.charAt(s.length - 1) == "g" || s.charAt(s.length - 1) == "T" || s.charAt(s.length - 1) == "t" || s.charAt(s.length - 1) == "P" || s.charAt(s.length - 1) == "p" || s.charAt(s.length - 1) == "E" || s.charAt(s.length - 1) == "e" ? (g.push(new d(s.substring(0, s.length - 1), l - s.length, l - 1, "constant.numeric", r, t)), g.push(new d(s.substring(s.length - 1), l - 1, l, "constant.numeric", r, t))) : g.push(new d(s, l - s.length, l, "constant.numeric", r, t))); continue; } - var g = "identifier"; - o + 1 < i.length && i[o + 1], p.push(new d(s, l - s.length, l, g, r, t)); + var p = "identifier"; + o + 1 < i.length && i[o + 1], g.push(new d(s, l - s.length, l, p, r, t)); } } } - if (p.length > 0) { - var u = p[p.length - 1]; + if (g.length > 0) { + var u = g[g.length - 1]; u.end = I.length; } - return p; + return g; } - function x(I, k, b, p) { + function x(I, k, b, g) { if (0 > I.indexOf("e") && 0 > I.indexOf("f") && 0 > I.indexOf("d")) return !1; 0 <= I.indexOf("e"), 0 <= I.indexOf("e"), !(0 <= I.indexOf("e")) && 0 <= I.indexOf("f"); for (var M = $(I, "efd"), B = 0; B < M.length; B++) { var i = M[B]; - b += i.length, "0" <= i.charAt(0) && i.charAt(0) <= "9" ? k.push(new d(i, b - i.length, b, "constant.numeric", p)) : k.push(new d(i, b - i.length, b, "identifier", p)); + b += i.length, "0" <= i.charAt(0) && i.charAt(0) <= "9" ? k.push(new d(i, b - i.length, b, "constant.numeric", g)) : k.push(new d(i, b - i.length, b, "identifier", g)); } return !0; } - function w(I, k, b, p) { - for (var M = [], B = h(I, b, p), i = null, l = 0; l < B.length; l++) { + function w(I, k, b, g) { + for (var M = [], B = h(I, b, g), i = null, l = 0; l < B.length; l++) { var r = B[l]; if (r.type == "quoted-string") { if (i != null && i.type == "quoted-string") { @@ -7607,8 +7607,8 @@ let ce = function() { let S = T.parseName().length; 0 < T.indexOf("file") && (S += 9), r < S && (r = S); } - var g = d.additionalColumns(); - for (let T in g) { + var p = d.additionalColumns(); + for (let T in p) { let S = T.length; r < S && (r = S); } @@ -7642,8 +7642,8 @@ let ce = function() { return u[1]; } r = b(r, " d"); - var g = r.indexOf("/"); - 0 < g && (r = r.substring(0, g)), r = r.trim(), r = b(r, " integer"), r = b(r, " number"), r = b(r, " int"), r = b(r, " num"), r = b(r, " clob"), r = b(r, " blob"), r = b(r, " json"), r = b(r, " file"), r = b(r, " date"), r = b(r, " tstz"), r = b(r, " tswtz"), r = b(r, " tswltz"), r = b(r, " ts"), r = r.replace(/ vc\d+k/g, ""), r = r.replace(/ vc\(\d+\)/g, ""), r = r.replace(/ vc\d+/g, ""); + var p = r.indexOf("/"); + 0 < p && (r = r.substring(0, p)), r = r.trim(), r = b(r, " integer"), r = b(r, " number"), r = b(r, " int"), r = b(r, " num"), r = b(r, " clob"), r = b(r, " blob"), r = b(r, " json"), r = b(r, " file"), r = b(r, " date"), r = b(r, " tstz"), r = b(r, " tswtz"), r = b(r, " tswltz"), r = b(r, " ts"), r = r.replace(/ vc\d+k/g, ""), r = r.replace(/ vc\(\d+\)/g, ""), r = r.replace(/ vc\d+/g, ""); for (let S in x) { let E = s.indexOf(" " + x[S]); if (0 < E) { @@ -7672,65 +7672,65 @@ let ce = function() { if (this.parent == null) return "table"; var o = d.semantics(), s = 4e3; - (t[0].value.startsWith("name") || t[0].value.startsWith("email")) && (s = 255); + (t[0].value.endsWith("_name") || t[0].value.startsWith("name") || t[0].value.startsWith("email")) && (s = d.getOptionValue("namelen")); const u = this.indexOf("vc", !0); if (0 < u) { t[u].begin, t[u].end; let L = t[u].value.substring(2); L == "" && this.indexOf("(") == u + 1 && (L = t[u + 2].value), L != "" && (s = parseInt(L)), t[u].value.endsWith("k") && (s < 32 ? s = s * 1024 : s = s * 1024 - 1); } - var g = "varchar2(" + s + o + ")"; - r == "plsql" && (g = "varchar2"), t[0].value.endsWith("_id") && u < 0 && this.indexOf("date") < 0 && (g = "number"), t[1] && t[1].value == "id" && (g = "number"), t[0].value == "quantity" && (g = "number"), t[0].value.endsWith("id") && u < 0 && this.indexOf("/") + 1 == this.indexOf("pk") && (g = "number"), 0 < this.indexOf("int", !0) && (g = "integer"); + var p = "varchar2(" + s + o + ")"; + r == "plsql" && (p = "varchar2"), t[0].value.endsWith("_id") && u < 0 && this.indexOf("date") < 0 && (p = "number"), t[1] && t[1].value == "id" && (p = "number"), t[0].value == "quantity" && (p = "number"), t[0].value.endsWith("_number") && (p = "number"), t[0].value.endsWith("id") && u < 0 && this.indexOf("/") + 1 == this.indexOf("pk") && (p = "number"), 0 < this.indexOf("int", !0) && (p = "integer"), 0 < u && (p = "varchar2(" + s + o + ")", r == "plsql" && (p = "varchar2")); const T = K(i.parseName(), "_", this.parseName()); - (t[0].value.endsWith("_yn") || t[0].value.startsWith("is_")) && (g = "varchar2(1 char) constraint " + K(d.objPrefix(), T) + ` -`, g += h + h + " ".repeat(i.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"); + (t[0].value.endsWith("_yn") || t[0].value.startsWith("is_")) && (p = "varchar2(1 char) constraint " + K(d.objPrefix(), T) + ` +`, p += h + h + " ".repeat(i.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"); for (let L in w) if (0 < this.indexOf(w[L])) { - g = "varchar2(1 char) constraint " + K(d.objPrefix(), T) + ` -`, g += h + h + " ".repeat(i.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"; + p = "varchar2(1 char) constraint " + K(d.objPrefix(), T) + ` +`, p += h + h + " ".repeat(i.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"; break; } - this.indexOf("phone_number") == 0 && (g = "number"); + this.indexOf("phone_number") == 0 && (p = "number"); let S = this.indexOf("num", !0); - 0 < S && (g = "number"); + 0 < S && (p = "number"); let E = this.indexOf(")"); - if (0 < S && 0 < E && (g += this.content.toLowerCase().substring(t[S + 1].begin, t[E].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value.startsWith("created") || t[0].value.startsWith("updated")) && (g = d.getOptionValue("Date Data Type").toLowerCase()), u < 0 && (0 < this.indexOf("clob") && (g = "clob"), (0 < this.indexOf("blob") || 0 < this.indexOf("file")) && (g = "blob"), 0 < this.indexOf("json") && (g = "clob check (" + this.parseName() + " is json)")), 0 < this.indexOf("tswltz") ? g = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : 0 < this.indexOf("tswtz") || 0 < this.indexOf("tstz") ? g = "TIMESTAMP WITH TIME ZONE".toLowerCase() : 0 < this.indexOf("ts") && (g = "TIMESTAMP".toLowerCase()), r) { + if (0 < S && 0 < E && (p += this.content.toLowerCase().substring(t[S + 1].begin, t[E].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value.startsWith("created") || t[0].value.startsWith("updated")) && (p = d.getOptionValue("Date Data Type").toLowerCase()), u < 0 && (0 < this.indexOf("clob") && (p = "clob"), (0 < this.indexOf("blob") || 0 < this.indexOf("file")) && (p = "blob"), 0 < this.indexOf("json") && (p = "clob check (" + this.parseName() + " is json)")), 0 < this.indexOf("tswltz") ? p = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : 0 < this.indexOf("tswtz") || 0 < this.indexOf("tstz") ? p = "TIMESTAMP WITH TIME ZONE".toLowerCase() : 0 < this.indexOf("ts") && (p = "TIMESTAMP".toLowerCase()), r) { if (0 < this.indexOf("fk") || 0 < this.indexOf("reference", !0)) { const L = this.refId(); let N = "number"; - g == "integer" && (N = g); + p == "integer" && (N = p); let F = d.find(L); return F != null && F.getExplicitPkNode() != null && (N = F.getExplicitPkNode().parseType((R) => !0)), N; } - return g; + return p; } - 0 < this.indexOf("unique") && (g += ` -`, g += h + h + " ".repeat(i.maxChildNameLen()) + "constraint " + T + "_unq unique"); + 0 < this.indexOf("unique") && (p += ` +`, p += h + h + " ".repeat(i.maxChildNameLen()) + "constraint " + T + "_unq unique"); var D = "'"; - if ((g.startsWith("integer") || g.startsWith("number") || g.startsWith("date")) && (D = ""), 0 < this.indexOf("default")) { + if ((p.startsWith("integer") || p.startsWith("number") || p.startsWith("date")) && (D = ""), 0 < this.indexOf("default")) { const L = t[this.indexOf("default") + 1].value; - g += " default on null " + D + L + D; + p += " default on null " + D + L + D; } - if ((0 < this.indexOf("nn") || this.indexOf("not") + 1 == this.indexOf("null")) && this.indexOf("pk") < 0 && (g += " not null"), (0 < this.indexOf("hidden") || 0 < this.indexOf("invincible")) && (g += " invisible"), g += this.genConstraint(D), 0 < this.indexOf("between")) { + if ((0 < this.indexOf("nn") || this.indexOf("not") + 1 == this.indexOf("null")) && this.indexOf("pk") < 0 && (p += " not null"), (0 < this.indexOf("hidden") || 0 < this.indexOf("invincible")) && (p += " invisible"), p += this.genConstraint(D), 0 < this.indexOf("between")) { const L = this.indexOf("between"), N = t[L + 1].value + " and " + t[L + 3].value; - g += " constraint " + K(T, "_bet") + ` -`, g += " check (" + this.parseName() + " between " + N + ")"; + p += " constraint " + K(T, "_bet") + ` +`, p += " check (" + this.parseName() + " between " + N + ")"; } if (0 < this.indexOf("pk")) { let L = " not null"; - g.startsWith("number") && d.optionEQvalue("pk", "identityDataType") && (L = " GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), g.startsWith("number") && d.optionEQvalue("pk", "seq") && (L = " default on null " + (d.objPrefix() + this.parent.parseName()) + "_seq.NEXTVAL ".toLowerCase()), g.startsWith("number") && d.optionEQvalue("pk", "guid") && (L = " default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), g += L + ` -`, g += h + h + " ".repeat(i.maxChildNameLen()) + "constraint " + K(d.objPrefix(), T, "_pk") + " primary key"; + p.startsWith("number") && d.optionEQvalue("pk", "identityDataType") && (L = " GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), p.startsWith("number") && d.optionEQvalue("pk", "seq") && (L = " default on null " + (d.objPrefix() + this.parent.parseName()) + "_seq.NEXTVAL ".toLowerCase()), p.startsWith("number") && d.optionEQvalue("pk", "guid") && (L = " default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), p += L + ` +`, p += h + h + " ".repeat(i.maxChildNameLen()) + "constraint " + K(d.objPrefix(), T, "_pk") + " primary key"; } - return g; + return p; }, this.genConstraint = function(r) { let t = ""; if (0 < this.indexOf("check")) { let o = ""; i != null && (o = i.parseName() + "_"); - const s = K(o, this.parseName()), u = this.trimmedContent().toLowerCase(), g = u.indexOf("/check"); + const s = K(o, this.parseName()), u = this.trimmedContent().toLowerCase(), p = u.indexOf("/check"); let T = u.lastIndexOf("/"); - T == g && (T = u.length); - let S = this.trimmedContent().substr(g + 6, T - g - 6).trim(); + T == p && (T = u.length); + let S = this.trimmedContent().substr(p + 6, T - p - 6).trim(); const E = Z(S, !1, !0, ""); let D = h; i != null && (D = " ".repeat(i.maxChildNameLen())), this.children != null && 0 < this.children.length ? (E[0].value != "(" && (S = "( " + S + ")"), t += h + "constraint " + K(d.objPrefix(), s, "_ck"), t += " check " + S + `, @@ -7767,9 +7767,9 @@ let ce = function() { } if (0 <= r.indexOf("/BETWEEN")) { t = r.indexOf("/BETWEEN"), o = r.lastIndexOf("/"), o == t && (o = r.length), s = r.substr(t + 8, o - t - 8).trim(), s = s.replace(" AND ", " "); - for (var g = [], T = parseInt(s.split(" ")[0]); T <= parseInt(s.split(" ")[1]); T++) - g.push(T); - return g; + for (var p = [], T = parseInt(s.split(" ")[0]); T <= parseInt(s.split(" ")[1]); T++) + p.push(T); + return p; } return null; }, this.apparentDepth = function() { @@ -7829,12 +7829,12 @@ let ce = function() { `), o = o + "create table " + s + ` ( `; var u = h + " ".repeat(this.maxChildNameLen() - 2); - let g = this.getGenIdColName(); - if (g != null) { + let p = this.getGenIdColName(); + if (p != null) { let a = "not null"; - d.optionEQvalue("pk", "identityDataType") && (a = "GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), d.optionEQvalue("pk", "seq") && (a = "default on null " + s + "_seq.NEXTVAL ".toLowerCase()), d.optionEQvalue("pk", "guid") && (a = "default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), o += h + g + u + "number " + a + ` + d.optionEQvalue("pk", "identityDataType") && (a = "GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), d.optionEQvalue("pk", "seq") && (a = "default on null " + s + "_seq.NEXTVAL ".toLowerCase()), d.optionEQvalue("pk", "guid") && (a = "default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), o += h + p + u + "number " + a + ` `; - const n = K(d.objPrefix("no schema") + this.parseName(), "_", g); + const n = K(d.objPrefix("no schema") + this.parseName(), "_", p); o += h + h + " ".repeat(this.maxChildNameLen()) + "constraint " + K(n, "_pk") + ` primary key, `; } else { @@ -7875,7 +7875,7 @@ let ce = function() { } for (let a = 0; a < this.children.length; a++) { let n = this.children[a]; - if (!(g != null && n.parseName() == "id") && !(0 < n.children.length) && n.refId() == null) { + if (!(p != null && n.parseName() == "id") && !(0 < n.children.length) && n.refId() == null) { if (n == this.getExplicitPkNode()) continue; if (o += h + n.singleDDL() + `, @@ -7994,15 +7994,15 @@ let ce = function() { `; s += `select `; - for (var u = 0, g = 2; g < o.length; g++) { - let m = d.find(o[g]); + for (var u = 0, p = 2; p < o.length; p++) { + let m = d.find(o[p]); if (m == null) return ""; - var T = (o[g] + ".id").length; + var T = (o[p] + ".id").length; u < T && (u = T); for (var S = 0; S < m.children.length; S++) { var E = m.children[S]; - T = (o[g] + "." + E.parseName()).length, u < T && (u = T); + T = (o[p] + "." + E.parseName()).length, u < T && (u = T); } } var D = {}; @@ -8137,8 +8137,8 @@ end; end compress_int; `), o += `begin `; - var u = !1, g = "user"; - d.optionEQvalue("apex", "yes") && (g = "coalesce(sys_context('APEX$SESSION','APP_USER'),user)"), (d.optionEQvalue("rowkey", "yes") || 0 < s.indexOf("/ROWKEY")) && (o += ` if inserting then + var u = !1, p = "user"; + d.optionEQvalue("apex", "yes") && (p = "coalesce(sys_context('APEX$SESSION','APP_USER'),user)"), (d.optionEQvalue("rowkey", "yes") || 0 < s.indexOf("/ROWKEY")) && (o += ` if inserting then `, o += ` :new.row_key := compress_int(row_key_seq.nextval); `, o += ` end if; `, u = !0); @@ -8155,10 +8155,10 @@ end; `, o += ` end if; `, u = !0), (d.optionEQvalue("Audit Columns", "yes") || 0 < s.indexOf("/AUDITCOLS") || 0 < s.indexOf("/AUDIT COL")) && (o += ` if inserting then `, o += " :new." + d.getOptionValue("createdcol") + ` := SYSDATE; -`.toLowerCase(), o += " :new." + d.getOptionValue("createdbycol") + " := " + g + `; +`.toLowerCase(), o += " :new." + d.getOptionValue("createdbycol") + " := " + p + `; `.toLowerCase(), o += ` end if; `, o += " :new." + d.getOptionValue("updatedcol") + ` := SYSDATE; -`.toLowerCase(), o += " :new." + d.getOptionValue("updatedbycol") + " := " + g + `; +`.toLowerCase(), o += " :new." + d.getOptionValue("updatedbycol") + " := " + p + `; `.toLowerCase(), u = !0); var E = d.additionalColumns(); for (var D in E) { @@ -8187,9 +8187,9 @@ end; `, s += h + h + "P_" + u + " " + o + " " + S + t; } for (let T = 0; T < this.children.length; T++) { - var g = this.children[T]; - g.refId() == null && g.children.length == 0 && (s += `, -`, s += h + h + "P_" + g.parseName() + " " + o + " " + g.parseType("plsql") + t); + var p = this.children[T]; + p.refId() == null && p.children.length == 0 && (s += `, +`, s += h + h + "P_" + p.parseName() + " " + o + " " + p.parseType("plsql") + t); } return s += ` )`, s; @@ -8213,14 +8213,14 @@ end; `), o += L; } for (var u = 0; u < this.children.length; u++) { - var g = this.children[u]; - if (g.refId() != null || g.children.length != 0) + var p = this.children[u]; + if (p.refId() != null || p.children.length != 0) continue; (r == "insert" || r == "update") && (o += `, `); - let S = h + h + h + "P_" + g.parseName().toLowerCase() + " := c1." + g.parseName().toLowerCase() + `; + let S = h + h + h + "P_" + p.parseName().toLowerCase() + " := c1." + p.parseName().toLowerCase() + `; `; - r == "insert" && (S = h + h + h + g.parseName().toLowerCase()), r == "update" && (S = h + h + h + g.parseName().toLowerCase() + " = P_" + g.parseName().toLowerCase() + ` + r == "insert" && (S = h + h + h + p.parseName().toLowerCase()), r == "update" && (S = h + h + h + p.parseName().toLowerCase() + " = P_" + p.parseName().toLowerCase() + ` `), o += S; } if (r == "insert") { @@ -8295,15 +8295,15 @@ is const t = this.inserts4tbl(r), o = this.orderedTableNodes(); let s = ""; for (let u = 0; u < o.length; u++) { - const g = t[o[u].parseName()]; - g != null && (s += g); + const p = t[o[u].parseName()]; + p != null && (s += p); } return s; }, this.inserts4tbl = function(r) { let t = {}; if (d.optionEQvalue("inserts", !1)) return ""; - let o = d.objPrefix() + this.parseName(), s = "", u = null, g = null; + let o = d.objPrefix() + this.parseName(), s = "", u = null, p = null; for (let S = 0; S < this.cardinality(); S++) { let E = null; if (r != null) { @@ -8339,14 +8339,14 @@ is `) == s.length - 2 && (s = s.substr(0, s.length - 2) + ` `), s += `) values ( `, D != null) - g = S + 1, s += h + g + `, + p = S + 1, s += h + p + `, `; else { let L = this.getExplicitPkNode(); if (L != null) { const N = L.parseName(); - let F = p(d.data, null, N, this.parseName()), R = -1; - E != null && (R = E[N]), F != null && F[S] != null && (R = F[S]), R.replaceAll && (R = "'" + R + "'"), g = R != -1 ? R : S + 1, s += h + g + `, + let F = g(d.data, null, N, this.parseName()), R = -1; + E != null && (R = E[N]), F != null && F[S] != null && (R = F[S]), R.replaceAll && (R = "'" + R + "'"), p = R != -1 ? R : S + 1, s += h + p + `, `; } } @@ -8362,7 +8362,7 @@ is const e = o + "_" + N, a = d.data[e]; if (a != null) { for (const n in a) - if (a[n][o + "_id"] == g) { + if (a[n][o + "_id"] == p) { const c = a[n][L]; c != null && (typeof c == "string" && (H = "STRING"), R = [], R[0] = c); break; @@ -8427,17 +8427,17 @@ modify ` + T + " generated always as identity restart start with " + (this.card this.getExplicitPkNode == null && (o += r + "'" + this.getGenIdColName() + "' : " + t + "." + this.getGenIdColName() + `, `); for (var s = 0; s < this.children.length; s++) { - var u = this.children[s], g = u.parseName(); + var u = this.children[s], p = u.parseName(); if (u.children.length == 0) { - if (this.hasNonArrayChildId(g)) + if (this.hasNonArrayChildId(p)) continue; - o += r + "'" + g + "' : " + t + "." + g; + o += r + "'" + p + "' : " + t + "." + p; } else { - if (o += r + "'" + g + `' : [ + if (o += r + "'" + p + `' : [ `, u.isMany2One(), r += " ", o += r + `select JSON { `, this.isMany2One()) throw new Error(this.one2many2oneUnsupoported); - o += u.generateSelectJsonTopDown(r + " "), o += r + " WITH NOCHECK } from " + g + ` with INSERT UPDATE + o += u.generateSelectJsonTopDown(r + " "), o += r + " WITH NOCHECK } from " + p + ` with INSERT UPDATE `; let E = null; for (var T in u.fks) { @@ -8447,7 +8447,7 @@ modify ` + T + " generated always as identity restart start with " + (this.card break; } } - const D = t + "." + this.getPkName(), L = g + "." + E; + const D = t + "." + this.getPkName(), L = p + "." + E; o += r + "where " + L + " = " + D + ` `, r = r.slice(0, -2), o += r + "]"; } @@ -8479,8 +8479,8 @@ modify ` + T + " generated always as identity restart start with " + (this.card let t = null, o = "", s = 0; e: for (let u in r) { - const g = r[u]; - if (g.value == ` + const p = r[u]; + if (p.value == ` ` && t == null) { if (o = o.replace(/\r/g, ""), o.replace(/\r/g, "").replace(/ /g, "") == "") { o = "", s++; @@ -8513,13 +8513,13 @@ modify ` + T + " generated always as identity restart start with " + (this.card s++, o = ""; continue; } - if (t == null && g.value == "#") { + if (t == null && p.value == "#") { t = ""; continue; } if (t != null) { - if (t += g.value, g.value != ` -` && g.value != "}") + if (t += p.value, p.value != ` +` && p.value != "}") continue; const T = Z(t, !1, !0, ""); if (T.length % 4 == 3 && T[1].value == ":") { @@ -8557,12 +8557,12 @@ modify ` + T + " generated always as identity restart start with " + (this.card } } } - if (g.type != "comment") { - if (g.type == "line-comment") { - 0 < o.trim().length && (o += g.value); + if (p.type != "comment") { + if (p.type == "line-comment") { + 0 < o.trim().length && (o += p.value); continue; } - o += g.value; + o += p.value; } } return l; @@ -8571,7 +8571,7 @@ modify ` + T + " generated always as identity restart start with " + (this.card let i = B.toLowerCase(); return 0 < M.indexOf(i) && M.indexOf(i) == M.length - i.length ? M.substring(0, M.length - i.length) : M.trim(); } - function p(M, B, i, l) { + function g(M, B, i, l) { let r = []; if (M == null || typeof M != "object") return null; @@ -8579,7 +8579,7 @@ modify ` + T + " generated always as identity restart start with " + (this.card t != null && B == l && r.push(t); for (var o in M) { let s = M[o]; - t = p(s, o, i, l), t != null && (r = r.concat(t)); + t = g(s, o, i, l), t != null && (r = r.concat(t)); } return r; } @@ -8638,7 +8638,7 @@ var Ae = function() { return !1; } function b(i) { - if (typeof i != "object") + if (i == null || typeof i != "object") return ""; let l = "("; for (let r in i) { @@ -8648,7 +8648,7 @@ var Ae = function() { } return l.lastIndexOf(",") == l.length - 1 && (l = l.substring(0, l.length - 1)), l + ")"; } - function p(i, l) { + function g(i, l) { let r = i.indexOf("("); return 0 < r && (i = i.substring(0, r)), r = l.indexOf("("), 0 < r && (l = l.substring(0, r)), i + "_" + l + "(" + i + "_id," + l + "_id)"; } @@ -8665,8 +8665,8 @@ var Ae = function() { #flattened = `; const u = {}; - for (const g in o.tableContent) - u[o.tableName(g)] = o.tableContent[g]; + for (const p in o.tableContent) + u[o.tableName(p)] = o.tableContent[p]; return s += JSON.stringify(u, null, 3), s += ` `, s += ` @@ -8679,11 +8679,11 @@ var Ae = function() { function B() { this.tableContent = {}, this.notNormalized = [], this.tableSignatures = [], this.child2parent = {}, this.objCounts = {}, this.output = function(i, l, r, t) { if (t != !1 && this.notNormalized.includes(i)) { - const u = p(this.parent(i), i), g = this.tableContent[u]; - if (g != null) { + const u = g(this.parent(i), i), p = this.tableContent[u]; + if (p != null) { let T = ` -` + d(r) + this.tableName(u) + " /insert " + g.length; - if (g[0], k(g, this.refIdName(this.parent(i)), this.refIdName(i))) +` + d(r) + this.tableName(u) + " /insert " + p.length; + if (p[0], k(p, this.refIdName(this.parent(i)), this.refIdName(i))) return T += this.output(i, l, r + 1, !1), T; } } @@ -8695,26 +8695,26 @@ var Ae = function() { return ` ` + d(r) + "id vc32 /pk"; e: - if (typeof l == "object") { + if (l != null && typeof l == "object") { if (Array.isArray(l)) - for (const g in l) { - 1 <= g && console.log("1 <= property !"); - const T = l[g]; + for (const p in l) { + 1 <= p && console.log("1 <= property !"); + const T = l[p]; o = this.output(i, T, r, t); break e; } else i != "" && (this.tableContent[i] == null && console.log(), o += " /insert " + this.tableContent[i].length); let u = ""; - for (let g in l) { - const T = l[g]; - if (g != null) { - const E = W(i), D = g.toLowerCase(); - if (i != null && E + "_id" == D && 0 < r && (u = g), E + "_id" == D) + for (let p in l) { + const T = l[p]; + if (p != null) { + const E = W(i), D = p.toLowerCase(); + if (i != null && E + "_id" == D && 0 < r && (u = p), E + "_id" == D) continue; } this.tableSignatures.includes(i) || (o = "", r--); - const S = this.output(g + b(T), T, r + 1); + const S = this.output(p + b(T), T, r + 1); o += S; } u != "" && (o += ` @@ -8725,13 +8725,13 @@ var Ae = function() { let t = {}; for (let u in l) if (l[u] != null && typeof l[u] == "object") { - let g = i, T = r; + let p = i, T = r; if (isNaN(u)) { - g = u + b(l[u]); + p = u + b(l[u]); const S = x(t); S != null && (T = S); } - this.flatten(g, l[u], T); + this.flatten(p, l[u], T); } else t[u] = l[u]; !this.notNormalized.includes(i) && r != null && Object.keys(t).length && (t[r.key] = r.value); @@ -8741,13 +8741,13 @@ var Ae = function() { if (s == null && (s = []), h(s, t) || s.push(t), this.notNormalized.includes(i)) { const u = this.parent(i); if (u != null) { - const g = p(u, i); - let T = this.tableContent[g]; + const p = g(u, i); + let T = this.tableContent[p]; T == null && (T = []); const S = {}; S[this.refIdName(u)] = r.value; let E = x(t); - E == null && (t.id = this.idSeq++, E = x(t)), S[this.refIdName(i)] = E.value, T.push(S), this.tableContent[g] = T; + E == null && (t.id = this.idSeq++, E = x(t)), S[this.refIdName(i)] = E.value, T.push(S), this.tableContent[p] = T; } } this.tableContent[i] = s; @@ -8760,8 +8760,8 @@ var Ae = function() { let o = !1; for (let u in l) if (l[u] != null && typeof l[u] == "object") { - let g = i; - isNaN(u) && (g = u + b(l[u])), g != i && (this.child2parent[g] = i), this.duplicatesAndParents(g, l[u]), o = !0; + let p = i; + isNaN(u) && (p = u + b(l[u])), p != i && (this.child2parent[p] = i), this.duplicatesAndParents(p, l[u]), o = !0; } w(l) && !this.tableSignatures.includes(i) && this.tableSignatures.push(i), o || (this.objCounts[r] = t + 1), 1 < this.objCounts[r] && !this.notNormalized.includes(i) && this.notNormalized.push(i); }, this.parent = function(i) { @@ -8785,22 +8785,22 @@ var Ae = function() { return M; }(); const ye = function() { - function d(b, p, M, B) { - this.from = p, this.to = M, M == null && (this.to = new h(p.line, p.depth + 1)), this.message = b, this.severity = B, B == null && (this.severity = "error"); + function d(b, g, M, B) { + this.from = g, this.to = M, M == null && (this.to = new h(g.line, g.depth + 1)), this.message = b, this.severity = B, B == null && (this.severity = "error"); } - function h(b, p) { - this.line = b, this.depth = p; + function h(b, g) { + this.line = b, this.depth = g; } function x(b) { - const p = b, M = b.input; + const g = b, M = b.input; let B = []; const i = M.split(` `); B = B.concat(k(i)); - const l = p.descendants(); + const l = g.descendants(); for (let r = 0; r < l.length; r++) { const t = l[r]; - if (p.optionEQvalue("genpk", !0) && l[r].parseName() == "id") { + if (g.optionEQvalue("genpk", !0) && l[r].parseName() == "id") { const u = t.content.toLowerCase().indexOf("id"); B.push(new d(j.duplicateId, new h(t.line, u))); continue; @@ -8817,13 +8817,13 @@ const ye = function() { B.push(new d(j.invalidDatatype, new h(t.line, u))); continue; } - B = B.concat(w(p, t)), B = B.concat(I(p, t)); + B = B.concat(w(g, t)), B = B.concat(I(g, t)); } return B; } - function w(b, p) { - var M = [], B = p.content.toLowerCase(); - if (p.parseType() == "view") { + function w(b, g) { + var M = [], B = g.content.toLowerCase(); + if (g.parseType() == "view") { var i = $(B, " "); let t = 0; for (var l = 0; l < i.length; l++) @@ -8831,14 +8831,14 @@ const ye = function() { var r = b.find(i[l]); r == null && M.push(new d( j.undefinedObject + i[l], - new h(p.line, t - i[l].length) + new h(g.line, t - i[l].length) )); } } return M; } - function I(b, p) { - var M = [], B = p.content.toLowerCase(); + function I(b, g) { + var M = [], B = g.content.toLowerCase(); if (0 < B.indexOf("/fk") || 0 < B.indexOf("/reference")) { let r = $(B, " "), t = 0, o = !1; for (var i = 0; i < r.length; i++) @@ -8852,7 +8852,7 @@ const ye = function() { if (l == null) { M.push(new d( j.undefinedObject + r[i], - new h(p.line, t - r[i].length) + new h(g.line, t - r[i].length) )); break; } @@ -8862,16 +8862,16 @@ const ye = function() { return M; } function k(b) { - for (var p = [], M = Se(b), B = 1; B < b.length; B++) { + for (var g = [], M = Se(b), B = 1; B < b.length; B++) { var i = b[B - 1], l = b[B], r = re(i), t = re(l); - t != 0 && r < t && t < r + M && p.push( + t != 0 && r < t && t < r + M && g.push( new d( j.misalignedAttribute + M, new h(B, t) ) ); } - return p; + return g; } return x; }(); @@ -8883,10 +8883,10 @@ function Se(d) { } let I = []; for (let b = 0; b < h.length; b++) { - let p = Me(h, b); - if (p != null) { - let M = I[h[b] - h[p]]; - M == null && (M = 0), I[h[b] - h[p]] = M + 1; + let g = Me(h, b); + if (g != null) { + let M = I[h[b] - h[g]]; + M == null && (M = 0), I[h[b] - h[g]] = M + 1; } } let k = null; @@ -8938,6 +8938,7 @@ const j = { inserts: { label: "Generate Inserts", value: !0, check: ["yes", "no"] }, //longvc: {label: 'Longer Varchars', value:'yes',check:['yes','no']}, // not used, if a user specified the length, presumably he knows what he is doing //columnNamePrefix: "?", + namelen: { label: "Name Character Length", value: 255 }, overridesettings: { label: "Ignore toDDL() second parameter", value: "no", check: ["yes", "no"] }, prefix: { label: "Object Prefix", value: "" }, //ondelete: {label: 'On Delete', value:'Cascade',check:['restrict','cascade','set null']}, @@ -8959,47 +8960,47 @@ const j = { } function x(w, I) { this.ddl = null, this.erd = null, this.errors = null, this.options = JSON.parse(JSON.stringify(d)), this.input = w, this.getOptionValue = function(b) { - const p = b.toLowerCase(); - let M = this.options[p]; - if (!(p in this.options)) + const g = b.toLowerCase(); + let M = this.options[g]; + if (!(g in this.options)) for (let B in this.options) { const i = this.options[B].label; if (i == null) continue; - i.toLowerCase() == p && (M = this.options[B]); + i.toLowerCase() == g && (M = this.options[B]); } return M == null ? null : M.value; - }, this.optionEQvalue = function(b, p) { + }, this.optionEQvalue = function(b, g) { var M = this.getOptionValue(b); - return h(M) == h(p); + return h(M) == h(g); }, this.nonDefaultOptions = function() { let b = {}; - for (let p in this.options) - d[p] && !this.optionEQvalue(p, d[p].value) && (b[p] = this.options[p].value); + for (let g in this.options) + d[g] && !this.optionEQvalue(g, d[g].value) && (b[g] = this.options[g].value); return b; }, this.unknownOptions = function() { let b = []; - for (let p in this.options) - d[p] == null && b.push(p); + for (let g in this.options) + d[g] == null && b.push(g); return b; - }, this.setOptionValue = function(b, p) { + }, this.setOptionValue = function(b, g) { let M = b.toLowerCase(); if (!(M in this.options)) { for (let i in this.options) if (this.options[i].label == b) { - this.options[i].value = p; + this.options[i].value = g; return; } } - p == null && (p = ""); + g == null && (g = ""); let B = this.options[M]; - B == null && (B = {}, this.options[M] = B), B.value = p; + B == null && (B = {}, this.options[M] = B), B.value = g; }, this.semantics = function() { var b = ""; return this.optionEQvalue("semantics", "CHAR") ? b = " char" : this.optionEQvalue("semantics", "BYTE") && (b = " byte"), b; }, this.find = function(b) { - for (var p = 0; p < this.forest.length; p++) - for (var M = this.forest[p].descendants(), B = 0; B < M.length; B++) { + for (var g = 0; g < this.forest.length; g++) + for (var M = this.forest[g].descendants(), B = 0; B < M.length; B++) { var i = M[B]; if (i.parseName() == he(b)) return i; @@ -9007,8 +9008,8 @@ const j = { return null; }, this.setOptions = function(b) { b = b.trim(), b.startsWith("#") && (b = b.substring(1).trim()); - const p = b.indexOf("="); - let M = b.substring(p + 1).trim(); + const g = b.indexOf("="); + let M = b.substring(g + 1).trim(); M.indexOf("{") < 0 && (M = "{" + b + "}"); let B = "", i = Z(M, !0, !0, ""); for (let r in i) { @@ -9019,23 +9020,23 @@ const j = { for (let r in l) this.setOptionValue(r.toLowerCase(), l[r]); }, this.descendants = function() { - for (var b = [], p = 0; p < this.forest.length; p++) - b = b.concat(this.forest[p].descendants()); + for (var b = [], g = 0; g < this.forest.length; g++) + b = b.concat(this.forest[g].descendants()); return b; }, this.additionalColumns = function() { - var b = [], p = this.getOptionValue("Auxiliary Columns"); - if (p == null) + var b = [], g = this.getOptionValue("Auxiliary Columns"); + if (g == null) return b; - for (var M = p.split(","), B = 0; B < M.length; B++) { + for (var M = g.split(","), B = 0; B < M.length; B++) { var i = M[B].trim(), l = "VARCHAR2(4000)", r = i.indexOf(" "); 0 < r && (l = i.substring(r + 1).toUpperCase(), i = i.substring(0, r)), b[i] = l; } return b; }, this.objPrefix = function(b) { - var p = this.getOptionValue("schema"); - p == null && (p = ""), p != "" && b == null ? p = p + "." : p = ""; + var g = this.getOptionValue("schema"); + g == null && (g = ""), g != "" && b == null ? g = g + "." : g = ""; var M = ""; - return this.getOptionValue("prefix") != null && (M = this.getOptionValue("prefix")), p = p + M, M != "" && (p = p + "_"), p.toLowerCase(); + return this.getOptionValue("prefix") != null && (M = this.getOptionValue("prefix")), g = g + M, M != "" && (g = g + "_"), g.toLowerCase(); }; let k = ""; 0 < w.toLowerCase().indexOf("overridesettings") && ce(this), I != null && this.optionEQvalue("overrideSettings", !1) && (k = "# settings = " + I + ` @@ -9043,19 +9044,19 @@ const j = { `), this.input = k + w, this.forest = ce(this), this.getERD = function() { if (this.erd != null) return this.erd; - let b = this.descendants(), p = { items: [] }; + let b = this.descendants(), g = { items: [] }; for (let i = 0; i < b.length; i++) { if (b[i].parseType() != "table") continue; let l = { name: this.objPrefix("no schema") + b[i].parseName("") }, r = this.getOptionValue("schema"); - r == "" && (r = null), l.schema = r, l.columns = [], p.items.push(l); + r == "" && (r = null), l.schema = r, l.columns = [], g.items.push(l); let t = b[i].getGenIdColName(); t != null && l.columns.push({ name: t, datatype: "number" }); for (let s = 0; s < b[i].children.length; s++) { let u = b[i].children[s]; - if (u.parseType() != "table" && (l.columns.push({ name: u.parseName(""), datatype: u.parseType((g) => !0) }), 0 < u.indexOf("file"))) { - const g = u.parseName(); - l.columns.push({ name: g + "_filename", datatype: "varchar2(255" + this.semantics() + ")" }), l.columns.push({ name: g + "_mimetype", datatype: "varchar2(255" + this.semantics() + ")" }), l.columns.push({ name: g + "_charset", datatype: "varchar2(255" + this.semantics() + ")" }), l.columns.push({ name: g + "_lastupd", datatype: "date" }); + if (u.parseType() != "table" && (l.columns.push({ name: u.parseName(""), datatype: u.parseType((p) => !0) }), 0 < u.indexOf("file"))) { + const p = u.parseName(); + l.columns.push({ name: p + "_filename", datatype: "varchar2(255" + this.semantics() + ")" }), l.columns.push({ name: p + "_mimetype", datatype: "varchar2(255" + this.semantics() + ")" }), l.columns.push({ name: p + "_charset", datatype: "varchar2(255" + this.semantics() + ")" }), l.columns.push({ name: p + "_lastupd", datatype: "date" }); } } const o = b[i].trimmedContent().toUpperCase(); @@ -9064,8 +9065,8 @@ const j = { l.columns.push({ name: s, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); let u = this.getOptionValue("createdbycol"); l.columns.push({ name: u, datatype: "varchar2(255" + this.semantics() + ")" }); - let g = this.getOptionValue("updatedcol"); - l.columns.push({ name: g, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); + let p = this.getOptionValue("updatedcol"); + l.columns.push({ name: p, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); let T = this.getOptionValue("updatedbycol"); l.columns.push({ name: T, datatype: "varchar2(255" + this.semantics() + ")" }); } @@ -9076,7 +9077,7 @@ const j = { `; } } - p.links = []; + g.links = []; for (let i = 0; i < b.length; i++) if (b[i].parseType() == "table") { b[i].toDDL(); @@ -9085,7 +9086,7 @@ const j = { if (t == null) continue; let o = "id"; - t.getExplicitPkNode() != null && (o = t.getExplicitPkNode().parseName()), p.links.push({ + t.getExplicitPkNode() != null && (o = t.getExplicitPkNode().parseName()), g.links.push({ source: this.objPrefix() + r, source_id: o, target: this.objPrefix() + b[i].parseName(""), @@ -9093,14 +9094,14 @@ const j = { }); } } - return this.erd = p, p; + return this.erd = g, g; }, this.getDDL = function() { if (this.ddl != null) return this.ddl; - var b = "", p = this.descendants(); + var b = "", g = this.descendants(); if (this.optionEQvalue("Include Drops", "yes")) - for (let i = 0; i < p.length; i++) { - let l = p[i].generateDrop(); + for (let i = 0; i < g.length; i++) { + let l = g[i].generateDrop(); l != "" && (b += l); } if (this.optionEQvalue("rowkey", !0)) @@ -9122,23 +9123,23 @@ const j = { b += this.forest[i].toDDL() + ` `; let M = 0; - for (let i = 0; i < p.length; i++) { - let l = p[i].generateTrigger(); + for (let i = 0; i < g.length; i++) { + let l = g[i].generateTrigger(); l != "" && (M++ == 0 && (b += `-- triggers `), b += l + ` `); } M = 0; - for (let i = 0; i < p.length; i++) { - let l = p[i].restEnable(); + for (let i = 0; i < g.length; i++) { + let l = g[i].restEnable(); l != "" && (b += l + ` `); } M = 0; - for (let i = 0; i < p.length; i++) { - if (this.optionEQvalue("api", !1) && p[i].trimmedContent().toLowerCase().indexOf("/api") < 0) + for (let i = 0; i < g.length; i++) { + if (this.optionEQvalue("api", !1) && g[i].trimmedContent().toLowerCase().indexOf("/api") < 0) continue; - let l = p[i].generateTAPI(); + let l = g[i].generateTAPI(); l != "" && (M++ == 0 && (b += `-- APIs `), b += l + ` `); diff --git a/dist/quick-sql.umd.cjs b/dist/quick-sql.umd.cjs index 37ef115..9fbe078 100644 --- a/dist/quick-sql.umd.cjs +++ b/dist/quick-sql.umd.cjs @@ -1,33 +1,33 @@ -(function(V,W){typeof exports=="object"&&typeof module<"u"?W(exports):typeof define=="function"&&define.amd?define(["exports"],W):(V=typeof globalThis<"u"?globalThis:V||self,W(V.quickSQL={}))})(this,function(V){"use strict";function W(d){return d==null?d:d.toUpperCase().endsWith("IES")?d.substring(0,d.length-3)+"y":d.toUpperCase().endsWith("ES")||d.toUpperCase().endsWith("S")?d.substring(0,d.length-1):d}function ve(d,h){let k='"';if(d==null)return null;let w=!1;const I="$#_ ";if(!d.startsWith(k)&&!w){const x=d;if(x.length>0&&"0"<=x[0]&&x[0]<="9")w=!0;else for(let b in x){const p=x[b];if(I.indexOf(p)<0&&(p<"0"||"9""u"&&(e[n]=a[n]);return e}function r(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var o=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?o=btoa:typeof Buffer=="function"&&(o=function(a){return new Buffer(a).toString("base64")})})(),i.prototype.bool=function(e){return e=l(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100c,"Chance: Max specified is out of range with fixed. Max should be, at most, "+c),e=l(e,{min:m,max:c}),a=this.integer({min:e.min*n,max:e.max*n});var C=(a/n).toFixed(e.fixed);return parseFloat(C)},i.prototype.integer=function(e){return e=l(e,{min:w,max:k}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},i.prototype.natural=function(e){if(e=l(e,{min:0,max:k}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),c=e.exclude.sort();for(var m in c){if(ne.max,"Chance: Min cannot be greater than Max.");var a=E.primes[E.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&E.primes.push(n);var c=E.primes.filter(function(m){return m>=e.min&&m<=e.max});return this.pick(c)},i.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},i.prototype.hex=function(e){e=l(e,{min:0,max:k,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},i.prototype.letter=function(e){e=l(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},i.prototype.string=function(e){e=l(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function s(e){this.c=e}s.prototype={substitute:function(){return this.c}};function u(e){this.c=e}u.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function g(e){this.c=e}g.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:b})},a:function(e){return e.character({pool:x})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function T(e){for(var a=[],n="identity",c=0;c"u")throw new M("Sorry, the buffer() function is not supported on your platform");e=l(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},i.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},i.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},i.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var c=function(y,_){return y.indexOf(_)!==-1};n&&(c=n.comparator||c);for(var m=[],C=0,P,f=a*50,A=B.call(arguments,2);m.lengthf)throw new RangeError("Chance: num is likely too large for sample set")}return m},i.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,c=[],m=B.call(arguments,2);for(n=Math.max(0,n),null;n--;null)c.push(e.apply(this,m));return c},i.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},i.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},i.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},i.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),c=n.length;return this.n(function(){var m=this.natural({max:--c}),C=n[m];return n[m]=n[c],C},Math.min(c,a))},i.prototype.shuffle=function(e){for(var a=[],n=0,c=Number(e.length),m=r(c),C=c-1,P,f=0;f0&&(c+=m)}if(c===0)throw new RangeError("Chance: No valid entries in array weights");var P=this.random()*c,f=0,A=-1,v;for(C=0;C0){if(P<=f){v=C;break}A=C}C===a.length-1&&(v=A)}var y=e[v];return n=typeof n>"u"?!1:n,n&&(e.splice(v,1),a.splice(v,1)),y},i.prototype.paragraph=function(e){e=l(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),c=e.linebreak===!0?` -`:" ";return n.join(c)},i.prototype.sentence=function(e){e=l(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,c,m=this.n(this.word,a);return c=m.join(" "),c=this.capitalize(c),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(c+=n),c},i.prototype.syllable=function(e){e=l(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",c="aeiou",m=n+c,C="",P,f=0;fe.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var P=e.minAge!==void 0?e.minAge:0,f=e.maxAge!==void 0?e.maxAge:100,A=new Date(c-f-1,n.getMonth(),n.getDate()),v=new Date(c-P,n.getMonth(),n.getDate());A.setDate(A.getDate()+1),v.setDate(v.getDate()+1),v.setMilliseconds(v.getMilliseconds()-1),e=l(e,{min:A,max:v})}else e=l(e,{year:c-a});return this.date(e)},i.prototype.cpf=function(e){e=l(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var c=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;c=11-c%11,c>=10&&(c=0);var m=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},i.prototype.cnpj=function(e){e=l(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var c=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;c=11-c%11,c<2&&(c=0);var m=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},i.prototype.first=function(e){return e=l(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},i.prototype.profession=function(e){return e=l(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},i.prototype.company=function(){return this.pick(this.get("company"))},i.prototype.gender=function(e){return e=l(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},i.prototype.last=function(e){if(e=l(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(c){a=a.concat(n[c])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},i.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},i.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},i.prototype.tld=function(){return this.pick(this.tlds())},i.prototype.twitter=function(){return"@"+this.word()},i.prototype.url=function(e){e=l(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},i.prototype.port=function(){return this.integer({min:0,max:65535})},i.prototype.locale=function(e){return e=l(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},i.prototype.locales=function(e){return e=l(e),e.region?this.get("locale_regions"):this.get("locale_languages")},i.prototype.loremPicsum=function(e){e=l(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},i.prototype.address=function(e){return e=l(e),this.natural({min:5,max:2e3})+" "+this.street(e)},i.prototype.altitude=function(e){return e=l(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},i.prototype.areacode=function(e){e=l(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},i.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},i.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},i.prototype.countries=function(){return this.get("countries")},i.prototype.country=function(e){e=l(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},i.prototype.depth=function(e){return e=l(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},i.prototype.geohash=function(e){return e=l(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},i.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},i.prototype.latitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=l(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},i.prototype.longitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=l(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},i.prototype.phone=function(e){var a=this,n,c=function(_){var O=[];return _.sections.forEach(function(z){O.push(a.string({pool:"0123456789",length:z}))}),_.area+O.join(" ")};e=l(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var m;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),m=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),m=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n);break;case"us":var C=this.areacode(e).toString(),P=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),f=this.natural({min:1e3,max:9999}).toString();m=e.formatted?C+" "+P+"-"+f:C+P+f;break;case"br":var A=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),v;e.mobile?v="9"+a.string({pool:"0123456789",length:4}):v=this.natural({min:2e3,max:5999}).toString();var y=a.string({pool:"0123456789",length:4});m=e.formatted?"("+A+") "+v+"-"+y:A+v+y;break}return m},i.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},i.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",c=e+a+n,m=this.natural({max:9}),C=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),P=m+C;return c+" "+P},i.prototype.counties=function(e){return e=l(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},i.prototype.county=function(e){return this.pick(this.counties(e)).name},i.prototype.provinces=function(e){return e=l(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},i.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},i.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},i.prototype.states=function(e){e=l(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),c=this.get("territories"),m=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(c)),e.armed_forces&&(a=a.concat(m));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},i.prototype.street=function(e){e=l(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},i.prototype.street_suffix=function(e){return e=l(e,{country:"us"}),this.pick(this.street_suffixes(e))},i.prototype.street_suffixes=function(e){return e=l(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},i.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},i.prototype.ampm=function(){return this.bool()?"am":"pm"},i.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=l(e,{american:!0,string:!1});var c=typeof e.min<"u"?e.min.getTime():1,m=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:c,max:m}))}else{var C=this.month({raw:!0}),P=C.days;e&&e.month&&(P=this.get("months")[(e.month%12+12)%12].days),e=l(e,{year:parseInt(this.year(),10),month:C.numeric-1,day:this.natural({min:1,max:P}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},i.prototype.hammertime=function(e){return this.date(e).getTime()},i.prototype.hour=function(e){return e=l(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},i.prototype.millisecond=function(){return this.natural({max:999})},i.prototype.minute=i.prototype.second=function(e){return e=l(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},i.prototype.month=function(e){e=l(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},i.prototype.months=function(){return this.get("months")},i.prototype.second=function(){return this.natural({max:59})},i.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},i.prototype.weekday=function(e){e=l(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},i.prototype.year=function(e){return e=l(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},i.prototype.cc=function(e){e=l(e);var a,n,c;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),c=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,c,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},i.prototype.cc_types=function(){return this.get("cc_types")},i.prototype.cc_type=function(e){e=l(e);var a=this.cc_types(),n=null;if(e.name){for(var c=0;c3&&(_?O=O.substr(0,3):O=O[0]+O.substr(2,2)),O.length<3&&(z=O,O=y.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+O),z},A=function(y,_,O){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return y.getFullYear().toString().substr(2)+z[y.getMonth()]+O.pad(y.getDate()+(_.toLowerCase()==="female"?40:0),2)},v=function(y){for(var _="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",O="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(O[_.indexOf(y[U])]):K+=j.indexOf(O[_.indexOf(y[U])]);return z[K%26]};return P=P.concat(f(c,!0),f(n),A(m,a,this),C.toUpperCase().split("")).join(""),P+=v(P.toUpperCase()),P.toUpperCase()},i.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;m--)c[m-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?c.reduce(function(C,P){return C+P}):c}else throw new RangeError("Chance: A type of die roll must be included")},i.prototype.guid=function(e){e=l(e,{version:5});var a="abcdef1234567890",n="ab89",c=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return c},i.prototype.hash=function(e){e=l(e,{length:40,casing:"lower"});var a=e.casing==="upper"?p.toUpperCase():p;return this.string({pool:a,length:e.length})},i.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},i.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,c,m=0,C=a.length;C>m;++m)c=+a[m],m%2===0&&(c*=2,c>9&&(c-=9)),n+=c;return n*9%10},i.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=l(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},i.prototype.file=function(e){var a=e||{},n="fileExtension",c=Object.keys(this.get("fileExtension")),m,C;if(m=this.word({length:a.length}),a.extension)return C=a.extension,m+"."+C;if(a.extensions){if(Array.isArray(a.extensions))return C=this.pickone(a.extensions),m+"."+C;if(a.extensions.constructor===Object){var P=a.extensions,f=Object.keys(P);return C=this.pickone(P[this.pickone(f)]),m+"."+C}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var A=a.fileType;if(c.indexOf(A)!==-1)return C=this.pickone(this.get(n)[A]),m+"."+C;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return C=this.pickone(this.get(n)[this.pickone(c)]),m+"."+C},i.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var c={fileData:this.buffer({length:a.fileSize}),fileName:n};return c};var E={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},D=Object.prototype.hasOwnProperty,L=Object.keys||function(e){var a=[];for(var n in e)D.call(e,n)&&a.push(n);return a};function N(e,a){for(var n=L(e),c,m=0,C=n.length;m0)return this.normal_pool(e);var a,n,c,m,C=e.mean,P=e.dev;do n=this.random()*2-1,c=this.random()*2-1,a=n*n+c*c;while(a>=1);return m=n*Math.sqrt(-2*Math.log(a)/a),P*m+C},i.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},i.prototype.radio=function(e){e=l(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},i.prototype.set=function(e,a){typeof e=="string"?E[e]=a:E=R(e,E)},i.prototype.tv=function(e){return this.radio(e)},i.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},i.prototype.emotion=function(){return this.pick(this.get("emotions"))},i.prototype.mersenne_twister=function(e){return new H(e)},i.prototype.blueimp_md5=function(){return new G};var H=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};H.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},H.prototype.init_by_array=function(e,a){var n=1,c=0,m,C;for(this.init_genrand(19650218),m=this.N>a?this.N:a;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1664525<<16)+(C&65535)*1664525)+e[c]+c,this.mt[n]>>>=0,n++,c++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),c>=a&&(c=0);for(m=this.N-1;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1566083941<<16)+(C&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},H.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},H.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},H.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},H.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},H.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},H.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var G=function(){};G.prototype.VERSION="1.0.1",G.prototype.safe_add=function(a,n){var c=(a&65535)+(n&65535),m=(a>>16)+(n>>16)+(c>>16);return m<<16|c&65535},G.prototype.bit_roll=function(e,a){return e<>>32-a},G.prototype.md5_cmn=function(e,a,n,c,m,C){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(c,C)),m),n)},G.prototype.md5_ff=function(e,a,n,c,m,C,P){return this.md5_cmn(a&n|~a&c,e,a,m,C,P)},G.prototype.md5_gg=function(e,a,n,c,m,C,P){return this.md5_cmn(a&c|n&~c,e,a,m,C,P)},G.prototype.md5_hh=function(e,a,n,c,m,C,P){return this.md5_cmn(a^n^c,e,a,m,C,P)},G.prototype.md5_ii=function(e,a,n,c,m,C,P){return this.md5_cmn(n^(a|~c),e,a,m,C,P)},G.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,c,m,C,P,f=1732584193,A=-271733879,v=-1732584194,y=271733878;for(n=0;n>5]>>>a%32&255);return n},G.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(c=this.binl_md5(c,e.length*8)),n=0;n<16;n+=1)m[n]=c[n]^909522486,C[n]=c[n]^1549556828;return P=this.binl_md5(m.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(C.concat(P),512+128))},G.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",c,m;for(m=0;m>>4&15)+a.charAt(c&15);return n},G.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},G.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},G.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},G.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},G.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},G.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},d.exports&&(h=d.exports=i),h.Chance=i,typeof importScripts<"u"&&(chance=new i,self.Chance=i),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=i,window.chance=new i)})()})(ne,ne.exports);var ye=ne.exports;const Se=Ae(ye);function ue(d,h,k,w){var I=new Se(ie);k==null&&console.log();let x=k.toUpperCase(),b=d.toUpperCase(),p=h.toUpperCase();if(w!=null&&0":l=="["?"]":l=="{"?"}":l=="("?")":l}}function h(I,x,b){for(var p=[],M=`(){}[]^-|!*+.><='",;:%@?/\\#~`+b,B=` -\r `,i=$(I,M+B),l=0,r=0,t=0,o=0;o0&&(u=p[p.length-1]),s==` +(function(V,W){typeof exports=="object"&&typeof module<"u"?W(exports):typeof define=="function"&&define.amd?define(["exports"],W):(V=typeof globalThis<"u"?globalThis:V||self,W(V.quickSQL={}))})(this,function(V){"use strict";function W(d){return d==null?d:d.toUpperCase().endsWith("IES")?d.substring(0,d.length-3)+"y":d.toUpperCase().endsWith("ES")||d.toUpperCase().endsWith("S")?d.substring(0,d.length-1):d}function ve(d,h){let k='"';if(d==null)return null;let w=!1;const I="$#_ ";if(!d.startsWith(k)&&!w){const x=d;if(x.length>0&&"0"<=x[0]&&x[0]<="9")w=!0;else for(let b in x){const g=x[b];if(I.indexOf(g)<0&&(g<"0"||"9""u"&&(e[n]=a[n]);return e}function r(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var o=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?o=btoa:typeof Buffer=="function"&&(o=function(a){return new Buffer(a).toString("base64")})})(),i.prototype.bool=function(e){return e=l(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100c,"Chance: Max specified is out of range with fixed. Max should be, at most, "+c),e=l(e,{min:m,max:c}),a=this.integer({min:e.min*n,max:e.max*n});var C=(a/n).toFixed(e.fixed);return parseFloat(C)},i.prototype.integer=function(e){return e=l(e,{min:w,max:k}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},i.prototype.natural=function(e){if(e=l(e,{min:0,max:k}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),c=e.exclude.sort();for(var m in c){if(ne.max,"Chance: Min cannot be greater than Max.");var a=E.primes[E.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&E.primes.push(n);var c=E.primes.filter(function(m){return m>=e.min&&m<=e.max});return this.pick(c)},i.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},i.prototype.hex=function(e){e=l(e,{min:0,max:k,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},i.prototype.letter=function(e){e=l(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},i.prototype.string=function(e){e=l(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function s(e){this.c=e}s.prototype={substitute:function(){return this.c}};function u(e){this.c=e}u.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function p(e){this.c=e}p.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:b})},a:function(e){return e.character({pool:x})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function T(e){for(var a=[],n="identity",c=0;c"u")throw new M("Sorry, the buffer() function is not supported on your platform");e=l(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},i.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},i.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},i.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var c=function(y,_){return y.indexOf(_)!==-1};n&&(c=n.comparator||c);for(var m=[],C=0,P,f=a*50,A=B.call(arguments,2);m.lengthf)throw new RangeError("Chance: num is likely too large for sample set")}return m},i.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,c=[],m=B.call(arguments,2);for(n=Math.max(0,n),null;n--;null)c.push(e.apply(this,m));return c},i.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},i.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},i.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},i.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),c=n.length;return this.n(function(){var m=this.natural({max:--c}),C=n[m];return n[m]=n[c],C},Math.min(c,a))},i.prototype.shuffle=function(e){for(var a=[],n=0,c=Number(e.length),m=r(c),C=c-1,P,f=0;f0&&(c+=m)}if(c===0)throw new RangeError("Chance: No valid entries in array weights");var P=this.random()*c,f=0,A=-1,v;for(C=0;C0){if(P<=f){v=C;break}A=C}C===a.length-1&&(v=A)}var y=e[v];return n=typeof n>"u"?!1:n,n&&(e.splice(v,1),a.splice(v,1)),y},i.prototype.paragraph=function(e){e=l(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),c=e.linebreak===!0?` +`:" ";return n.join(c)},i.prototype.sentence=function(e){e=l(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,c,m=this.n(this.word,a);return c=m.join(" "),c=this.capitalize(c),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(c+=n),c},i.prototype.syllable=function(e){e=l(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",c="aeiou",m=n+c,C="",P,f=0;fe.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var P=e.minAge!==void 0?e.minAge:0,f=e.maxAge!==void 0?e.maxAge:100,A=new Date(c-f-1,n.getMonth(),n.getDate()),v=new Date(c-P,n.getMonth(),n.getDate());A.setDate(A.getDate()+1),v.setDate(v.getDate()+1),v.setMilliseconds(v.getMilliseconds()-1),e=l(e,{min:A,max:v})}else e=l(e,{year:c-a});return this.date(e)},i.prototype.cpf=function(e){e=l(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var c=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;c=11-c%11,c>=10&&(c=0);var m=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},i.prototype.cnpj=function(e){e=l(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var c=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;c=11-c%11,c<2&&(c=0);var m=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},i.prototype.first=function(e){return e=l(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},i.prototype.profession=function(e){return e=l(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},i.prototype.company=function(){return this.pick(this.get("company"))},i.prototype.gender=function(e){return e=l(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},i.prototype.last=function(e){if(e=l(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(c){a=a.concat(n[c])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},i.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},i.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},i.prototype.tld=function(){return this.pick(this.tlds())},i.prototype.twitter=function(){return"@"+this.word()},i.prototype.url=function(e){e=l(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},i.prototype.port=function(){return this.integer({min:0,max:65535})},i.prototype.locale=function(e){return e=l(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},i.prototype.locales=function(e){return e=l(e),e.region?this.get("locale_regions"):this.get("locale_languages")},i.prototype.loremPicsum=function(e){e=l(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},i.prototype.address=function(e){return e=l(e),this.natural({min:5,max:2e3})+" "+this.street(e)},i.prototype.altitude=function(e){return e=l(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},i.prototype.areacode=function(e){e=l(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},i.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},i.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},i.prototype.countries=function(){return this.get("countries")},i.prototype.country=function(e){e=l(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},i.prototype.depth=function(e){return e=l(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},i.prototype.geohash=function(e){return e=l(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},i.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},i.prototype.latitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=l(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},i.prototype.longitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=l(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},i.prototype.phone=function(e){var a=this,n,c=function(_){var O=[];return _.sections.forEach(function(z){O.push(a.string({pool:"0123456789",length:z}))}),_.area+O.join(" ")};e=l(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var m;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),m=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),m=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n);break;case"us":var C=this.areacode(e).toString(),P=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),f=this.natural({min:1e3,max:9999}).toString();m=e.formatted?C+" "+P+"-"+f:C+P+f;break;case"br":var A=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),v;e.mobile?v="9"+a.string({pool:"0123456789",length:4}):v=this.natural({min:2e3,max:5999}).toString();var y=a.string({pool:"0123456789",length:4});m=e.formatted?"("+A+") "+v+"-"+y:A+v+y;break}return m},i.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},i.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",c=e+a+n,m=this.natural({max:9}),C=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),P=m+C;return c+" "+P},i.prototype.counties=function(e){return e=l(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},i.prototype.county=function(e){return this.pick(this.counties(e)).name},i.prototype.provinces=function(e){return e=l(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},i.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},i.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},i.prototype.states=function(e){e=l(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),c=this.get("territories"),m=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(c)),e.armed_forces&&(a=a.concat(m));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},i.prototype.street=function(e){e=l(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},i.prototype.street_suffix=function(e){return e=l(e,{country:"us"}),this.pick(this.street_suffixes(e))},i.prototype.street_suffixes=function(e){return e=l(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},i.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},i.prototype.ampm=function(){return this.bool()?"am":"pm"},i.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=l(e,{american:!0,string:!1});var c=typeof e.min<"u"?e.min.getTime():1,m=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:c,max:m}))}else{var C=this.month({raw:!0}),P=C.days;e&&e.month&&(P=this.get("months")[(e.month%12+12)%12].days),e=l(e,{year:parseInt(this.year(),10),month:C.numeric-1,day:this.natural({min:1,max:P}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},i.prototype.hammertime=function(e){return this.date(e).getTime()},i.prototype.hour=function(e){return e=l(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},i.prototype.millisecond=function(){return this.natural({max:999})},i.prototype.minute=i.prototype.second=function(e){return e=l(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},i.prototype.month=function(e){e=l(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},i.prototype.months=function(){return this.get("months")},i.prototype.second=function(){return this.natural({max:59})},i.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},i.prototype.weekday=function(e){e=l(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},i.prototype.year=function(e){return e=l(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},i.prototype.cc=function(e){e=l(e);var a,n,c;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),c=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,c,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},i.prototype.cc_types=function(){return this.get("cc_types")},i.prototype.cc_type=function(e){e=l(e);var a=this.cc_types(),n=null;if(e.name){for(var c=0;c3&&(_?O=O.substr(0,3):O=O[0]+O.substr(2,2)),O.length<3&&(z=O,O=y.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+O),z},A=function(y,_,O){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return y.getFullYear().toString().substr(2)+z[y.getMonth()]+O.pad(y.getDate()+(_.toLowerCase()==="female"?40:0),2)},v=function(y){for(var _="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",O="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(O[_.indexOf(y[U])]):K+=j.indexOf(O[_.indexOf(y[U])]);return z[K%26]};return P=P.concat(f(c,!0),f(n),A(m,a,this),C.toUpperCase().split("")).join(""),P+=v(P.toUpperCase()),P.toUpperCase()},i.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;m--)c[m-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?c.reduce(function(C,P){return C+P}):c}else throw new RangeError("Chance: A type of die roll must be included")},i.prototype.guid=function(e){e=l(e,{version:5});var a="abcdef1234567890",n="ab89",c=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return c},i.prototype.hash=function(e){e=l(e,{length:40,casing:"lower"});var a=e.casing==="upper"?g.toUpperCase():g;return this.string({pool:a,length:e.length})},i.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},i.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,c,m=0,C=a.length;C>m;++m)c=+a[m],m%2===0&&(c*=2,c>9&&(c-=9)),n+=c;return n*9%10},i.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=l(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},i.prototype.file=function(e){var a=e||{},n="fileExtension",c=Object.keys(this.get("fileExtension")),m,C;if(m=this.word({length:a.length}),a.extension)return C=a.extension,m+"."+C;if(a.extensions){if(Array.isArray(a.extensions))return C=this.pickone(a.extensions),m+"."+C;if(a.extensions.constructor===Object){var P=a.extensions,f=Object.keys(P);return C=this.pickone(P[this.pickone(f)]),m+"."+C}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var A=a.fileType;if(c.indexOf(A)!==-1)return C=this.pickone(this.get(n)[A]),m+"."+C;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return C=this.pickone(this.get(n)[this.pickone(c)]),m+"."+C},i.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var c={fileData:this.buffer({length:a.fileSize}),fileName:n};return c};var E={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},D=Object.prototype.hasOwnProperty,L=Object.keys||function(e){var a=[];for(var n in e)D.call(e,n)&&a.push(n);return a};function N(e,a){for(var n=L(e),c,m=0,C=n.length;m0)return this.normal_pool(e);var a,n,c,m,C=e.mean,P=e.dev;do n=this.random()*2-1,c=this.random()*2-1,a=n*n+c*c;while(a>=1);return m=n*Math.sqrt(-2*Math.log(a)/a),P*m+C},i.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},i.prototype.radio=function(e){e=l(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},i.prototype.set=function(e,a){typeof e=="string"?E[e]=a:E=R(e,E)},i.prototype.tv=function(e){return this.radio(e)},i.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},i.prototype.emotion=function(){return this.pick(this.get("emotions"))},i.prototype.mersenne_twister=function(e){return new H(e)},i.prototype.blueimp_md5=function(){return new G};var H=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};H.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},H.prototype.init_by_array=function(e,a){var n=1,c=0,m,C;for(this.init_genrand(19650218),m=this.N>a?this.N:a;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1664525<<16)+(C&65535)*1664525)+e[c]+c,this.mt[n]>>>=0,n++,c++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),c>=a&&(c=0);for(m=this.N-1;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1566083941<<16)+(C&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},H.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},H.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},H.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},H.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},H.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},H.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var G=function(){};G.prototype.VERSION="1.0.1",G.prototype.safe_add=function(a,n){var c=(a&65535)+(n&65535),m=(a>>16)+(n>>16)+(c>>16);return m<<16|c&65535},G.prototype.bit_roll=function(e,a){return e<>>32-a},G.prototype.md5_cmn=function(e,a,n,c,m,C){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(c,C)),m),n)},G.prototype.md5_ff=function(e,a,n,c,m,C,P){return this.md5_cmn(a&n|~a&c,e,a,m,C,P)},G.prototype.md5_gg=function(e,a,n,c,m,C,P){return this.md5_cmn(a&c|n&~c,e,a,m,C,P)},G.prototype.md5_hh=function(e,a,n,c,m,C,P){return this.md5_cmn(a^n^c,e,a,m,C,P)},G.prototype.md5_ii=function(e,a,n,c,m,C,P){return this.md5_cmn(n^(a|~c),e,a,m,C,P)},G.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,c,m,C,P,f=1732584193,A=-271733879,v=-1732584194,y=271733878;for(n=0;n>5]>>>a%32&255);return n},G.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(c=this.binl_md5(c,e.length*8)),n=0;n<16;n+=1)m[n]=c[n]^909522486,C[n]=c[n]^1549556828;return P=this.binl_md5(m.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(C.concat(P),512+128))},G.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",c,m;for(m=0;m>>4&15)+a.charAt(c&15);return n},G.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},G.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},G.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},G.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},G.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},G.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},d.exports&&(h=d.exports=i),h.Chance=i,typeof importScripts<"u"&&(chance=new i,self.Chance=i),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=i,window.chance=new i)})()})(ne,ne.exports);var ye=ne.exports;const Se=Ae(ye);function ue(d,h,k,w){var I=new Se(ie);k==null&&console.log();let x=k.toUpperCase(),b=d.toUpperCase(),g=h.toUpperCase();if(w!=null&&0":l=="["?"]":l=="{"?"}":l=="("?")":l}}function h(I,x,b){for(var g=[],M=`(){}[]^-|!*+.><='",;:%@?/\\#~`+b,B=` +\r `,i=$(I,M+B),l=0,r=0,t=0,o=0;o0&&(u=g[g.length-1]),s==` `?(r++,t=0):o>0&&i[o-1]!==` `?t=t+i[o-1].length:t=0,l+=s.length,u!=null&&u.type=="comment"&&(u.value.lastIndexOf("*/")!=u.value.length-2||u.value=="/*/")){s=="*"||s=="/"?u.value=u.value+s:u.value="/* ... ",u.end=l,u!=null&&u.type=="comment"&&u.value.lastIndexOf("*/")==u.value.length-2&&u.value!="/*/"&&(u.value=I.substring(u.begin,u.end));continue}if(u!=null&&(u.type=="line-comment"||u.type=="dbtools-command")&&s!=` `){u.value=u.value+s;continue}if(u!=null&&(u.type=="line-comment"||u.type=="dbtools-command")&&s==` `&&(u.end=u.begin+u.value.length),u!=null&&u.type=="quoted-string"&&!(u.isStandardLiteral()||u.isAltLiteral())){u.value=u.value+s,u.end=u.begin+u.value.length;continue}if(!(u!=null&&u.type=="dquoted-string"&&s!='"'&&!(u.value.endsWith('"')&&u.value.length>1))){if(u!=null&&u.type=="dquoted-string"&&s=='"'){u.end=l,u.value=I.substring(u.begin,u.end);continue}if(!(u!=null&&u.type=="bquoted-string"&&s!="`"&&!(u.value.endsWith("`")&&u.value.length>1))){if(u!=null&&u.type=="bquoted-string"&&s=="`"){u.end=l,u.value=I.substring(u.begin,u.end);continue}if(s=="*"&&u!=null&&u.value=="/"){u.value=u.value+s,u.end=u.begin+u.value.length,u.type="comment";continue}if(s=="-"&&u!=null&&u.value=="-"){u.value=u.value+s,u.type="line-comment";continue}if((s.toUpperCase()=="REM"||s.toUpperCase()=="REMA"||s.toUpperCase()=="REMAR"||s.toUpperCase()=="REMARK"||s.toUpperCase()=="PRO"||s.toUpperCase()=="PROM"||s.toUpperCase()=="PROMP"||s.toUpperCase()=="PROMPT")&&(u==null||u.value==` -`||u.value=="\r")){p.push(new d(s,l-s.length,-9,"line-comment",r,t));continue}if(s.toUpperCase()=="SODA"&&(u==null||u.value==` -`||u.value=="\r")){p.push(new d(s,l-s.length,-9,"dbtools-command",r,t));continue}if(u!=null&&u.type=="identifier"&&u.end==-11&&u.value.indexOf("@")==0&&!(s==` +`||u.value=="\r")){g.push(new d(s,l-s.length,-9,"line-comment",r,t));continue}if(s.toUpperCase()=="SODA"&&(u==null||u.value==` +`||u.value=="\r")){g.push(new d(s,l-s.length,-9,"dbtools-command",r,t));continue}if(u!=null&&u.type=="identifier"&&u.end==-11&&u.value.indexOf("@")==0&&!(s==` `||s=="\r")){u.value=u.value+s;continue}if(u!=null&&u.type=="identifier"&&u.end==-11&&u.value.indexOf("@")==0&&(s==` -`||s=="\r")){u.end=l-1,p.push(new d(s,l-1,l,"ws",r,t));continue}if(x&&s=="'"){u!=null&&(u.value.toUpperCase()=="Q"||u.value.toUpperCase()=="N"||u.value.toUpperCase()=="U"||u.value.toUpperCase()=="NQ")?(u.value+=s,u.type="quoted-string"):p.push(new d(s,l-1,-10,"quoted-string",r,t));continue}if(x&&s=='"'){p.push(new d(s,l-1,-11,"dquoted-string",r,t));continue}if(s=="`"&&0<=M.indexOf("`")){p.push(new d(s,l-1,-11,"bquoted-string",r,t));continue}if(s.length==1&&0<=M.indexOf(s)){p.push(new d(s,l-1,l,"operation",r,t));continue}if(s.length==1&&0<=B.indexOf(s)){p.push(new d(s,l-1,l,"ws",r,t));continue}if("0"<=s.charAt(0)&&s.charAt(0)<="9"){k(s,p,l-s.length,r)||(s.charAt(s.length-1)=="K"||s.charAt(s.length-1)=="k"||s.charAt(s.length-1)=="M"||s.charAt(s.length-1)=="m"||s.charAt(s.length-1)=="G"||s.charAt(s.length-1)=="g"||s.charAt(s.length-1)=="T"||s.charAt(s.length-1)=="t"||s.charAt(s.length-1)=="P"||s.charAt(s.length-1)=="p"||s.charAt(s.length-1)=="E"||s.charAt(s.length-1)=="e"?(p.push(new d(s.substring(0,s.length-1),l-s.length,l-1,"constant.numeric",r,t)),p.push(new d(s.substring(s.length-1),l-1,l,"constant.numeric",r,t))):p.push(new d(s,l-s.length,l,"constant.numeric",r,t)));continue}var g="identifier";o+10){var u=p[p.length-1];u.end=I.length}return p}function k(I,x,b,p){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var M=$(I,"efd"),B=0;B")==0||r.indexOf("<")==0)&&(r=r.substring(1).trim());const s=r.toLowerCase();if(s.indexOf("view ")==0){var u=r.split(" ");return u[1]}r=b(r," d");var g=r.indexOf("/");0="0"&&T<="9"&&(r="x"+r),Te(se(r))},this.parseType=function(r){if(this.children!=null&&0!0)),N}return g}00){var u=g[g.length-1];u.end=I.length}return g}function k(I,x,b,g){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var M=$(I,"efd"),B=0;B")==0||r.indexOf("<")==0)&&(r=r.substring(1).trim());const s=r.toLowerCase();if(s.indexOf("view ")==0){var u=r.split(" ");return u[1]}r=b(r," d");var p=r.indexOf("/");0="0"&&T<="9"&&(r="x"+r),Te(se(r))},this.parseType=function(r){if(this.children!=null&&0!0)),N}return p}0");return t==0},this.getExplicitPkNode=function(){for(var r=0;rr.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(d.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),d.optionEQvalue("prefixPKwithTname","yes")&&(t=W(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let r=this.getGenIdColName();if(r==null){let t=this.getExplicitPkNode();return t==null?null:t.parseName()}return r},this.singleDDL=function(){if(this.children.length==0&&0");return t==0},this.getExplicitPkNode=function(){for(var r=0;rr.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(d.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),d.optionEQvalue("prefixPKwithTname","yes")&&(t=W(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let r=this.getGenIdColName();if(r==null){let t=this.getExplicitPkNode();return t==null?null:t.parseName()}return r},this.singleDDL=function(){if(this.children.length==0&&0!0):C==null&&(C=d.find(a),C.isMany2One()&!a.endsWith("_id")&&(n=a,a=W(a),P="_id")),u=h+" ".repeat(this.maxChildNameLen()-a.length),o+=h+a+P+u+c+` `,o+=h+h+" ".repeat(this.maxChildNameLen())+"constraint "+s+"_"+a+`_fk `;let f="";0<=r.indexOf("/CASCADE")&&(f=" on delete cascade");let A="";for(let v in this.children){let y=this.children[v];if(a==y.parseName()){let _=y.trimmedContent().toUpperCase();(0<=_.indexOf("/NN")||0<=_.indexOf("/NOTNULL"))&&(A=" NOT NULL".toLowerCase()),0<=_.indexOf("/CASCADE")&&(f=" on delete cascade");break}}o+=h+h+" ".repeat(this.maxChildNameLen())+"references "+d.objPrefix()+n+f+A+`, `}if(d.optionEQvalue("rowkey",!0)||0!0)),s+=`, -`,s+=h+h+"P_"+u+" "+o+" "+S+t}for(let T=0;T!0),(r=="insert"||r=="update")&&(o+=`, `);let L=h+h+h+"P_"+S+" := c1."+S+`; `;r=="insert"&&(L=h+h+h+S),r=="update"&&(L=h+h+h+S+" = P_"+S+` -`),o+=L}for(var u=0;uo.children.length>0&&o.parseName()==t&&!o.isArray())},this.generateSelectJsonBottomUp=function(r){throw new Error("generateSelectJsonBottomUp() not implemented yet")},this.one2many2oneUnsupoported="one to many to one is not supported",this.generateSelectJsonTopDown=function(r){var t=this.parseName();let o="";this.getExplicitPkNode==null&&(o+=r+"'"+this.getGenIdColName()+"' : "+t+"."+this.getGenIdColName()+`, -`);for(var s=0;s"),0"),0!0)}),0!0)}),0 Date: Tue, 30 Jan 2024 17:39:23 -0800 Subject: [PATCH 15/22] food_product almost works --- dist/quick-sql.js | 1256 ++--- dist/quick-sql.umd.cjs | 340 +- src/json2qsql.js | 52 +- src/tree.js | 14 +- test/JSON/car_racing/1.qsql | 4 +- test/JSON/car_racing/2.qsql | 6 +- test/JSON/donuts.qsql | 8 +- test/experimental/2.json | 25 - test/experimental/food_product.qsql | 4151 ++++++++++++++++ test/experimental/food_product.sql | 7044 +++++++++++++++++++++++++++ test/single_test.js | 7 +- 11 files changed, 12059 insertions(+), 848 deletions(-) delete mode 100644 test/experimental/2.json create mode 100644 test/experimental/food_product.qsql create mode 100644 test/experimental/food_product.sql diff --git a/dist/quick-sql.js b/dist/quick-sql.js index ac3d8d5..19de5f5 100644 --- a/dist/quick-sql.js +++ b/dist/quick-sql.js @@ -8,12 +8,12 @@ function fe(d, h) { let w = !1; const I = "$#_ "; if (!d.startsWith(x) && !w) { - const k = d; - if (k.length > 0 && "0" <= k[0] && k[0] <= "9") + const N = d; + if (N.length > 0 && "0" <= N[0] && N[0] <= "9") w = !0; else - for (let b in k) { - const g = k[b]; + for (let b in N) { + const g = N[b]; if (I.indexOf(g) < 0 && (g < "0" || "9" < g && g < "A" || "Z" < g && g < "a" || "z" < g)) { w = !0; break; @@ -76,16 +76,16 @@ var le = function() { "\uC804\uB3C4\uC790", "\uD310\uB9E4\uC6D0" ]; - function w(I, k) { - if (typeof k != "string" || I.substring(0, 2).toLowerCase() == "en") - return k; - k.indexOf("'") == 0 && (k = k.substring(1, k.length - 1)); + function w(I, N) { + if (typeof N != "string" || I.substring(0, 2).toLowerCase() == "en") + return N; + N.indexOf("'") == 0 && (N = N.substring(1, N.length - 1)); for (var b = -1, g = 0; g < d.length; g++) - if (d[g] == k) { + if (d[g] == N) { b = g; break; } - return 0 <= b && I.substring(0, 2).toLowerCase() == "jp" && b < h.length ? "'" + h[b] + "'" : 0 <= b && I.substring(0, 2).toLowerCase() == "kr" && b < x.length ? "'" + x[b] + "'" : k; + return 0 <= b && I.substring(0, 2).toLowerCase() == "jp" && b < h.length ? "'" + h[b] + "'" : 0 <= b && I.substring(0, 2).toLowerCase() == "kr" && b < x.length ? "'" + x[b] + "'" : N; } return w; }(); @@ -95,7 +95,7 @@ function be(d) { var ie = { exports: {} }; (function(d, h) { (function() { - var x = 9007199254740992, w = -x, I = "0123456789", k = "abcdefghijklmnopqrstuvwxyz", b = k.toUpperCase(), g = I + "abcdef"; + var x = 9007199254740992, w = -x, I = "0123456789", N = "abcdefghijklmnopqrstuvwxyz", b = N.toUpperCase(), g = I + "abcdef"; function M(e) { this.name = "UnsupportedError", this.message = e || "This feature is not supported on this platform"; } @@ -124,7 +124,7 @@ var ie = { exports: {} }; }, this; } i.prototype.VERSION = "1.1.11"; - function l(e, a) { + function o(e, a) { if (e = e || {}, a) for (var n in a) typeof e[n] > "u" && (e[n] = a[n]); @@ -139,24 +139,24 @@ var ie = { exports: {} }; if (e) throw new RangeError(a); } - var o = function() { + var s = function() { throw new Error("No Base64 encoder available."); }; (function() { - typeof btoa == "function" ? o = btoa : typeof Buffer == "function" && (o = function(a) { + typeof btoa == "function" ? s = btoa : typeof Buffer == "function" && (s = function(a) { return new Buffer(a).toString("base64"); }); })(), i.prototype.bool = function(e) { - return e = l(e, { likelihood: 50 }), t( + return e = o(e, { likelihood: 50 }), t( e.likelihood < 0 || e.likelihood > 100, "Chance: Likelihood accepts values from 0 to 100." ), this.random() * 100 < e.likelihood; }, i.prototype.falsy = function(e) { - e = l(e, { pool: [!1, null, 0, NaN, "", void 0] }); + e = o(e, { pool: [!1, null, 0, NaN, "", void 0] }); var a = e.pool, n = this.integer({ min: 0, max: a.length - 1 }), c = a[n]; return c; }, i.prototype.animal = function(e) { - if (e = l(e), typeof e.type < "u") + if (e = o(e), typeof e.type < "u") return t( !this.get("animals")[e.type.toLowerCase()], "Please pick from desert, ocean, grassland, forest, zoo, pets, farm." @@ -164,11 +164,11 @@ var ie = { exports: {} }; var a = ["desert", "forest", "ocean", "zoo", "farm", "pet", "grassland"]; return this.pick(this.get("animals")[this.pick(a)]); }, i.prototype.character = function(e) { - e = l(e); + e = o(e); var a = "!@#$%^&*()[]", n, c; - return e.casing === "lower" ? n = k : e.casing === "upper" ? n = b : n = k + b, e.pool ? c = e.pool : (c = "", e.alpha && (c += n), e.numeric && (c += I), e.symbols && (c += a), c || (c = n + I + a)), c.charAt(this.natural({ max: c.length - 1 })); + return e.casing === "lower" ? n = N : e.casing === "upper" ? n = b : n = N + b, e.pool ? c = e.pool : (c = "", e.alpha && (c += n), e.numeric && (c += I), e.symbols && (c += a), c || (c = n + I + a)), c.charAt(this.natural({ max: c.length - 1 })); }, i.prototype.floating = function(e) { - e = l(e, { fixed: 4 }), t( + e = o(e, { fixed: 4 }), t( e.fixed && e.precision, "Chance: Cannot specify both fixed and precision." ); @@ -179,13 +179,13 @@ var ie = { exports: {} }; ), t( e.max && e.fixed && e.max > c, "Chance: Max specified is out of range with fixed. Max should be, at most, " + c - ), e = l(e, { min: m, max: c }), a = this.integer({ min: e.min * n, max: e.max * n }); + ), e = o(e, { min: m, max: c }), a = this.integer({ min: e.min * n, max: e.max * n }); var C = (a / n).toFixed(e.fixed); return parseFloat(C); }, i.prototype.integer = function(e) { - return e = l(e, { min: w, max: x }), t(e.min > e.max, "Chance: Min cannot be greater than Max."), Math.floor(this.random() * (e.max - e.min + 1) + e.min); + return e = o(e, { min: w, max: x }), t(e.min > e.max, "Chance: Min cannot be greater than Max."), Math.floor(this.random() * (e.max - e.min + 1) + e.min); }, i.prototype.natural = function(e) { - if (e = l(e, { min: 0, max: x }), typeof e.numerals == "number" && (t(e.numerals < 1, "Chance: Numerals cannot be less than one."), e.min = Math.pow(10, e.numerals - 1), e.max = Math.pow(10, e.numerals) - 1), t(e.min < 0, "Chance: Min cannot be less than zero."), e.exclude) { + if (e = o(e, { min: 0, max: x }), typeof e.numerals == "number" && (t(e.numerals < 1, "Chance: Numerals cannot be less than one."), e.min = Math.pow(10, e.numerals - 1), e.max = Math.pow(10, e.numerals) - 1), t(e.min < 0, "Chance: Min cannot be less than zero."), e.exclude) { t(!Array.isArray(e.exclude), "Chance: exclude must be an array."); for (var a in e.exclude) t(!Number.isInteger(e.exclude[a]), "Chance: exclude must be numbers."); @@ -199,7 +199,7 @@ var ie = { exports: {} }; } return this.integer(e); }, i.prototype.prime = function(e) { - e = l(e, { min: 0, max: 1e4 }), t(e.min < 0, "Chance: Min cannot be less than zero."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); + e = o(e, { min: 0, max: 1e4 }), t(e.min < 0, "Chance: Min cannot be less than zero."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); var a = E.primes[E.primes.length - 1]; if (e.max > a) for (var n = a + 2; n <= e.max; ++n) @@ -220,22 +220,22 @@ var ie = { exports: {} }; return !1; return !0; }, i.prototype.hex = function(e) { - e = l(e, { min: 0, max: x, casing: "lower" }), t(e.min < 0, "Chance: Min cannot be less than zero."); + e = o(e, { min: 0, max: x, casing: "lower" }), t(e.min < 0, "Chance: Min cannot be less than zero."); var a = this.natural({ min: e.min, max: e.max }); return e.casing === "upper" ? a.toString(16).toUpperCase() : a.toString(16); }, i.prototype.letter = function(e) { - e = l(e, { casing: "lower" }); + e = o(e, { casing: "lower" }); var a = "abcdefghijklmnopqrstuvwxyz", n = this.character({ pool: a }); return e.casing === "upper" && (n = n.toUpperCase()), n; }, i.prototype.string = function(e) { - e = l(e, { min: 5, max: 20 }), e.length !== 0 && !e.length && (e.length = this.natural({ min: e.min, max: e.max })), t(e.length < 0, "Chance: Length cannot be less than zero."); + e = o(e, { min: 5, max: 20 }), e.length !== 0 && !e.length && (e.length = this.natural({ min: e.min, max: e.max })), t(e.length < 0, "Chance: Length cannot be less than zero."); var a = e.length, n = this.n(this.character, a, e); return n.join(""); }; - function s(e) { + function l(e) { this.c = e; } - s.prototype = { + l.prototype = { substitute: function() { return this.c; } @@ -262,7 +262,7 @@ var ie = { exports: {} }; return e.character({ pool: b }); }, a: function(e) { - return e.character({ pool: k }); + return e.character({ pool: N }); } }, substitute: function(e) { @@ -280,7 +280,7 @@ var ie = { exports: {} }; a.push(new u(m)), n = "identity"; break; case "identity": - m === "{" ? n = "replace" : m === "\\" ? n = "escape" : a.push(new s(m)); + m === "{" ? n = "replace" : m === "\\" ? n = "escape" : a.push(new l(m)); break; case "replace": m === "}" ? n = "identity" : a.push(new p(m)); @@ -299,7 +299,7 @@ var ie = { exports: {} }; }, i.prototype.buffer = function(e) { if (typeof Buffer > "u") throw new M("Sorry, the buffer() function is not supported on your platform"); - e = l(e, { length: this.natural({ min: 5, max: 20 }) }), t(e.length < 0, "Chance: Length cannot be less than zero."); + e = o(e, { length: this.natural({ min: 5, max: 20 }) }), t(e.length < 0, "Chance: Length cannot be less than zero."); var a = e.length, n = this.n(this.character, a, e); return Buffer.from(n); }, i.prototype.capitalize = function(e) { @@ -384,21 +384,21 @@ var ie = { exports: {} }; var y = e[v]; return n = typeof n > "u" ? !1 : n, n && (e.splice(v, 1), a.splice(v, 1)), y; }, i.prototype.paragraph = function(e) { - e = l(e); + e = o(e); var a = e.sentences || this.natural({ min: 3, max: 7 }), n = this.n(this.sentence, a), c = e.linebreak === !0 ? ` ` : " "; return n.join(c); }, i.prototype.sentence = function(e) { - e = l(e); + e = o(e); var a = e.words || this.natural({ min: 12, max: 18 }), n = e.punctuation, c, m = this.n(this.word, a); return c = m.join(" "), c = this.capitalize(c), n !== !1 && !/^[.?;!:]$/.test(n) && (n = "."), n && (c += n), c; }, i.prototype.syllable = function(e) { - e = l(e); + e = o(e); for (var a = e.length || this.natural({ min: 2, max: 3 }), n = "bcdfghjklmnprstvwz", c = "aeiou", m = n + c, C = "", P, f = 0; f < a; f++) f === 0 ? P = this.character({ pool: m }) : n.indexOf(P) === -1 ? P = this.character({ pool: n }) : P = this.character({ pool: c }), C += P; return e.capitalize && (C = this.capitalize(C)), C; }, i.prototype.word = function(e) { - e = l(e), t( + e = o(e), t( e.syllables && e.length, "Chance: Cannot specify both syllables AND length." ); @@ -413,7 +413,7 @@ var ie = { exports: {} }; n += this.syllable(); return e.capitalize && (n = this.capitalize(n)), n; }, i.prototype.age = function(e) { - e = l(e); + e = o(e); var a; switch (e.type) { case "child": @@ -440,24 +440,24 @@ var ie = { exports: {} }; var a = this.age(e), n = /* @__PURE__ */ new Date(), c = n.getFullYear(); if (e && e.type) { var m = /* @__PURE__ */ new Date(), C = /* @__PURE__ */ new Date(); - m.setFullYear(c - a - 1), C.setFullYear(c - a), e = l(e, { + m.setFullYear(c - a - 1), C.setFullYear(c - a), e = o(e, { min: m, max: C }); } else if (e && (e.minAge !== void 0 || e.maxAge !== void 0)) { t(e.minAge < 0, "Chance: MinAge cannot be less than zero."), t(e.minAge > e.maxAge, "Chance: MinAge cannot be greater than MaxAge."); var P = e.minAge !== void 0 ? e.minAge : 0, f = e.maxAge !== void 0 ? e.maxAge : 100, A = new Date(c - f - 1, n.getMonth(), n.getDate()), v = new Date(c - P, n.getMonth(), n.getDate()); - A.setDate(A.getDate() + 1), v.setDate(v.getDate() + 1), v.setMilliseconds(v.getMilliseconds() - 1), e = l(e, { + A.setDate(A.getDate() + 1), v.setDate(v.getDate() + 1), v.setMilliseconds(v.getMilliseconds() - 1), e = o(e, { min: A, max: v }); } else - e = l(e, { + e = o(e, { year: c - a }); return this.date(e); }, i.prototype.cpf = function(e) { - e = l(e, { + e = o(e, { formatted: !0 }); var a = this.n(this.natural, 9, { max: 9 }), n = a[8] * 2 + a[7] * 3 + a[6] * 4 + a[5] * 5 + a[4] * 6 + a[3] * 7 + a[2] * 8 + a[1] * 9 + a[0] * 10; @@ -467,7 +467,7 @@ var ie = { exports: {} }; var m = "" + a[0] + a[1] + a[2] + "." + a[3] + a[4] + a[5] + "." + a[6] + a[7] + a[8] + "-" + n + c; return e.formatted ? m : m.replace(/\D/g, ""); }, i.prototype.cnpj = function(e) { - e = l(e, { + e = o(e, { formatted: !0 }); var a = this.n(this.natural, 12, { max: 12 }), n = a[11] * 2 + a[10] * 3 + a[9] * 4 + a[8] * 5 + a[7] * 6 + a[6] * 7 + a[5] * 8 + a[4] * 9 + a[3] * 2 + a[2] * 3 + a[1] * 4 + a[0] * 5; @@ -477,15 +477,15 @@ var ie = { exports: {} }; var m = "" + a[0] + a[1] + "." + a[2] + a[3] + a[4] + "." + a[5] + a[6] + a[7] + "/" + a[8] + a[9] + a[10] + a[11] + "-" + n + c; return e.formatted ? m : m.replace(/\D/g, ""); }, i.prototype.first = function(e) { - return e = l(e, { gender: this.gender(), nationality: "en" }), this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()]); + return e = o(e, { gender: this.gender(), nationality: "en" }), this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()]); }, i.prototype.profession = function(e) { - return e = l(e), e.rank ? this.pick(["Apprentice ", "Junior ", "Senior ", "Lead "]) + this.pick(this.get("profession")) : this.pick(this.get("profession")); + return e = o(e), e.rank ? this.pick(["Apprentice ", "Junior ", "Senior ", "Lead "]) + this.pick(this.get("profession")) : this.pick(this.get("profession")); }, i.prototype.company = function() { return this.pick(this.get("company")); }, i.prototype.gender = function(e) { - return e = l(e, { extraGenders: [] }), this.pick(["Male", "Female"].concat(e.extraGenders)); + return e = o(e, { extraGenders: [] }), this.pick(["Male", "Female"].concat(e.extraGenders)); }, i.prototype.last = function(e) { - if (e = l(e, { nationality: "*" }), e.nationality === "*") { + if (e = o(e, { nationality: "*" }), e.nationality === "*") { var a = [], n = this.get("lastNames"); return Object.keys(n).forEach(function(c) { a = a.concat(n[c]); @@ -528,7 +528,7 @@ var ie = { exports: {} }; ].join(""); return P + a(P.substr(44, 10) + P.substr(57, 7) + P.substr(65, 7)); }, c = this; - return e = l(e, { + return e = o(e, { first: this.first(), last: this.last(), passportNumber: this.integer({ min: 1e8, max: 999999999 }), @@ -553,7 +553,7 @@ var ie = { exports: {} }; nationality: "GBR" }), n(e); }, i.prototype.name = function(e) { - e = l(e); + e = o(e); var a = this.first(e), n = this.last(e), c; return e.middle ? c = a + " " + this.first(e) + " " + n : e.middle_initial ? c = a + " " + this.character({ alpha: !0, casing: "upper" }) + ". " + n : c = a + " " + n, e.prefix && (c = this.prefix(e) + " " + c), e.suffix && (c = c + " " + this.suffix(e)), c; }, i.prototype.name_prefixes = function(e) { @@ -565,16 +565,16 @@ var ie = { exports: {} }; }, i.prototype.prefix = function(e) { return this.name_prefix(e); }, i.prototype.name_prefix = function(e) { - return e = l(e, { gender: "all" }), e.full ? this.pick(this.name_prefixes(e.gender)).name : this.pick(this.name_prefixes(e.gender)).abbreviation; + return e = o(e, { gender: "all" }), e.full ? this.pick(this.name_prefixes(e.gender)).name : this.pick(this.name_prefixes(e.gender)).abbreviation; }, i.prototype.HIDN = function() { var e = "0123456789", a = "ABCDEFGHIJKLMNOPQRSTUVWXYXZ", n = ""; return n += this.string({ pool: e, length: 6 }), n += this.string({ pool: a, length: 2 }), n; }, i.prototype.ssn = function(e) { - e = l(e, { ssnFour: !1, dashes: !0 }); + e = o(e, { ssnFour: !1, dashes: !0 }); var a = "1234567890", n, c = e.dashes ? "-" : ""; return e.ssnFour ? n = this.string({ pool: a, length: 4 }) : n = this.string({ pool: a, length: 3 }) + c + this.string({ pool: a, length: 2 }) + c + this.string({ pool: a, length: 4 }), n; }, i.prototype.aadhar = function(e) { - e = l(e, { onlyLastFour: !1, separatedByWhiteSpace: !0 }); + e = o(e, { onlyLastFour: !1, separatedByWhiteSpace: !0 }); var a = "1234567890", n, c = e.separatedByWhiteSpace ? " " : ""; return e.onlyLastFour ? n = this.string({ pool: a, length: 4 }) : n = this.string({ pool: a, length: 4 }) + c + this.string({ pool: a, length: 4 }) + c + this.string({ pool: a, length: 4 }), n; }, i.prototype.name_suffixes = function() { @@ -598,7 +598,7 @@ var ie = { exports: {} }; }, i.prototype.suffix = function(e) { return this.name_suffix(e); }, i.prototype.name_suffix = function(e) { - return e = l(e), e.full ? this.pick(this.name_suffixes()).name : this.pick(this.name_suffixes()).abbreviation; + return e = o(e), e.full ? this.pick(this.name_suffixes()).name : this.pick(this.name_suffixes()).abbreviation; }, i.prototype.nationalities = function() { return this.get("nationalities"); }, i.prototype.nationality = function() { @@ -612,7 +612,7 @@ var ie = { exports: {} }; }, i.prototype.apple_token = function() { return this.string({ pool: "abcdef1234567890", length: 64 }); }, i.prototype.wp8_anid2 = function() { - return o(this.hash({ length: 32 })); + return s(this.hash({ length: 32 })); }, i.prototype.wp7_anid = function() { return "A=" + this.guid().replace(/-/g, "").toUpperCase() + "&E=" + this.hash({ length: 3 }) + "&W=" + this.integer({ min: 0, max: 9 }); }, i.prototype.bb_pin = function() { @@ -664,7 +664,7 @@ var ie = { exports: {} }; if (e.constructor === "Array") return null; } - return f = l(e, f), f.email || (f.email = this.email()), f.protocol = c[f.protocol] ? f.protocol + ":" : "", f.size = parseInt(f.size, 0) ? f.size : "", f.rating = P[f.rating] ? f.rating : "", f.fallback = C[f.fallback] ? f.fallback : "", f.fileExtension = m[f.fileExtension] ? f.fileExtension : "", a = f.protocol + n + this.bimd5.md5(f.email) + (f.fileExtension ? "." + f.fileExtension : "") + (f.size || f.rating || f.fallback ? "?" : "") + (f.size ? "&s=" + f.size.toString() : "") + (f.rating ? "&r=" + f.rating : "") + (f.fallback ? "&d=" + f.fallback : ""), a; + return f = o(e, f), f.email || (f.email = this.email()), f.protocol = c[f.protocol] ? f.protocol + ":" : "", f.size = parseInt(f.size, 0) ? f.size : "", f.rating = P[f.rating] ? f.rating : "", f.fallback = C[f.fallback] ? f.fallback : "", f.fileExtension = m[f.fileExtension] ? f.fileExtension : "", a = f.protocol + n + this.bimd5.md5(f.email) + (f.fileExtension ? "." + f.fileExtension : "") + (f.size || f.rating || f.fallback ? "?" : "") + (f.size ? "&s=" + f.size.toString() : "") + (f.rating ? "&r=" + f.rating : "") + (f.fallback ? "&d=" + f.fallback : ""), a; }, i.prototype.color = function(e) { function a(U, Q) { return [U, U, U].join(Q || ""); @@ -677,7 +677,7 @@ var ie = { exports: {} }; var ae = ee ? "#" : "", q = ""; return m ? (q = a(this.pad(this.hex({ min: C, max: P }), 2)), e.format === "shorthex" && (q = a(this.hex({ min: 0, max: 15 })))) : e.format === "shorthex" ? q = this.pad(this.hex({ min: Math.floor(f / 16), max: Math.floor(A / 16) }), 1) + this.pad(this.hex({ min: Math.floor(v / 16), max: Math.floor(y / 16) }), 1) + this.pad(this.hex({ min: Math.floor(_ / 16), max: Math.floor(O / 16) }), 1) : f !== void 0 || A !== void 0 || v !== void 0 || y !== void 0 || _ !== void 0 || O !== void 0 ? q = this.pad(this.hex({ min: f, max: A }), 2) + this.pad(this.hex({ min: v, max: y }), 2) + this.pad(this.hex({ min: _, max: O }), 2) : q = this.pad(this.hex({ min: C, max: P }), 2) + this.pad(this.hex({ min: C, max: P }), 2) + this.pad(this.hex({ min: C, max: P }), 2), ae + q; } - e = l(e, { + e = o(e, { format: this.pick(["hex", "shorthex", "rgb", "rgba", "0x", "name"]), grayscale: !1, casing: "lower", @@ -712,9 +712,9 @@ var ie = { exports: {} }; } return e.casing === "upper" && (V = V.toUpperCase()), V; }, i.prototype.domain = function(e) { - return e = l(e), this.word() + "." + (e.tld || this.tld()); + return e = o(e), this.word() + "." + (e.tld || this.tld()); }, i.prototype.email = function(e) { - return e = l(e), this.word({ length: e.length }) + "@" + (e.domain || this.domain()); + return e = o(e), this.word({ length: e.length }) + "@" + (e.domain || this.domain()); }, i.prototype.fbid = function() { return "10000" + this.string({ pool: "1234567890", length: 11 }); }, i.prototype.google_analytics = function() { @@ -730,9 +730,9 @@ var ie = { exports: {} }; }, i.prototype.klout = function() { return this.natural({ min: 1, max: 99 }); }, i.prototype.mac = function(e) { - return e = l(e, { delimiter: ":" }), this.pad(this.natural({ max: 255 }).toString(16), 2) + e.delimiter + this.pad(this.natural({ max: 255 }).toString(16), 2) + e.delimiter + this.pad(this.natural({ max: 255 }).toString(16), 2) + e.delimiter + this.pad(this.natural({ max: 255 }).toString(16), 2) + e.delimiter + this.pad(this.natural({ max: 255 }).toString(16), 2) + e.delimiter + this.pad(this.natural({ max: 255 }).toString(16), 2); + return e = o(e, { delimiter: ":" }), this.pad(this.natural({ max: 255 }).toString(16), 2) + e.delimiter + this.pad(this.natural({ max: 255 }).toString(16), 2) + e.delimiter + this.pad(this.natural({ max: 255 }).toString(16), 2) + e.delimiter + this.pad(this.natural({ max: 255 }).toString(16), 2) + e.delimiter + this.pad(this.natural({ max: 255 }).toString(16), 2) + e.delimiter + this.pad(this.natural({ max: 255 }).toString(16), 2); }, i.prototype.semver = function(e) { - e = l(e, { include_prerelease: !0 }); + e = o(e, { include_prerelease: !0 }); var a = this.pickone(["^", "~", "<", ">", "<=", ">=", "="]); e.range && (a = e.range); var n = ""; @@ -744,29 +744,29 @@ var ie = { exports: {} }; }, i.prototype.twitter = function() { return "@" + this.word(); }, i.prototype.url = function(e) { - e = l(e, { protocol: "http", domain: this.domain(e), domain_prefix: "", path: this.word(), extensions: [] }); + e = o(e, { protocol: "http", domain: this.domain(e), domain_prefix: "", path: this.word(), extensions: [] }); var a = e.extensions.length > 0 ? "." + this.pick(e.extensions) : "", n = e.domain_prefix ? e.domain_prefix + "." + e.domain : e.domain; return e.protocol + "://" + n + "/" + e.path + a; }, i.prototype.port = function() { return this.integer({ min: 0, max: 65535 }); }, i.prototype.locale = function(e) { - return e = l(e), e.region ? this.pick(this.get("locale_regions")) : this.pick(this.get("locale_languages")); + return e = o(e), e.region ? this.pick(this.get("locale_regions")) : this.pick(this.get("locale_languages")); }, i.prototype.locales = function(e) { - return e = l(e), e.region ? this.get("locale_regions") : this.get("locale_languages"); + return e = o(e), e.region ? this.get("locale_regions") : this.get("locale_languages"); }, i.prototype.loremPicsum = function(e) { - e = l(e, { width: 500, height: 500, greyscale: !1, blurred: !1 }); + e = o(e, { width: 500, height: 500, greyscale: !1, blurred: !1 }); var a = e.greyscale ? "g/" : "", n = e.blurred ? "/?blur" : "/?random"; return "https://picsum.photos/" + a + e.width + "/" + e.height + n; }, i.prototype.address = function(e) { - return e = l(e), this.natural({ min: 5, max: 2e3 }) + " " + this.street(e); + return e = o(e), this.natural({ min: 5, max: 2e3 }) + " " + this.street(e); }, i.prototype.altitude = function(e) { - return e = l(e, { fixed: 5, min: 0, max: 8848 }), this.floating({ + return e = o(e, { fixed: 5, min: 0, max: 8848 }), this.floating({ min: e.min, max: e.max, fixed: e.fixed }); }, i.prototype.areacode = function(e) { - e = l(e, { parens: !0 }); + e = o(e, { parens: !0 }); var a = e.exampleNumber ? "555" : this.natural({ min: 2, max: 9 }).toString() + this.natural({ min: 0, max: 8 }).toString() + this.natural({ min: 0, max: 9 }).toString(); return e.parens ? "(" + a + ")" : a; }, i.prototype.city = function() { @@ -776,22 +776,22 @@ var ie = { exports: {} }; }, i.prototype.countries = function() { return this.get("countries"); }, i.prototype.country = function(e) { - e = l(e); + e = o(e); var a = this.pick(this.countries()); return e.raw ? a : e.full ? a.name : a.abbreviation; }, i.prototype.depth = function(e) { - return e = l(e, { fixed: 5, min: -10994, max: 0 }), this.floating({ + return e = o(e, { fixed: 5, min: -10994, max: 0 }), this.floating({ min: e.min, max: e.max, fixed: e.fixed }); }, i.prototype.geohash = function(e) { - return e = l(e, { length: 7 }), this.string({ length: e.length, pool: "0123456789bcdefghjkmnpqrstuvwxyz" }); + return e = o(e, { length: 7 }), this.string({ length: e.length, pool: "0123456789bcdefghjkmnpqrstuvwxyz" }); }, i.prototype.geojson = function(e) { return this.latitude(e) + ", " + this.longitude(e) + ", " + this.altitude(e); }, i.prototype.latitude = function(e) { var [a, n, c] = ["ddm", "dms", "dd"]; - e = l( + e = o( e, e && e.format && [a, n].includes(e.format.toLowerCase()) ? { min: 0, max: 89, fixed: 4 } : { fixed: 5, min: -90, max: 90, format: c } ); @@ -807,7 +807,7 @@ var ie = { exports: {} }; } }, i.prototype.longitude = function(e) { var [a, n, c] = ["ddm", "dms", "dd"]; - e = l( + e = o( e, e && e.format && [a, n].includes(e.format.toLowerCase()) ? { min: 0, max: 179, fixed: 4 } : { fixed: 5, min: -180, max: 180, format: c } ); @@ -828,7 +828,7 @@ var ie = { exports: {} }; O.push(a.string({ pool: "0123456789", length: z })); }), _.area + O.join(" "); }; - e = l(e, { + e = o(e, { formatted: !0, country: "us", mobile: !1, @@ -903,17 +903,17 @@ var ie = { exports: {} }; var e = this.pick(this.get("postcodeAreas")).code, a = this.natural({ max: 9 }), n = this.bool() ? this.character({ alpha: !0, casing: "upper" }) : "", c = e + a + n, m = this.natural({ max: 9 }), C = this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }), P = m + C; return c + " " + P; }, i.prototype.counties = function(e) { - return e = l(e, { country: "uk" }), this.get("counties")[e.country.toLowerCase()]; + return e = o(e, { country: "uk" }), this.get("counties")[e.country.toLowerCase()]; }, i.prototype.county = function(e) { return this.pick(this.counties(e)).name; }, i.prototype.provinces = function(e) { - return e = l(e, { country: "ca" }), this.get("provinces")[e.country.toLowerCase()]; + return e = o(e, { country: "ca" }), this.get("provinces")[e.country.toLowerCase()]; }, i.prototype.province = function(e) { return e && e.full ? this.pick(this.provinces(e)).name : this.pick(this.provinces(e)).abbreviation; }, i.prototype.state = function(e) { return e && e.full ? this.pick(this.states(e)).name : this.pick(this.states(e)).abbreviation; }, i.prototype.states = function(e) { - e = l(e, { country: "us", us_states_and_dc: !0 }); + e = o(e, { country: "us", us_states_and_dc: !0 }); var a; switch (e.country.toLowerCase()) { case "us": @@ -930,7 +930,7 @@ var ie = { exports: {} }; } return a; }, i.prototype.street = function(e) { - e = l(e, { country: "us", syllables: 2 }); + e = o(e, { country: "us", syllables: 2 }); var a; switch (e.country.toLowerCase()) { case "us": @@ -942,9 +942,9 @@ var ie = { exports: {} }; } return a; }, i.prototype.street_suffix = function(e) { - return e = l(e, { country: "us" }), this.pick(this.street_suffixes(e)); + return e = o(e, { country: "us" }), this.pick(this.street_suffixes(e)); }, i.prototype.street_suffixes = function(e) { - return e = l(e, { country: "us" }), this.get("street_suffixes")[e.country.toLowerCase()]; + return e = o(e, { country: "us" }), this.get("street_suffixes")[e.country.toLowerCase()]; }, i.prototype.zip = function(e) { var a = this.n(this.natural, 5, { max: 9 }); return e && e.plusfour === !0 && (a.push("-"), a = a.concat(this.n(this.natural, 4, { max: 9 }))), a.join(""); @@ -953,7 +953,7 @@ var ie = { exports: {} }; }, i.prototype.date = function(e) { var a, n; if (e && (e.min || e.max)) { - e = l(e, { + e = o(e, { american: !0, string: !1 }); @@ -961,7 +961,7 @@ var ie = { exports: {} }; n = new Date(this.integer({ min: c, max: m })); } else { var C = this.month({ raw: !0 }), P = C.days; - e && e.month && (P = this.get("months")[(e.month % 12 + 12) % 12].days), e = l(e, { + e && e.month && (P = this.get("months")[(e.month % 12 + 12) % 12].days), e = o(e, { year: parseInt(this.year(), 10), // Necessary to subtract 1 because Date() 0-indexes month but not day or year // for some reason. @@ -979,16 +979,16 @@ var ie = { exports: {} }; }, i.prototype.hammertime = function(e) { return this.date(e).getTime(); }, i.prototype.hour = function(e) { - return e = l(e, { + return e = o(e, { min: e && e.twentyfour ? 0 : 1, max: e && e.twentyfour ? 23 : 12 }), t(e.min < 0, "Chance: Min cannot be less than 0."), t(e.twentyfour && e.max > 23, "Chance: Max cannot be greater than 23 for twentyfour option."), t(!e.twentyfour && e.max > 12, "Chance: Max cannot be greater than 12."), t(e.min > e.max, "Chance: Min cannot be greater than Max."), this.natural({ min: e.min, max: e.max }); }, i.prototype.millisecond = function() { return this.natural({ max: 999 }); }, i.prototype.minute = i.prototype.second = function(e) { - return e = l(e, { min: 0, max: 59 }), t(e.min < 0, "Chance: Min cannot be less than 0."), t(e.max > 59, "Chance: Max cannot be greater than 59."), t(e.min > e.max, "Chance: Min cannot be greater than Max."), this.natural({ min: e.min, max: e.max }); + return e = o(e, { min: 0, max: 59 }), t(e.min < 0, "Chance: Min cannot be less than 0."), t(e.max > 59, "Chance: Max cannot be greater than 59."), t(e.min > e.max, "Chance: Min cannot be greater than Max."), this.natural({ min: e.min, max: e.max }); }, i.prototype.month = function(e) { - e = l(e, { min: 1, max: 12 }), t(e.min < 1, "Chance: Min cannot be less than 1."), t(e.max > 12, "Chance: Max cannot be greater than 12."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); + e = o(e, { min: 1, max: 12 }), t(e.min < 1, "Chance: Min cannot be less than 1."), t(e.max > 12, "Chance: Max cannot be greater than 12."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); var a = this.pick(this.months().slice(e.min - 1, e.max)); return e.raw ? a : a.name; }, i.prototype.months = function() { @@ -998,19 +998,19 @@ var ie = { exports: {} }; }, i.prototype.timestamp = function() { return this.natural({ min: 1, max: parseInt((/* @__PURE__ */ new Date()).getTime() / 1e3, 10) }); }, i.prototype.weekday = function(e) { - e = l(e, { weekday_only: !1 }); + e = o(e, { weekday_only: !1 }); var a = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"]; return e.weekday_only || (a.push("Saturday"), a.push("Sunday")), this.pickone(a); }, i.prototype.year = function(e) { - return e = l(e, { min: (/* @__PURE__ */ new Date()).getFullYear() }), e.max = typeof e.max < "u" ? e.max : e.min + 100, this.natural(e).toString(); + return e = o(e, { min: (/* @__PURE__ */ new Date()).getFullYear() }), e.max = typeof e.max < "u" ? e.max : e.min + 100, this.natural(e).toString(); }, i.prototype.cc = function(e) { - e = l(e); + e = o(e); var a, n, c; return a = e.type ? this.cc_type({ name: e.type, raw: !0 }) : this.cc_type({ raw: !0 }), n = a.prefix.split(""), c = a.length - a.prefix.length - 1, n = n.concat(this.n(this.integer, c, { min: 0, max: 9 })), n.push(this.luhn_calculate(n.join(""))), n.join(""); }, i.prototype.cc_types = function() { return this.get("cc_types"); }, i.prototype.cc_type = function(e) { - e = l(e); + e = o(e); var a = this.cc_types(), n = null; if (e.name) { for (var c = 0; c < a.length; c++) @@ -1041,17 +1041,17 @@ var ie = { exports: {} }; }); return e ? a[0].code + "/" + a[1].code : a; }, i.prototype.dollar = function(e) { - e = l(e, { max: 1e4, min: 0 }); + e = o(e, { max: 1e4, min: 0 }); var a = this.floating({ min: e.min, max: e.max, fixed: 2 }).toString(), n = a.split(".")[1]; return n === void 0 ? a += ".00" : n.length < 2 && (a = a + "0"), a < 0 ? "-$" + a.replace("-", "") : "$" + a; }, i.prototype.euro = function(e) { return Number(this.dollar(e).replace("$", "")).toLocaleString() + "\u20AC"; }, i.prototype.exp = function(e) { - e = l(e); + e = o(e); var a = {}; return a.year = this.exp_year(), a.year === (/* @__PURE__ */ new Date()).getFullYear().toString() ? a.month = this.exp_month({ future: !0 }) : a.month = this.exp_month(), e.raw ? a : a.month + "/" + a.year; }, i.prototype.exp_month = function(e) { - e = l(e); + e = o(e); var a, n, c = (/* @__PURE__ */ new Date()).getMonth() + 1; if (e.future && c !== 12) do @@ -1064,7 +1064,7 @@ var ie = { exports: {} }; var e = (/* @__PURE__ */ new Date()).getMonth() + 1, a = (/* @__PURE__ */ new Date()).getFullYear(); return this.year({ min: e === 12 ? a + 1 : a, max: a + 10 }); }, i.prototype.vat = function(e) { - switch (e = l(e, { country: "it" }), e.country.toLowerCase()) { + switch (e = o(e, { country: "it" }), e.country.toLowerCase()) { case "it": return this.it_vat(); } @@ -1108,7 +1108,7 @@ var ie = { exports: {} }; var c = (8 * a[0] + 9 * a[1] + 2 * a[2] + 3 * a[3] + 4 * a[4] + 5 * a[5] + 6 * a[6] + 7 * a[7]) % 11; return c === 10 && (c = 0), a.join("") + c; }, i.prototype.note = function(e) { - e = l(e, { notes: "flatKey" }); + e = o(e, { notes: "flatKey" }); var a = { naturals: ["C", "D", "E", "F", "G", "A", "B"], flats: ["D\u266D", "E\u266D", "G\u266D", "A\u266D", "B\u266D"], @@ -1117,9 +1117,9 @@ var ie = { exports: {} }; return a.all = a.naturals.concat(a.flats.concat(a.sharps)), a.flatKey = a.naturals.concat(a.flats), a.sharpKey = a.naturals.concat(a.sharps), this.pickone(a[e.notes]); }, i.prototype.midi_note = function(e) { var a = 0, n = 127; - return e = l(e, { min: a, max: n }), this.integer({ min: e.min, max: e.max }); + return e = o(e, { min: a, max: n }), this.integer({ min: e.min, max: e.max }); }, i.prototype.chord_quality = function(e) { - e = l(e, { jazz: !0 }); + e = o(e, { jazz: !0 }); var a = ["maj", "min", "aug", "dim"]; return e.jazz && (a = [ "maj7", @@ -1130,10 +1130,10 @@ var ie = { exports: {} }; "\xF8" ]), this.pickone(a); }, i.prototype.chord = function(e) { - return e = l(e), this.note(e) + this.chord_quality(e); + return e = o(e), this.note(e) + this.chord_quality(e); }, i.prototype.tempo = function(e) { var a = 40, n = 320; - return e = l(e, { min: a, max: n }), this.integer({ min: e.min, max: e.max }); + return e = o(e, { min: a, max: n }), this.integer({ min: e.min, max: e.max }); }, i.prototype.coin = function() { return this.bool() ? "heads" : "tails"; }; @@ -1143,7 +1143,7 @@ var ie = { exports: {} }; }; } i.prototype.d4 = S({ min: 1, max: 4 }), i.prototype.d6 = S({ min: 1, max: 6 }), i.prototype.d8 = S({ min: 1, max: 8 }), i.prototype.d10 = S({ min: 1, max: 10 }), i.prototype.d12 = S({ min: 1, max: 12 }), i.prototype.d20 = S({ min: 1, max: 20 }), i.prototype.d30 = S({ min: 1, max: 30 }), i.prototype.d100 = S({ min: 1, max: 100 }), i.prototype.rpg = function(e, a) { - if (a = l(a), e) { + if (a = o(a), e) { var n = e.toLowerCase().split("d"), c = []; if (n.length !== 2 || !parseInt(n[0], 10) || !parseInt(n[1], 10)) throw new Error("Chance: Invalid format provided. Please provide #d# where the first # is the number of dice to roll, the second # is the max of each die"); @@ -1155,13 +1155,13 @@ var ie = { exports: {} }; } else throw new RangeError("Chance: A type of die roll must be included"); }, i.prototype.guid = function(e) { - e = l(e, { version: 5 }); + e = o(e, { version: 5 }); var a = "abcdef1234567890", n = "ab89", c = this.string({ pool: a, length: 8 }) + "-" + this.string({ pool: a, length: 4 }) + "-" + // The Version e.version + this.string({ pool: a, length: 3 }) + "-" + // The Variant this.string({ pool: n, length: 1 }) + this.string({ pool: a, length: 3 }) + "-" + this.string({ pool: a, length: 12 }); return c; }, i.prototype.hash = function(e) { - e = l(e, { length: 40, casing: "lower" }); + e = o(e, { length: 40, casing: "lower" }); var a = e.casing === "upper" ? g.toUpperCase() : g; return this.string({ pool: a, length: e.length }); }, i.prototype.luhn_check = function(e) { @@ -1183,7 +1183,7 @@ var ie = { exports: {} }; if (e.constructor === "Array") return null; } - if (a = l(e, a), !a.str) + if (a = o(e, a), !a.str) throw new Error("A parameter is required to return an md5 hash."); return this.bimd5.md5(a.str, a.key, a.raw); }, i.prototype.file = function(e) { @@ -7033,7 +7033,7 @@ var ie = { exports: {} }; D.call(e, n) && a.push(n); return a; }; - function N(e, a) { + function k(e, a) { for (var n = L(e), c, m = 0, C = n.length; m < C; m++) c = n[m], a[c] = e[c] || a[c]; } @@ -7043,16 +7043,16 @@ var ie = { exports: {} }; } function R(e, a) { var n = Array.isArray(e), c = a || (n ? new Array(e.length) : {}); - return n ? F(e, c) : N(e, c), c; + return n ? F(e, c) : k(e, c), c; } i.prototype.get = function(e) { return R(E[e]); }, i.prototype.mac_address = function(e) { - e = l(e), e.separator || (e.separator = e.networkVersion ? "." : ":"); + e = o(e), e.separator || (e.separator = e.networkVersion ? "." : ":"); var a = "ABCDEF1234567890", n = ""; return e.networkVersion ? n = this.n(this.string, 3, { pool: a, length: 4 }).join(e.separator) : n = this.n(this.string, 6, { pool: a, length: 2 }).join(e.separator), n; }, i.prototype.normal = function(e) { - if (e = l(e, { mean: 0, dev: 1, pool: [] }), t( + if (e = o(e, { mean: 0, dev: 1, pool: [] }), t( e.pool.constructor !== Array, "Chance: The pool option must be a valid array." ), t( @@ -7078,7 +7078,7 @@ var ie = { exports: {} }; } while (a < 100); throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust."); }, i.prototype.radio = function(e) { - e = l(e, { side: "?" }); + e = o(e, { side: "?" }); var a = ""; switch (e.side.toLowerCase()) { case "east": @@ -7213,13 +7213,13 @@ const ge = /* @__PURE__ */ be(pe); function se(d, h, x, w) { var I = new ge(te); x == null && console.log(); - let k = x.toUpperCase(), b = d.toUpperCase(), g = h.toUpperCase(); + let N = x.toUpperCase(), b = d.toUpperCase(), g = h.toUpperCase(); if (w != null && 0 < w.length) { let r = 0, t = w.length; var M = "'"; - (k.startsWith("INTEGER") || k.startsWith("NUMBER") || k.startsWith("DATE")) && (M = ""); - let o = w[Math.floor(X() * (t - r)) + r]; - return o.toLowerCase && o.toLowerCase() == "null" && (M = ""), o.replaceAll && (o = o.replaceAll("'", "''")), M + o + M; + (N.startsWith("INTEGER") || N.startsWith("NUMBER") || N.startsWith("DATE")) && (M = ""); + let s = w[Math.floor(X() * (t - r)) + r]; + return s.toLowerCase && s.toLowerCase() == "null" && (M = ""), s.replaceAll && (s = s.replaceAll("'", "''")), M + s + M; } if (g == "NAME" && 0 <= b.indexOf("DEPARTMENT")) { var B = ["Sales", "Finance", "Delivery", "Manufacturing"]; @@ -7245,14 +7245,14 @@ function se(d, h, x, w) { let r = 0, t = i.length; return "'" + i[Math.floor(X() * (t - r)) + r] + "'"; } - if (k.startsWith("INTEGER") || k.startsWith("NUMBER")) { + if (N.startsWith("INTEGER") || N.startsWith("NUMBER")) { let r = 0, t = 100; return Math.floor(X() * (t - r)) + r; } - if (k.startsWith("DATE") || k.startsWith("TIMESTAMP")) { + if (N.startsWith("DATE") || N.startsWith("TIMESTAMP")) { let r = 0, t = 100; - var l = Math.floor(X() * (t - r)) + r; - return "sysdate-" + l; + var o = Math.floor(X() * (t - r)) + r; + return "sysdate-" + o; } return "'N/A'"; } @@ -7266,8 +7266,8 @@ function X() { } var $ = function() { function d(h, x) { - for (var w = [], I = "", k = 0; k < h.length; k++) { - for (var b = h.charAt(k), g = w.length, M = 0; M < x.length; M++) { + for (var w = [], I = "", N = 0; N < h.length; N++) { + for (var b = h.charAt(N), g = w.length, M = 0; M < x.length; M++) { var B = x.charAt(M); if (b == B) { 0 < I.length && w.push(I), w.push(b), I = ""; @@ -7280,132 +7280,132 @@ var $ = function() { } return d; }(), Z = function() { - function d(I, k, b, g, M, B) { - this.type = g, this.value = I, this.begin = k, this.end = b, this.line = M, this.col = B, this.toString = function() { + function d(I, N, b, g, M, B) { + this.type = g, this.value = I, this.begin = N, this.end = b, this.line = M, this.col = B, this.toString = function() { return "{type:" + g + ",value:" + I + "}"; }, this.isStandardLiteral = function() { if (this.value.length < 2 || !(this.value.charAt(0) == "'" || this.value.charAt(0) == "n" || this.value.charAt(0) == "N")) return !1; - var l = this.value; - if (l.charAt(0) == "n" || l.charAt(0) == "N") { - if (l.length < 3) + var o = this.value; + if (o.charAt(0) == "n" || o.charAt(0) == "N") { + if (o.length < 3) return !1; - l = l.substring(1); + o = o.substring(1); } - return l.length < 2 ? !1 : l.charAt(0) == "'" && l.charAt(l.length - 1) == "'"; + return o.length < 2 ? !1 : o.charAt(0) == "'" && o.charAt(o.length - 1) == "'"; }, this.isAltLiteral = function() { if (this.value.length < 5 || !(this.value.charAt(0) == "q" || this.value.charAt(0) == "Q" || this.value.charAt(0) == "n" || this.value.charAt(0) == "N")) return !1; - var l = this.value; + var o = this.value; if (this.value.charAt(0) == "q" || this.value.charAt(0) == "Q") - l = l.substring(1); + o = o.substring(1); else if ( /*content.startsWith("Nq")*/ (this.value.charAt(0) == "n" || this.value.charAt(0) == "N") && (this.value.charAt(1) == "q" || this.value.charAt(1) == "Q") ) { - if (l.length < 6) + if (o.length < 6) return !1; - l = l.substring(2); + o = o.substring(2); } else return !1; - if (l.charAt(0) == "'" && l.charAt(l.length - 1) == "'") - l = l.substring(1, l.length - 1); + if (o.charAt(0) == "'" && o.charAt(o.length - 1) == "'") + o = o.substring(1, o.length - 1); else return !1; - return i(l.charAt(0)) == l.charAt(l.length - 1); + return i(o.charAt(0)) == o.charAt(o.length - 1); }; - function i(l) { - return l == "<" ? ">" : l == "[" ? "]" : l == "{" ? "}" : l == "(" ? ")" : l; + function i(o) { + return o == "<" ? ">" : o == "[" ? "]" : o == "{" ? "}" : o == "(" ? ")" : o; } } - function h(I, k, b) { + function h(I, N, b) { for (var g = [], M = `(){}[]^-|!*+.><='",;:%@?/\\#~` + b, B = ` \r `, i = $( I, //".*-+/|><=()\'\", \n\r\t" M + B - ), l = 0, r = 0, t = 0, o = 0; o < i.length; o++) { - var s = i[o], u = null; - if (g.length > 0 && (u = g[g.length - 1]), s == ` -` ? (r++, t = 0) : o > 0 && i[o - 1] !== ` -` ? t = t + i[o - 1].length : t = 0, l += s.length, u != null && u.type == "comment" && (u.value.lastIndexOf("*/") != u.value.length - 2 || u.value == "/*/")) { - s == "*" || s == "/" ? u.value = u.value + s : u.value = "/* ... ", u.end = l, u != null && u.type == "comment" && u.value.lastIndexOf("*/") == u.value.length - 2 && u.value != "/*/" && (u.value = I.substring(u.begin, u.end)); + ), o = 0, r = 0, t = 0, s = 0; s < i.length; s++) { + var l = i[s], u = null; + if (g.length > 0 && (u = g[g.length - 1]), l == ` +` ? (r++, t = 0) : s > 0 && i[s - 1] !== ` +` ? t = t + i[s - 1].length : t = 0, o += l.length, u != null && u.type == "comment" && (u.value.lastIndexOf("*/") != u.value.length - 2 || u.value == "/*/")) { + l == "*" || l == "/" ? u.value = u.value + l : u.value = "/* ... ", u.end = o, u != null && u.type == "comment" && u.value.lastIndexOf("*/") == u.value.length - 2 && u.value != "/*/" && (u.value = I.substring(u.begin, u.end)); continue; } - if (u != null && (u.type == "line-comment" || u.type == "dbtools-command") && s != ` + if (u != null && (u.type == "line-comment" || u.type == "dbtools-command") && l != ` `) { - u.value = u.value + s; + u.value = u.value + l; continue; } - if (u != null && (u.type == "line-comment" || u.type == "dbtools-command") && s == ` + if (u != null && (u.type == "line-comment" || u.type == "dbtools-command") && l == ` ` && (u.end = u.begin + u.value.length), u != null && u.type == "quoted-string" && !(u.isStandardLiteral() || u.isAltLiteral())) { - u.value = u.value + s, u.end = u.begin + u.value.length; + u.value = u.value + l, u.end = u.begin + u.value.length; continue; } - if (!(u != null && u.type == "dquoted-string" && s != '"' && !(u.value.endsWith('"') && u.value.length > 1))) { - if (u != null && u.type == "dquoted-string" && s == '"') { - u.end = l, u.value = I.substring(u.begin, u.end); + if (!(u != null && u.type == "dquoted-string" && l != '"' && !(u.value.endsWith('"') && u.value.length > 1))) { + if (u != null && u.type == "dquoted-string" && l == '"') { + u.end = o, u.value = I.substring(u.begin, u.end); continue; } - if (!(u != null && u.type == "bquoted-string" && s != "`" && !(u.value.endsWith("`") && u.value.length > 1))) { - if (u != null && u.type == "bquoted-string" && s == "`") { - u.end = l, u.value = I.substring(u.begin, u.end); + if (!(u != null && u.type == "bquoted-string" && l != "`" && !(u.value.endsWith("`") && u.value.length > 1))) { + if (u != null && u.type == "bquoted-string" && l == "`") { + u.end = o, u.value = I.substring(u.begin, u.end); continue; } - if (s == "*" && u != null && u.value == "/") { - u.value = u.value + s, u.end = u.begin + u.value.length, u.type = "comment"; + if (l == "*" && u != null && u.value == "/") { + u.value = u.value + l, u.end = u.begin + u.value.length, u.type = "comment"; continue; } - if (s == "-" && u != null && u.value == "-") { - u.value = u.value + s, u.type = "line-comment"; + if (l == "-" && u != null && u.value == "-") { + u.value = u.value + l, u.type = "line-comment"; continue; } - if ((s.toUpperCase() == "REM" || s.toUpperCase() == "REMA" || s.toUpperCase() == "REMAR" || s.toUpperCase() == "REMARK" || s.toUpperCase() == "PRO" || s.toUpperCase() == "PROM" || s.toUpperCase() == "PROMP" || s.toUpperCase() == "PROMPT") && (u == null || u.value == ` + if ((l.toUpperCase() == "REM" || l.toUpperCase() == "REMA" || l.toUpperCase() == "REMAR" || l.toUpperCase() == "REMARK" || l.toUpperCase() == "PRO" || l.toUpperCase() == "PROM" || l.toUpperCase() == "PROMP" || l.toUpperCase() == "PROMPT") && (u == null || u.value == ` ` || u.value == "\r")) { - g.push(new d(s, l - s.length, -9, "line-comment", r, t)); + g.push(new d(l, o - l.length, -9, "line-comment", r, t)); continue; } - if (s.toUpperCase() == "SODA" && (u == null || u.value == ` + if (l.toUpperCase() == "SODA" && (u == null || u.value == ` ` || u.value == "\r")) { - g.push(new d(s, l - s.length, -9, "dbtools-command", r, t)); + g.push(new d(l, o - l.length, -9, "dbtools-command", r, t)); continue; } - if (u != null && u.type == "identifier" && u.end == -11 && u.value.indexOf("@") == 0 && !(s == ` -` || s == "\r")) { - u.value = u.value + s; + if (u != null && u.type == "identifier" && u.end == -11 && u.value.indexOf("@") == 0 && !(l == ` +` || l == "\r")) { + u.value = u.value + l; continue; } - if (u != null && u.type == "identifier" && u.end == -11 && u.value.indexOf("@") == 0 && (s == ` -` || s == "\r")) { - u.end = l - 1, g.push(new d(s, l - 1, l, "ws", r, t)); + if (u != null && u.type == "identifier" && u.end == -11 && u.value.indexOf("@") == 0 && (l == ` +` || l == "\r")) { + u.end = o - 1, g.push(new d(l, o - 1, o, "ws", r, t)); continue; } - if (k && s == "'") { - u != null && (u.value.toUpperCase() == "Q" || u.value.toUpperCase() == "N" || u.value.toUpperCase() == "U" || u.value.toUpperCase() == "NQ") ? (u.value += s, u.type = "quoted-string") : g.push(new d(s, l - 1, -10, "quoted-string", r, t)); + if (N && l == "'") { + u != null && (u.value.toUpperCase() == "Q" || u.value.toUpperCase() == "N" || u.value.toUpperCase() == "U" || u.value.toUpperCase() == "NQ") ? (u.value += l, u.type = "quoted-string") : g.push(new d(l, o - 1, -10, "quoted-string", r, t)); continue; } - if (k && s == '"') { - g.push(new d(s, l - 1, -11, "dquoted-string", r, t)); + if (N && l == '"') { + g.push(new d(l, o - 1, -11, "dquoted-string", r, t)); continue; } - if (s == "`" && 0 <= M.indexOf("`")) { - g.push(new d(s, l - 1, -11, "bquoted-string", r, t)); + if (l == "`" && 0 <= M.indexOf("`")) { + g.push(new d(l, o - 1, -11, "bquoted-string", r, t)); continue; } - if (s.length == 1 && 0 <= M.indexOf(s)) { - g.push(new d(s, l - 1, l, "operation", r, t)); + if (l.length == 1 && 0 <= M.indexOf(l)) { + g.push(new d(l, o - 1, o, "operation", r, t)); continue; } - if (s.length == 1 && 0 <= B.indexOf(s)) { - g.push(new d(s, l - 1, l, "ws", r, t)); + if (l.length == 1 && 0 <= B.indexOf(l)) { + g.push(new d(l, o - 1, o, "ws", r, t)); continue; } - if ("0" <= s.charAt(0) && s.charAt(0) <= "9") { - x(s, g, l - s.length, r) || (s.charAt(s.length - 1) == "K" || s.charAt(s.length - 1) == "k" || s.charAt(s.length - 1) == "M" || s.charAt(s.length - 1) == "m" || s.charAt(s.length - 1) == "G" || s.charAt(s.length - 1) == "g" || s.charAt(s.length - 1) == "T" || s.charAt(s.length - 1) == "t" || s.charAt(s.length - 1) == "P" || s.charAt(s.length - 1) == "p" || s.charAt(s.length - 1) == "E" || s.charAt(s.length - 1) == "e" ? (g.push(new d(s.substring(0, s.length - 1), l - s.length, l - 1, "constant.numeric", r, t)), g.push(new d(s.substring(s.length - 1), l - 1, l, "constant.numeric", r, t))) : g.push(new d(s, l - s.length, l, "constant.numeric", r, t))); + if ("0" <= l.charAt(0) && l.charAt(0) <= "9") { + x(l, g, o - l.length, r) || (l.charAt(l.length - 1) == "K" || l.charAt(l.length - 1) == "k" || l.charAt(l.length - 1) == "M" || l.charAt(l.length - 1) == "m" || l.charAt(l.length - 1) == "G" || l.charAt(l.length - 1) == "g" || l.charAt(l.length - 1) == "T" || l.charAt(l.length - 1) == "t" || l.charAt(l.length - 1) == "P" || l.charAt(l.length - 1) == "p" || l.charAt(l.length - 1) == "E" || l.charAt(l.length - 1) == "e" ? (g.push(new d(l.substring(0, l.length - 1), o - l.length, o - 1, "constant.numeric", r, t)), g.push(new d(l.substring(l.length - 1), o - 1, o, "constant.numeric", r, t))) : g.push(new d(l, o - l.length, o, "constant.numeric", r, t))); continue; } var p = "identifier"; - o + 1 < i.length && i[o + 1], g.push(new d(s, l - s.length, l, p, r, t)); + s + 1 < i.length && i[s + 1], g.push(new d(l, o - l.length, o, p, r, t)); } } } @@ -7415,19 +7415,19 @@ var $ = function() { } return g; } - function x(I, k, b, g) { + function x(I, N, b, g) { if (0 > I.indexOf("e") && 0 > I.indexOf("f") && 0 > I.indexOf("d")) return !1; 0 <= I.indexOf("e"), 0 <= I.indexOf("e"), !(0 <= I.indexOf("e")) && 0 <= I.indexOf("f"); for (var M = $(I, "efd"), B = 0; B < M.length; B++) { var i = M[B]; - b += i.length, "0" <= i.charAt(0) && i.charAt(0) <= "9" ? k.push(new d(i, b - i.length, b, "constant.numeric", g)) : k.push(new d(i, b - i.length, b, "identifier", g)); + b += i.length, "0" <= i.charAt(0) && i.charAt(0) <= "9" ? N.push(new d(i, b - i.length, b, "constant.numeric", g)) : N.push(new d(i, b - i.length, b, "identifier", g)); } return !0; } - function w(I, k, b, g) { - for (var M = [], B = h(I, b, g), i = null, l = 0; l < B.length; l++) { - var r = B[l]; + function w(I, N, b, g) { + for (var M = [], B = h(I, b, g), i = null, o = 0; o < B.length; o++) { + var r = B[o]; if (r.type == "quoted-string") { if (i != null && i.type == "quoted-string") { i.value = i.value + r.value, i.end = r.end; @@ -7452,7 +7452,7 @@ var $ = function() { || token.value.equals("$ELSE") || token.value.equals("$THEN") ||*/ - r.value.indexOf("$$") == 0 && (r.value = "$$VAR"), (k || r.type != "ws" && r.type != "comment" && r.type != "line-comment") && M.push(r), i = r; + r.value.indexOf("$$") == 0 && (r.value = "$$VAR"), (N || r.type != "ws" && r.type != "comment" && r.type != "line-comment") && M.push(r), i = r; } return M; } @@ -7595,10 +7595,10 @@ let ce = function() { r < T && (r = T), T = d.getOptionValue("createdbycol").length, r < T && (r = T), T = d.getOptionValue("updatedcol").length, r < T && (r = T), T = d.getOptionValue("updatedbycol").length, r < T && (r = T); } if (this.fks != null) - for (var o in this.fks) { - var s = o.length; - let T = d.find(o); - T != null && T.isMany2One() && (s += 3), r < s && (r = s); + for (var s in this.fks) { + var l = s.length; + let T = d.find(s); + T != null && T.isMany2One() && (l += 3), r < l && (r = l); } for (var u = 0; u < this.children.length; u++) { let T = this.children[u]; @@ -7614,30 +7614,30 @@ let ce = function() { } return r; }; - function l(r) { + function o(r) { let t = r; return t = t.replace(/ timestamp with local time zone/gi, " tswltz"), t = t.replace(/ timestamp with time zone/gi, " tswtz"), t = t.replace(/ timestamp/gi, " ts"), t; } - this.content = l(B), this.comment, this.indexOf = function(r, t) { - for (let o = 0; o < this.src.length; o++) { - if (t && this.src[o].value.toLowerCase().indexOf(r.toLowerCase()) == 0) - return o; - if (r.toLowerCase() == this.src[o].value.toLowerCase()) - return o; + this.content = o(B), this.comment, this.indexOf = function(r, t) { + for (let s = 0; s < this.src.length; s++) { + if (t && this.src[s].value.toLowerCase().indexOf(r.toLowerCase()) == 0) + return s; + if (r.toLowerCase() == this.src[s].value.toLowerCase()) + return s; } return -1; }, this.trimmedContent = function() { - var r = this.content.trim(), t = r.indexOf("["), o = r.indexOf("]"); - return this.comment == null && 0 < t && (this.comment = r.substr(t + 1, o - t - 1)), 0 < t && (r = r.substr(0, t) + r.substr(o + 2)), t = r.indexOf("--"), this.comment == null && 0 < t && (this.comment = r.substr(t + 2)), 0 < t && (r = r.substr(0, t)), r.trim(); + var r = this.content.trim(), t = r.indexOf("["), s = r.indexOf("]"); + return this.comment == null && 0 < t && (this.comment = r.substr(t + 1, s - t - 1)), 0 < t && (r = r.substr(0, t) + r.substr(s + 2)), t = r.indexOf("--"), this.comment == null && 0 < t && (this.comment = r.substr(t + 2)), 0 < t && (r = r.substr(0, t)), r.trim(); }, this.src = Z(this.content, !1, !0, ""), this.parseName = function() { let r = this.trimmedContent(); r = r.replace(/\t/, h); - const t = r.indexOf('"'), o = r.indexOf('"', t + 1); - if (0 <= t && t < o) - return r.substring(t, o + 1); + const t = r.indexOf('"'), s = r.indexOf('"', t + 1); + if (0 <= t && t < s) + return r.substring(t, s + 1); (r.indexOf(">") == 0 || r.indexOf("<") == 0) && (r = r.substring(1).trim()); - const s = r.toLowerCase(); - if (s.indexOf("view ") == 0) { + const l = r.toLowerCase(); + if (l.indexOf("view ") == 0) { var u = r.split(" "); return u[1]; } @@ -7645,14 +7645,14 @@ let ce = function() { var p = r.indexOf("/"); 0 < p && (r = r.substring(0, p)), r = r.trim(), r = b(r, " integer"), r = b(r, " number"), r = b(r, " int"), r = b(r, " num"), r = b(r, " clob"), r = b(r, " blob"), r = b(r, " json"), r = b(r, " file"), r = b(r, " date"), r = b(r, " tstz"), r = b(r, " tswtz"), r = b(r, " tswltz"), r = b(r, " ts"), r = r.replace(/ vc\d+k/g, ""), r = r.replace(/ vc\(\d+\)/g, ""), r = r.replace(/ vc\d+/g, ""); for (let S in x) { - let E = s.indexOf(" " + x[S]); + let E = l.indexOf(" " + x[S]); if (0 < E) { r = r.substring(0, E) + r.substring(E + x[S].length + 1); break; } } for (let S in w) { - let E = s.indexOf(" " + w[S]); + let E = l.indexOf(" " + w[S]); if (0 < E) { r = r.substring(0, E) + r.substring(E + w[S].length + 1); break; @@ -7671,16 +7671,16 @@ let ce = function() { return "dv"; if (this.parent == null) return "table"; - var o = d.semantics(), s = 4e3; - (t[0].value.endsWith("_name") || t[0].value.startsWith("name") || t[0].value.startsWith("email")) && (s = d.getOptionValue("namelen")); + var s = d.semantics(), l = 4e3; + (t[0].value.endsWith("_name") || t[0].value.startsWith("name") || t[0].value.startsWith("email")) && (l = d.getOptionValue("namelen")); const u = this.indexOf("vc", !0); if (0 < u) { t[u].begin, t[u].end; let L = t[u].value.substring(2); - L == "" && this.indexOf("(") == u + 1 && (L = t[u + 2].value), L != "" && (s = parseInt(L)), t[u].value.endsWith("k") && (s < 32 ? s = s * 1024 : s = s * 1024 - 1); + L == "" && this.indexOf("(") == u + 1 && (L = t[u + 2].value), L != "" && (l = parseInt(L)), t[u].value.endsWith("k") && (l < 32 ? l = l * 1024 : l = l * 1024 - 1); } - var p = "varchar2(" + s + o + ")"; - r == "plsql" && (p = "varchar2"), t[0].value.endsWith("_id") && u < 0 && this.indexOf("date") < 0 && (p = "number"), t[1] && t[1].value == "id" && (p = "number"), t[0].value == "quantity" && (p = "number"), t[0].value.endsWith("_number") && (p = "number"), t[0].value.endsWith("id") && u < 0 && this.indexOf("/") + 1 == this.indexOf("pk") && (p = "number"), 0 < this.indexOf("int", !0) && (p = "integer"), 0 < u && (p = "varchar2(" + s + o + ")", r == "plsql" && (p = "varchar2")); + var p = "varchar2(" + l + s + ")"; + r == "plsql" && (p = "varchar2"), t[0].value.endsWith("_id") && u < 0 && this.indexOf("date") < 0 && (p = "number"), t[1] && t[1].value == "id" && (p = "number"), t[0].value == "quantity" && (p = "number"), t[0].value.endsWith("_number") && (p = "number"), t[0].value.endsWith("id") && u < 0 && this.indexOf("/") + 1 == this.indexOf("pk") && (p = "number"), 0 < this.indexOf("int", !0) && (p = "integer"), 0 < u && (p = "varchar2(" + l + s + ")", r == "plsql" && (p = "varchar2")); const T = K(i.parseName(), "_", this.parseName()); (t[0].value.endsWith("_yn") || t[0].value.startsWith("is_")) && (p = "varchar2(1 char) constraint " + K(d.objPrefix(), T) + ` `, p += h + h + " ".repeat(i.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"); @@ -7697,10 +7697,10 @@ let ce = function() { if (0 < S && 0 < E && (p += this.content.toLowerCase().substring(t[S + 1].begin, t[E].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value.startsWith("created") || t[0].value.startsWith("updated")) && (p = d.getOptionValue("Date Data Type").toLowerCase()), u < 0 && (0 < this.indexOf("clob") && (p = "clob"), (0 < this.indexOf("blob") || 0 < this.indexOf("file")) && (p = "blob"), 0 < this.indexOf("json") && (p = "clob check (" + this.parseName() + " is json)")), 0 < this.indexOf("tswltz") ? p = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : 0 < this.indexOf("tswtz") || 0 < this.indexOf("tstz") ? p = "TIMESTAMP WITH TIME ZONE".toLowerCase() : 0 < this.indexOf("ts") && (p = "TIMESTAMP".toLowerCase()), r) { if (0 < this.indexOf("fk") || 0 < this.indexOf("reference", !0)) { const L = this.refId(); - let N = "number"; - p == "integer" && (N = p); + let k = "number"; + p == "integer" && (k = p); let F = d.find(L); - return F != null && F.getExplicitPkNode() != null && (N = F.getExplicitPkNode().parseType((R) => !0)), N; + return F != null && F.getExplicitPkNode() != null && (k = F.getExplicitPkNode().parseType((R) => !0)), k; } return p; } @@ -7712,9 +7712,9 @@ let ce = function() { p += " default on null " + D + L + D; } if ((0 < this.indexOf("nn") || this.indexOf("not") + 1 == this.indexOf("null")) && this.indexOf("pk") < 0 && (p += " not null"), (0 < this.indexOf("hidden") || 0 < this.indexOf("invincible")) && (p += " invisible"), p += this.genConstraint(D), 0 < this.indexOf("between")) { - const L = this.indexOf("between"), N = t[L + 1].value + " and " + t[L + 3].value; + const L = this.indexOf("between"), k = t[L + 1].value + " and " + t[L + 3].value; p += " constraint " + K(T, "_bet") + ` -`, p += " check (" + this.parseName() + " between " + N + ")"; +`, p += " check (" + this.parseName() + " between " + k + ")"; } if (0 < this.indexOf("pk")) { let L = " not null"; @@ -7725,17 +7725,17 @@ let ce = function() { }, this.genConstraint = function(r) { let t = ""; if (0 < this.indexOf("check")) { - let o = ""; - i != null && (o = i.parseName() + "_"); - const s = K(o, this.parseName()), u = this.trimmedContent().toLowerCase(), p = u.indexOf("/check"); + let s = ""; + i != null && (s = i.parseName() + "_"); + const l = K(s, this.parseName()), u = this.trimmedContent().toLowerCase(), p = u.indexOf("/check"); let T = u.lastIndexOf("/"); T == p && (T = u.length); let S = this.trimmedContent().substr(p + 6, T - p - 6).trim(); const E = Z(S, !1, !0, ""); let D = h; - i != null && (D = " ".repeat(i.maxChildNameLen())), this.children != null && 0 < this.children.length ? (E[0].value != "(" && (S = "( " + S + ")"), t += h + "constraint " + K(d.objPrefix(), s, "_ck"), t += " check " + S + `, -`) : E[0].value == "(" && E[E.length - 1].value == ")" ? (t += " constraint " + K(d.objPrefix(), s, "_ck") + ` -`, t += h + h + D + "check " + S) : (0 < S.indexOf(", ") ? S = S.replace(/, /g, r + "," + r) : 0 < S.indexOf(",") ? S = S.replace(/,/g, r + "," + r) : S = S.replace(/ /g, r + "," + r), t += " constraint " + K(d.objPrefix(), s, "_ck") + ` + i != null && (D = " ".repeat(i.maxChildNameLen())), this.children != null && 0 < this.children.length ? (E[0].value != "(" && (S = "( " + S + ")"), t += h + "constraint " + K(d.objPrefix(), l, "_ck"), t += " check " + S + `, +`) : E[0].value == "(" && E[E.length - 1].value == ")" ? (t += " constraint " + K(d.objPrefix(), l, "_ck") + ` +`, t += h + h + D + "check " + S) : (0 < S.indexOf(", ") ? S = S.replace(/, /g, r + "," + r) : 0 < S.indexOf(",") ? S = S.replace(/,/g, r + "," + r) : S = S.replace(/ /g, r + "," + r), t += " constraint " + K(d.objPrefix(), l, "_ck") + ` `, t += h + h + D + "check (" + this.parseName() + " in (" + r + S + r + "))", t = t.replace(/''/gm, "'")); } return t; @@ -7744,8 +7744,8 @@ let ce = function() { return t == 0; }, this.getExplicitPkNode = function() { for (var r = 0; r < this.children.length; r++) { - var t = this.children[r], o = t.trimmedContent().toLowerCase(); - if (0 < o.indexOf("/pk")) + var t = this.children[r], s = t.trimmedContent().toLowerCase(); + if (0 < s.indexOf("/pk")) return t; } return null; @@ -7754,33 +7754,33 @@ let ce = function() { r = r.replace(/\/cascade/g, ""); var t = r.indexOf(" id "); if (t < 0 && t == r.length - 3 && (t = r.indexOf(" id")), t < 0 && (t = r.indexOf(" id"), t != r.length - 3 && (t = -1)), t < 0 && (t = r.indexOf("_id "), t != r.length - 4 && (t = -1)), t < 0 && (t = r.indexOf("_id"), t != r.length - 3 && (t = -1)), t < 0 && (t = r.indexOf("Id "), t != r.length - 3 && (t = -1)), 0 < t) { - let o = r.substr(0, t) + "s"; - if (d.find(o) != null || (o = r.substr(0, t), d.find(o) != null)) - return o; + let s = r.substr(0, t) + "s"; + if (d.find(s) != null || (s = r.substr(0, t), d.find(s) != null)) + return s; } return t = r.indexOf("/fk"), 0 < t ? (r = r.substr(t + 3).trim(), t = r.indexOf("/"), 0 < t && (r = r.substring(0, t).trim()), r.replace(" ", "_")) : (t = r.indexOf("/reference"), 0 < t ? (r = r.substr(t + 10).trim(), r.indexOf("s") == 0 && (r = r.substring(1).trim()), t = r.indexOf("/"), 0 < t && (r = r.substring(0, t).trim()), r.replace(" ", "_")) : null); }, this.parseValues = function() { - var r = this.trimmedContent().toUpperCase(), t, o, s; + var r = this.trimmedContent().toUpperCase(), t, s, l; if (0 <= r.indexOf("/CHECK") || 0 <= r.indexOf("/VALUES")) { var u = "/CHECK"; - return t = r.indexOf(u), t < 0 && (u = "/VALUES", t = r.indexOf(u)), o = r.lastIndexOf("/"), o == t && (o = r.length), s = r.substr(t + u.length, o - t - u.length).trim(), 0 < s.indexOf(",") ? (s = s.replace(/ /g, ""), s.split(",")) : s.split(" "); + return t = r.indexOf(u), t < 0 && (u = "/VALUES", t = r.indexOf(u)), s = r.lastIndexOf("/"), s == t && (s = r.length), l = r.substr(t + u.length, s - t - u.length).trim(), 0 < l.indexOf(",") ? (l = l.replace(/ /g, ""), l.split(",")) : l.split(" "); } if (0 <= r.indexOf("/BETWEEN")) { - t = r.indexOf("/BETWEEN"), o = r.lastIndexOf("/"), o == t && (o = r.length), s = r.substr(t + 8, o - t - 8).trim(), s = s.replace(" AND ", " "); - for (var p = [], T = parseInt(s.split(" ")[0]); T <= parseInt(s.split(" ")[1]); T++) + t = r.indexOf("/BETWEEN"), s = r.lastIndexOf("/"), s == t && (s = r.length), l = r.substr(t + 8, s - t - 8).trim(), l = l.replace(" AND ", " "); + for (var p = [], T = parseInt(l.split(" ")[0]); T <= parseInt(l.split(" ")[1]); T++) p.push(T); return p; } return null; }, this.apparentDepth = function() { let r = this.content.split(/ |\t/), t = 0; - for (var o = 0; o < r.length; o++) { - var s = r[o]; - if (s == " ") { + for (var s = 0; s < r.length; s++) { + var l = r[s]; + if (l == " ") { t += this.tab; continue; } - if (s == "") { + if (l == "") { t++; continue; } @@ -7822,26 +7822,26 @@ let ce = function() { let n = r.substr(t + 11).split(" "); this.colprefix = n[0]; } - var o = ""; - const s = d.objPrefix() + this.parseName(); - d.optionEQvalue("pk", "SEQ") && d.optionEQvalue("genpk", !0) && (o = o + "create sequence " + s + `_seq; + var s = ""; + const l = d.objPrefix() + this.parseName(); + d.optionEQvalue("pk", "SEQ") && d.optionEQvalue("genpk", !0) && (s = s + "create sequence " + l + `_seq; -`), o = o + "create table " + s + ` ( +`), s = s + "create table " + l + ` ( `; var u = h + " ".repeat(this.maxChildNameLen() - 2); let p = this.getGenIdColName(); if (p != null) { let a = "not null"; - d.optionEQvalue("pk", "identityDataType") && (a = "GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), d.optionEQvalue("pk", "seq") && (a = "default on null " + s + "_seq.NEXTVAL ".toLowerCase()), d.optionEQvalue("pk", "guid") && (a = "default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), o += h + p + u + "number " + a + ` + d.optionEQvalue("pk", "identityDataType") && (a = "GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), d.optionEQvalue("pk", "seq") && (a = "default on null " + l + "_seq.NEXTVAL ".toLowerCase()), d.optionEQvalue("pk", "guid") && (a = "default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), s += h + p + u + "number " + a + ` `; const n = K(d.objPrefix("no schema") + this.parseName(), "_", p); - o += h + h + " ".repeat(this.maxChildNameLen()) + "constraint " + K(n, "_pk") + ` primary key, + s += h + h + " ".repeat(this.maxChildNameLen()) + "constraint " + K(n, "_pk") + ` primary key, `; } else { let a = this.getExplicitPkNode(); if (a != null) { let n = h + " ".repeat(this.maxChildNameLen() - a.parseName().length); - o += h + a.parseName() + n + a.parseType() + `, + s += h + a.parseName() + n + a.parseType() + `, `; } } @@ -7850,8 +7850,8 @@ let ce = function() { const m = this.findChild(a); m != null && (c = m.parseType("fk")); let C = d.find(n), P = ""; - C != null && C.getExplicitPkNode() != null ? c = C.getExplicitPkNode().parseType((v) => !0) : C == null && (C = d.find(a), C.isMany2One() & !a.endsWith("_id") && (n = a, a = W(a), P = "_id")), u = h + " ".repeat(this.maxChildNameLen() - a.length), o += h + a + P + u + c + ` -`, o += h + h + " ".repeat(this.maxChildNameLen()) + "constraint " + s + "_" + a + `_fk + C != null && C.getExplicitPkNode() != null ? c = C.getExplicitPkNode().parseType((v) => !0) : C == null && (C = d.find(a), C.isMany2One() & !a.endsWith("_id") && (n = a, a = W(a), P = "_id")), u = h + " ".repeat(this.maxChildNameLen() - a.length), s += h + a + P + u + c + ` +`, s += h + h + " ".repeat(this.maxChildNameLen()) + "constraint " + l + "_" + a + `_fk `; let f = ""; 0 <= r.indexOf("/CASCADE") && (f = " on delete cascade"); @@ -7864,13 +7864,13 @@ let ce = function() { break; } } - o += h + h + " ".repeat(this.maxChildNameLen()) + "references " + d.objPrefix() + n + f + A + `, + s += h + h + " ".repeat(this.maxChildNameLen()) + "references " + d.objPrefix() + n + f + A + `, `; } if (d.optionEQvalue("rowkey", !0) || 0 < r.indexOf("/ROWKEY")) { let a = h + " ".repeat(this.maxChildNameLen() - 7); - o += h + "row_key" + a + `varchar2(30 char) -`, o += h + h + " ".repeat(this.maxChildNameLen()) + "constraint " + s + `_row_key_unq unique not null, + s += h + "row_key" + a + `varchar2(30 char) +`, s += h + h + " ".repeat(this.maxChildNameLen()) + "constraint " + l + `_row_key_unq unique not null, `; } for (let a = 0; a < this.children.length; a++) { @@ -7878,99 +7878,104 @@ let ce = function() { if (!(p != null && n.parseName() == "id") && !(0 < n.children.length) && n.refId() == null) { if (n == this.getExplicitPkNode()) continue; - if (o += h + n.singleDDL() + `, + if (s += h + n.singleDDL() + `, `, 0 < n.indexOf("file")) { const c = n.parseName().toUpperCase(); let m = c + "_FILENAME", C = h + " ".repeat(this.maxChildNameLen() - m.length); - o += h + m.toLowerCase() + C + "varchar2(255" + d.semantics() + `), -`, m = c + "_MIMETYPE", C = h + " ".repeat(this.maxChildNameLen() - m.length), o += h + m.toLowerCase() + C + "varchar2(255" + d.semantics() + `), -`, m = c + "_CHARSET", C = h + " ".repeat(this.maxChildNameLen() - m.length), o += h + m.toLowerCase() + C + "varchar2(255" + d.semantics() + `), -`, m = c + "_LASTUPD", C = h + " ".repeat(this.maxChildNameLen() - m.length), o += h + m.toLowerCase() + C + d.getOptionValue("Date Data Type").toLowerCase() + `, + s += h + m.toLowerCase() + C + "varchar2(255" + d.semantics() + `), +`, m = c + "_MIMETYPE", C = h + " ".repeat(this.maxChildNameLen() - m.length), s += h + m.toLowerCase() + C + "varchar2(255" + d.semantics() + `), +`, m = c + "_CHARSET", C = h + " ".repeat(this.maxChildNameLen() - m.length), s += h + m.toLowerCase() + C + "varchar2(255" + d.semantics() + `), +`, m = c + "_LASTUPD", C = h + " ".repeat(this.maxChildNameLen() - m.length), s += h + m.toLowerCase() + C + d.getOptionValue("Date Data Type").toLowerCase() + `, `; } } } if (d.optionEQvalue("rowVersion", "yes") || 0 < r.indexOf("/ROWVERSION")) { let a = h + " ".repeat(this.maxChildNameLen() - 11); - o += h + "row_version" + a + `integer not null, + s += h + "row_version" + a + `integer not null, `; } if (d.optionEQvalue("Audit Columns", "yes") || 0 < r.indexOf("/AUDITCOLS") || 0 < r.indexOf("/AUDIT COL")) { let a = d.getOptionValue("createdcol"), n = h + " ".repeat(this.maxChildNameLen() - a.length); - o += h + a + n + d.getOptionValue("Date Data Type").toLowerCase() + ` not null, + s += h + a + n + d.getOptionValue("Date Data Type").toLowerCase() + ` not null, `; let c = d.getOptionValue("createdbycol"); - n = h + " ".repeat(this.maxChildNameLen() - c.length), o += h + c + n + "varchar2(255" + d.semantics() + `) not null, + n = h + " ".repeat(this.maxChildNameLen() - c.length), s += h + c + n + "varchar2(255" + d.semantics() + `) not null, `; let m = d.getOptionValue("updatedcol"); - n = h + " ".repeat(this.maxChildNameLen() - m.length), o += h + m + n + d.getOptionValue("Date Data Type").toLowerCase() + ` not null, + n = h + " ".repeat(this.maxChildNameLen() - m.length), s += h + m + n + d.getOptionValue("Date Data Type").toLowerCase() + ` not null, `; let C = d.getOptionValue("updatedbycol"); - n = h + " ".repeat(this.maxChildNameLen() - C.length), o += h + C + n + "varchar2(255" + d.semantics() + `) not null, + n = h + " ".repeat(this.maxChildNameLen() - C.length), s += h + C + n + "varchar2(255" + d.semantics() + `) not null, `; } var T = d.additionalColumns(); for (let a in T) { var S = T[a]; - u = h + " ".repeat(this.maxChildNameLen() - a.length), o += h + a.toUpperCase() + u + S + ` not null, + u = h + " ".repeat(this.maxChildNameLen() - a.length), s += h + a.toUpperCase() + u + S + ` not null, `; } - o += this.genConstraint(), o.lastIndexOf(`, -`) == o.length - 2 && (o = o.substring(0, o.length - 2) + ` -`), o += ")" + (d.optionEQvalue("compress", "yes") || 0 < r.indexOf("/COMPRESS") ? " compress" : "") + `; + s += this.genConstraint(), s.lastIndexOf(`, +`) == s.length - 2 && (s = s.substring(0, s.length - 2) + ` +`), s += ")" + (d.optionEQvalue("compress", "yes") || 0 < r.indexOf("/COMPRESS") ? " compress" : "") + `; `; const E = r.indexOf("/AUDIT"), D = r.indexOf("/AUDITCOLS"), L = r.indexOf("/AUDIT COL"); - 0 < E && D < 0 && L < 0 && (o += "audit all on " + s + `; + 0 < E && D < 0 && L < 0 && (s += "audit all on " + l + `; `); - let N = 1; + let k = 1; for (let a in this.fks) if (!this.isMany2One()) { var F = this.fks[a], R = F, H = a; - H == null && (H = W(R) + "_id"), N == 1 && (o += `-- table index -`), o += "create index " + s + "_i" + N++ + " on " + s + " (" + H + `); + H == null && (H = W(R) + "_id"), k == 1 && (s += `-- table index +`), s += "create index " + l + "_i" + k++ + " on " + l + " (" + H + `); `; } let G = r.indexOf("/UNIQUE "); if (0 < G) { let a = r.substr(G + 8), n = a.indexOf("/"); - 0 < n && (a = a.substring(0, n).trim()), o += "alter table " + s + " add constraint " + s + "_uk unique (" + a + `); + 0 < n && (a = a.substring(0, n).trim()), s += "alter table " + l + " add constraint " + l + "_uk unique (" + a + `); `; } for (let a = 0; a < this.children.length; a++) { var e = this.children[a]; let n = e.trimmedContent().toUpperCase(); - (0 <= n.indexOf("/IDX") || 0 <= n.indexOf("/INDEX")) && (N == 1 && (o += `-- table index -`), o += "create index " + s + "_i" + N++ + " on " + s + " (" + e.parseName() + `); + (0 <= n.indexOf("/IDX") || 0 <= n.indexOf("/INDEX")) && (k == 1 && (s += `-- table index +`), s += "create index " + l + "_i" + k++ + " on " + l + " (" + e.parseName() + `); `); } - this.comment != null && (o += "comment on table " + s + " is '" + this.comment + `'; + this.comment != null && (s += "comment on table " + l + " is '" + this.comment + `'; `); for (let a = 0; a < this.children.length; a++) { let n = this.children[a]; - n.comment != null && n.children.length == 0 && (o += "comment on column " + s + "." + n.parseName() + " is '" + n.comment + `'; + n.comment != null && n.children.length == 0 && (s += "comment on column " + l + "." + n.parseName() + " is '" + n.comment + `'; `); } - return o += ` -`, o; + return s += ` +`, s; }, this.toDDL = function() { if (this.parseType() == "view" || this.parseType() == "dv") return ""; var r = this.orderedTableNodes(); let t = ""; - for (let o = 0; o < r.length; o++) - t += r[o].singleDDL(); + for (let s = 0; s < r.length; s++) + t += r[s].singleDDL(); return t; }, this.orderedTableNodes = function() { var r = [this]; - for (let o = 1; o < this.descendants().length; o++) { - var t = this.descendants()[o]; - t.children.length != 0 && (t.isMany2One() ? r.unshift(t) : r.push(t)); + for (let s = 1; s < this.descendants().length; s++) { + var t = this.descendants()[s]; + t.children.length != 0 && (t.isMany2One() ? t.isContainedIn(r) || r.unshift(t) : t.isContainedIn(r) || r.push(t)); } return r; + }, this.isContainedIn = function(r) { + for (const t in r) + if (r[t].parseName() == this.parseName()) + return !0; + return !1; }, this.generateDrop = function() { let r = d.objPrefix() + this.parseName(), t = ""; return this.parseType() == "view" && (t = "drop view " + r + `; @@ -7990,111 +7995,111 @@ let ce = function() { throw m; } let r = d.objPrefix() + this.parseName(); - var o = this.trimmedContent().split(" "), s = "create or replace view " + r + ` as + var s = this.trimmedContent().split(" "), l = "create or replace view " + r + ` as `; - s += `select + l += `select `; - for (var u = 0, p = 2; p < o.length; p++) { - let m = d.find(o[p]); + for (var u = 0, p = 2; p < s.length; p++) { + let m = d.find(s[p]); if (m == null) return ""; - var T = (o[p] + ".id").length; + var T = (s[p] + ".id").length; u < T && (u = T); for (var S = 0; S < m.children.length; S++) { var E = m.children[S]; - T = (o[p] + "." + E.parseName()).length, u < T && (u = T); + T = (s[p] + "." + E.parseName()).length, u < T && (u = T); } } var D = {}; - for (let m = 2; m < o.length; m++) { - let C = d.find(o[m]); + for (let m = 2; m < s.length; m++) { + let C = d.find(s[m]); if (C != null) for (let P = 0; P < C.children.length; P++) { - var L = C.children[P].parseName(), N = D[L]; - N == null && (N = 0), D[L] = N + 1; + var L = C.children[P].parseName(), k = D[L]; + k == null && (k = 0), D[L] = k + 1; } } - for (let m = 2; m < o.length; m++) { - let C = d.find(o[m]); + for (let m = 2; m < s.length; m++) { + let C = d.find(s[m]); if (C == null) continue; - let P = " ".repeat(u - (o[m] + ".id").length); - s += h + o[m] + ".id" + h + P + W(o[m]) + `_id, + let P = " ".repeat(u - (s[m] + ".id").length); + l += h + s[m] + ".id" + h + P + W(s[m]) + `_id, `; for (let A = 0; A < C.children.length; A++) { let v = C.children[A]; if (v.children.length == 0) { - P = " ".repeat(u - (o[m] + "." + v.parseName()).length); + P = " ".repeat(u - (s[m] + "." + v.parseName()).length); var F = ""; - 1 < D[v.parseName()] && (F = W(o[m]) + "_"), s += h + o[m] + "." + v.parseName() + h + P + F + v.parseName() + `, + 1 < D[v.parseName()] && (F = W(s[m]) + "_"), l += h + s[m] + "." + v.parseName() + h + P + F + v.parseName() + `, `; } } let f = C.trimmedContent().toUpperCase(); if (d.optionEQvalue("rowVersion", "yes") || 0 < f.indexOf("/ROWVERSION")) { let A = h + " ".repeat(C.maxChildNameLen() - 11); - s += h + o[m] + ".row_version" + W(A + o[m]) + `_row_version, + l += h + s[m] + ".row_version" + W(A + s[m]) + `_row_version, `; } if (d.optionEQvalue("rowkey", "yes") || 0 < f.indexOf("/ROWKEY")) { let A = h + " ".repeat(C.maxChildNameLen() - 7); - s += h + o[m] + ".ROW_KEY" + W(A + o[m]) + `_ROW_KEY, + l += h + s[m] + ".ROW_KEY" + W(A + s[m]) + `_ROW_KEY, `; } if (d.optionEQvalue("Audit Columns", "yes") || 0 < f.indexOf("/AUDITCOLS") || 0 < f.indexOf("/AUDIT COL")) { let A = d.getOptionValue("createdcol"), v = h + " ".repeat(C.maxChildNameLen() - A.length); - s += h + o[m] + "." + A + W(v + o[m]) + "_" + A + `, + l += h + s[m] + "." + A + W(v + s[m]) + "_" + A + `, `; let y = d.getOptionValue("createdbycol"); - v = h + " ".repeat(C.maxChildNameLen() - y.length), s += h + o[m] + "." + y + W(v + o[m]) + "_" + y + `, + v = h + " ".repeat(C.maxChildNameLen() - y.length), l += h + s[m] + "." + y + W(v + s[m]) + "_" + y + `, `; let _ = d.getOptionValue("updatedcol"); - v = h + " ".repeat(C.maxChildNameLen() - _.length), s += h + o[m] + "." + _ + W(v + o[m]) + "_" + _ + `, + v = h + " ".repeat(C.maxChildNameLen() - _.length), l += h + s[m] + "." + _ + W(v + s[m]) + "_" + _ + `, `; let O = d.getOptionValue("updatedbycol"); - v = h + " ".repeat(C.maxChildNameLen() - O.length), s += h + o[m] + "." + O + W(v + o[m]) + "_" + O + `, + v = h + " ".repeat(C.maxChildNameLen() - O.length), l += h + s[m] + "." + O + W(v + s[m]) + "_" + O + `, `; } } - s.lastIndexOf(`, -`) == s.length - 2 && (s = s.substr(0, s.length - 2) + ` -`), s += `from + l.lastIndexOf(`, +`) == l.length - 2 && (l = l.substr(0, l.length - 2) + ` +`), l += `from `; - for (let m = 2; m < o.length; m++) { - let C = " ".repeat(u - o[m].length); - var R = o[m]; - d.objPrefix() != null && d.objPrefix() != "" && (R = d.objPrefix() + o[m] + C + o[m]), s += h + R + `, + for (let m = 2; m < s.length; m++) { + let C = " ".repeat(u - s[m].length); + var R = s[m]; + d.objPrefix() != null && d.objPrefix() != "" && (R = d.objPrefix() + s[m] + C + s[m]), l += h + R + `, `; } - s.lastIndexOf(`, -`) == s.length - 2 && (s = s.substr(0, s.length - 2) + ` -`), s += `where + l.lastIndexOf(`, +`) == l.length - 2 && (l = l.substr(0, l.length - 2) + ` +`), l += `where `; - for (let m = 2; m < o.length; m++) - for (let C = 2; C < o.length; C++) + for (let m = 2; m < s.length; m++) + for (let C = 2; C < s.length; C++) if (C != m) { - var H = o[m], G = o[C], e = d.find(H); + var H = s[m], G = s[C], e = d.find(H); if (e != null) { var a = d.find(G); if (a != null) for (var n in e.fks) { var c = e.fks[n]; - c == G && (s += h + H + "." + W(c) + "_id(+) = " + G + `.id and + c == G && (l += h + H + "." + W(c) + "_id(+) = " + G + `.id and `); } } } - return s = b(s, `where -`), s.lastIndexOf(" and") == s.length - 4 && (s = s.substring(0, s.length - 4) + ` -`), s += `/ -`, s.toLowerCase(); + return l = b(l, `where +`), l.lastIndexOf(" and") == l.length - 4 && (l = l.substring(0, l.length - 4) + ` +`), l += `/ +`, l.toLowerCase(); }, this.restEnable = function() { if (this.parseType() != "table" || this.trimmedContent().toUpperCase().indexOf("/REST") < 0) return ""; - let o = this.parseName(); - const s = o.indexOf('"') == 0; - let u = d.objPrefix() + o; - return s ? u = d.objPrefix() + o.substring(1, o.length - 1) : u = (d.objPrefix() + o).toUpperCase(), `begin + let s = this.parseName(); + const l = s.indexOf('"') == 0; + let u = d.objPrefix() + s; + return l ? u = d.objPrefix() + s.substring(1, s.length - 1) : u = (d.objPrefix() + s).toUpperCase(), `begin ` + h + "ords.enable_object(p_enabled=>TRUE, p_object=>'" + u + `'); end; / @@ -8105,14 +8110,14 @@ end; let r = ""; d.optionEQvalue("editionable", "yes") && (r = " editionable"); let t = d.objPrefix() + this.parseName(); - var o = "create or replace" + r + " trigger " + t.toLowerCase() + `_BIU + var s = "create or replace" + r + " trigger " + t.toLowerCase() + `_BIU `.toLowerCase(); - o += ` before insert or update -`, o += " on " + t.toLowerCase() + ` -`, o += ` for each row + s += ` before insert or update +`, s += " on " + t.toLowerCase() + ` +`, s += ` for each row `; - let s = this.trimmedContent().toUpperCase(); - (d.optionEQvalue("Rowkey", "yes") || 0 < s.indexOf("/ROWKEY")) && (o += `declare + let l = this.trimmedContent().toUpperCase(); + (d.optionEQvalue("Rowkey", "yes") || 0 < l.indexOf("/ROWKEY")) && (s += `declare function compress_int (n in integer ) return varchar2 as ret varchar2(30); @@ -8135,115 +8140,115 @@ end; if length(ret) < 5 then ret := lpad(ret, 4, 'A'); end if ; return upper(ret); end compress_int; -`), o += `begin +`), s += `begin `; var u = !1, p = "user"; - d.optionEQvalue("apex", "yes") && (p = "coalesce(sys_context('APEX$SESSION','APP_USER'),user)"), (d.optionEQvalue("rowkey", "yes") || 0 < s.indexOf("/ROWKEY")) && (o += ` if inserting then -`, o += ` :new.row_key := compress_int(row_key_seq.nextval); -`, o += ` end if; + d.optionEQvalue("apex", "yes") && (p = "coalesce(sys_context('APEX$SESSION','APP_USER'),user)"), (d.optionEQvalue("rowkey", "yes") || 0 < l.indexOf("/ROWKEY")) && (s += ` if inserting then +`, s += ` :new.row_key := compress_int(row_key_seq.nextval); +`, s += ` end if; `, u = !0); for (var T = 0; T < this.children.length; T++) { var S = this.children[T]; - let N = null; - 0 < S.content.indexOf("/lower") ? N = "LOWER".toLowerCase() : 0 < S.content.indexOf("/upper") && (N = "UPPER".toLowerCase()), N != null && (o += " :new." + S.parseName().toLowerCase() + " := " + N + "(:new." + S.parseName().toLowerCase() + `); + let k = null; + 0 < S.content.indexOf("/lower") ? k = "LOWER".toLowerCase() : 0 < S.content.indexOf("/upper") && (k = "UPPER".toLowerCase()), k != null && (s += " :new." + S.parseName().toLowerCase() + " := " + k + "(:new." + S.parseName().toLowerCase() + `); `, u = !0); } - (d.optionEQvalue("Row Version Number", "yes") || 0 < s.indexOf("/ROWVERSION")) && (o += ` if inserting then -`, o += ` :new.row_version := 1; -`, o += ` elsif updating then -`, o += ` :new.row_version := NVL(:old.row_version, 0) + 1; -`, o += ` end if; -`, u = !0), (d.optionEQvalue("Audit Columns", "yes") || 0 < s.indexOf("/AUDITCOLS") || 0 < s.indexOf("/AUDIT COL")) && (o += ` if inserting then -`, o += " :new." + d.getOptionValue("createdcol") + ` := SYSDATE; -`.toLowerCase(), o += " :new." + d.getOptionValue("createdbycol") + " := " + p + `; -`.toLowerCase(), o += ` end if; -`, o += " :new." + d.getOptionValue("updatedcol") + ` := SYSDATE; -`.toLowerCase(), o += " :new." + d.getOptionValue("updatedbycol") + " := " + p + `; + (d.optionEQvalue("Row Version Number", "yes") || 0 < l.indexOf("/ROWVERSION")) && (s += ` if inserting then +`, s += ` :new.row_version := 1; +`, s += ` elsif updating then +`, s += ` :new.row_version := NVL(:old.row_version, 0) + 1; +`, s += ` end if; +`, u = !0), (d.optionEQvalue("Audit Columns", "yes") || 0 < l.indexOf("/AUDITCOLS") || 0 < l.indexOf("/AUDIT COL")) && (s += ` if inserting then +`, s += " :new." + d.getOptionValue("createdcol") + ` := SYSDATE; +`.toLowerCase(), s += " :new." + d.getOptionValue("createdbycol") + " := " + p + `; +`.toLowerCase(), s += ` end if; +`, s += " :new." + d.getOptionValue("updatedcol") + ` := SYSDATE; +`.toLowerCase(), s += " :new." + d.getOptionValue("updatedbycol") + " := " + p + `; `.toLowerCase(), u = !0); var E = d.additionalColumns(); for (var D in E) { var L = E[D]; - o += " if :new." + D + ` is null then -`, L.startsWith("INT") ? o += " " + D + ` := 0; -` : o += " " + D + ` := 'N/A'; -`, o += ` end if; + s += " if :new." + D + ` is null then +`, L.startsWith("INT") ? s += " " + D + ` := 0; +` : s += " " + D + ` := 'N/A'; +`, s += ` end if; `, u = !0; } - return u ? (o += "end " + t.toLowerCase() + `_BIU; + return u ? (s += "end " + t.toLowerCase() + `_BIU; / -`.toLowerCase(), o) : ""; +`.toLowerCase(), s) : ""; }, this.procDecl = function(r) { let t = ""; r != "get" && (t = " default null"); - let o = "out"; - r != "get" && (o = " in"); - let s = h + "procedure " + r + `_row ( + let s = "out"; + r != "get" && (s = " in"); + let l = h + "procedure " + r + `_row ( `; - s += h + h + "p_id in number" + t; + l += h + h + "p_id in number" + t; for (var u in this.fks) { let T = this.fks[u], S = "number", E = d.find(T); - E != null && E.getExplicitPkNode() != null && (S = E.getExplicitPkNode().parseType((D) => !0)), s += `, -`, s += h + h + "P_" + u + " " + o + " " + S + t; + E != null && E.getExplicitPkNode() != null && (S = E.getExplicitPkNode().parseType((D) => !0)), l += `, +`, l += h + h + "P_" + u + " " + s + " " + S + t; } for (let T = 0; T < this.children.length; T++) { var p = this.children[T]; - p.refId() == null && p.children.length == 0 && (s += `, -`, s += h + h + "P_" + p.parseName() + " " + o + " " + p.parseType("plsql") + t); + p.refId() == null && p.children.length == 0 && (l += `, +`, l += h + h + "P_" + p.parseName() + " " + s + " " + p.parseType("plsql") + t); } - return s += ` - )`, s; + return l += ` + )`, l; }, this.procBody = function(r) { - let t = d.objPrefix() + this.parseName(), o = h + `is + let t = d.objPrefix() + this.parseName(), s = h + `is `; - o += h + `begin + s += h + `begin `; - let s = h + h + "for c1 in (select * from " + t + ` where id = p_id) loop + let l = h + h + "for c1 in (select * from " + t + ` where id = p_id) loop `; - r == "insert" && (s = h + h + "insert into " + t + ` ( -`, s += h + h + h + "id"), r == "update" && (s = h + h + "update " + t + ` set -`, s += h + h + h + "id = p_id"), o += s; + r == "insert" && (l = h + h + "insert into " + t + ` ( +`, l += h + h + h + "id"), r == "update" && (l = h + h + "update " + t + ` set +`, l += h + h + h + "id = p_id"), s += l; for (let S in this.fks) { let E = this.fks[S], D = d.find(E); - D != null && D.getExplicitPkNode() != null && D.getExplicitPkNode().parseType((N) => !0), (r == "insert" || r == "update") && (o += `, + D != null && D.getExplicitPkNode() != null && D.getExplicitPkNode().parseType((k) => !0), (r == "insert" || r == "update") && (s += `, `); let L = h + h + h + "P_" + S + " := c1." + S + `; `; r == "insert" && (L = h + h + h + S), r == "update" && (L = h + h + h + S + " = P_" + S + ` -`), o += L; +`), s += L; } for (var u = 0; u < this.children.length; u++) { var p = this.children[u]; if (p.refId() != null || p.children.length != 0) continue; - (r == "insert" || r == "update") && (o += `, + (r == "insert" || r == "update") && (s += `, `); let S = h + h + h + "P_" + p.parseName().toLowerCase() + " := c1." + p.parseName().toLowerCase() + `; `; r == "insert" && (S = h + h + h + p.parseName().toLowerCase()), r == "update" && (S = h + h + h + p.parseName().toLowerCase() + " = P_" + p.parseName().toLowerCase() + ` -`), o += S; +`), s += S; } if (r == "insert") { - o += ` + s += ` ` + h + h + `) values ( -`, o += h + h + h + "p_id"; +`, s += h + h + h + "p_id"; for (let S in this.fks) - o += `, -`, o += h + h + h + "p_" + S; + s += `, +`, s += h + h + h + "p_" + S; for (let S = 0; S < this.children.length; S++) { let E = this.children[S]; - E.refId() == null && E.children.length == 0 && (o += `, -`, o += h + h + h + "p_" + E.parseName()); + E.refId() == null && E.children.length == 0 && (s += `, +`, s += h + h + h + "p_" + E.parseName()); } } let T = ` end loop; `; return r == "insert" && (T = ` -` + h + h + ");"), r == "update" && (T = h + h + "where id = p_id;"), o += T, o += ` +` + h + h + ");"), r == "update" && (T = h + h + "where id = p_id;"), s += T, s += ` ` + h + "end " + r + `_row; - `, o += ` - `, o; + `, s += ` + `, s; }, this.generateTAPI = function() { if (this.children.length == 0) return ""; @@ -8284,74 +8289,74 @@ is let r = this.trimmedContent().toLowerCase(), t = r.indexOf("/insert "); if (0 < t) { r = r.substr(t + 8); - let o = r.split(" "), s = parseInt(o[0]); + let s = r.split(" "), l = parseInt(s[0]); const u = d.getOptionValue("datalimit"); - return u < s && (s = u), s; + return u < l && (l = u), l; } return 0; }, this.generateData = function(r) { if (Ce(), d.optionEQvalue("inserts", !1)) return ""; - const t = this.inserts4tbl(r), o = this.orderedTableNodes(); - let s = ""; - for (let u = 0; u < o.length; u++) { - const p = t[o[u].parseName()]; - p != null && (s += p); + const t = this.inserts4tbl(r), s = this.orderedTableNodes(); + let l = ""; + for (let u = 0; u < s.length; u++) { + const p = t[s[u].parseName()]; + p != null && (l += p); } - return s; + return l; }, this.inserts4tbl = function(r) { let t = {}; if (d.optionEQvalue("inserts", !1)) return ""; - let o = d.objPrefix() + this.parseName(), s = "", u = null, p = null; + let s = d.objPrefix() + this.parseName(), l = "", u = null, p = null; for (let S = 0; S < this.cardinality(); S++) { let E = null; if (r != null) { - const L = r[o]; + const L = r[s]; L != null && Array.isArray(L) && (E = L[S]); } - s += "insert into " + o + ` ( + l += "insert into " + s + ` ( `; let D = this.getGenIdColName(); if (D != null) - u = D, s += h + u + `, + u = D, l += h + u + `, `; else { let L = this.getExplicitPkNode(); - L != null && (u = L.parseName(), s += h + u + `, + L != null && (u = L.parseName(), l += h + u + `, `); } for (let L in this.fks) { - let N = this.fks[L], F = d.find(N), R = ""; - F == null && (F = d.find(L), F.isMany2One() & !L.endsWith("_id") && (N = L, L = W(L), R = "_id")), s += h + L + R + `, + let k = this.fks[L], F = d.find(k), R = ""; + F == null && (F = d.find(L), F.isMany2One() & !L.endsWith("_id") && (k = L, L = W(L), R = "_id")), l += h + L + R + `, `; } for (let L = 0; L < this.children.length; L++) { - let N = this.children[L]; - if (!(D != null && N.parseName() == "id") && N.refId() == null) { - if (N == this.getExplicitPkNode()) + let k = this.children[L]; + if (!(D != null && k.parseName() == "id") && k.refId() == null) { + if (k == this.getExplicitPkNode()) continue; - N.children.length == 0 && (s += h + N.parseName() + `, + k.children.length == 0 && (l += h + k.parseName() + `, `); } } - if (s.lastIndexOf(`, -`) == s.length - 2 && (s = s.substr(0, s.length - 2) + ` -`), s += `) values ( + if (l.lastIndexOf(`, +`) == l.length - 2 && (l = l.substr(0, l.length - 2) + ` +`), l += `) values ( `, D != null) - p = S + 1, s += h + p + `, + p = S + 1, l += h + p + `, `; else { let L = this.getExplicitPkNode(); if (L != null) { - const N = L.parseName(); - let F = g(d.data, null, N, this.parseName()), R = -1; - E != null && (R = E[N]), F != null && F[S] != null && (R = F[S]), R.replaceAll && (R = "'" + R + "'"), p = R != -1 ? R : S + 1, s += h + p + `, + const k = L.parseName(); + let F = g(d.data, null, k, this.parseName()), R = -1; + E != null && (R = E[k]), F != null && F[S] != null && (R = F[S]), R.replaceAll && (R = "'" + R + "'"), p = R != -1 ? R : S + 1, l += h + p + `, `; } } for (let L in this.fks) { - let N = this.fks[L], F = d.find(N), R = [], H = "INTEGER"; + let k = this.fks[L], F = d.find(k), R = [], H = "INTEGER"; for (let G = 1; G <= F.cardinality(); G++) R.push(G); if (E != null) { @@ -8359,10 +8364,10 @@ is if (G != null) typeof G == "string" && (H = "STRING"), R = [], R[0] = G; else { - const e = o + "_" + N, a = d.data[e]; + const e = s + "_" + k, a = d.data[e]; if (a != null) { for (const n in a) - if (a[n][o + "_id"] == p) { + if (a[n][s + "_id"] == p) { const c = a[n][L]; c != null && (typeof c == "string" && (H = "STRING"), R = [], R[0] = c); break; @@ -8373,40 +8378,40 @@ is } } } - s += h + le(d.getOptionValue("Data Language"), se(o, W(N) + "_id", H, R)) + `, + l += h + le(d.getOptionValue("Data Language"), se(s, W(k) + "_id", H, R)) + `, `; } for (let L = 0; L < this.children.length; L++) { - let N = this.children[L]; - if (!(D != null && N.parseName() == "id") && N.refId() == null) { - if (N == this.getExplicitPkNode()) + let k = this.children[L]; + if (!(D != null && k.parseName() == "id") && k.refId() == null) { + if (k == this.getExplicitPkNode()) continue; - if (N.children.length == 0) { - let F = N.parseValues(), R = N.parseName(); + if (k.children.length == 0) { + let F = k.parseValues(), R = k.parseName(); if (E != null) { let G = E[R]; G != null && (F = [], F[0] = G); } - let H = se(o, R, N.parseType(), F); - s += h + le(d.getOptionValue("Data Language"), H) + `, + let H = se(s, R, k.parseType(), F); + l += h + le(d.getOptionValue("Data Language"), H) + `, `; } } } - s.lastIndexOf(`, -`) == s.length - 2 && (s = s.substr(0, s.length - 2) + ` -`), s += `); + l.lastIndexOf(`, +`) == l.length - 2 && (l = l.substr(0, l.length - 2) + ` +`), l += `); `; } - s != "" && (s += ` + l != "" && (l += ` commit; `); let T = this.getGenIdColName(); - T != null && 1 < this.cardinality() && !d.optionEQvalue("pk", "guid") && (s += "alter table " + o + ` + T != null && 1 < this.cardinality() && !d.optionEQvalue("pk", "guid") && (l += "alter table " + s + ` modify ` + T + " generated always as identity restart start with " + (this.cardinality() + 1) + `; -`), t[o] = s; +`), t[s] = l; for (let S = 0; S < this.children.length; S++) { const E = this.children[S]; 0 < E.children.length && (t = { ...t, ...E.inserts4tbl(r) }); @@ -8418,26 +8423,26 @@ modify ` + T + " generated always as identity restart start with " + (this.card if (!r.endsWith("_id")) return !1; var t = r.slice(0, -3); - return this.children.some((o) => o.children.length > 0 && o.parseName() == t && !o.isArray()); + return this.children.some((s) => s.children.length > 0 && s.parseName() == t && !s.isArray()); }, this.generateSelectJsonBottomUp = function(r) { throw new Error("generateSelectJsonBottomUp() not implemented yet"); }, this.one2many2oneUnsupoported = "one to many to one is not supported", this.generateSelectJsonTopDown = function(r) { var t = this.parseName(); - let o = ""; - this.getExplicitPkNode == null && (o += r + "'" + this.getGenIdColName() + "' : " + t + "." + this.getGenIdColName() + `, + let s = ""; + this.getExplicitPkNode == null && (s += r + "'" + this.getGenIdColName() + "' : " + t + "." + this.getGenIdColName() + `, `); - for (var s = 0; s < this.children.length; s++) { - var u = this.children[s], p = u.parseName(); + for (var l = 0; l < this.children.length; l++) { + var u = this.children[l], p = u.parseName(); if (u.children.length == 0) { if (this.hasNonArrayChildId(p)) continue; - o += r + "'" + p + "' : " + t + "." + p; + s += r + "'" + p + "' : " + t + "." + p; } else { - if (o += r + "'" + p + `' : [ -`, u.isMany2One(), r += " ", o += r + `select JSON { + if (s += r + "'" + p + `' : [ +`, u.isMany2One(), r += " ", s += r + `select JSON { `, this.isMany2One()) throw new Error(this.one2many2oneUnsupoported); - o += u.generateSelectJsonTopDown(r + " "), o += r + " WITH NOCHECK } from " + p + ` with INSERT UPDATE + s += u.generateSelectJsonTopDown(r + " "), s += r + " WITH NOCHECK } from " + p + ` with INSERT UPDATE `; let E = null; for (var T in u.fks) { @@ -8448,61 +8453,61 @@ modify ` + T + " generated always as identity restart start with " + (this.card } } const D = t + "." + this.getPkName(), L = p + "." + E; - o += r + "where " + L + " = " + D + ` -`, r = r.slice(0, -2), o += r + "]"; + s += r + "where " + L + " = " + D + ` +`, r = r.slice(0, -2), s += r + "]"; } - o += s < this.children.length - 1 ? `, + s += l < this.children.length - 1 ? `, ` : ` `; } - return o[o.length - 2] == "," ? o.slice(0, -2) + ` -` : o; + return s[s.length - 2] == "," ? s.slice(0, -2) + ` +` : s; }, this.generateDualityView = function() { var r = this.trimmedContent(), t = r.split(" "); if (3 < t.length) throw "max 1 table is allowed in DV"; - var o = "", s = d.find(t[2]); - return s != null && (o += "create or replace json relational duality view " + t[1] + ` as -`, o += `select JSON { -`, o += s.isMany2One() ? s.generateSelectJsonBottomUp(" ") : s.generateSelectJsonTopDown(" "), o += "} from " + s.parseName() + ` with INSERT UPDATE DELETE; + var s = "", l = d.find(t[2]); + return l != null && (s += "create or replace json relational duality view " + t[1] + ` as +`, s += `select JSON { +`, s += l.isMany2One() ? l.generateSelectJsonBottomUp(" ") : l.generateSelectJsonTopDown(" "), s += "} from " + l.parseName() + ` with INSERT UPDATE DELETE; -`), o; +`), s; }; } - function k(M) { + function N(M) { d = M; const B = M.input; - let i = [], l = []; + let i = [], o = []; const r = Z(B + ` `, !0, !0, ""); d.data = null; - let t = null, o = "", s = 0; + let t = null, s = "", l = 0; e: for (let u in r) { const p = r[u]; if (p.value == ` ` && t == null) { - if (o = o.replace(/\r/g, ""), o.replace(/\r/g, "").replace(/ /g, "") == "") { - o = "", s++; + if (s = s.replace(/\r/g, ""), s.replace(/\r/g, "").replace(/ /g, "") == "") { + s = "", l++; continue; } - let S = new I(s, o, null), E = !1; + let S = new I(l, s, null), E = !1; for (let D = 0; D < i.length; D++) { let L = i[D]; if (S.apparentDepth() <= L.apparentDepth()) if (0 < D) { - let N = i[D - 1]; - S = new I(s, o, N), i[D] = S, i = i.slice(0, D + 1), E = !0; + let k = i[D - 1]; + S = new I(l, s, k), i[D] = S, i = i.slice(0, D + 1), E = !0; break; } else - i[0] = S, i = i.slice(0, 1), l.push(S), E = !0; + i[0] = S, i = i.slice(0, 1), o.push(S), E = !0; } if (!E) { if (0 < i.length) { let D = i[i.length - 1]; - S = new I(s, o, D); + S = new I(l, s, D); } - i.push(S), S.apparentDepth() == 0 && l.push(S); + i.push(S), S.apparentDepth() == 0 && o.push(S); } if (S.isMany2One()) { const D = S.parent; @@ -8510,7 +8515,7 @@ modify ` + T + " generated always as identity restart start with " + (this.card let L = S.refId(); L == null && (L = S.parseName()), D.fks[S.parseName() + "_id"] = L; } - s++, o = ""; + l++, s = ""; continue; } if (t == null && p.value == "#") { @@ -8523,7 +8528,7 @@ modify ` + T + " generated always as identity restart start with " + (this.card continue; const T = Z(t, !1, !0, ""); if (T.length % 4 == 3 && T[1].value == ":") { - M.setOptions(t), t = null, o = ""; + M.setOptions(t), t = null, s = ""; continue; } let S = null, E = null; @@ -8536,9 +8541,9 @@ modify ` + T + " generated always as identity restart start with " + (this.card if (S != null) { if (S += L.value, S == "=" || S.charAt(S.length - 1) != "}") continue; - let N = S.substring(1); + let k = S.substring(1); try { - d.data = JSON.parse(N), t = null, o = ""; + d.data = JSON.parse(k), t = null, s = ""; continue e; } catch { } @@ -8550,7 +8555,7 @@ modify ` + T + " generated always as identity restart start with " + (this.card if (E != null) { E += L.value, E.substring(1); try { - M.setOptions(E), t = null, o = ""; + M.setOptions(E), t = null, s = ""; continue e; } catch { } @@ -8559,186 +8564,188 @@ modify ` + T + " generated always as identity restart start with " + (this.card } if (p.type != "comment") { if (p.type == "line-comment") { - 0 < o.trim().length && (o += p.value); + 0 < s.trim().length && (s += p.value); continue; } - o += p.value; + s += p.value; } } - return l; + return o; } function b(M, B) { let i = B.toLowerCase(); return 0 < M.indexOf(i) && M.indexOf(i) == M.length - i.length ? M.substring(0, M.length - i.length) : M.trim(); } - function g(M, B, i, l) { + function g(M, B, i, o) { let r = []; if (M == null || typeof M != "object") return null; let t = M[i]; - t != null && B == l && r.push(t); - for (var o in M) { - let s = M[o]; - t = g(s, o, i, l), t != null && (r = r.concat(t)); + t != null && B == o && r.push(t); + for (var s in M) { + let l = M[s]; + t = g(l, s, i, o), t != null && (r = r.concat(t)); } return r; } - return k; + return N; }(); var Ae = function() { function d(i) { - for (var l = "", r = 0; r < i; r++) - l = l + " "; - return l; + for (var o = "", r = 0; r < i; r++) + o = o + " "; + return o; } - function h(i, l) { + function h(i, o) { for (const r in i) - if (JSON.stringify(i[r]) == JSON.stringify(l)) + if (JSON.stringify(i[r]) == JSON.stringify(o)) return !0; return !1; } function x(i) { - let l = ["_id", "Id"]; + let o = ["_id", "Id"]; if (i.id != null) return { key: "id", value: i.id }; - for (let r = 0; r < l.length; r++) { - const t = l[r]; - for (let o in i) - if (o.endsWith(t)) - return { key: o, value: i[o] }; + for (let r = 0; r < o.length; r++) { + const t = o[r]; + for (let s in i) + if (s.endsWith(t)) + return { key: s, value: i[s] }; } } function w(i) { - for (let l in i) - if (!(i[l] != null && typeof i[l] == "object")) + for (let o in i) + if (!(i[o] != null && typeof i[o] == "object")) return !0; return !1; } function I(i) { - let l = null; + let o = null; e: for (const r in i) if (r == 0) for (const t in i[r]) { - l = t; + o = t; break e; } else { - l = r; + o = r; break e; } - return l.toLowerCase() == "id" ? null : l.toLowerCase().endsWith("_id") ? l.substring(0, l.length - 3) : l.endsWith("Id") ? l.substring(0, l.length - 2) : null; + return o.toLowerCase() == "id" ? null : o.toLowerCase().endsWith("_id") ? o.substring(0, o.length - 3) : o.endsWith("Id") ? o.substring(0, o.length - 2) : null; } - function k(i, l, r) { - let t = !1, o = !1; + function N(i, o, r) { + let t = !1, s = !1; for (const u in i) - for (var s = 0; s < u; s++) - if (i[u][l] == i[s][l] && i[u][r] != i[s][r] ? t = !0 : i[u][l] != i[s][l] && i[u][r] == i[s][r] && (o = !0), t && o) + for (var l = 0; l < u; l++) + if (i[u][o] == i[l][o] && i[u][r] != i[l][r] ? t = !0 : i[u][o] != i[l][o] && i[u][r] == i[l][r] && (s = !0), t && s) return !0; return !1; } function b(i) { if (i == null || typeof i != "object") return ""; - let l = "("; + let o = "("; for (let r in i) { if (r == 0) return b(i[r]); - i[r] != null && typeof i[r] == "object" || (l += r + ","); + i[r] != null && typeof i[r] == "object" || (o += r + ","); } - return l.lastIndexOf(",") == l.length - 1 && (l = l.substring(0, l.length - 1)), l + ")"; + return o.lastIndexOf(",") == o.length - 1 && (o = o.substring(0, o.length - 1)), o + ")"; } - function g(i, l) { + function g(i, o) { let r = i.indexOf("("); - return 0 < r && (i = i.substring(0, r)), r = l.indexOf("("), 0 < r && (l = l.substring(0, r)), i + "_" + l + "(" + i + "_id," + l + "_id)"; + return 0 < r && (i = i.substring(0, r)), r = o.indexOf("("), 0 < r && (o = o.substring(0, r)), i + "_" + o + "(" + i + "_id," + o + "_id)"; } - function M(i, l) { + function M(i, o) { const r = JSON.parse(i), t = I(r); - t != null && (l = t), l == null && (l = "root_tbl"); - const o = new B(); - o.duplicatesAndParents(l + b(r), r), o.flatten(l + b(r), r); - let s = o.output(l + b(r), r, 0); - s += ` + t != null && (o = t), o == null && (o = "root_tbl"); + const s = new B(); + s.duplicatesAndParents(o + b(r), r), s.flatten(o + b(r), r); + let l = s.output(o + b(r), r, 0); + l += ` -#settings = { genpk: false, drop: true }`, s += ` +#settings = { genpk: false, drop: true }`, l += ` #flattened = `; const u = {}; - for (const p in o.tableContent) - u[o.tableName(p)] = o.tableContent[p]; - return s += JSON.stringify(u, null, 3), s += ` -`, s += ` + for (const p in s.tableContent) + u[s.tableName(p)] = s.tableContent[p]; + return l += JSON.stringify(u, null, 3), l += ` +`, l += ` -- Generated by json2qsql.js ${oe()} ` + (/* @__PURE__ */ new Date()).toLocaleString() + ` -`, s += `#document = -`, s += JSON.stringify(r, null, 3), s += ` -`, s; +`, l += `#document = +`, l += JSON.stringify(r, null, 3), l += ` +`, l; } function B() { - this.tableContent = {}, this.notNormalized = [], this.tableSignatures = [], this.child2parent = {}, this.objCounts = {}, this.output = function(i, l, r, t) { + this.tableContent = {}, this.notNormalized = [], this.tableSignatures = [], this.child2parent = {}, this.objCounts = {}, this.output = function(i, o, r, t) { if (t != !1 && this.notNormalized.includes(i)) { const u = g(this.parent(i), i), p = this.tableContent[u]; if (p != null) { let T = ` ` + d(r) + this.tableName(u) + " /insert " + p.length; - if (p[0], k(p, this.refIdName(this.parent(i)), this.refIdName(i))) - return T += this.output(i, l, r + 1, !1), T; + if (p[0], N(p, this.refIdName(this.parent(i)), this.refIdName(i))) + return T += this.output(i, o, r + 1, !1), T; } } - let o = this.tableName(i), s = ""; - if (this.notNormalized.includes(i) && (s = ">"), 0 < r && (o = ` -` + d(r) + s + this.tableName(i)), typeof l == "string" && (o += " vc"), typeof l == "number" && (o += " num", i.endsWith("_id") || i.endsWith("Id"))) - return o += " /pk", o; + let s = ""; + this.notNormalized.includes(i) && (s = ">"); + let l = ` +` + d(r) + s + this.tableName(i); + if (typeof o == "number" && (l += " num", i.endsWith("_id") || i.endsWith("Id"))) + return l += " /pk", l; if (i == "id") return ` ` + d(r) + "id vc32 /pk"; e: - if (l != null && typeof l == "object") { - if (Array.isArray(l)) - for (const p in l) { + if (o != null && typeof o == "object") { + if (Array.isArray(o)) + for (const p in o) { 1 <= p && console.log("1 <= property !"); - const T = l[p]; - o = this.output(i, T, r, t); + const T = o[p]; + l = this.output(i, T, r, t); break e; } else - i != "" && (this.tableContent[i] == null && console.log(), o += " /insert " + this.tableContent[i].length); + i != "" && (this.tableContent[i] == null && console.log(), l += " /insert " + this.tableContent[i].length); let u = ""; - for (let p in l) { - const T = l[p]; + this.tableSignatures.includes(i) || (l = "", r--); + for (let p in o) { + const T = o[p]; if (p != null) { const E = W(i), D = p.toLowerCase(); - if (i != null && E + "_id" == D && 0 < r && (u = p), E + "_id" == D) + if (i != null && E + "_id" == D && 0 < r && (u = p), E + "_id" == D || !isNaN(p) && !Array.isArray(o)) continue; } - this.tableSignatures.includes(i) || (o = "", r--); const S = this.output(p + b(T), T, r + 1); - o += S; + l += S; } - u != "" && (o += ` + u != "" && (l += ` ` + d(r) + u); } - return o; - }, this.idSeq = 1, this.flatten = function(i, l, r) { + return l; + }, this.idSeq = 1, this.flatten = function(i, o, r) { let t = {}; - for (let u in l) - if (l[u] != null && typeof l[u] == "object") { + for (let u in o) + if (o[u] != null && typeof o[u] == "object") { let p = i, T = r; if (isNaN(u)) { - p = u + b(l[u]); + p = u + b(o[u]); const S = x(t); S != null && (T = S); } - this.flatten(p, l[u], T); + this.flatten(p, o[u], T); } else - t[u] = l[u]; + t[u] = o[u]; !this.notNormalized.includes(i) && r != null && Object.keys(t).length && (t[r.key] = r.value); - const o = 0 < Object.keys(t).length; - let s = this.tableContent[i]; - if (o) { - if (s == null && (s = []), h(s, t) || s.push(t), this.notNormalized.includes(i)) { + const s = 0 < Object.keys(t).length; + let l = this.tableContent[i]; + if (s) { + if (l == null && (l = []), h(l, t) || l.push(t), this.notNormalized.includes(i)) { const u = this.parent(i); if (u != null) { const p = g(u, i); @@ -8750,34 +8757,37 @@ var Ae = function() { E == null && (t.id = this.idSeq++, E = x(t)), S[this.refIdName(i)] = E.value, T.push(S), this.tableContent[p] = T; } } - this.tableContent[i] = s; + this.tableContent[i] = l; } else - s == null && (this.tableContent[i] = []); - }, this.duplicatesAndParents = function(i, l) { - const r = '"' + i + '":' + JSON.stringify(l); + l == null && (this.tableContent[i] = []); + }, this.duplicatesAndParents = function(i, o) { + const r = '"' + i + '":' + JSON.stringify(o); let t = this.objCounts[r]; t == null && (t = 0); - let o = !1; - for (let u in l) - if (l[u] != null && typeof l[u] == "object") { + let s = !1; + for (let u in o) + if (o[u] != null && typeof o[u] == "object") { let p = i; - isNaN(u) && (p = u + b(l[u])), p != i && (this.child2parent[p] = i), this.duplicatesAndParents(p, l[u]), o = !0; + if (isNaN(u)) + p = u + b(o[u]); + else if (!Array.isArray(o)) + continue; + p != i && (this.child2parent[p] = i), this.duplicatesAndParents(p, o[u]), s = !0; } - w(l) && !this.tableSignatures.includes(i) && this.tableSignatures.push(i), o || (this.objCounts[r] = t + 1), 1 < this.objCounts[r] && !this.notNormalized.includes(i) && this.notNormalized.push(i); + w(o) && !this.tableSignatures.includes(i) && this.tableSignatures.push(i), s || (this.objCounts[r] = t + 1), 1 < this.objCounts[r] && !this.notNormalized.includes(i) && this.notNormalized.push(i); }, this.parent = function(i) { - let l = this.child2parent[i]; - return l != null && !this.tableSignatures.includes(l) ? this.parent(l) : l; + let o = this.child2parent[i]; + return o != null && !this.tableSignatures.includes(o) ? this.parent(o) : o; }, this.tableName = function(i) { - const l = i.indexOf("("); - if (l < 0) + const o = i.indexOf("("); + if (o < 0) return i; - const r = i.substring(0, l); - let t = 0, o = -1; - for (const s in this.tableSignatures) { - const u = this.tableSignatures[s]; - u.substring(0, u.indexOf("(")) == r && t++, u == i && (o = t); + let r = i.substring(0, o), t = 0, s = -1; + for (const l in this.tableSignatures) { + const u = this.tableSignatures[l]; + u.substring(0, u.indexOf("(")) == r && t++, u == i && (s = t); } - return t < 2 ? r : r + o; + return t < 2 ? r : r + s; }, this.refIdName = function(i) { return W(this.tableName(i)) + "_id"; }; @@ -8796,24 +8806,24 @@ const ye = function() { let B = []; const i = M.split(` `); - B = B.concat(k(i)); - const l = g.descendants(); - for (let r = 0; r < l.length; r++) { - const t = l[r]; - if (g.optionEQvalue("genpk", !0) && l[r].parseName() == "id") { + B = B.concat(N(i)); + const o = g.descendants(); + for (let r = 0; r < o.length; r++) { + const t = o[r]; + if (g.optionEQvalue("genpk", !0) && o[r].parseName() == "id") { const u = t.content.toLowerCase().indexOf("id"); B.push(new d(j.duplicateId, new h(t.line, u))); continue; } - const o = t.src[2]; - if (2 < t.src.length && o.value == "-") { - const u = o.begin; + const s = t.src[2]; + if (2 < t.src.length && s.value == "-") { + const u = s.begin; B.push(new d(j.invalidDatatype, new h(t.line, u))); continue; } - const s = t.src[1]; - if (1 < t.src.length && 0 < s.value.indexOf("0")) { - const u = s.begin; + const l = t.src[1]; + if (1 < t.src.length && 0 < l.value.indexOf("0")) { + const u = l.begin; B.push(new d(j.invalidDatatype, new h(t.line, u))); continue; } @@ -8826,12 +8836,12 @@ const ye = function() { if (g.parseType() == "view") { var i = $(B, " "); let t = 0; - for (var l = 0; l < i.length; l++) - if (t += i[l].length, i[l] != " " && i[l] != "view" && l != 1) { - var r = b.find(i[l]); + for (var o = 0; o < i.length; o++) + if (t += i[o].length, i[o] != " " && i[o] != "view" && o != 1) { + var r = b.find(i[o]); r == null && M.push(new d( - j.undefinedObject + i[l], - new h(g.line, t - i[l].length) + j.undefinedObject + i[o], + new h(g.line, t - i[o].length) )); } } @@ -8840,16 +8850,16 @@ const ye = function() { function I(b, g) { var M = [], B = g.content.toLowerCase(); if (0 < B.indexOf("/fk") || 0 < B.indexOf("/reference")) { - let r = $(B, " "), t = 0, o = !1; + let r = $(B, " "), t = 0, s = !1; for (var i = 0; i < r.length; i++) if (t += r[i].length, r[i] != " ") { if (r[i] == "/fk" || r[i].indexOf("/reference") == 0) { - o = !0; + s = !0; continue; } - if (o) { - var l = b.find(r[i]); - if (l == null) { + if (s) { + var o = b.find(r[i]); + if (o == null) { M.push(new d( j.undefinedObject + r[i], new h(g.line, t - r[i].length) @@ -8861,9 +8871,9 @@ const ye = function() { } return M; } - function k(b) { + function N(b) { for (var g = [], M = Se(b), B = 1; B < b.length; B++) { - var i = b[B - 1], l = b[B], r = re(i), t = re(l); + var i = b[B - 1], o = b[B], r = re(i), t = re(o); t != 0 && r < t && t < r + M && g.push( new d( j.misalignedAttribute + M, @@ -8889,10 +8899,10 @@ function Se(d) { M == null && (M = 0), I[h[b] - h[g]] = M + 1; } } - let k = null; + let N = null; for (let b in I) - (k == null || I[k] <= I[b]) && (k = b); - return k; + (N == null || I[N] <= I[b]) && (N = b); + return N; } function re(d) { for (var h = d.split(/ |\t/), x = 0, w = 0; w < h.length; w++) { @@ -9016,9 +9026,9 @@ const j = { let t = i[r]; t.type == "identifier" && t.value != "true" && t.value != "false" && t.value != "null" ? B += '"' + t.value + '"' : B += t.value; } - let l = JSON.parse(B); - for (let r in l) - this.setOptionValue(r.toLowerCase(), l[r]); + let o = JSON.parse(B); + for (let r in o) + this.setOptionValue(r.toLowerCase(), o[r]); }, this.descendants = function() { for (var b = [], g = 0; g < this.forest.length; g++) b = b.concat(this.forest[g].descendants()); @@ -9028,8 +9038,8 @@ const j = { if (g == null) return b; for (var M = g.split(","), B = 0; B < M.length; B++) { - var i = M[B].trim(), l = "VARCHAR2(4000)", r = i.indexOf(" "); - 0 < r && (l = i.substring(r + 1).toUpperCase(), i = i.substring(0, r)), b[i] = l; + var i = M[B].trim(), o = "VARCHAR2(4000)", r = i.indexOf(" "); + 0 < r && (o = i.substring(r + 1).toUpperCase(), i = i.substring(0, r)), b[i] = o; } return b; }, this.objPrefix = function(b) { @@ -9038,42 +9048,42 @@ const j = { var M = ""; return this.getOptionValue("prefix") != null && (M = this.getOptionValue("prefix")), g = g + M, M != "" && (g = g + "_"), g.toLowerCase(); }; - let k = ""; - 0 < w.toLowerCase().indexOf("overridesettings") && ce(this), I != null && this.optionEQvalue("overrideSettings", !1) && (k = "# settings = " + I + ` + let N = ""; + 0 < w.toLowerCase().indexOf("overridesettings") && ce(this), I != null && this.optionEQvalue("overrideSettings", !1) && (N = "# settings = " + I + ` -`), this.input = k + w, this.forest = ce(this), this.getERD = function() { +`), this.input = N + w, this.forest = ce(this), this.getERD = function() { if (this.erd != null) return this.erd; let b = this.descendants(), g = { items: [] }; for (let i = 0; i < b.length; i++) { if (b[i].parseType() != "table") continue; - let l = { name: this.objPrefix("no schema") + b[i].parseName("") }, r = this.getOptionValue("schema"); - r == "" && (r = null), l.schema = r, l.columns = [], g.items.push(l); + let o = { name: this.objPrefix("no schema") + b[i].parseName("") }, r = this.getOptionValue("schema"); + r == "" && (r = null), o.schema = r, o.columns = [], g.items.push(o); let t = b[i].getGenIdColName(); - t != null && l.columns.push({ name: t, datatype: "number" }); - for (let s = 0; s < b[i].children.length; s++) { - let u = b[i].children[s]; - if (u.parseType() != "table" && (l.columns.push({ name: u.parseName(""), datatype: u.parseType((p) => !0) }), 0 < u.indexOf("file"))) { + t != null && o.columns.push({ name: t, datatype: "number" }); + for (let l = 0; l < b[i].children.length; l++) { + let u = b[i].children[l]; + if (u.parseType() != "table" && (o.columns.push({ name: u.parseName(""), datatype: u.parseType((p) => !0) }), 0 < u.indexOf("file"))) { const p = u.parseName(); - l.columns.push({ name: p + "_filename", datatype: "varchar2(255" + this.semantics() + ")" }), l.columns.push({ name: p + "_mimetype", datatype: "varchar2(255" + this.semantics() + ")" }), l.columns.push({ name: p + "_charset", datatype: "varchar2(255" + this.semantics() + ")" }), l.columns.push({ name: p + "_lastupd", datatype: "date" }); + o.columns.push({ name: p + "_filename", datatype: "varchar2(255" + this.semantics() + ")" }), o.columns.push({ name: p + "_mimetype", datatype: "varchar2(255" + this.semantics() + ")" }), o.columns.push({ name: p + "_charset", datatype: "varchar2(255" + this.semantics() + ")" }), o.columns.push({ name: p + "_lastupd", datatype: "date" }); } } - const o = b[i].trimmedContent().toUpperCase(); - if ((this.optionEQvalue("rowkey", !0) || 0 < o.indexOf("/ROWKEY")) && l.columns.push({ name: "row_key", datatype: "varchar2(30 char)" }), (this.optionEQvalue("rowVersion", "yes") || 0 < o.indexOf("/ROWVERSION")) && l.columns.push({ name: "row_version", datatype: "integer" }), this.optionEQvalue("Audit Columns", "yes") || 0 < o.indexOf("/AUDITCOLS")) { - let s = this.getOptionValue("createdcol"); - l.columns.push({ name: s, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); + const s = b[i].trimmedContent().toUpperCase(); + if ((this.optionEQvalue("rowkey", !0) || 0 < s.indexOf("/ROWKEY")) && o.columns.push({ name: "row_key", datatype: "varchar2(30 char)" }), (this.optionEQvalue("rowVersion", "yes") || 0 < s.indexOf("/ROWVERSION")) && o.columns.push({ name: "row_version", datatype: "integer" }), this.optionEQvalue("Audit Columns", "yes") || 0 < s.indexOf("/AUDITCOLS")) { + let l = this.getOptionValue("createdcol"); + o.columns.push({ name: l, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); let u = this.getOptionValue("createdbycol"); - l.columns.push({ name: u, datatype: "varchar2(255" + this.semantics() + ")" }); + o.columns.push({ name: u, datatype: "varchar2(255" + this.semantics() + ")" }); let p = this.getOptionValue("updatedcol"); - l.columns.push({ name: p, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); + o.columns.push({ name: p, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); let T = this.getOptionValue("updatedbycol"); - l.columns.push({ name: T, datatype: "varchar2(255" + this.semantics() + ")" }); + o.columns.push({ name: T, datatype: "varchar2(255" + this.semantics() + ")" }); } var M = this.additionalColumns(); - for (let s in M) { - var B = M[s]; - pad = tab + " ".repeat(this.maxChildNameLen() - s.length), ret += tab + s.toUpperCase() + pad + B + ` not null, + for (let l in M) { + var B = M[l]; + pad = tab + " ".repeat(this.maxChildNameLen() - l.length), ret += tab + l.toUpperCase() + pad + B + ` not null, `; } } @@ -9081,16 +9091,16 @@ const j = { for (let i = 0; i < b.length; i++) if (b[i].parseType() == "table") { b[i].toDDL(); - for (let l in b[i].fks) { - let r = b[i].fks[l], t = this.find(r); + for (let o in b[i].fks) { + let r = b[i].fks[o], t = this.find(r); if (t == null) continue; - let o = "id"; - t.getExplicitPkNode() != null && (o = t.getExplicitPkNode().parseName()), g.links.push({ + let s = "id"; + t.getExplicitPkNode() != null && (s = t.getExplicitPkNode().parseName()), g.links.push({ source: this.objPrefix() + r, - source_id: o, + source_id: s, target: this.objPrefix() + b[i].parseName(""), - target_id: l + target_id: o }); } } @@ -9101,8 +9111,8 @@ const j = { var b = "", g = this.descendants(); if (this.optionEQvalue("Include Drops", "yes")) for (let i = 0; i < g.length; i++) { - let l = g[i].generateDrop(); - l != "" && (b += l); + let o = g[i].generateDrop(); + o != "" && (b += o); } if (this.optionEQvalue("rowkey", !0)) b += `create sequence row_key_seq; @@ -9124,39 +9134,39 @@ const j = { `; let M = 0; for (let i = 0; i < g.length; i++) { - let l = g[i].generateTrigger(); - l != "" && (M++ == 0 && (b += `-- triggers -`), b += l + ` + let o = g[i].generateTrigger(); + o != "" && (M++ == 0 && (b += `-- triggers +`), b += o + ` `); } M = 0; for (let i = 0; i < g.length; i++) { - let l = g[i].restEnable(); - l != "" && (b += l + ` + let o = g[i].restEnable(); + o != "" && (b += o + ` `); } M = 0; for (let i = 0; i < g.length; i++) { if (this.optionEQvalue("api", !1) && g[i].trimmedContent().toLowerCase().indexOf("/api") < 0) continue; - let l = g[i].generateTAPI(); - l != "" && (M++ == 0 && (b += `-- APIs -`), b += l + ` + let o = g[i].generateTAPI(); + o != "" && (M++ == 0 && (b += `-- APIs +`), b += o + ` `); } M = 0; for (let i = 0; i < this.forest.length; i++) { - let l = this.forest[i].generateView(); - l != "" && (M++ == 0 && (b += `-- create views -`), b += l + ` + let o = this.forest[i].generateView(); + o != "" && (M++ == 0 && (b += `-- create views +`), b += o + ` `); } M = 0; for (let i = 0; i < this.forest.length; i++) { - let l = this.forest[i].generateData(this.data); - l != "" && (M++ == 0 && (b += `-- load data + let o = this.forest[i].generateData(this.data); + o != "" && (M++ == 0 && (b += `-- load data -`), b += l + ` +`), b += o + ` `); } M = 0, b += `-- Generated by Quick SQL ${this.version()} ` + (/* @__PURE__ */ new Date()).toLocaleString() + ` diff --git a/dist/quick-sql.umd.cjs b/dist/quick-sql.umd.cjs index 9fbe078..368d3fa 100644 --- a/dist/quick-sql.umd.cjs +++ b/dist/quick-sql.umd.cjs @@ -1,93 +1,93 @@ -(function(V,W){typeof exports=="object"&&typeof module<"u"?W(exports):typeof define=="function"&&define.amd?define(["exports"],W):(V=typeof globalThis<"u"?globalThis:V||self,W(V.quickSQL={}))})(this,function(V){"use strict";function W(d){return d==null?d:d.toUpperCase().endsWith("IES")?d.substring(0,d.length-3)+"y":d.toUpperCase().endsWith("ES")||d.toUpperCase().endsWith("S")?d.substring(0,d.length-1):d}function ve(d,h){let k='"';if(d==null)return null;let w=!1;const I="$#_ ";if(!d.startsWith(k)&&!w){const x=d;if(x.length>0&&"0"<=x[0]&&x[0]<="9")w=!0;else for(let b in x){const g=x[b];if(I.indexOf(g)<0&&(g<"0"||"9""u"&&(e[n]=a[n]);return e}function r(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var o=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?o=btoa:typeof Buffer=="function"&&(o=function(a){return new Buffer(a).toString("base64")})})(),i.prototype.bool=function(e){return e=l(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100c,"Chance: Max specified is out of range with fixed. Max should be, at most, "+c),e=l(e,{min:m,max:c}),a=this.integer({min:e.min*n,max:e.max*n});var C=(a/n).toFixed(e.fixed);return parseFloat(C)},i.prototype.integer=function(e){return e=l(e,{min:w,max:k}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},i.prototype.natural=function(e){if(e=l(e,{min:0,max:k}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),c=e.exclude.sort();for(var m in c){if(ne.max,"Chance: Min cannot be greater than Max.");var a=E.primes[E.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&E.primes.push(n);var c=E.primes.filter(function(m){return m>=e.min&&m<=e.max});return this.pick(c)},i.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},i.prototype.hex=function(e){e=l(e,{min:0,max:k,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},i.prototype.letter=function(e){e=l(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},i.prototype.string=function(e){e=l(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function s(e){this.c=e}s.prototype={substitute:function(){return this.c}};function u(e){this.c=e}u.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function p(e){this.c=e}p.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:b})},a:function(e){return e.character({pool:x})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function T(e){for(var a=[],n="identity",c=0;c"u")throw new M("Sorry, the buffer() function is not supported on your platform");e=l(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},i.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},i.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},i.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var c=function(y,_){return y.indexOf(_)!==-1};n&&(c=n.comparator||c);for(var m=[],C=0,P,f=a*50,A=B.call(arguments,2);m.lengthf)throw new RangeError("Chance: num is likely too large for sample set")}return m},i.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,c=[],m=B.call(arguments,2);for(n=Math.max(0,n),null;n--;null)c.push(e.apply(this,m));return c},i.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},i.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},i.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},i.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),c=n.length;return this.n(function(){var m=this.natural({max:--c}),C=n[m];return n[m]=n[c],C},Math.min(c,a))},i.prototype.shuffle=function(e){for(var a=[],n=0,c=Number(e.length),m=r(c),C=c-1,P,f=0;f0&&(c+=m)}if(c===0)throw new RangeError("Chance: No valid entries in array weights");var P=this.random()*c,f=0,A=-1,v;for(C=0;C0){if(P<=f){v=C;break}A=C}C===a.length-1&&(v=A)}var y=e[v];return n=typeof n>"u"?!1:n,n&&(e.splice(v,1),a.splice(v,1)),y},i.prototype.paragraph=function(e){e=l(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),c=e.linebreak===!0?` -`:" ";return n.join(c)},i.prototype.sentence=function(e){e=l(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,c,m=this.n(this.word,a);return c=m.join(" "),c=this.capitalize(c),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(c+=n),c},i.prototype.syllable=function(e){e=l(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",c="aeiou",m=n+c,C="",P,f=0;fe.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var P=e.minAge!==void 0?e.minAge:0,f=e.maxAge!==void 0?e.maxAge:100,A=new Date(c-f-1,n.getMonth(),n.getDate()),v=new Date(c-P,n.getMonth(),n.getDate());A.setDate(A.getDate()+1),v.setDate(v.getDate()+1),v.setMilliseconds(v.getMilliseconds()-1),e=l(e,{min:A,max:v})}else e=l(e,{year:c-a});return this.date(e)},i.prototype.cpf=function(e){e=l(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var c=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;c=11-c%11,c>=10&&(c=0);var m=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},i.prototype.cnpj=function(e){e=l(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var c=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;c=11-c%11,c<2&&(c=0);var m=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},i.prototype.first=function(e){return e=l(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},i.prototype.profession=function(e){return e=l(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},i.prototype.company=function(){return this.pick(this.get("company"))},i.prototype.gender=function(e){return e=l(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},i.prototype.last=function(e){if(e=l(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(c){a=a.concat(n[c])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},i.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},i.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},i.prototype.tld=function(){return this.pick(this.tlds())},i.prototype.twitter=function(){return"@"+this.word()},i.prototype.url=function(e){e=l(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},i.prototype.port=function(){return this.integer({min:0,max:65535})},i.prototype.locale=function(e){return e=l(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},i.prototype.locales=function(e){return e=l(e),e.region?this.get("locale_regions"):this.get("locale_languages")},i.prototype.loremPicsum=function(e){e=l(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},i.prototype.address=function(e){return e=l(e),this.natural({min:5,max:2e3})+" "+this.street(e)},i.prototype.altitude=function(e){return e=l(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},i.prototype.areacode=function(e){e=l(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},i.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},i.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},i.prototype.countries=function(){return this.get("countries")},i.prototype.country=function(e){e=l(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},i.prototype.depth=function(e){return e=l(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},i.prototype.geohash=function(e){return e=l(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},i.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},i.prototype.latitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=l(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},i.prototype.longitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=l(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},i.prototype.phone=function(e){var a=this,n,c=function(_){var O=[];return _.sections.forEach(function(z){O.push(a.string({pool:"0123456789",length:z}))}),_.area+O.join(" ")};e=l(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var m;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),m=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),m=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n);break;case"us":var C=this.areacode(e).toString(),P=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),f=this.natural({min:1e3,max:9999}).toString();m=e.formatted?C+" "+P+"-"+f:C+P+f;break;case"br":var A=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),v;e.mobile?v="9"+a.string({pool:"0123456789",length:4}):v=this.natural({min:2e3,max:5999}).toString();var y=a.string({pool:"0123456789",length:4});m=e.formatted?"("+A+") "+v+"-"+y:A+v+y;break}return m},i.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},i.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",c=e+a+n,m=this.natural({max:9}),C=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),P=m+C;return c+" "+P},i.prototype.counties=function(e){return e=l(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},i.prototype.county=function(e){return this.pick(this.counties(e)).name},i.prototype.provinces=function(e){return e=l(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},i.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},i.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},i.prototype.states=function(e){e=l(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),c=this.get("territories"),m=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(c)),e.armed_forces&&(a=a.concat(m));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},i.prototype.street=function(e){e=l(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},i.prototype.street_suffix=function(e){return e=l(e,{country:"us"}),this.pick(this.street_suffixes(e))},i.prototype.street_suffixes=function(e){return e=l(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},i.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},i.prototype.ampm=function(){return this.bool()?"am":"pm"},i.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=l(e,{american:!0,string:!1});var c=typeof e.min<"u"?e.min.getTime():1,m=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:c,max:m}))}else{var C=this.month({raw:!0}),P=C.days;e&&e.month&&(P=this.get("months")[(e.month%12+12)%12].days),e=l(e,{year:parseInt(this.year(),10),month:C.numeric-1,day:this.natural({min:1,max:P}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},i.prototype.hammertime=function(e){return this.date(e).getTime()},i.prototype.hour=function(e){return e=l(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},i.prototype.millisecond=function(){return this.natural({max:999})},i.prototype.minute=i.prototype.second=function(e){return e=l(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},i.prototype.month=function(e){e=l(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},i.prototype.months=function(){return this.get("months")},i.prototype.second=function(){return this.natural({max:59})},i.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},i.prototype.weekday=function(e){e=l(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},i.prototype.year=function(e){return e=l(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},i.prototype.cc=function(e){e=l(e);var a,n,c;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),c=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,c,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},i.prototype.cc_types=function(){return this.get("cc_types")},i.prototype.cc_type=function(e){e=l(e);var a=this.cc_types(),n=null;if(e.name){for(var c=0;c3&&(_?O=O.substr(0,3):O=O[0]+O.substr(2,2)),O.length<3&&(z=O,O=y.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+O),z},A=function(y,_,O){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return y.getFullYear().toString().substr(2)+z[y.getMonth()]+O.pad(y.getDate()+(_.toLowerCase()==="female"?40:0),2)},v=function(y){for(var _="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",O="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(O[_.indexOf(y[U])]):K+=j.indexOf(O[_.indexOf(y[U])]);return z[K%26]};return P=P.concat(f(c,!0),f(n),A(m,a,this),C.toUpperCase().split("")).join(""),P+=v(P.toUpperCase()),P.toUpperCase()},i.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;m--)c[m-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?c.reduce(function(C,P){return C+P}):c}else throw new RangeError("Chance: A type of die roll must be included")},i.prototype.guid=function(e){e=l(e,{version:5});var a="abcdef1234567890",n="ab89",c=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return c},i.prototype.hash=function(e){e=l(e,{length:40,casing:"lower"});var a=e.casing==="upper"?g.toUpperCase():g;return this.string({pool:a,length:e.length})},i.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},i.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,c,m=0,C=a.length;C>m;++m)c=+a[m],m%2===0&&(c*=2,c>9&&(c-=9)),n+=c;return n*9%10},i.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=l(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},i.prototype.file=function(e){var a=e||{},n="fileExtension",c=Object.keys(this.get("fileExtension")),m,C;if(m=this.word({length:a.length}),a.extension)return C=a.extension,m+"."+C;if(a.extensions){if(Array.isArray(a.extensions))return C=this.pickone(a.extensions),m+"."+C;if(a.extensions.constructor===Object){var P=a.extensions,f=Object.keys(P);return C=this.pickone(P[this.pickone(f)]),m+"."+C}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var A=a.fileType;if(c.indexOf(A)!==-1)return C=this.pickone(this.get(n)[A]),m+"."+C;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return C=this.pickone(this.get(n)[this.pickone(c)]),m+"."+C},i.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var c={fileData:this.buffer({length:a.fileSize}),fileName:n};return c};var E={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},D=Object.prototype.hasOwnProperty,L=Object.keys||function(e){var a=[];for(var n in e)D.call(e,n)&&a.push(n);return a};function N(e,a){for(var n=L(e),c,m=0,C=n.length;m0)return this.normal_pool(e);var a,n,c,m,C=e.mean,P=e.dev;do n=this.random()*2-1,c=this.random()*2-1,a=n*n+c*c;while(a>=1);return m=n*Math.sqrt(-2*Math.log(a)/a),P*m+C},i.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},i.prototype.radio=function(e){e=l(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},i.prototype.set=function(e,a){typeof e=="string"?E[e]=a:E=R(e,E)},i.prototype.tv=function(e){return this.radio(e)},i.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},i.prototype.emotion=function(){return this.pick(this.get("emotions"))},i.prototype.mersenne_twister=function(e){return new H(e)},i.prototype.blueimp_md5=function(){return new G};var H=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};H.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},H.prototype.init_by_array=function(e,a){var n=1,c=0,m,C;for(this.init_genrand(19650218),m=this.N>a?this.N:a;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1664525<<16)+(C&65535)*1664525)+e[c]+c,this.mt[n]>>>=0,n++,c++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),c>=a&&(c=0);for(m=this.N-1;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1566083941<<16)+(C&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},H.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},H.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},H.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},H.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},H.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},H.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var G=function(){};G.prototype.VERSION="1.0.1",G.prototype.safe_add=function(a,n){var c=(a&65535)+(n&65535),m=(a>>16)+(n>>16)+(c>>16);return m<<16|c&65535},G.prototype.bit_roll=function(e,a){return e<>>32-a},G.prototype.md5_cmn=function(e,a,n,c,m,C){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(c,C)),m),n)},G.prototype.md5_ff=function(e,a,n,c,m,C,P){return this.md5_cmn(a&n|~a&c,e,a,m,C,P)},G.prototype.md5_gg=function(e,a,n,c,m,C,P){return this.md5_cmn(a&c|n&~c,e,a,m,C,P)},G.prototype.md5_hh=function(e,a,n,c,m,C,P){return this.md5_cmn(a^n^c,e,a,m,C,P)},G.prototype.md5_ii=function(e,a,n,c,m,C,P){return this.md5_cmn(n^(a|~c),e,a,m,C,P)},G.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,c,m,C,P,f=1732584193,A=-271733879,v=-1732584194,y=271733878;for(n=0;n>5]>>>a%32&255);return n},G.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(c=this.binl_md5(c,e.length*8)),n=0;n<16;n+=1)m[n]=c[n]^909522486,C[n]=c[n]^1549556828;return P=this.binl_md5(m.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(C.concat(P),512+128))},G.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",c,m;for(m=0;m>>4&15)+a.charAt(c&15);return n},G.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},G.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},G.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},G.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},G.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},G.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},d.exports&&(h=d.exports=i),h.Chance=i,typeof importScripts<"u"&&(chance=new i,self.Chance=i),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=i,window.chance=new i)})()})(ne,ne.exports);var ye=ne.exports;const Se=Ae(ye);function ue(d,h,k,w){var I=new Se(ie);k==null&&console.log();let x=k.toUpperCase(),b=d.toUpperCase(),g=h.toUpperCase();if(w!=null&&0":l=="["?"]":l=="{"?"}":l=="("?")":l}}function h(I,x,b){for(var g=[],M=`(){}[]^-|!*+.><='",;:%@?/\\#~`+b,B=` -\r `,i=$(I,M+B),l=0,r=0,t=0,o=0;o0&&(u=g[g.length-1]),s==` -`?(r++,t=0):o>0&&i[o-1]!==` -`?t=t+i[o-1].length:t=0,l+=s.length,u!=null&&u.type=="comment"&&(u.value.lastIndexOf("*/")!=u.value.length-2||u.value=="/*/")){s=="*"||s=="/"?u.value=u.value+s:u.value="/* ... ",u.end=l,u!=null&&u.type=="comment"&&u.value.lastIndexOf("*/")==u.value.length-2&&u.value!="/*/"&&(u.value=I.substring(u.begin,u.end));continue}if(u!=null&&(u.type=="line-comment"||u.type=="dbtools-command")&&s!=` -`){u.value=u.value+s;continue}if(u!=null&&(u.type=="line-comment"||u.type=="dbtools-command")&&s==` -`&&(u.end=u.begin+u.value.length),u!=null&&u.type=="quoted-string"&&!(u.isStandardLiteral()||u.isAltLiteral())){u.value=u.value+s,u.end=u.begin+u.value.length;continue}if(!(u!=null&&u.type=="dquoted-string"&&s!='"'&&!(u.value.endsWith('"')&&u.value.length>1))){if(u!=null&&u.type=="dquoted-string"&&s=='"'){u.end=l,u.value=I.substring(u.begin,u.end);continue}if(!(u!=null&&u.type=="bquoted-string"&&s!="`"&&!(u.value.endsWith("`")&&u.value.length>1))){if(u!=null&&u.type=="bquoted-string"&&s=="`"){u.end=l,u.value=I.substring(u.begin,u.end);continue}if(s=="*"&&u!=null&&u.value=="/"){u.value=u.value+s,u.end=u.begin+u.value.length,u.type="comment";continue}if(s=="-"&&u!=null&&u.value=="-"){u.value=u.value+s,u.type="line-comment";continue}if((s.toUpperCase()=="REM"||s.toUpperCase()=="REMA"||s.toUpperCase()=="REMAR"||s.toUpperCase()=="REMARK"||s.toUpperCase()=="PRO"||s.toUpperCase()=="PROM"||s.toUpperCase()=="PROMP"||s.toUpperCase()=="PROMPT")&&(u==null||u.value==` -`||u.value=="\r")){g.push(new d(s,l-s.length,-9,"line-comment",r,t));continue}if(s.toUpperCase()=="SODA"&&(u==null||u.value==` -`||u.value=="\r")){g.push(new d(s,l-s.length,-9,"dbtools-command",r,t));continue}if(u!=null&&u.type=="identifier"&&u.end==-11&&u.value.indexOf("@")==0&&!(s==` -`||s=="\r")){u.value=u.value+s;continue}if(u!=null&&u.type=="identifier"&&u.end==-11&&u.value.indexOf("@")==0&&(s==` -`||s=="\r")){u.end=l-1,g.push(new d(s,l-1,l,"ws",r,t));continue}if(x&&s=="'"){u!=null&&(u.value.toUpperCase()=="Q"||u.value.toUpperCase()=="N"||u.value.toUpperCase()=="U"||u.value.toUpperCase()=="NQ")?(u.value+=s,u.type="quoted-string"):g.push(new d(s,l-1,-10,"quoted-string",r,t));continue}if(x&&s=='"'){g.push(new d(s,l-1,-11,"dquoted-string",r,t));continue}if(s=="`"&&0<=M.indexOf("`")){g.push(new d(s,l-1,-11,"bquoted-string",r,t));continue}if(s.length==1&&0<=M.indexOf(s)){g.push(new d(s,l-1,l,"operation",r,t));continue}if(s.length==1&&0<=B.indexOf(s)){g.push(new d(s,l-1,l,"ws",r,t));continue}if("0"<=s.charAt(0)&&s.charAt(0)<="9"){k(s,g,l-s.length,r)||(s.charAt(s.length-1)=="K"||s.charAt(s.length-1)=="k"||s.charAt(s.length-1)=="M"||s.charAt(s.length-1)=="m"||s.charAt(s.length-1)=="G"||s.charAt(s.length-1)=="g"||s.charAt(s.length-1)=="T"||s.charAt(s.length-1)=="t"||s.charAt(s.length-1)=="P"||s.charAt(s.length-1)=="p"||s.charAt(s.length-1)=="E"||s.charAt(s.length-1)=="e"?(g.push(new d(s.substring(0,s.length-1),l-s.length,l-1,"constant.numeric",r,t)),g.push(new d(s.substring(s.length-1),l-1,l,"constant.numeric",r,t))):g.push(new d(s,l-s.length,l,"constant.numeric",r,t)));continue}var p="identifier";o+10){var u=g[g.length-1];u.end=I.length}return g}function k(I,x,b,g){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var M=$(I,"efd"),B=0;B")==0||r.indexOf("<")==0)&&(r=r.substring(1).trim());const s=r.toLowerCase();if(s.indexOf("view ")==0){var u=r.split(" ");return u[1]}r=b(r," d");var p=r.indexOf("/");0="0"&&T<="9"&&(r="x"+r),Te(se(r))},this.parseType=function(r){if(this.children!=null&&00&&"0"<=N[0]&&N[0]<="9")w=!0;else for(let b in N){const g=N[b];if(I.indexOf(g)<0&&(g<"0"||"9""u"&&(e[n]=a[n]);return e}function r(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var s=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?s=btoa:typeof Buffer=="function"&&(s=function(a){return new Buffer(a).toString("base64")})})(),i.prototype.bool=function(e){return e=o(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100c,"Chance: Max specified is out of range with fixed. Max should be, at most, "+c),e=o(e,{min:m,max:c}),a=this.integer({min:e.min*n,max:e.max*n});var C=(a/n).toFixed(e.fixed);return parseFloat(C)},i.prototype.integer=function(e){return e=o(e,{min:w,max:k}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},i.prototype.natural=function(e){if(e=o(e,{min:0,max:k}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),c=e.exclude.sort();for(var m in c){if(ne.max,"Chance: Min cannot be greater than Max.");var a=E.primes[E.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&E.primes.push(n);var c=E.primes.filter(function(m){return m>=e.min&&m<=e.max});return this.pick(c)},i.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},i.prototype.hex=function(e){e=o(e,{min:0,max:k,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},i.prototype.letter=function(e){e=o(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},i.prototype.string=function(e){e=o(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function u(e){this.c=e}u.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function p(e){this.c=e}p.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:b})},a:function(e){return e.character({pool:N})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function T(e){for(var a=[],n="identity",c=0;c"u")throw new M("Sorry, the buffer() function is not supported on your platform");e=o(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},i.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},i.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},i.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var c=function(y,_){return y.indexOf(_)!==-1};n&&(c=n.comparator||c);for(var m=[],C=0,P,f=a*50,A=B.call(arguments,2);m.lengthf)throw new RangeError("Chance: num is likely too large for sample set")}return m},i.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,c=[],m=B.call(arguments,2);for(n=Math.max(0,n),null;n--;null)c.push(e.apply(this,m));return c},i.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},i.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},i.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},i.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),c=n.length;return this.n(function(){var m=this.natural({max:--c}),C=n[m];return n[m]=n[c],C},Math.min(c,a))},i.prototype.shuffle=function(e){for(var a=[],n=0,c=Number(e.length),m=r(c),C=c-1,P,f=0;f0&&(c+=m)}if(c===0)throw new RangeError("Chance: No valid entries in array weights");var P=this.random()*c,f=0,A=-1,v;for(C=0;C0){if(P<=f){v=C;break}A=C}C===a.length-1&&(v=A)}var y=e[v];return n=typeof n>"u"?!1:n,n&&(e.splice(v,1),a.splice(v,1)),y},i.prototype.paragraph=function(e){e=o(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),c=e.linebreak===!0?` +`:" ";return n.join(c)},i.prototype.sentence=function(e){e=o(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,c,m=this.n(this.word,a);return c=m.join(" "),c=this.capitalize(c),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(c+=n),c},i.prototype.syllable=function(e){e=o(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",c="aeiou",m=n+c,C="",P,f=0;fe.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var P=e.minAge!==void 0?e.minAge:0,f=e.maxAge!==void 0?e.maxAge:100,A=new Date(c-f-1,n.getMonth(),n.getDate()),v=new Date(c-P,n.getMonth(),n.getDate());A.setDate(A.getDate()+1),v.setDate(v.getDate()+1),v.setMilliseconds(v.getMilliseconds()-1),e=o(e,{min:A,max:v})}else e=o(e,{year:c-a});return this.date(e)},i.prototype.cpf=function(e){e=o(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var c=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;c=11-c%11,c>=10&&(c=0);var m=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},i.prototype.cnpj=function(e){e=o(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var c=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;c=11-c%11,c<2&&(c=0);var m=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},i.prototype.first=function(e){return e=o(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},i.prototype.profession=function(e){return e=o(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},i.prototype.company=function(){return this.pick(this.get("company"))},i.prototype.gender=function(e){return e=o(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},i.prototype.last=function(e){if(e=o(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(c){a=a.concat(n[c])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},i.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},i.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},i.prototype.tld=function(){return this.pick(this.tlds())},i.prototype.twitter=function(){return"@"+this.word()},i.prototype.url=function(e){e=o(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},i.prototype.port=function(){return this.integer({min:0,max:65535})},i.prototype.locale=function(e){return e=o(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},i.prototype.locales=function(e){return e=o(e),e.region?this.get("locale_regions"):this.get("locale_languages")},i.prototype.loremPicsum=function(e){e=o(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},i.prototype.address=function(e){return e=o(e),this.natural({min:5,max:2e3})+" "+this.street(e)},i.prototype.altitude=function(e){return e=o(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},i.prototype.areacode=function(e){e=o(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},i.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},i.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},i.prototype.countries=function(){return this.get("countries")},i.prototype.country=function(e){e=o(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},i.prototype.depth=function(e){return e=o(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},i.prototype.geohash=function(e){return e=o(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},i.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},i.prototype.latitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=o(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},i.prototype.longitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=o(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},i.prototype.phone=function(e){var a=this,n,c=function(_){var O=[];return _.sections.forEach(function(z){O.push(a.string({pool:"0123456789",length:z}))}),_.area+O.join(" ")};e=o(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var m;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),m=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),m=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n);break;case"us":var C=this.areacode(e).toString(),P=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),f=this.natural({min:1e3,max:9999}).toString();m=e.formatted?C+" "+P+"-"+f:C+P+f;break;case"br":var A=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),v;e.mobile?v="9"+a.string({pool:"0123456789",length:4}):v=this.natural({min:2e3,max:5999}).toString();var y=a.string({pool:"0123456789",length:4});m=e.formatted?"("+A+") "+v+"-"+y:A+v+y;break}return m},i.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},i.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",c=e+a+n,m=this.natural({max:9}),C=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),P=m+C;return c+" "+P},i.prototype.counties=function(e){return e=o(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},i.prototype.county=function(e){return this.pick(this.counties(e)).name},i.prototype.provinces=function(e){return e=o(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},i.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},i.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},i.prototype.states=function(e){e=o(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),c=this.get("territories"),m=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(c)),e.armed_forces&&(a=a.concat(m));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},i.prototype.street=function(e){e=o(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},i.prototype.street_suffix=function(e){return e=o(e,{country:"us"}),this.pick(this.street_suffixes(e))},i.prototype.street_suffixes=function(e){return e=o(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},i.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},i.prototype.ampm=function(){return this.bool()?"am":"pm"},i.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=o(e,{american:!0,string:!1});var c=typeof e.min<"u"?e.min.getTime():1,m=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:c,max:m}))}else{var C=this.month({raw:!0}),P=C.days;e&&e.month&&(P=this.get("months")[(e.month%12+12)%12].days),e=o(e,{year:parseInt(this.year(),10),month:C.numeric-1,day:this.natural({min:1,max:P}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},i.prototype.hammertime=function(e){return this.date(e).getTime()},i.prototype.hour=function(e){return e=o(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},i.prototype.millisecond=function(){return this.natural({max:999})},i.prototype.minute=i.prototype.second=function(e){return e=o(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},i.prototype.month=function(e){e=o(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},i.prototype.months=function(){return this.get("months")},i.prototype.second=function(){return this.natural({max:59})},i.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},i.prototype.weekday=function(e){e=o(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},i.prototype.year=function(e){return e=o(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},i.prototype.cc=function(e){e=o(e);var a,n,c;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),c=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,c,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},i.prototype.cc_types=function(){return this.get("cc_types")},i.prototype.cc_type=function(e){e=o(e);var a=this.cc_types(),n=null;if(e.name){for(var c=0;c3&&(_?O=O.substr(0,3):O=O[0]+O.substr(2,2)),O.length<3&&(z=O,O=y.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+O),z},A=function(y,_,O){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return y.getFullYear().toString().substr(2)+z[y.getMonth()]+O.pad(y.getDate()+(_.toLowerCase()==="female"?40:0),2)},v=function(y){for(var _="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",O="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(O[_.indexOf(y[U])]):K+=j.indexOf(O[_.indexOf(y[U])]);return z[K%26]};return P=P.concat(f(c,!0),f(n),A(m,a,this),C.toUpperCase().split("")).join(""),P+=v(P.toUpperCase()),P.toUpperCase()},i.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;m--)c[m-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?c.reduce(function(C,P){return C+P}):c}else throw new RangeError("Chance: A type of die roll must be included")},i.prototype.guid=function(e){e=o(e,{version:5});var a="abcdef1234567890",n="ab89",c=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return c},i.prototype.hash=function(e){e=o(e,{length:40,casing:"lower"});var a=e.casing==="upper"?g.toUpperCase():g;return this.string({pool:a,length:e.length})},i.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},i.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,c,m=0,C=a.length;C>m;++m)c=+a[m],m%2===0&&(c*=2,c>9&&(c-=9)),n+=c;return n*9%10},i.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=o(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},i.prototype.file=function(e){var a=e||{},n="fileExtension",c=Object.keys(this.get("fileExtension")),m,C;if(m=this.word({length:a.length}),a.extension)return C=a.extension,m+"."+C;if(a.extensions){if(Array.isArray(a.extensions))return C=this.pickone(a.extensions),m+"."+C;if(a.extensions.constructor===Object){var P=a.extensions,f=Object.keys(P);return C=this.pickone(P[this.pickone(f)]),m+"."+C}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var A=a.fileType;if(c.indexOf(A)!==-1)return C=this.pickone(this.get(n)[A]),m+"."+C;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return C=this.pickone(this.get(n)[this.pickone(c)]),m+"."+C},i.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var c={fileData:this.buffer({length:a.fileSize}),fileName:n};return c};var E={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},D=Object.prototype.hasOwnProperty,L=Object.keys||function(e){var a=[];for(var n in e)D.call(e,n)&&a.push(n);return a};function x(e,a){for(var n=L(e),c,m=0,C=n.length;m0)return this.normal_pool(e);var a,n,c,m,C=e.mean,P=e.dev;do n=this.random()*2-1,c=this.random()*2-1,a=n*n+c*c;while(a>=1);return m=n*Math.sqrt(-2*Math.log(a)/a),P*m+C},i.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},i.prototype.radio=function(e){e=o(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},i.prototype.set=function(e,a){typeof e=="string"?E[e]=a:E=R(e,E)},i.prototype.tv=function(e){return this.radio(e)},i.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},i.prototype.emotion=function(){return this.pick(this.get("emotions"))},i.prototype.mersenne_twister=function(e){return new H(e)},i.prototype.blueimp_md5=function(){return new G};var H=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};H.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},H.prototype.init_by_array=function(e,a){var n=1,c=0,m,C;for(this.init_genrand(19650218),m=this.N>a?this.N:a;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1664525<<16)+(C&65535)*1664525)+e[c]+c,this.mt[n]>>>=0,n++,c++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),c>=a&&(c=0);for(m=this.N-1;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1566083941<<16)+(C&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},H.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},H.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},H.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},H.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},H.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},H.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var G=function(){};G.prototype.VERSION="1.0.1",G.prototype.safe_add=function(a,n){var c=(a&65535)+(n&65535),m=(a>>16)+(n>>16)+(c>>16);return m<<16|c&65535},G.prototype.bit_roll=function(e,a){return e<>>32-a},G.prototype.md5_cmn=function(e,a,n,c,m,C){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(c,C)),m),n)},G.prototype.md5_ff=function(e,a,n,c,m,C,P){return this.md5_cmn(a&n|~a&c,e,a,m,C,P)},G.prototype.md5_gg=function(e,a,n,c,m,C,P){return this.md5_cmn(a&c|n&~c,e,a,m,C,P)},G.prototype.md5_hh=function(e,a,n,c,m,C,P){return this.md5_cmn(a^n^c,e,a,m,C,P)},G.prototype.md5_ii=function(e,a,n,c,m,C,P){return this.md5_cmn(n^(a|~c),e,a,m,C,P)},G.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,c,m,C,P,f=1732584193,A=-271733879,v=-1732584194,y=271733878;for(n=0;n>5]>>>a%32&255);return n},G.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(c=this.binl_md5(c,e.length*8)),n=0;n<16;n+=1)m[n]=c[n]^909522486,C[n]=c[n]^1549556828;return P=this.binl_md5(m.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(C.concat(P),512+128))},G.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",c,m;for(m=0;m>>4&15)+a.charAt(c&15);return n},G.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},G.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},G.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},G.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},G.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},G.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},d.exports&&(h=d.exports=i),h.Chance=i,typeof importScripts<"u"&&(chance=new i,self.Chance=i),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=i,window.chance=new i)})()})(ne,ne.exports);var ye=ne.exports;const Se=Ae(ye);function ue(d,h,k,w){var I=new Se(ie);k==null&&console.log();let N=k.toUpperCase(),b=d.toUpperCase(),g=h.toUpperCase();if(w!=null&&0":o=="["?"]":o=="{"?"}":o=="("?")":o}}function h(I,N,b){for(var g=[],M=`(){}[]^-|!*+.><='",;:%@?/\\#~`+b,B=` +\r `,i=$(I,M+B),o=0,r=0,t=0,s=0;s0&&(u=g[g.length-1]),l==` +`?(r++,t=0):s>0&&i[s-1]!==` +`?t=t+i[s-1].length:t=0,o+=l.length,u!=null&&u.type=="comment"&&(u.value.lastIndexOf("*/")!=u.value.length-2||u.value=="/*/")){l=="*"||l=="/"?u.value=u.value+l:u.value="/* ... ",u.end=o,u!=null&&u.type=="comment"&&u.value.lastIndexOf("*/")==u.value.length-2&&u.value!="/*/"&&(u.value=I.substring(u.begin,u.end));continue}if(u!=null&&(u.type=="line-comment"||u.type=="dbtools-command")&&l!=` +`){u.value=u.value+l;continue}if(u!=null&&(u.type=="line-comment"||u.type=="dbtools-command")&&l==` +`&&(u.end=u.begin+u.value.length),u!=null&&u.type=="quoted-string"&&!(u.isStandardLiteral()||u.isAltLiteral())){u.value=u.value+l,u.end=u.begin+u.value.length;continue}if(!(u!=null&&u.type=="dquoted-string"&&l!='"'&&!(u.value.endsWith('"')&&u.value.length>1))){if(u!=null&&u.type=="dquoted-string"&&l=='"'){u.end=o,u.value=I.substring(u.begin,u.end);continue}if(!(u!=null&&u.type=="bquoted-string"&&l!="`"&&!(u.value.endsWith("`")&&u.value.length>1))){if(u!=null&&u.type=="bquoted-string"&&l=="`"){u.end=o,u.value=I.substring(u.begin,u.end);continue}if(l=="*"&&u!=null&&u.value=="/"){u.value=u.value+l,u.end=u.begin+u.value.length,u.type="comment";continue}if(l=="-"&&u!=null&&u.value=="-"){u.value=u.value+l,u.type="line-comment";continue}if((l.toUpperCase()=="REM"||l.toUpperCase()=="REMA"||l.toUpperCase()=="REMAR"||l.toUpperCase()=="REMARK"||l.toUpperCase()=="PRO"||l.toUpperCase()=="PROM"||l.toUpperCase()=="PROMP"||l.toUpperCase()=="PROMPT")&&(u==null||u.value==` +`||u.value=="\r")){g.push(new d(l,o-l.length,-9,"line-comment",r,t));continue}if(l.toUpperCase()=="SODA"&&(u==null||u.value==` +`||u.value=="\r")){g.push(new d(l,o-l.length,-9,"dbtools-command",r,t));continue}if(u!=null&&u.type=="identifier"&&u.end==-11&&u.value.indexOf("@")==0&&!(l==` +`||l=="\r")){u.value=u.value+l;continue}if(u!=null&&u.type=="identifier"&&u.end==-11&&u.value.indexOf("@")==0&&(l==` +`||l=="\r")){u.end=o-1,g.push(new d(l,o-1,o,"ws",r,t));continue}if(N&&l=="'"){u!=null&&(u.value.toUpperCase()=="Q"||u.value.toUpperCase()=="N"||u.value.toUpperCase()=="U"||u.value.toUpperCase()=="NQ")?(u.value+=l,u.type="quoted-string"):g.push(new d(l,o-1,-10,"quoted-string",r,t));continue}if(N&&l=='"'){g.push(new d(l,o-1,-11,"dquoted-string",r,t));continue}if(l=="`"&&0<=M.indexOf("`")){g.push(new d(l,o-1,-11,"bquoted-string",r,t));continue}if(l.length==1&&0<=M.indexOf(l)){g.push(new d(l,o-1,o,"operation",r,t));continue}if(l.length==1&&0<=B.indexOf(l)){g.push(new d(l,o-1,o,"ws",r,t));continue}if("0"<=l.charAt(0)&&l.charAt(0)<="9"){k(l,g,o-l.length,r)||(l.charAt(l.length-1)=="K"||l.charAt(l.length-1)=="k"||l.charAt(l.length-1)=="M"||l.charAt(l.length-1)=="m"||l.charAt(l.length-1)=="G"||l.charAt(l.length-1)=="g"||l.charAt(l.length-1)=="T"||l.charAt(l.length-1)=="t"||l.charAt(l.length-1)=="P"||l.charAt(l.length-1)=="p"||l.charAt(l.length-1)=="E"||l.charAt(l.length-1)=="e"?(g.push(new d(l.substring(0,l.length-1),o-l.length,o-1,"constant.numeric",r,t)),g.push(new d(l.substring(l.length-1),o-1,o,"constant.numeric",r,t))):g.push(new d(l,o-l.length,o,"constant.numeric",r,t)));continue}var p="identifier";s+10){var u=g[g.length-1];u.end=I.length}return g}function k(I,N,b,g){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var M=$(I,"efd"),B=0;B")==0||r.indexOf("<")==0)&&(r=r.substring(1).trim());const l=r.toLowerCase();if(l.indexOf("view ")==0){var u=r.split(" ");return u[1]}r=b(r," d");var p=r.indexOf("/");0="0"&&T<="9"&&(r="x"+r),Te(se(r))},this.parseType=function(r){if(this.children!=null&&0!0)),N}return p}0");return t==0},this.getExplicitPkNode=function(){for(var r=0;rr.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(d.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),d.optionEQvalue("prefixPKwithTname","yes")&&(t=W(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let r=this.getGenIdColName();if(r==null){let t=this.getExplicitPkNode();return t==null?null:t.parseName()}return r},this.singleDDL=function(){if(this.children.length==0&&0!0)),x}return p}0");return t==0},this.getExplicitPkNode=function(){for(var r=0;rr.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(d.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),d.optionEQvalue("prefixPKwithTname","yes")&&(t=W(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let r=this.getGenIdColName();if(r==null){let t=this.getExplicitPkNode();return t==null?null:t.parseName()}return r},this.singleDDL=function(){if(this.children.length==0&&0!0):C==null&&(C=d.find(a),C.isMany2One()&!a.endsWith("_id")&&(n=a,a=W(a),P="_id")),u=h+" ".repeat(this.maxChildNameLen()-a.length),o+=h+a+P+u+c+` -`,o+=h+h+" ".repeat(this.maxChildNameLen())+"constraint "+s+"_"+a+`_fk -`;let f="";0<=r.indexOf("/CASCADE")&&(f=" on delete cascade");let A="";for(let v in this.children){let y=this.children[v];if(a==y.parseName()){let _=y.trimmedContent().toUpperCase();(0<=_.indexOf("/NN")||0<=_.indexOf("/NOTNULL"))&&(A=" NOT NULL".toLowerCase()),0<=_.indexOf("/CASCADE")&&(f=" on delete cascade");break}}o+=h+h+" ".repeat(this.maxChildNameLen())+"references "+d.objPrefix()+n+f+A+`, -`}if(d.optionEQvalue("rowkey",!0)||0!0):C==null&&(C=d.find(a),C.isMany2One()&!a.endsWith("_id")&&(n=a,a=W(a),P="_id")),u=h+" ".repeat(this.maxChildNameLen()-a.length),s+=h+a+P+u+c+` +`,s+=h+h+" ".repeat(this.maxChildNameLen())+"constraint "+l+"_"+a+`_fk +`;let f="";0<=r.indexOf("/CASCADE")&&(f=" on delete cascade");let A="";for(let v in this.children){let y=this.children[v];if(a==y.parseName()){let _=y.trimmedContent().toUpperCase();(0<=_.indexOf("/NN")||0<=_.indexOf("/NOTNULL"))&&(A=" NOT NULL".toLowerCase()),0<=_.indexOf("/CASCADE")&&(f=" on delete cascade");break}}s+=h+h+" ".repeat(this.maxChildNameLen())+"references "+d.objPrefix()+n+f+A+`, +`}if(d.optionEQvalue("rowkey",!0)||0TRUE, p_object=>'"+u+`'); end; / -`},this.generateTrigger=function(){if(this.parseType()!="table")return"";let r="";d.optionEQvalue("editionable","yes")&&(r=" editionable");let t=d.objPrefix()+this.parseName();var o="create or replace"+r+" trigger "+t.toLowerCase()+`_BIU -`.toLowerCase();o+=` before insert or update -`,o+=" on "+t.toLowerCase()+` -`,o+=` for each row -`;let s=this.trimmedContent().toUpperCase();(d.optionEQvalue("Rowkey","yes")||0!0)),s+=`, -`,s+=h+h+"P_"+u+" "+o+" "+S+t}for(let T=0;T!0),(r=="insert"||r=="update")&&(o+=`, +`.toLowerCase(),s):""},this.procDecl=function(r){let t="";r!="get"&&(t=" default null");let s="out";r!="get"&&(s=" in");let l=h+"procedure "+r+`_row ( +`;l+=h+h+"p_id in number"+t;for(var u in this.fks){let T=this.fks[u],S="number",E=d.find(T);E!=null&&E.getExplicitPkNode()!=null&&(S=E.getExplicitPkNode().parseType(D=>!0)),l+=`, +`,l+=h+h+"P_"+u+" "+s+" "+S+t}for(let T=0;T!0),(r=="insert"||r=="update")&&(s+=`, `);let L=h+h+h+"P_"+S+" := c1."+S+`; `;r=="insert"&&(L=h+h+h+S),r=="update"&&(L=h+h+h+S+" = P_"+S+` -`),o+=L}for(var u=0;uo.children.length>0&&o.parseName()==t&&!o.isArray())},this.generateSelectJsonBottomUp=function(r){throw new Error("generateSelectJsonBottomUp() not implemented yet")},this.one2many2oneUnsupoported="one to many to one is not supported",this.generateSelectJsonTopDown=function(r){var t=this.parseName();let o="";this.getExplicitPkNode==null&&(o+=r+"'"+this.getGenIdColName()+"' : "+t+"."+this.getGenIdColName()+`, -`);for(var s=0;ss.children.length>0&&s.parseName()==t&&!s.isArray())},this.generateSelectJsonBottomUp=function(r){throw new Error("generateSelectJsonBottomUp() not implemented yet")},this.one2many2oneUnsupoported="one to many to one is not supported",this.generateSelectJsonTopDown=function(r){var t=this.parseName();let s="";this.getExplicitPkNode==null&&(s+=r+"'"+this.getGenIdColName()+"' : "+t+"."+this.getGenIdColName()+`, +`);for(var l=0;l"),0!0)}),0!0)}),0teamInfo /insert 1 teamId num /pk - name vc + name race /insert 4 driverRaceMapId num /pk >raceInfo /insert 3 raceId num /pk - name vc + name finalPosition num #settings = { genpk: false, drop: true } diff --git a/test/JSON/donuts.qsql b/test/JSON/donuts.qsql index 0ab7f8e..4ab01f6 100644 --- a/test/JSON/donuts.qsql +++ b/test/JSON/donuts.qsql @@ -1,16 +1,16 @@ donuts /insert 3 id vc32 /pk - type vc - name vc + type + name ppu num donuts_batter /insert 7 >batter /insert 4 id vc32 /pk - type vc + type donuts_topping /insert 16 >topping /insert 7 id vc32 /pk - type vc + type #settings = { genpk: false, drop: true } diff --git a/test/experimental/2.json b/test/experimental/2.json deleted file mode 100644 index 65ea99c..0000000 --- a/test/experimental/2.json +++ /dev/null @@ -1,25 +0,0 @@ -[{"driverId" : 101, - "name" : "Max Verstappen", - "points" : 258, - "teamInfo" : {"teamId" : 301, "name" : "Red Bull"}, - "race" : [ {"driverRaceMapId" : 3, - "raceInfo" : {"raceId" : 201, - "name" : "Bahrain Grand Prix"}, - "finalPosition" : 19}, - {"driverRaceMapId" : 11, - "raceInfo" : {"raceId" : 202, - "name" : "Saudi Arabian Grand Prix"}, - "finalPosition" : 1} ]} -, { "driverId" : 102, -"name" : "Luigi Pinole", -"points" : 123, -"teamInfo" : {"teamId" : 301, "name" : "Red Bull"}, -"race" : [ {"driverRaceMapId" : 4, - "raceInfo" : {"raceId" : 201, - "name" : "Bahrain Grand Prix"}, - "finalPosition" : 20}, - {"driverRaceMapId" : 12, - "raceInfo" : {"raceId" : 203, - "name" : "Monaco Grand Prix"}, - "finalPosition" : 2} ]} -] \ No newline at end of file diff --git a/test/experimental/food_product.qsql b/test/experimental/food_product.qsql new file mode 100644 index 0000000..e993be7 --- /dev/null +++ b/test/experimental/food_product.qsql @@ -0,0 +1,4151 @@ + +food_product /insert 1 + code + product /insert 1 + _id + _keywords + additives_n num + additives_old_n num + additives_old_tags + additives_original_tags + additives_prev_original_tags + additives_tags + allergens + allergens_from_ingredients + allergens_from_user + allergens_hierarchy + allergens_lc + allergens_tags + brands + brands_tags + carbon_footprint_from_known_ingredients_debug + carbon_footprint_percent_of_known_ingredients num + categories + categories_hierarchy + categories_lc + categories_old + categories_properties /insert 1 + agribalyse_food_code:en + ciqual_food_code:en + categories_properties_tags + categories_tags + category_properties /insert 1 + ciqual_food_name:en + ciqual_food_name:fr + ciqual_food_name_tags + code + codes_tags + compared_to_category + complete num + completeness num + correctors_tags + countries + countries_hierarchy + countries_lc + countries_tags + created_t num + creator + data_quality_info_tags + data_quality_tags + data_quality_warnings_tags + data_sources + data_sources_tags + debug_param_sorted_langs + ecoscore_data /insert 1 + origins_of_ingredients /insert 1 + aggregated_origins /insert 1 + epi_score + origin + percent num + transportation_score + epi_score num + epi_value num + origins_from_categories + origins_from_origins_field + transportation_score num + transportation_scores /insert 1 + ad num + al num + va num + world num + xk num + transportation_value num + transportation_values /insert 1 + ad num + ua num + uk num + us num + va num + world num + xk num + value num + values /insert 1 + ad num + al num + at num + uk num + us num + va num + world num + xk num + warning + packaging /insert 1 + non_recyclable_and_non_biodegradable_materials num + >packagings1 /insert 2 + ecoscore_material_score num + ecoscore_shape_ratio num + material + non_recyclable_and_non_biodegradable + shape + score num + value num + production_system /insert 1 + value num + warning + agribalyse1 /insert 1 + agribalyse_food_code + co2_agriculture num + co2_consumption num + co2_distribution num + co2_packaging num + co2_processing num + co2_total num + co2_transportation num + code + dqr + ef_agriculture num + ef_consumption num + ef_distribution num + ef_packaging num + ef_processing num + ef_total num + ef_transportation num + is_beverage num + name_en + name_fr + score num + version + grade + grades /insert 1 + ad + al + tr + ua + uk + us + va + world + xk + missing /insert 1 + labels num + origins num + missing_data_warning num + previous_data /insert 1 + agribalyse2 /insert 1 + agribalyse_food_code + co2_agriculture num + co2_consumption num + co2_distribution num + co2_packaging num + co2_processing num + co2_total num + co2_transportation num + code + dqr + ef_agriculture num + ef_consumption num + ef_distribution num + ef_packaging num + ef_processing num + ef_total num + ef_transportation num + is_beverage num + name_en + name_fr + score num + grade + score num + score num + scores /insert 1 + ad num + al num + at num + va num + world num + xk num + status + impact /insert 1 + ef_single_score_log_stddev num + likeliest_impacts /insert 1 + Climate_change num + EF_single_score num + likeliest_recipe /insert 1 + en:Oak_smoked_sea_salti_yeast_extract num + en:e160c num + en:e330 num + en:flavouring num + en:garlic_powder num + en:milk num + en:onion num + en:potato num + en:potato_starch num + en:rice_flour num + en:salt num + en:spice num + en:sugar num + en:sunflower_oil num + en:tomato_powder num + en:water num + en:yeast_powder num + mass_ratio_uncharacterized num + impact + nutrition + uncharacterized_ingredients_mass_proportion /insert 1 + impact num + nutrition num + uncharacterized_ingredients_ratio /insert 1 + impact num + nutrition num + warnings + ecoscore_extended_data_version + ecoscore_grade + ecoscore_score num + ecoscore_tags + editors + editors_tags + emb_codes + emb_codes_20141016 + emb_codes_orig + entry_dates_tags + expiration_date + food_groups + food_groups_tags + fruits-vegetables-nuts_100g_estimate num + generic_name + generic_name_en + generic_name_fr + id vc32 /pk + image_front_small_url + image_front_thumb_url + image_front_url + image_ingredients_small_url + image_ingredients_thumb_url + image_ingredients_url + image_nutrition_small_url + image_nutrition_thumb_url + image_nutrition_url + image_small_url + image_thumb_url + image_url + front /insert 1 + geometry + imgid + normalize + rev + >full /insert 15 + h num + w num + white_magic + front_en /insert 1 + angle num + coordinates_image_size + geometry + imgid + normalize + rev + >full /insert 15 + h num + w num + white_magic + x1 + x2 + y1 + y2 + ingredients1 /insert 1 + geometry + imgid + normalize + ocr num + orientation + rev + >full /insert 15 + h num + w num + white_magic + ingredients_en /insert 1 + geometry + imgid + normalize + ocr num + orientation + rev + >full /insert 15 + h num + w num + white_magic + nutrition /insert 1 + geometry + imgid + normalize + ocr num + orientation + rev + >full /insert 15 + h num + w num + white_magic + nutrition_en /insert 1 + angle num + coordinates_image_size + geometry + imgid + normalize + rev + >full /insert 15 + h num + w num + white_magic + x1 + x2 + y1 + y2 + informers_tags + ingredients2 /insert 20 + ciqual_food_code + id vc32 /pk + percent num + percent_estimate num + percent_max num + percent_min num + processing + rank num + text + vegan + vegetarian + en:non-vegan + en:palm-oil-content-unknown + en:vegan-status-unknown + en:vegetarian-status-unknown + ingredients_analysis_tags + ingredients_debug + ingredients_from_or_that_may_be_from_palm_oil_n num + ingredients_from_palm_oil_n num + ingredients_hierarchy + ingredients_ids_debug + ingredients_n num + ingredients_n_tags + ingredients_original_tags + ingredients_percent_analysis num + ingredients_tags + ingredients_text + ingredients_text_debug + ingredients_text_en + ingredients_text_fr + ingredients_text_with_allergens + ingredients_text_with_allergens_en + ingredients_that_may_be_from_palm_oil_n num + ingredients_with_specified_percent_n num + ingredients_with_specified_percent_sum num + ingredients_with_unspecified_percent_n num + ingredients_with_unspecified_percent_sum num + ingredients_without_ciqual_codes + ingredients_without_ciqual_codes_n num + interface_version_created + interface_version_modified + known_ingredients_n num + labels + labels_hierarchy + labels_lc + labels_old + labels_tags + lang + languages /insert 1 + en:english num + languages_codes /insert 1 + en num + languages_hierarchy + languages_tags + last_edit_dates_tags + last_editor + last_image_dates_tags + last_image_t num + last_modified_by + last_modified_t num + lc + link + manufacturing_places + manufacturing_places_tags + max_imgid + misc_tags + no_nutrition_data + nova_group num + nova_group_debug + nova_groups + nova_groups_tags + nutrient_levels /insert 1 + fat + salt + saturated-fat + sugars + nutrient_levels_tags + nutriments /insert 1 + carbohydrates num + carbohydrates_100g num + carbohydrates_serving num + carbohydrates_unit + carbohydrates_value num + carbon-footprint-from-known-ingredients_100g num + carbon-footprint-from-known-ingredients_product num + salt num + salt_100g num + salt_serving num + salt_unit + salt_value num + saturated-fat num + saturated-fat_100g num + saturated-fat_serving num + saturated-fat_unit + saturated-fat_value num + sodium num + sodium_100g num + sodium_serving num + sodium_unit + sodium_value num + sugars num + sugars_100g num + sugars_serving num + sugars_unit + sugars_value num + nutriscore_2021_tags + nutriscore_2023_tags + nutriscore_data /insert 1 + energy num + energy_points num + energy_value num + fiber num + fiber_points num + fiber_value num + fruits_vegetables_nuts_colza_walnut_olive_oils + fruits_vegetables_nuts_colza_walnut_olive_oils_points num + fruits_vegetables_nuts_colza_walnut_olive_oils_value num + grade + is_beverage num + is_cheese num + is_fat num + is_water num + negative_points num + positive_points num + proteins num + proteins_points num + proteins_value num + saturated_fat num + saturated_fat_points num + saturated_fat_value num + score num + sodium num + sodium_points num + sodium_value num + sugars num + sugars_points num + sugars_value num + nutriscore_grade + nutriscore_score num + nutriscore_score_opposite num + nutriscore_tags + nutriscore_version + nutrition_data + nutrition_data_per + nutrition_data_prepared + nutrition_data_prepared_per + nutrition_grade_fr + nutrition_grades + nutrition_grades_tags + nutrition_score_beverage num + nutrition_score_debug + obsolete + obsolete_since_date + origin + origin_en + origins + origins_lc + origins_old + packaging + packaging_hierarchy + packaging_lc + packaging_materials_tags + packaging_old + packaging_old_before_taxonomization + packaging_shapes_tags + packaging_tags + packaging_text + packaging_text_en + >packagings2 /insert 2 + material + shape + packagings_complete num + packagings_n num + photographers_tags + pnns_groups_1 + pnns_groups_1_tags + pnns_groups_2 + pnns_groups_2_tags + popularity_key num + popularity_tags + product_name + product_name_en + product_name_fr + product_quantity + purchase_places + quantity + rev num + scans_n num + display /insert 3 + en + small /insert 3 + en + thumb /insert 3 + en + display /insert 3 + en + small /insert 3 + en + thumb /insert 3 + en + display /insert 3 + en + small /insert 3 + en + thumb /insert 3 + en + serving_quantity + serving_size + sortkey num + states + states_hierarchy + states_tags + stores + teams + teams_tags + traces + traces_from_ingredients + traces_from_user + traces_lc + unique_scans_n num + unknown_ingredients_n num + update_key + status num + status_verbose + +#settings = { genpk: false, drop: true } + +#flattened = +{ + "_keywords": [ + { + "0": "and", + "1": "anything", + "2": "appetizer", + "3": "artificial", + "4": "barbeque", + "5": "beverage", + "6": "potatoe", + "7": "preservative", + "8": "salty", + "9": "snack", + "10": "sunflower", + "11": "vegetarian", + "_id": "5060292302201" + } + ], + "added_countries_tags": [], + "additives_debug_tags": [], + "additives_old_tags": [ + { + "0": "en:e330", + "1": "en:e160c", + "_id": "5060292302201" + } + ], + "additives_original_tags": [ + { + "0": "en:e330", + "1": "en:e160c", + "_id": "5060292302201" + } + ], + "additives_prev_original_tags": [ + { + "0": "en:e330", + "1": "en:e160c", + "_id": "5060292302201" + } + ], + "additives_tags": [ + { + "0": "en:e160c", + "1": "en:e330", + "_id": "5060292302201" + } + ], + "allergens_hierarchy": [ + { + "0": "en:milk", + "_id": "5060292302201" + } + ], + "allergens_tags": [ + { + "0": "en:milk", + "_id": "5060292302201" + } + ], + "amino_acids_prev_tags": [], + "amino_acids_tags": [], + "brands_tags": [ + { + "0": "popchips", + "_id": "5060292302201" + } + ], + "categories_hierarchy": [ + { + "0": "en:plant-based-foods-and-beverages", + "1": "en:plant-based-foods", + "2": "en:snacks", + "3": "en:cereals-and-potatoes", + "4": "en:salty-snacks", + "5": "en:appetizers", + "6": "en:chips-and-fries", + "7": "en:crisps", + "8": "en:potato-crisps", + "9": "en:potato-crisps-in-sunflower-oil", + "_id": "5060292302201" + } + ], + "categories_properties": [ + { + "agribalyse_food_code:en": "4004", + "ciqual_food_code:en": "4004", + "_id": "5060292302201" + } + ], + "categories_properties_tags": [ + { + "0": "all-products", + "1": "categories-known", + "2": "agribalyse-food-code-4004", + "3": "agribalyse-food-code-known", + "4": "agribalyse-proxy-food-code-unknown", + "5": "ciqual-food-code-4004", + "6": "ciqual-food-code-known", + "7": "agribalyse-known", + "8": "agribalyse-4004", + "_id": "5060292302201" + } + ], + "categories_tags": [ + { + "0": "en:plant-based-foods-and-beverages", + "1": "en:plant-based-foods", + "2": "en:snacks", + "3": "en:cereals-and-potatoes", + "4": "en:salty-snacks", + "5": "en:appetizers", + "6": "en:chips-and-fries", + "7": "en:crisps", + "8": "en:potato-crisps", + "9": "en:potato-crisps-in-sunflower-oil", + "_id": "5060292302201" + } + ], + "category_properties": [ + { + "ciqual_food_name:en": "Potato crisps", + "ciqual_food_name:fr": "Chips de pommes de terre, standard", + "_id": "5060292302201" + } + ], + "checkers_tags": [], + "ciqual_food_name_tags": [ + { + "0": "potato-crisps", + "_id": "5060292302201" + } + ], + "cities_tags": [], + "codes_tags": [ + { + "0": "code-13", + "1": "5060292302xxx", + "2": "506029230xxxx", + "3": "50602923xxxxx", + "4": "5060292xxxxxx", + "5": "506029xxxxxxx", + "6": "50602xxxxxxxx", + "7": "5060xxxxxxxxx", + "8": "506xxxxxxxxxx", + "9": "50xxxxxxxxxxx", + "10": "5xxxxxxxxxxxx", + "_id": "5060292302201" + } + ], + "correctors_tags": [ + { + "0": "tacite", + "1": "tacite-mass-editor", + "2": "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", + "3": "openfoodfacts-contributors", + "4": "swipe-studio", + "5": "yuka.sY2b0xO6T85zoF3NwEKvllZnctbb-gn-LDr4mHzUyem0FYPXMO5by7b5NKg", + "6": "kiliweb", + "7": "packbot", + "8": "foodless", + "9": "yuka.sY2b0xO6T85zoF3NwEKvlmBZVPXu-gnlBU3miFTQ-NeSIbDaMdUtu4fLGas", + "10": "aleene", + "_id": "5060292302201" + } + ], + "countries_hierarchy": [ + { + "0": "en:france", + "1": "en:united-kingdom", + "_id": "5060292302201" + } + ], + "countries_tags": [ + { + "0": "en:france", + "1": "en:united-kingdom", + "_id": "5060292302201" + } + ], + "data_quality_bugs_tags": [], + "data_quality_errors_tags": [], + "data_quality_info_tags": [ + { + "0": "en:packaging-data-incomplete", + "1": "en:ingredients-percent-analysis-ok", + "2": "en:carbon-footprint-from-known-ingredients-but-not-from-meat-or-fish", + "3": "en:ecoscore-extended-data-computed", + "4": "en:ecoscore-extended-data-less-precise-than-agribalyse", + "5": "en:food-groups-1-known", + "6": "en:food-groups-2-known", + "7": "en:food-groups-3-unknown", + "_id": "5060292302201" + } + ], + "data_quality_tags": [ + { + "0": "en:packaging-data-incomplete", + "1": "en:ingredients-percent-analysis-ok", + "2": "en:carbon-footprint-from-known-ingredients-but-not-from-meat-or-fish", + "3": "en:ecoscore-extended-data-computed", + "4": "en:ecoscore-extended-data-less-precise-than-agribalyse", + "5": "en:food-groups-1-known", + "6": "en:food-groups-2-known", + "7": "en:food-groups-3-unknown", + "8": "en:nutrition-value-very-low-for-category-energy", + "9": "en:nutrition-value-very-low-for-category-fat", + "10": "en:nutrition-value-very-high-for-category-sugars", + "11": "en:vegetarian-label-but-could-not-confirm-for-all-ingredients", + "12": "en:ecoscore-origins-of-ingredients-origins-are-100-percent-unknown", + "13": "en:ecoscore-production-system-no-label", + "_id": "5060292302201" + } + ], + "data_quality_warnings_tags": [ + { + "0": "en:nutrition-value-very-low-for-category-energy", + "1": "en:nutrition-value-very-low-for-category-fat", + "2": "en:nutrition-value-very-high-for-category-sugars", + "3": "en:vegetarian-label-but-could-not-confirm-for-all-ingredients", + "4": "en:ecoscore-origins-of-ingredients-origins-are-100-percent-unknown", + "5": "en:ecoscore-production-system-no-label", + "_id": "5060292302201" + } + ], + "data_sources_tags": [ + { + "0": "app-yuka", + "1": "apps", + "2": "app-horizon", + "_id": "5060292302201" + } + ], + "debug_param_sorted_langs": [ + { + "0": "en", + "_id": "5060292302201" + } + ], + "aggregated_origins": [ + { + "epi_score": "0", + "origin": "en:unknown", + "percent": 100, + "transportation_score": null, + "_id": "5060292302201" + } + ], + "origins_from_categories": [ + { + "0": "en:unknown", + "_id": "5060292302201" + } + ], + "origins_from_origins_field": [ + { + "0": "en:unknown", + "_id": "5060292302201" + } + ], + "transportation_scores": [ + { + "ad": 0, + "al": 0, + "va": 0, + "world": 0, + "xk": 0, + "_id": "5060292302201" + } + ], + "transportation_values": [ + { + "ad": 0, + "ua": 0, + "uk": 0, + "us": 0, + "va": 0, + "world": 0, + "xk": 0, + "_id": "5060292302201" + } + ], + "values": [ + { + "ad": -5, + "al": -5, + "at": -5, + "uk": -5, + "us": -5, + "va": -5, + "world": -5, + "xk": -5, + "_id": "5060292302201" + } + ], + "origins_of_ingredients": [ + { + "epi_score": 0, + "epi_value": -5, + "transportation_score": 0, + "transportation_value": 0, + "value": -5, + "warning": "origins_are_100_percent_unknown", + "_id": "5060292302201" + } + ], + "packaging_packagings": [ + { + "packaging_id": "5060292302201", + "packagings1_id": 1 + }, + { + "packaging_id": "5060292302201", + "packagings1_id": 2 + } + ], + "packagings1": [ + { + "ecoscore_material_score": 0, + "ecoscore_shape_ratio": 1, + "material": "en:plastic", + "non_recyclable_and_non_biodegradable": "maybe", + "shape": "en:packet", + "id": 1 + }, + { + "ecoscore_material_score": 0, + "ecoscore_shape_ratio": 1, + "material": "en:plastic", + "non_recyclable_and_non_biodegradable": "maybe", + "shape": "en:packet", + "id": 2 + } + ], + "packaging": [ + { + "non_recyclable_and_non_biodegradable_materials": 2, + "score": -100, + "value": -15, + "_id": "5060292302201" + } + ], + "labels": [], + "production_system": [ + { + "value": 0, + "warning": "no_label", + "_id": "5060292302201" + } + ], + "threatened_species": [], + "adjustments": [], + "agribalyse1": [ + { + "agribalyse_food_code": "4004", + "co2_agriculture": 0.82655583, + "co2_consumption": 0, + "co2_distribution": 0.019537154, + "co2_packaging": 0.28154442, + "co2_processing": 0.23156851, + "co2_total": 1.543669164, + "co2_transportation": 0.18446325, + "code": "4004", + "dqr": "2.45", + "ef_agriculture": 0.14029442, + "ef_consumption": 0, + "ef_distribution": 0.004831936, + "ef_packaging": 0.02370999, + "ef_processing": 0.038707917, + "ef_total": 0.223317319, + "ef_transportation": 0.015773056, + "is_beverage": 0, + "name_en": "Potato crisps", + "name_fr": "Chips de pommes de terre, standard", + "score": 87, + "version": "3.1", + "_id": "5060292302201" + } + ], + "grades": [ + { + "ad": "b", + "al": "b", + "tr": "b", + "ua": "b", + "uk": "b", + "us": "b", + "va": "b", + "world": "b", + "xk": "b", + "_id": "5060292302201" + } + ], + "missing": [ + { + "labels": 1, + "origins": 1, + "_id": "5060292302201" + } + ], + "agribalyse2": [ + { + "agribalyse_food_code": "4004", + "co2_agriculture": 1.2992636, + "co2_consumption": 0, + "co2_distribution": 0.029120657, + "co2_packaging": 0.28581962, + "co2_processing": 0.39294234, + "co2_total": 2.2443641, + "co2_transportation": 0.23728203, + "code": "4004", + "dqr": "2.45", + "ef_agriculture": 0.18214682, + "ef_consumption": 0, + "ef_distribution": 0.0098990521, + "ef_packaging": 0.021558384, + "ef_processing": 0.057508389, + "ef_total": 0.29200269, + "ef_transportation": 0.020894187, + "is_beverage": 0, + "name_en": "Potato crisps", + "name_fr": "Chips de pommes de terre, standard", + "score": 78, + "_id": "5060292302201" + } + ], + "previous_data": [ + { + "grade": "b", + "score": 63, + "_id": "5060292302201" + } + ], + "scores": [ + { + "ad": 67, + "al": 67, + "at": 67, + "va": 67, + "world": 67, + "xk": 67, + "_id": "5060292302201" + } + ], + "ecoscore_data": [ + { + "grade": "b", + "missing_data_warning": 1, + "score": 67, + "status": "known", + "_id": "5060292302201" + } + ], + "likeliest_impacts": [ + { + "Climate_change": 0.0835225930657116, + "EF_single_score": 0.0132996566234689, + "_id": "5060292302201" + } + ], + "likeliest_recipe": [ + { + "en:Oak_smoked_sea_salti_yeast_extract": 0.103505496656251, + "en:e160c": 0.10350549665625, + "en:e330": 0.10350549665625, + "en:flavouring": 0.10350549665625, + "en:garlic_powder": 0.103505496656251, + "en:milk": 1.55847864453775, + "en:onion": 0.15510736429208, + "en:potato": 69.2208020730349, + "en:potato_starch": 10.5320407294931, + "en:rice_flour": 13.8595510001351, + "en:salt": 1.3345917157533, + "en:spice": 0.10350549665625, + "en:sugar": 10.2883618334396, + "en:sunflower_oil": 14.1645835312727, + "en:tomato_powder": 0.10350549665625, + "en:water": 6.24510964041154, + "en:yeast_powder": 0.103505496656251, + "_id": "5060292302201" + } + ], + "impact": [ + { + "ef_single_score_log_stddev": 0.0664290643574977, + "mass_ratio_uncharacterized": 0.0244618467395455, + "_id": "5060292302201" + } + ], + "nutrition": [], + "uncharacterized_ingredients": [], + "uncharacterized_ingredients_mass_proportion": [ + { + "impact": 0.0244618467395455, + "nutrition": 0.0106506947223728, + "_id": "5060292302201" + } + ], + "uncharacterized_ingredients_ratio": [ + { + "impact": 0.3125, + "nutrition": 0.125, + "_id": "5060292302201" + } + ], + "warnings": [ + { + "0": "Fermentation agents are present in the product (en:yeast-powder). Carbohydrates and sugars mass balance will not be considered to estimate potential recipes", + "1": "The product has a high number of impact uncharacterized ingredients: 31%", + "_id": "5060292302201" + } + ], + "ecoscore_extended_data": [], + "ecoscore_tags": [ + { + "0": "b", + "_id": "5060292302201" + } + ], + "editors": [ + { + "0": "kyzh", + "1": "tacite", + "_id": "5060292302201" + } + ], + "editors_tags": [ + { + "0": "kiliweb", + "1": "openfoodfacts-contributors", + "2": "aleene", + "3": "tacite-mass-editor", + "4": "yuka.sY2b0xO6T85zoF3NwEKvlmBZVPXu-gnlBU3miFTQ-NeSIbDaMdUtu4fLGas", + "5": "kyzh", + "6": "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", + "7": "ecoscore-impact-estimator", + "8": "tacite", + "9": "foodless", + "10": "yuka.sY2b0xO6T85zoF3NwEKvllZnctbb-gn-LDr4mHzUyem0FYPXMO5by7b5NKg", + "11": "swipe-studio", + "12": "packbot", + "_id": "5060292302201" + } + ], + "emb_codes_tags": [], + "entry_dates_tags": [ + { + "0": "2015-06-03", + "1": "2015-06", + "2": "2015", + "_id": "5060292302201" + } + ], + "food_groups_tags": [ + { + "0": "en:salty-snacks", + "1": "en:appetizers", + "_id": "5060292302201" + } + ], + "generic_name_fr_debug_tags": [], + "sizes": [ + { + "h": 74, + "w": 100, + "id": "5060292302201" + }, + { + "h": 296, + "w": 400, + "id": "5060292302201" + }, + { + "h": 43, + "w": 100, + "id": "5060292302201" + }, + { + "h": 171, + "w": 400, + "id": "5060292302201" + }, + { + "h": 100, + "w": 82, + "id": "5060292302201" + }, + { + "h": 400, + "w": 326, + "id": "5060292302201" + }, + { + "h": 56, + "w": 100, + "id": "5060292302201" + }, + { + "h": 225, + "w": 400, + "id": "5060292302201" + }, + { + "h": 100, + "w": 78, + "id": "5060292302201" + }, + { + "h": 200, + "w": 156, + "id": "5060292302201" + }, + { + "h": 400, + "w": 311, + "id": "5060292302201" + }, + { + "h": 200, + "w": 163, + "id": "5060292302201" + }, + { + "h": 30, + "w": 100, + "id": "5060292302201" + }, + { + "h": 61, + "w": 200, + "id": "5060292302201" + }, + { + "h": 122, + "w": 400, + "id": "5060292302201" + }, + { + "h": 81, + "w": 100, + "id": "5060292302201" + }, + { + "h": 163, + "w": 200, + "id": "5060292302201" + }, + { + "h": 325, + "w": 400, + "id": "5060292302201" + }, + { + "h": 113, + "w": 200, + "id": "5060292302201" + } + ], + "nutrition_en_full": [ + { + "nutrition_en_id": "5060292302201", + "full_id": 3 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 4 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 5 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 6 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 7 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 8 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 9 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 10 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 11 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 12 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 13 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 14 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 15 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 16 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 17 + } + ], + "full": [ + { + "h": 1482, + "w": 2000, + "id": 3 + }, + { + "h": 1482, + "w": 2000, + "id": 4 + }, + { + "h": 1482, + "w": 2000, + "id": 5 + }, + { + "h": 1482, + "w": 2000, + "id": 6 + }, + { + "h": 1482, + "w": 2000, + "id": 7 + }, + { + "h": 1482, + "w": 2000, + "id": 8 + }, + { + "h": 846, + "w": 1974, + "id": 9 + }, + { + "h": 1140, + "w": 930, + "id": 10 + }, + { + "h": 569, + "w": 1011, + "id": 11 + }, + { + "h": 1825, + "w": 1421, + "id": 12 + }, + { + "h": 1140, + "w": 930, + "id": 13 + }, + { + "h": 526, + "w": 1730, + "id": 14 + }, + { + "h": 526, + "w": 1730, + "id": 15 + }, + { + "h": 920, + "w": 1131, + "id": 16 + }, + { + "h": 569, + "w": 1011, + "id": 17 + } + ], + "images": [ + { + "uploaded_t": 1433338177, + "uploader": "kyzh", + "id": "5060292302201" + }, + { + "uploaded_t": 1433338194, + "uploader": "kyzh", + "id": "5060292302201" + }, + { + "uploaded_t": 1433338203, + "uploader": "kyzh", + "id": "5060292302201" + }, + { + "uploaded_t": 1433338215, + "uploader": "kyzh", + "id": "5060292302201" + }, + { + "uploaded_t": 1433338229, + "uploader": "kyzh", + "id": "5060292302201" + }, + { + "uploaded_t": 1433338245, + "uploader": "kyzh", + "id": "5060292302201" + }, + { + "uploaded_t": "1508236270", + "uploader": "kiliweb", + "id": "5060292302201" + }, + { + "uploaded_t": 1620505759, + "uploader": "kiliweb", + "id": "5060292302201" + }, + { + "uploaded_t": 1656075071, + "uploader": "kiliweb", + "id": "5060292302201" + } + ], + "front": [], + "front_en": [ + { + "angle": 0, + "coordinates_image_size": "full", + "geometry": "0x0--1--1", + "imgid": "8", + "normalize": null, + "rev": "23", + "white_magic": null, + "x1": "-1", + "x2": "-1", + "y1": "-1", + "y2": "-1", + "id": "5060292302201" + } + ], + "ingredients1": [ + { + "geometry": "1730x526-125-304", + "imgid": "5", + "normalize": "false", + "ocr": 1, + "orientation": "0", + "rev": "11", + "white_magic": "false", + "id": "5060292302201" + } + ], + "ingredients_en": [ + { + "geometry": "1730x526-125-304", + "imgid": "5", + "normalize": "false", + "ocr": 1, + "orientation": "0", + "rev": "11", + "white_magic": "false", + "id": "5060292302201" + } + ], + "nutrition_en": [ + { + "angle": 0, + "coordinates_image_size": "full", + "geometry": "0x0--1--1", + "imgid": "9", + "normalize": null, + "rev": "32", + "white_magic": null, + "x1": "-1", + "x2": "-1", + "y1": "-1", + "y2": "-1", + "id": "5060292302201" + } + ], + "informers_tags": [ + { + "0": "kyzh", + "1": "tacite", + "2": "tacite-mass-editor", + "3": "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", + "4": "openfoodfacts-contributors", + "5": "aleene", + "id": "5060292302201" + } + ], + "ingredients2": [ + { + "ciqual_food_code": "4003", + "id": "5060292302201", + "percent": 54, + "percent_estimate": 54, + "percent_max": 54, + "percent_min": 54, + "processing": "en:dried", + "rank": 1, + "text": "potatoes", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "17440", + "from_palm_oil": "no", + "id": "5060292302201", + "percent_estimate": 28.75, + "percent_max": 46, + "percent_min": 11.5, + "rank": 2, + "text": "sunflower oil", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "has_sub_ingredients": "yes", + "id": "5060292302201", + "percent_estimate": 8.625, + "percent_max": 33.3333333333333, + "percent_min": 0, + "rank": 3, + "text": "seasoning", + "vegan": "maybe", + "vegetarian": "maybe" + }, + { + "ciqual_food_code": "9520", + "id": "5060292302201", + "percent_estimate": 4.3125, + "percent_max": 17.25, + "percent_min": 0, + "rank": 4, + "text": "rice flour", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "5060292302201", + "percent_estimate": 4.3125, + "percent_max": 11.5, + "percent_min": 0, + "rank": 5, + "text": "potato starch", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "5060292302201", + "percent_estimate": 4.3125, + "percent_max": 8.7, + "percent_min": 0, + "text": "sugar", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "has_sub_ingredients": "yes", + "id": "5060292302201", + "percent_estimate": 2.15625, + "percent_max": 8.7, + "percent_min": 0, + "text": "whey powder", + "vegan": "no", + "vegetarian": "maybe" + }, + { + "ciqual_food_code": "11058", + "id": "5060292302201", + "percent_estimate": 1.05, + "percent_max": 2.1, + "percent_min": 0, + "text": "salt", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "20034", + "id": "5060292302201", + "percent_estimate": 0.553125, + "percent_max": 2.1, + "percent_min": 0, + "processing": "en:powder", + "text": "onion", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "5060292302201", + "percent_estimate": 0.2765625, + "percent_max": 2.1, + "percent_min": 0, + "text": "yeast powder", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "11000", + "id": "5060292302201", + "percent_estimate": 0.13828125, + "percent_max": 2.1, + "percent_min": 0, + "processing": "en:powder", + "text": "garlic", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "20047", + "id": "5060292302201", + "percent_estimate": 0.0691406250000002, + "percent_max": 2.1, + "percent_min": 0, + "processing": "en:powder", + "text": "tomato", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "5060292302201", + "percent_estimate": 0.0345703124999996, + "percent_max": 2.1, + "percent_min": 0, + "text": "Oak smoked sea salti yeast extract" + }, + { + "id": "5060292302201", + "percent_estimate": 0.0172851562499998, + "percent_max": 2.1, + "percent_min": 0, + "text": "flavourings", + "vegan": "maybe", + "vegetarian": "maybe" + }, + { + "id": "5060292302201", + "percent_estimate": 0.00864257812500036, + "percent_max": 2.1, + "percent_min": 0, + "text": "spices", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "has_sub_ingredients": "yes", + "id": "5060292302201", + "percent_estimate": 0.00432128906250018, + "percent_max": 2.1, + "percent_min": 0, + "text": "acid" + }, + { + "has_sub_ingredients": "yes", + "id": "5060292302201", + "percent_estimate": 0.00432128906249929, + "percent_max": 2.1, + "percent_min": 0, + "text": "colour" + }, + { + "id": "5060292302201", + "percent_estimate": 2.15625, + "percent_max": 8.7, + "percent_min": 0, + "text": "milk", + "vegan": "no", + "vegetarian": "yes" + }, + { + "id": "5060292302201", + "percent_estimate": 0.00432128906250018, + "percent_max": 2.1, + "percent_min": 0, + "text": "citric acid", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "5060292302201", + "percent_estimate": 0.00432128906249929, + "percent_max": 2.1, + "percent_min": 0, + "text": "paprika extract", + "vegan": "yes", + "vegetarian": "yes" + } + ], + "en:non-vegan": [ + { + "0": "en:whey-powder", + "1": "en:milk", + "id": "5060292302201" + } + ], + "en:palm-oil-content-unknown": [ + { + "0": "en:oak-smoked-sea-salti-yeast-extract", + "id": "5060292302201" + } + ], + "en:vegan-status-unknown": [ + { + "0": "en:oak-smoked-sea-salti-yeast-extract", + "id": "5060292302201" + } + ], + "en:vegetarian-status-unknown": [ + { + "0": "en:oak-smoked-sea-salti-yeast-extract", + "id": "5060292302201" + } + ], + "ingredients_analysis": [], + "ingredients_analysis_tags": [ + { + "0": "en:palm-oil-free", + "1": "en:non-vegan", + "2": "en:vegetarian", + "id": "5060292302201" + } + ], + "ingredients_debug": [ + { + "0": "54% dried potatoes", + "1": ",", + "2": null, + "3": null, + "4": null, + "5": " sunflower oil", + "6": ",", + "7": null, + "8": null, + "9": null, + "10": " seasoning ", + "11": "(", + "12": "(", + "13": null, + "14": null, + "15": "sugar", + "16": ",", + "17": null, + "18": null, + "19": null, + "20": " whey powder ", + "21": "[", + "22": "[", + "23": null, + "24": null, + "25": "milk]", + "26": ",", + "27": null, + "28": null, + "29": null, + "30": " salt", + "31": ",", + "32": null, + "33": null, + "34": null, + "35": " onion powder", + "36": ",", + "37": null, + "38": null, + "39": null, + "40": " yeast powder", + "41": ",", + "42": null, + "43": null, + "44": null, + "45": " garlic powder", + "46": ",", + "47": null, + "48": null, + "49": null, + "50": " tomato powder", + "51": ",", + "52": null, + "53": null, + "54": null, + "55": " Oak smoked sea salti yeast extract", + "56": ",", + "57": null, + "58": null, + "59": null, + "60": " flavourings", + "61": ",", + "62": null, + "63": null, + "64": null, + "65": " spices", + "66": ",", + "67": null, + "68": null, + "69": null, + "70": " acid", + "71": ":", + "72": ":", + "73": null, + "74": null, + "75": " citric acid", + "76": ",", + "77": null, + "78": null, + "79": null, + "80": " colour", + "81": ":", + "82": ":", + "83": null, + "84": null, + "85": " paprika extract)", + "86": ",", + "87": null, + "88": null, + "89": null, + "90": " rice flour", + "91": ",", + "92": null, + "93": null, + "94": null, + "95": " potato starch.", + "id": "5060292302201" + } + ], + "ingredients_from_palm_oil_tags": [], + "ingredients_hierarchy": [ + { + "0": "en:potato", + "1": "en:vegetable", + "2": "en:root-vegetable", + "3": "en:tuber", + "4": "en:sunflower-oil", + "5": "en:oil-and-fat", + "6": "en:spice", + "7": "en:condiment", + "8": "en:acid", + "9": "en:colour", + "10": "en:milk", + "11": "en:e330", + "12": "en:e160c", + "id": "5060292302201" + } + ], + "ingredients_ids_debug": [ + { + "0": "54-dried-potatoes", + "1": "sunflower-oil", + "2": "seasoning", + "3": "sugar", + "4": "colour", + "5": "paprika-extract", + "6": "rice-flour", + "7": "potato-starch", + "id": "5060292302201" + } + ], + "ingredients_n_tags": [ + { + "0": "20", + "1": "11-20", + "id": "5060292302201" + } + ], + "ingredients_original_tags": [ + { + "0": "en:potato", + "1": "en:sunflower-oil", + "2": "en:coating", + "3": "en:rice-flour", + "4": "en:potato-starch", + "5": "en:sugar", + "6": "en:whey-powder", + "7": "en:salt", + "8": "en:onion", + "9": "en:yeast-powder", + "10": "en:garlic", + "11": "en:tomato", + "12": "en:oak-smoked-sea-salti-yeast-extract", + "13": "en:flavouring", + "14": "en:spice", + "15": "en:acid", + "16": "en:colour", + "17": "en:milk", + "18": "en:e330", + "19": "en:e160c", + "id": "5060292302201" + } + ], + "ingredients_tags": [ + { + "0": "en:potato", + "1": "en:vegetable", + "2": "en:root-vegetable", + "3": "en:milk", + "4": "en:e330", + "5": "en:e160c", + "id": "5060292302201" + } + ], + "ingredients_text_debug_tags": [], + "ingredients_text_fr_debug_tags": [], + "ingredients_that_may_be_from_palm_oil_tags": [], + "ingredients_without_ciqual_codes": [ + { + "0": "en:e160c", + "1": "en:e330", + "2": "en:flavouring", + "3": "en:milk", + "4": "en:oak-smoked-sea-salti-yeast-extract", + "5": "en:potato-starch", + "6": "en:spice", + "7": "en:sugar", + "8": "en:yeast-powder", + "id": "5060292302201" + } + ], + "labels_hierarchy": [ + { + "0": "en:vegetarian", + "1": "en:no-preservatives", + "2": "en:No artificial anything", + "id": "5060292302201" + } + ], + "labels_tags": [ + { + "0": "en:vegetarian", + "1": "en:no-preservatives", + "2": "en:no-artificial-anything", + "id": "5060292302201" + } + ], + "languages": [ + { + "en:english": 5, + "id": "5060292302201" + } + ], + "languages_codes": [ + { + "en": 5, + "id": "5060292302201" + } + ], + "languages_hierarchy": [ + { + "0": "en:english", + "id": "5060292302201" + } + ], + "languages_tags": [ + { + "0": "en:english", + "1": "en:1", + "id": "5060292302201" + } + ], + "last_edit_dates_tags": [ + { + "0": "2023-03-24", + "1": "2023-03", + "2": "2023", + "id": "5060292302201" + } + ], + "last_image_dates_tags": [ + { + "0": "2022-06-24", + "1": "2022-06", + "2": "2022", + "id": "5060292302201" + } + ], + "main_countries_tags": [], + "manufacturing_places_tags": [ + { + "0": "european-union", + "id": "5060292302201" + } + ], + "minerals_prev_tags": [], + "minerals_tags": [], + "misc_tags": [ + { + "0": "en:nutriscore-computed", + "1": "en:nutrition-fruits-vegetables-nuts-from-category", + "2": "en:nutrition-fruits-vegetables-nuts-from-category-en-potato-crisps-in-sunflower-oil", + "3": "en:nutrition-fruits-vegetables-legumes-from-category", + "4": "en:nutrition-fruits-vegetables-legumes-from-category-en-potato-crisps-in-sunflower-oil", + "5": "en:nutriscore-2021-same-as-2023", + "6": "en:nutriscore-2021-d-2023-d", + "7": "en:packagings-number-of-components-2", + "8": "en:packagings-not-complete", + "9": "en:packagings-not-empty-but-not-complete", + "10": "en:packagings-not-empty", + "11": "en:ecoscore-extended-data-computed", + "12": "en:ecoscore-extended-data-version-4", + "13": "en:ecoscore-missing-data-warning", + "14": "en:ecoscore-missing-data-labels", + "15": "en:ecoscore-missing-data-origins", + "16": "en:ecoscore-computed", + "17": "en:ecoscore-changed", + "id": "5060292302201" + } + ], + "nova_groups_markers": [ + { + "0": "categories", + "1": "en:salty-snacks", + "id": "5060292302201" + }, + { + "0": "ingredients", + "1": "en:salt", + "id": "5060292302201" + }, + { + "0": "ingredients", + "1": "en:starch", + "id": "5060292302201" + }, + { + "0": "ingredients", + "1": "en:sugar", + "id": "5060292302201" + }, + { + "0": "ingredients", + "1": "en:vegetable-oil", + "id": "5060292302201" + }, + { + "0": "additives", + "1": "en:e160c", + "id": "5060292302201" + }, + { + "0": "ingredients", + "1": "en:colour", + "id": "5060292302201" + }, + { + "0": "ingredients", + "1": "en:flavouring", + "id": "5060292302201" + }, + { + "0": "ingredients", + "1": "en:whey", + "id": "5060292302201" + } + ], + "nova_groups_tags": [ + { + "0": "en:4-ultra-processed-food-and-drink-products", + "id": "5060292302201" + } + ], + "nucleotides_prev_tags": [], + "nucleotides_tags": [], + "nutrient_levels": [ + { + "fat": "moderate", + "salt": "high", + "saturated-fat": "low", + "sugars": "moderate", + "id": "5060292302201" + } + ], + "nutrient_levels_tags": [ + { + "0": "en:fat-in-moderate-quantity", + "1": "en:saturated-fat-in-low-quantity", + "2": "en:sugars-in-moderate-quantity", + "3": "en:salt-in-high-quantity", + "id": "5060292302201" + } + ], + "nutriments": [ + { + "carbohydrates": 62, + "carbohydrates_100g": 62, + "carbohydrates_serving": 14.3, + "carbohydrates_unit": "g", + "carbohydrates_value": 62, + "carbon-footprint-from-known-ingredients_100g": 32.4, + "carbon-footprint-from-known-ingredients_product": 7.45, + "salt": 2.1, + "salt_100g": 2.1, + "salt_serving": 0.483, + "salt_unit": "g", + "salt_value": 2.1, + "saturated-fat": 1.4, + "saturated-fat_100g": 1.4, + "saturated-fat_serving": 0.322, + "saturated-fat_unit": "g", + "saturated-fat_value": 1.4, + "sodium": 0.84, + "sodium_100g": 0.84, + "sodium_serving": 0.193, + "sodium_unit": "g", + "sodium_value": 0.84, + "sugars": 8.7, + "sugars_100g": 8.7, + "sugars_serving": 2, + "sugars_unit": "g", + "sugars_value": 8.7, + "id": "5060292302201" + } + ], + "data": [ + { + "count_proteins": 0, + "count_proteins_reason": "negative_points_more_than_11", + "energy": 1759, + "is_red_meat_product": 0, + "is_water": 0, + "negative_points": 18, + "positive_points": 1, + "proteins": 5.7, + "proteins_points": 2, + "salt": 2.1, + "salt_points": 10, + "saturated_fat": 1.4, + "saturated_fat_points": 1, + "sugars": 8.7, + "sugars_points": 2, + "id": "5060292302201" + } + ], + "nutriscore": [ + { + "category_available": 1, + "grade": "d", + "nutrients_available": 1, + "nutriscore_applicable": 1, + "nutriscore_computed": 1, + "score": 12, + "id": "5060292302201" + }, + { + "category_available": 1, + "grade": "d", + "nutrients_available": 1, + "nutriscore_applicable": 1, + "nutriscore_computed": 1, + "score": 17, + "id": "5060292302201" + } + ], + "negative_nutrients": [ + { + "0": "energy", + "1": "sugars", + "2": "saturated_fat", + "3": "salt", + "4": "non_nutritive_sweeteners", + "id": "5060292302201" + } + ], + "positive_nutrients": [ + { + "0": "fruits_vegetables_legumes", + "1": "fiber", + "id": "5060292302201" + } + ], + "nutriscore_2021_tags": [ + { + "0": "d", + "id": "5060292302201" + } + ], + "nutriscore_2023_tags": [ + { + "0": "d", + "id": "5060292302201" + } + ], + "nutriscore_data": [ + { + "energy": 1759, + "energy_points": 5, + "energy_value": 1759, + "fiber": 3.9, + "fiber_points": 4, + "fiber_value": 3.9, + "fruits_vegetables_nuts_colza_walnut_olive_oils": "0", + "fruits_vegetables_nuts_colza_walnut_olive_oils_points": 0, + "fruits_vegetables_nuts_colza_walnut_olive_oils_value": 0, + "grade": "d", + "is_beverage": 0, + "is_cheese": 0, + "is_fat": 0, + "is_water": 0, + "negative_points": 16, + "positive_points": 4, + "proteins": 5.7, + "proteins_points": 3, + "proteins_value": 5.7, + "saturated_fat": 1.4, + "saturated_fat_points": 1, + "saturated_fat_value": 1.4, + "score": 12, + "sodium": 840, + "sodium_points": 9, + "sodium_value": 840, + "sugars": 8.7, + "sugars_points": 1, + "sugars_value": 8.7, + "id": "5060292302201" + } + ], + "nutriscore_tags": [ + { + "0": "d", + "id": "5060292302201" + } + ], + "nutrition_grades_tags": [ + { + "0": "d", + "id": "5060292302201" + } + ], + "origins_hierarchy": [], + "origins_tags": [], + "other_nutritional_substances_tags": [], + "packaging_hierarchy": [ + { + "0": "en:plastic", + "1": "en:Mixed plastic film-packet", + "id": "5060292302201" + } + ], + "packaging_materials_tags": [ + { + "0": "en:plastic", + "id": "5060292302201" + } + ], + "packaging_recycling_tags": [], + "packaging_shapes_tags": [ + { + "0": "en:packet", + "id": "5060292302201" + } + ], + "packaging_tags": [ + { + "0": "en:plastic", + "1": "en:mixed-plastic-film-packet", + "id": "5060292302201" + } + ], + "product_packagings": [ + { + "product_id": "5060292302201", + "packagings2_id": 18 + }, + { + "product_id": "5060292302201", + "packagings2_id": 19 + } + ], + "packagings2": [ + { + "material": "en:plastic", + "shape": "en:packet", + "id": 18 + }, + { + "material": "en:plastic", + "shape": "en:packet", + "id": 19 + } + ], + "all": [], + "en:plastic": [], + "packagings_materials": [], + "photographers_tags": [ + { + "0": "kyzh", + "1": "kiliweb", + "id": "5060292302201" + } + ], + "pnns_groups_1_tags": [ + { + "0": "salty-snacks", + "1": "known", + "id": "5060292302201" + } + ], + "pnns_groups_2_tags": [ + { + "0": "appetizers", + "1": "known", + "id": "5060292302201" + } + ], + "popularity_tags": [ + { + "0": "bottom-25-percent-scans-2019", + "1": "bottom-20-percent-scans-2019", + "2": "top-100000-hk-scans-2022", + "3": "top-10000-us-scans-2022", + "4": "top-50000-us-scans-2022", + "5": "top-100000-us-scans-2022", + "id": "5060292302201" + } + ], + "product_name_fr_debug_tags": [], + "purchase_places_tags": [], + "removed_countries_tags": [], + "display": [ + { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", + "id": "5060292302201" + }, + { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg", + "id": "5060292302201" + }, + { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg", + "id": "5060292302201" + } + ], + "small": [ + { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", + "id": "5060292302201" + }, + { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg", + "id": "5060292302201" + }, + { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg", + "id": "5060292302201" + } + ], + "thumb": [ + { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", + "id": "5060292302201" + }, + { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg", + "id": "5060292302201" + }, + { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg", + "id": "5060292302201" + } + ], + "ingredients-1": [], + "selected_images": [], + "states_hierarchy": [ + { + "0": "en:to-be-completed", + "1": "en:nutrition-facts-completed", + "2": "en:ingredients-completed", + "3": "en:ingredients-photo-selected", + "4": "en:front-photo-selected", + "5": "en:photos-uploaded", + "id": "5060292302201" + } + ], + "states_tags": [ + { + "0": "en:to-be-completed", + "1": "en:nutrition-facts-completed", + "2": "en:ingredients-completed", + "3": "en:ingredients-photo-selected", + "4": "en:front-photo-selected", + "5": "en:photos-uploaded", + "id": "5060292302201" + } + ], + "stores_tags": [], + "teams_tags": [ + { + "0": "swipe-studio", + "id": "5060292302201" + } + ], + "traces_hierarchy": [], + "traces_tags": [], + "unknown_nutrients_tags": [], + "vitamins_prev_tags": [], + "vitamins_tags": [], + "weighers_tags": [], + "product": [ + { + "_id": "5060292302201", + "additives_n": 2, + "additives_old_n": 2, + "allergens": "en:milk", + "allergens_from_ingredients": "en:milk, milk", + "allergens_from_user": "(en) en:milk", + "allergens_lc": "en", + "brands": "Popchips", + "carbon_footprint_from_known_ingredients_debug": "en:potato 54% x 0.6 = 32.4 g - ", + "carbon_footprint_percent_of_known_ingredients": 54, + "categories": "Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil", + "categories_lc": "en", + "categories_old": "Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil", + "code": "5060292302201", + "compared_to_category": "en:potato-crisps-in-sunflower-oil", + "complete": 0, + "completeness": 0.8875, + "countries": "France,United Kingdom", + "countries_lc": "en", + "created_t": 1433338177, + "creator": "kyzh", + "data_sources": "App - yuka, Apps, App - Horizon", + "ecoscore_extended_data_version": "4", + "ecoscore_grade": "b", + "ecoscore_score": 67, + "emb_codes": "", + "emb_codes_20141016": "", + "emb_codes_orig": "", + "expiration_date": "11/05/2016", + "food_groups": "en:appetizers", + "fruits-vegetables-nuts_100g_estimate": 0, + "generic_name": "", + "generic_name_en": "", + "generic_name_fr": "", + "id": "5060292302201", + "image_front_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", + "image_front_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", + "image_front_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", + "image_ingredients_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg", + "image_ingredients_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg", + "image_ingredients_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg", + "image_nutrition_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg", + "image_nutrition_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg", + "image_nutrition_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg", + "image_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", + "image_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", + "image_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", + "ingredients_from_or_that_may_be_from_palm_oil_n": 0, + "ingredients_from_palm_oil_n": 0, + "ingredients_n": 20, + "ingredients_percent_analysis": 1, + "ingredients_text": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_debug": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_en": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_fr": "", + "ingredients_text_with_allergens": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_with_allergens_en": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_that_may_be_from_palm_oil_n": 0, + "ingredients_with_specified_percent_n": 1, + "ingredients_with_specified_percent_sum": 54, + "ingredients_with_unspecified_percent_n": 15, + "ingredients_with_unspecified_percent_sum": 46, + "ingredients_without_ciqual_codes_n": 9, + "interface_version_created": "20120622", + "interface_version_modified": "20190830", + "known_ingredients_n": 36, + "labels": "Vegetarian, No preservatives, No artificial anything", + "labels_lc": "en", + "labels_old": "Vegetarian,No preservatives,No artificial anything", + "lang": "en", + "last_editor": "aleene", + "last_image_t": 1656075071, + "last_modified_by": "aleene", + "last_modified_t": 1679645675, + "lc": "en", + "link": "", + "manufacturing_places": "European Union", + "max_imgid": "9", + "no_nutrition_data": "", + "nova_group": 4, + "nova_group_debug": "", + "nova_groups": "4", + "nutriscore_grade": "d", + "nutriscore_score": 12, + "nutriscore_score_opposite": -12, + "nutriscore_version": "2021", + "nutrition_data": "on", + "nutrition_data_per": "100g", + "nutrition_data_prepared": "", + "nutrition_data_prepared_per": "100g", + "nutrition_grade_fr": "d", + "nutrition_grades": "d", + "nutrition_score_beverage": 0, + "nutrition_score_debug": "", + "obsolete": "", + "obsolete_since_date": "", + "origin": "", + "origin_en": "", + "origins": "", + "origins_lc": "en", + "origins_old": "", + "packaging": "Plastic,Mixed plastic film-packet", + "packaging_lc": "en", + "packaging_old": "Plastic, Mixed plastic-packet", + "packaging_old_before_taxonomization": "Plastic, en:mixed plastic-packet", + "packaging_text": "", + "packaging_text_en": "", + "packagings_complete": 0, + "packagings_n": 2, + "pnns_groups_1": "Salty snacks", + "pnns_groups_2": "Appetizers", + "popularity_key": 21900000007, + "product_name": "Barbeque Potato Chips", + "product_name_en": "Barbeque Potato Chips", + "product_name_fr": "", + "product_quantity": "23", + "purchase_places": "", + "quantity": "23 g", + "rev": 33, + "scans_n": 6, + "serving_quantity": "23", + "serving_size": "23 g", + "sortkey": 1535456524, + "states": "en:to-be-completed, en:nutrition-facts-completed, en:ingredients-completed, en:expiration-date-completed, en:packaging-code-to-be-completed, en:characteristics-to-be-completed, en:origins-to-be-completed, en:categories-completed, en:brands-completed, en:packaging-completed, en:quantity-completed, en:product-name-completed, en:photos-to-be-validated, en:packaging-photo-to-be-selected, en:nutrition-photo-selected, en:ingredients-photo-selected, en:front-photo-selected, en:photos-uploaded", + "stores": "", + "teams": "swipe-studio", + "traces": "", + "traces_from_ingredients": "", + "traces_from_user": "(en) ", + "traces_lc": "en", + "unique_scans_n": 4, + "unknown_ingredients_n": 1, + "update_key": "eco20231129" + } + ], + "food_product": [ + { + "code": "5060292302201", + "status": 1, + "status_verbose": "product found" + } + ] +} + + +-- Generated by json2qsql.js development 1/30/2024, 11:19:56 AM + +#document = +{ + "code": "5060292302201", + "product": { + "_id": "5060292302201", + "_keywords": [ + "and", + "anything", + "appetizer", + "artificial", + "barbeque", + "beverage", + "potatoe", + "preservative", + "salty", + "snack", + "sunflower", + "vegetarian" + ], + "added_countries_tags": [], + "additives_debug_tags": [], + "additives_n": 2, + "additives_old_n": 2, + "additives_old_tags": [ + "en:e330", + "en:e160c" + ], + "additives_original_tags": [ + "en:e330", + "en:e160c" + ], + "additives_prev_original_tags": [ + "en:e330", + "en:e160c" + ], + "additives_tags": [ + "en:e160c", + "en:e330" + ], + "allergens": "en:milk", + "allergens_from_ingredients": "en:milk, milk", + "allergens_from_user": "(en) en:milk", + "allergens_hierarchy": [ + "en:milk" + ], + "allergens_lc": "en", + "allergens_tags": [ + "en:milk" + ], + "amino_acids_prev_tags": [], + "amino_acids_tags": [], + "brands": "Popchips", + "brands_tags": [ + "popchips" + ], + "carbon_footprint_from_known_ingredients_debug": "en:potato 54% x 0.6 = 32.4 g - ", + "carbon_footprint_percent_of_known_ingredients": 54, + "categories": "Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil", + "categories_hierarchy": [ + "en:plant-based-foods-and-beverages", + "en:plant-based-foods", + "en:snacks", + "en:cereals-and-potatoes", + "en:salty-snacks", + "en:appetizers", + "en:chips-and-fries", + "en:crisps", + "en:potato-crisps", + "en:potato-crisps-in-sunflower-oil" + ], + "categories_lc": "en", + "categories_old": "Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil", + "categories_properties": { + "agribalyse_food_code:en": "4004", + "ciqual_food_code:en": "4004" + }, + "categories_properties_tags": [ + "all-products", + "categories-known", + "agribalyse-food-code-4004", + "agribalyse-food-code-known", + "agribalyse-proxy-food-code-unknown", + "ciqual-food-code-4004", + "ciqual-food-code-known", + "agribalyse-known", + "agribalyse-4004" + ], + "categories_tags": [ + "en:plant-based-foods-and-beverages", + "en:plant-based-foods", + "en:snacks", + "en:cereals-and-potatoes", + "en:salty-snacks", + "en:appetizers", + "en:chips-and-fries", + "en:crisps", + "en:potato-crisps", + "en:potato-crisps-in-sunflower-oil" + ], + "category_properties": { + "ciqual_food_name:en": "Potato crisps", + "ciqual_food_name:fr": "Chips de pommes de terre, standard" + }, + "checkers_tags": [], + "ciqual_food_name_tags": [ + "potato-crisps" + ], + "cities_tags": [], + "code": "5060292302201", + "codes_tags": [ + "code-13", + "5060292302xxx", + "506029230xxxx", + "50602923xxxxx", + "5060292xxxxxx", + "506029xxxxxxx", + "50602xxxxxxxx", + "5060xxxxxxxxx", + "506xxxxxxxxxx", + "50xxxxxxxxxxx", + "5xxxxxxxxxxxx" + ], + "compared_to_category": "en:potato-crisps-in-sunflower-oil", + "complete": 0, + "completeness": 0.8875, + "correctors_tags": [ + "tacite", + "tacite-mass-editor", + "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", + "openfoodfacts-contributors", + "swipe-studio", + "yuka.sY2b0xO6T85zoF3NwEKvllZnctbb-gn-LDr4mHzUyem0FYPXMO5by7b5NKg", + "kiliweb", + "packbot", + "foodless", + "yuka.sY2b0xO6T85zoF3NwEKvlmBZVPXu-gnlBU3miFTQ-NeSIbDaMdUtu4fLGas", + "aleene" + ], + "countries": "France,United Kingdom", + "countries_hierarchy": [ + "en:france", + "en:united-kingdom" + ], + "countries_lc": "en", + "countries_tags": [ + "en:france", + "en:united-kingdom" + ], + "created_t": 1433338177, + "creator": "kyzh", + "data_quality_bugs_tags": [], + "data_quality_errors_tags": [], + "data_quality_info_tags": [ + "en:packaging-data-incomplete", + "en:ingredients-percent-analysis-ok", + "en:carbon-footprint-from-known-ingredients-but-not-from-meat-or-fish", + "en:ecoscore-extended-data-computed", + "en:ecoscore-extended-data-less-precise-than-agribalyse", + "en:food-groups-1-known", + "en:food-groups-2-known", + "en:food-groups-3-unknown" + ], + "data_quality_tags": [ + "en:packaging-data-incomplete", + "en:ingredients-percent-analysis-ok", + "en:carbon-footprint-from-known-ingredients-but-not-from-meat-or-fish", + "en:ecoscore-extended-data-computed", + "en:ecoscore-extended-data-less-precise-than-agribalyse", + "en:food-groups-1-known", + "en:food-groups-2-known", + "en:food-groups-3-unknown", + "en:nutrition-value-very-low-for-category-energy", + "en:nutrition-value-very-low-for-category-fat", + "en:nutrition-value-very-high-for-category-sugars", + "en:vegetarian-label-but-could-not-confirm-for-all-ingredients", + "en:ecoscore-origins-of-ingredients-origins-are-100-percent-unknown", + "en:ecoscore-production-system-no-label" + ], + "data_quality_warnings_tags": [ + "en:nutrition-value-very-low-for-category-energy", + "en:nutrition-value-very-low-for-category-fat", + "en:nutrition-value-very-high-for-category-sugars", + "en:vegetarian-label-but-could-not-confirm-for-all-ingredients", + "en:ecoscore-origins-of-ingredients-origins-are-100-percent-unknown", + "en:ecoscore-production-system-no-label" + ], + "data_sources": "App - yuka, Apps, App - Horizon", + "data_sources_tags": [ + "app-yuka", + "apps", + "app-horizon" + ], + "debug_param_sorted_langs": [ + "en" + ], + "ecoscore_data": { + "adjustments": { + "origins_of_ingredients": { + "aggregated_origins": [ + { + "epi_score": "0", + "origin": "en:unknown", + "percent": 100, + "transportation_score": null + } + ], + "epi_score": 0, + "epi_value": -5, + "origins_from_categories": [ + "en:unknown" + ], + "origins_from_origins_field": [ + "en:unknown" + ], + "transportation_score": 0, + "transportation_scores": { + "ad": 0, + "al": 0, + "va": 0, + "world": 0, + "xk": 0 + }, + "transportation_value": 0, + "transportation_values": { + "ad": 0, + "ua": 0, + "uk": 0, + "us": 0, + "va": 0, + "world": 0, + "xk": 0 + }, + "value": -5, + "values": { + "ad": -5, + "al": -5, + "at": -5, + "uk": -5, + "us": -5, + "va": -5, + "world": -5, + "xk": -5 + }, + "warning": "origins_are_100_percent_unknown" + }, + "packaging": { + "non_recyclable_and_non_biodegradable_materials": 2, + "packagings": [ + { + "ecoscore_material_score": 0, + "ecoscore_shape_ratio": 1, + "material": "en:plastic", + "non_recyclable_and_non_biodegradable": "maybe", + "shape": "en:packet" + }, + { + "ecoscore_material_score": 0, + "ecoscore_shape_ratio": 1, + "material": "en:plastic", + "non_recyclable_and_non_biodegradable": "maybe", + "shape": "en:packet" + } + ], + "score": -100, + "value": -15 + }, + "production_system": { + "labels": [], + "value": 0, + "warning": "no_label" + }, + "threatened_species": {} + }, + "agribalyse": { + "agribalyse_food_code": "4004", + "co2_agriculture": 0.82655583, + "co2_consumption": 0, + "co2_distribution": 0.019537154, + "co2_packaging": 0.28154442, + "co2_processing": 0.23156851, + "co2_total": 1.543669164, + "co2_transportation": 0.18446325, + "code": "4004", + "dqr": "2.45", + "ef_agriculture": 0.14029442, + "ef_consumption": 0, + "ef_distribution": 0.004831936, + "ef_packaging": 0.02370999, + "ef_processing": 0.038707917, + "ef_total": 0.223317319, + "ef_transportation": 0.015773056, + "is_beverage": 0, + "name_en": "Potato crisps", + "name_fr": "Chips de pommes de terre, standard", + "score": 87, + "version": "3.1" + }, + "grade": "b", + "grades": { + "ad": "b", + "al": "b", + "tr": "b", + "ua": "b", + "uk": "b", + "us": "b", + "va": "b", + "world": "b", + "xk": "b" + }, + "missing": { + "labels": 1, + "origins": 1 + }, + "missing_data_warning": 1, + "previous_data": { + "agribalyse": { + "agribalyse_food_code": "4004", + "co2_agriculture": 1.2992636, + "co2_consumption": 0, + "co2_distribution": 0.029120657, + "co2_packaging": 0.28581962, + "co2_processing": 0.39294234, + "co2_total": 2.2443641, + "co2_transportation": 0.23728203, + "code": "4004", + "dqr": "2.45", + "ef_agriculture": 0.18214682, + "ef_consumption": 0, + "ef_distribution": 0.0098990521, + "ef_packaging": 0.021558384, + "ef_processing": 0.057508389, + "ef_total": 0.29200269, + "ef_transportation": 0.020894187, + "is_beverage": 0, + "name_en": "Potato crisps", + "name_fr": "Chips de pommes de terre, standard", + "score": 78 + }, + "grade": "b", + "score": 63 + }, + "score": 67, + "scores": { + "ad": 67, + "al": 67, + "at": 67, + "va": 67, + "world": 67, + "xk": 67 + }, + "status": "known" + }, + "ecoscore_extended_data": { + "impact": { + "ef_single_score_log_stddev": 0.0664290643574977, + "likeliest_impacts": { + "Climate_change": 0.0835225930657116, + "EF_single_score": 0.0132996566234689 + }, + "likeliest_recipe": { + "en:Oak_smoked_sea_salti_yeast_extract": 0.103505496656251, + "en:e160c": 0.10350549665625, + "en:e330": 0.10350549665625, + "en:flavouring": 0.10350549665625, + "en:garlic_powder": 0.103505496656251, + "en:milk": 1.55847864453775, + "en:onion": 0.15510736429208, + "en:potato": 69.2208020730349, + "en:potato_starch": 10.5320407294931, + "en:rice_flour": 13.8595510001351, + "en:salt": 1.3345917157533, + "en:spice": 0.10350549665625, + "en:sugar": 10.2883618334396, + "en:sunflower_oil": 14.1645835312727, + "en:tomato_powder": 0.10350549665625, + "en:water": 6.24510964041154, + "en:yeast_powder": 0.103505496656251 + }, + "mass_ratio_uncharacterized": 0.0244618467395455, + "uncharacterized_ingredients": { + "impact": [ + "en:yeast-powder", + "en:flavouring", + "en:Oak smoked sea salti yeast extract", + "en:e160c", + "en:e330" + ], + "nutrition": [ + "en:flavouring", + "en:Oak smoked sea salti yeast extract" + ] + }, + "uncharacterized_ingredients_mass_proportion": { + "impact": 0.0244618467395455, + "nutrition": 0.0106506947223728 + }, + "uncharacterized_ingredients_ratio": { + "impact": 0.3125, + "nutrition": 0.125 + }, + "warnings": [ + "Fermentation agents are present in the product (en:yeast-powder). Carbohydrates and sugars mass balance will not be considered to estimate potential recipes", + "The product has a high number of impact uncharacterized ingredients: 31%" + ] + } + }, + "ecoscore_extended_data_version": "4", + "ecoscore_grade": "b", + "ecoscore_score": 67, + "ecoscore_tags": [ + "b" + ], + "editors": [ + "kyzh", + "tacite" + ], + "editors_tags": [ + "kiliweb", + "openfoodfacts-contributors", + "aleene", + "tacite-mass-editor", + "yuka.sY2b0xO6T85zoF3NwEKvlmBZVPXu-gnlBU3miFTQ-NeSIbDaMdUtu4fLGas", + "kyzh", + "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", + "ecoscore-impact-estimator", + "tacite", + "foodless", + "yuka.sY2b0xO6T85zoF3NwEKvllZnctbb-gn-LDr4mHzUyem0FYPXMO5by7b5NKg", + "swipe-studio", + "packbot" + ], + "emb_codes": "", + "emb_codes_20141016": "", + "emb_codes_orig": "", + "emb_codes_tags": [], + "entry_dates_tags": [ + "2015-06-03", + "2015-06", + "2015" + ], + "expiration_date": "11/05/2016", + "food_groups": "en:appetizers", + "food_groups_tags": [ + "en:salty-snacks", + "en:appetizers" + ], + "fruits-vegetables-nuts_100g_estimate": 0, + "generic_name": "", + "generic_name_en": "", + "generic_name_fr": "", + "generic_name_fr_debug_tags": [], + "id": "5060292302201", + "image_front_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", + "image_front_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", + "image_front_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", + "image_ingredients_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg", + "image_ingredients_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg", + "image_ingredients_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg", + "image_nutrition_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg", + "image_nutrition_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg", + "image_nutrition_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg", + "image_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", + "image_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", + "image_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", + "images": { + "1": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338177, + "uploader": "kyzh" + }, + "2": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338194, + "uploader": "kyzh" + }, + "3": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338203, + "uploader": "kyzh" + }, + "4": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338215, + "uploader": "kyzh" + }, + "5": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338229, + "uploader": "kyzh" + }, + "6": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338245, + "uploader": "kyzh" + }, + "7": { + "sizes": { + "100": { + "h": 43, + "w": 100 + }, + "400": { + "h": 171, + "w": 400 + }, + "full": { + "h": 846, + "w": 1974 + } + }, + "uploaded_t": "1508236270", + "uploader": "kiliweb" + }, + "8": { + "sizes": { + "100": { + "h": 100, + "w": 82 + }, + "400": { + "h": 400, + "w": 326 + }, + "full": { + "h": 1140, + "w": 930 + } + }, + "uploaded_t": 1620505759, + "uploader": "kiliweb" + }, + "9": { + "sizes": { + "100": { + "h": 56, + "w": 100 + }, + "400": { + "h": 225, + "w": 400 + }, + "full": { + "h": 569, + "w": 1011 + } + }, + "uploaded_t": 1656075071, + "uploader": "kiliweb" + }, + "front": { + "geometry": "1421x1825-0-95", + "imgid": "1", + "normalize": "false", + "rev": "9", + "sizes": { + "100": { + "h": 100, + "w": 78 + }, + "200": { + "h": 200, + "w": 156 + }, + "400": { + "h": 400, + "w": 311 + }, + "full": { + "h": 1825, + "w": 1421 + } + }, + "white_magic": "true" + }, + "front_en": { + "angle": 0, + "coordinates_image_size": "full", + "geometry": "0x0--1--1", + "imgid": "8", + "normalize": null, + "rev": "23", + "sizes": { + "100": { + "h": 100, + "w": 82 + }, + "200": { + "h": 200, + "w": 163 + }, + "400": { + "h": 400, + "w": 326 + }, + "full": { + "h": 1140, + "w": 930 + } + }, + "white_magic": null, + "x1": "-1", + "x2": "-1", + "y1": "-1", + "y2": "-1" + }, + "ingredients": { + "geometry": "1730x526-125-304", + "imgid": "5", + "normalize": "false", + "ocr": 1, + "orientation": "0", + "rev": "11", + "sizes": { + "100": { + "h": 30, + "w": 100 + }, + "200": { + "h": 61, + "w": 200 + }, + "400": { + "h": 122, + "w": 400 + }, + "full": { + "h": 526, + "w": 1730 + } + }, + "white_magic": "false" + }, + "ingredients_en": { + "geometry": "1730x526-125-304", + "imgid": "5", + "normalize": "false", + "ocr": 1, + "orientation": "0", + "rev": "11", + "sizes": { + "100": { + "h": 30, + "w": 100 + }, + "200": { + "h": 61, + "w": 200 + }, + "400": { + "h": 122, + "w": 400 + }, + "full": { + "h": 526, + "w": 1730 + } + }, + "white_magic": "false" + }, + "nutrition": { + "geometry": "1131x920-150-794", + "imgid": "3", + "normalize": "false", + "ocr": 1, + "orientation": "0", + "rev": "10", + "sizes": { + "100": { + "h": 81, + "w": 100 + }, + "200": { + "h": 163, + "w": 200 + }, + "400": { + "h": 325, + "w": 400 + }, + "full": { + "h": 920, + "w": 1131 + } + }, + "white_magic": "false" + }, + "nutrition_en": { + "angle": 0, + "coordinates_image_size": "full", + "geometry": "0x0--1--1", + "imgid": "9", + "normalize": null, + "rev": "32", + "sizes": { + "100": { + "h": 56, + "w": 100 + }, + "200": { + "h": 113, + "w": 200 + }, + "400": { + "h": 225, + "w": 400 + }, + "full": { + "h": 569, + "w": 1011 + } + }, + "white_magic": null, + "x1": "-1", + "x2": "-1", + "y1": "-1", + "y2": "-1" + } + }, + "informers_tags": [ + "kyzh", + "tacite", + "tacite-mass-editor", + "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", + "openfoodfacts-contributors", + "aleene" + ], + "ingredients": [ + { + "ciqual_food_code": "4003", + "id": "en:potato", + "percent": 54, + "percent_estimate": 54, + "percent_max": 54, + "percent_min": 54, + "processing": "en:dried", + "rank": 1, + "text": "potatoes", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "17440", + "from_palm_oil": "no", + "id": "en:sunflower-oil", + "percent_estimate": 28.75, + "percent_max": 46, + "percent_min": 11.5, + "rank": 2, + "text": "sunflower oil", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "has_sub_ingredients": "yes", + "id": "en:coating", + "percent_estimate": 8.625, + "percent_max": 33.3333333333333, + "percent_min": 0, + "rank": 3, + "text": "seasoning", + "vegan": "maybe", + "vegetarian": "maybe" + }, + { + "ciqual_food_code": "9520", + "id": "en:rice-flour", + "percent_estimate": 4.3125, + "percent_max": 17.25, + "percent_min": 0, + "rank": 4, + "text": "rice flour", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "en:potato-starch", + "percent_estimate": 4.3125, + "percent_max": 11.5, + "percent_min": 0, + "rank": 5, + "text": "potato starch", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "en:sugar", + "percent_estimate": 4.3125, + "percent_max": 8.7, + "percent_min": 0, + "text": "sugar", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "has_sub_ingredients": "yes", + "id": "en:whey-powder", + "percent_estimate": 2.15625, + "percent_max": 8.7, + "percent_min": 0, + "text": "whey powder", + "vegan": "no", + "vegetarian": "maybe" + }, + { + "ciqual_food_code": "11058", + "id": "en:salt", + "percent_estimate": 1.05, + "percent_max": 2.1, + "percent_min": 0, + "text": "salt", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "20034", + "id": "en:onion", + "percent_estimate": 0.553125, + "percent_max": 2.1, + "percent_min": 0, + "processing": "en:powder", + "text": "onion", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "en:yeast-powder", + "percent_estimate": 0.2765625, + "percent_max": 2.1, + "percent_min": 0, + "text": "yeast powder", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "11000", + "id": "en:garlic", + "percent_estimate": 0.13828125, + "percent_max": 2.1, + "percent_min": 0, + "processing": "en:powder", + "text": "garlic", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "20047", + "id": "en:tomato", + "percent_estimate": 0.0691406250000002, + "percent_max": 2.1, + "percent_min": 0, + "processing": "en:powder", + "text": "tomato", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "en:oak-smoked-sea-salti-yeast-extract", + "percent_estimate": 0.0345703124999996, + "percent_max": 2.1, + "percent_min": 0, + "text": "Oak smoked sea salti yeast extract" + }, + { + "id": "en:flavouring", + "percent_estimate": 0.0172851562499998, + "percent_max": 2.1, + "percent_min": 0, + "text": "flavourings", + "vegan": "maybe", + "vegetarian": "maybe" + }, + { + "id": "en:spice", + "percent_estimate": 0.00864257812500036, + "percent_max": 2.1, + "percent_min": 0, + "text": "spices", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "has_sub_ingredients": "yes", + "id": "en:acid", + "percent_estimate": 0.00432128906250018, + "percent_max": 2.1, + "percent_min": 0, + "text": "acid" + }, + { + "has_sub_ingredients": "yes", + "id": "en:colour", + "percent_estimate": 0.00432128906249929, + "percent_max": 2.1, + "percent_min": 0, + "text": "colour" + }, + { + "id": "en:milk", + "percent_estimate": 2.15625, + "percent_max": 8.7, + "percent_min": 0, + "text": "milk", + "vegan": "no", + "vegetarian": "yes" + }, + { + "id": "en:e330", + "percent_estimate": 0.00432128906250018, + "percent_max": 2.1, + "percent_min": 0, + "text": "citric acid", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "en:e160c", + "percent_estimate": 0.00432128906249929, + "percent_max": 2.1, + "percent_min": 0, + "text": "paprika extract", + "vegan": "yes", + "vegetarian": "yes" + } + ], + "ingredients_analysis": { + "en:non-vegan": [ + "en:whey-powder", + "en:milk" + ], + "en:palm-oil-content-unknown": [ + "en:oak-smoked-sea-salti-yeast-extract" + ], + "en:vegan-status-unknown": [ + "en:oak-smoked-sea-salti-yeast-extract" + ], + "en:vegetarian-status-unknown": [ + "en:oak-smoked-sea-salti-yeast-extract" + ] + }, + "ingredients_analysis_tags": [ + "en:palm-oil-free", + "en:non-vegan", + "en:vegetarian" + ], + "ingredients_debug": [ + "54% dried potatoes", + ",", + null, + null, + null, + " sunflower oil", + ",", + null, + null, + null, + " seasoning ", + "(", + "(", + null, + null, + "sugar", + ",", + null, + null, + null, + " whey powder ", + "[", + "[", + null, + null, + "milk]", + ",", + null, + null, + null, + " salt", + ",", + null, + null, + null, + " onion powder", + ",", + null, + null, + null, + " yeast powder", + ",", + null, + null, + null, + " garlic powder", + ",", + null, + null, + null, + " tomato powder", + ",", + null, + null, + null, + " Oak smoked sea salti yeast extract", + ",", + null, + null, + null, + " flavourings", + ",", + null, + null, + null, + " spices", + ",", + null, + null, + null, + " acid", + ":", + ":", + null, + null, + " citric acid", + ",", + null, + null, + null, + " colour", + ":", + ":", + null, + null, + " paprika extract)", + ",", + null, + null, + null, + " rice flour", + ",", + null, + null, + null, + " potato starch." + ], + "ingredients_from_or_that_may_be_from_palm_oil_n": 0, + "ingredients_from_palm_oil_n": 0, + "ingredients_from_palm_oil_tags": [], + "ingredients_hierarchy": [ + "en:potato", + "en:vegetable", + "en:root-vegetable", + "en:tuber", + "en:sunflower-oil", + "en:oil-and-fat", + "en:spice", + "en:condiment", + "en:acid", + "en:colour", + "en:milk", + "en:e330", + "en:e160c" + ], + "ingredients_ids_debug": [ + "54-dried-potatoes", + "sunflower-oil", + "seasoning", + "sugar", + "colour", + "paprika-extract", + "rice-flour", + "potato-starch" + ], + "ingredients_n": 20, + "ingredients_n_tags": [ + "20", + "11-20" + ], + "ingredients_original_tags": [ + "en:potato", + "en:sunflower-oil", + "en:coating", + "en:rice-flour", + "en:potato-starch", + "en:sugar", + "en:whey-powder", + "en:salt", + "en:onion", + "en:yeast-powder", + "en:garlic", + "en:tomato", + "en:oak-smoked-sea-salti-yeast-extract", + "en:flavouring", + "en:spice", + "en:acid", + "en:colour", + "en:milk", + "en:e330", + "en:e160c" + ], + "ingredients_percent_analysis": 1, + "ingredients_tags": [ + "en:potato", + "en:vegetable", + "en:root-vegetable", + "en:milk", + "en:e330", + "en:e160c" + ], + "ingredients_text": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_debug": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_debug_tags": [], + "ingredients_text_en": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_fr": "", + "ingredients_text_fr_debug_tags": [], + "ingredients_text_with_allergens": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_with_allergens_en": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_that_may_be_from_palm_oil_n": 0, + "ingredients_that_may_be_from_palm_oil_tags": [], + "ingredients_with_specified_percent_n": 1, + "ingredients_with_specified_percent_sum": 54, + "ingredients_with_unspecified_percent_n": 15, + "ingredients_with_unspecified_percent_sum": 46, + "ingredients_without_ciqual_codes": [ + "en:e160c", + "en:e330", + "en:flavouring", + "en:milk", + "en:oak-smoked-sea-salti-yeast-extract", + "en:potato-starch", + "en:spice", + "en:sugar", + "en:yeast-powder" + ], + "ingredients_without_ciqual_codes_n": 9, + "interface_version_created": "20120622", + "interface_version_modified": "20190830", + "known_ingredients_n": 36, + "labels": "Vegetarian, No preservatives, No artificial anything", + "labels_hierarchy": [ + "en:vegetarian", + "en:no-preservatives", + "en:No artificial anything" + ], + "labels_lc": "en", + "labels_old": "Vegetarian,No preservatives,No artificial anything", + "labels_tags": [ + "en:vegetarian", + "en:no-preservatives", + "en:no-artificial-anything" + ], + "lang": "en", + "languages": { + "en:english": 5 + }, + "languages_codes": { + "en": 5 + }, + "languages_hierarchy": [ + "en:english" + ], + "languages_tags": [ + "en:english", + "en:1" + ], + "last_edit_dates_tags": [ + "2023-03-24", + "2023-03", + "2023" + ], + "last_editor": "aleene", + "last_image_dates_tags": [ + "2022-06-24", + "2022-06", + "2022" + ], + "last_image_t": 1656075071, + "last_modified_by": "aleene", + "last_modified_t": 1679645675, + "lc": "en", + "link": "", + "main_countries_tags": [], + "manufacturing_places": "European Union", + "manufacturing_places_tags": [ + "european-union" + ], + "max_imgid": "9", + "minerals_prev_tags": [], + "minerals_tags": [], + "misc_tags": [ + "en:nutriscore-computed", + "en:nutrition-fruits-vegetables-nuts-from-category", + "en:nutrition-fruits-vegetables-nuts-from-category-en-potato-crisps-in-sunflower-oil", + "en:nutrition-fruits-vegetables-legumes-from-category", + "en:nutrition-fruits-vegetables-legumes-from-category-en-potato-crisps-in-sunflower-oil", + "en:nutriscore-2021-same-as-2023", + "en:nutriscore-2021-d-2023-d", + "en:packagings-number-of-components-2", + "en:packagings-not-complete", + "en:packagings-not-empty-but-not-complete", + "en:packagings-not-empty", + "en:ecoscore-extended-data-computed", + "en:ecoscore-extended-data-version-4", + "en:ecoscore-missing-data-warning", + "en:ecoscore-missing-data-labels", + "en:ecoscore-missing-data-origins", + "en:ecoscore-computed", + "en:ecoscore-changed" + ], + "no_nutrition_data": "", + "nova_group": 4, + "nova_group_debug": "", + "nova_groups": "4", + "nova_groups_markers": { + "3": [ + [ + "categories", + "en:salty-snacks" + ], + [ + "ingredients", + "en:salt" + ], + [ + "ingredients", + "en:starch" + ], + [ + "ingredients", + "en:sugar" + ], + [ + "ingredients", + "en:vegetable-oil" + ] + ], + "4": [ + [ + "additives", + "en:e160c" + ], + [ + "ingredients", + "en:colour" + ], + [ + "ingredients", + "en:flavouring" + ], + [ + "ingredients", + "en:whey" + ] + ] + }, + "nova_groups_tags": [ + "en:4-ultra-processed-food-and-drink-products" + ], + "nucleotides_prev_tags": [], + "nucleotides_tags": [], + "nutrient_levels": { + "fat": "moderate", + "salt": "high", + "saturated-fat": "low", + "sugars": "moderate" + }, + "nutrient_levels_tags": [ + "en:fat-in-moderate-quantity", + "en:saturated-fat-in-low-quantity", + "en:sugars-in-moderate-quantity", + "en:salt-in-high-quantity" + ], + "nutriments": { + "carbohydrates": 62, + "carbohydrates_100g": 62, + "carbohydrates_serving": 14.3, + "carbohydrates_unit": "g", + "carbohydrates_value": 62, + "carbon-footprint-from-known-ingredients_100g": 32.4, + "carbon-footprint-from-known-ingredients_product": 7.45, + "salt": 2.1, + "salt_100g": 2.1, + "salt_serving": 0.483, + "salt_unit": "g", + "salt_value": 2.1, + "saturated-fat": 1.4, + "saturated-fat_100g": 1.4, + "saturated-fat_serving": 0.322, + "saturated-fat_unit": "g", + "saturated-fat_value": 1.4, + "sodium": 0.84, + "sodium_100g": 0.84, + "sodium_serving": 0.193, + "sodium_unit": "g", + "sodium_value": 0.84, + "sugars": 8.7, + "sugars_100g": 8.7, + "sugars_serving": 2, + "sugars_unit": "g", + "sugars_value": 8.7 + }, + "nutriscore": { + "2021": { + "category_available": 1, + "data": { + "energy": 1759, + "energy_points": 5, + "energy_value": 1759, + "fiber": 3.9, + "fiber_points": 4, + "sugars": 8.7, + "sugars_points": 1, + "sugars_value": 8.7 + }, + "grade": "d", + "nutrients_available": 1, + "nutriscore_applicable": 1, + "nutriscore_computed": 1, + "score": 12 + }, + "2023": { + "category_available": 1, + "data": { + "count_proteins": 0, + "count_proteins_reason": "negative_points_more_than_11", + "energy": 1759, + "is_red_meat_product": 0, + "is_water": 0, + "negative_nutrients": [ + "energy", + "sugars", + "saturated_fat", + "salt", + "non_nutritive_sweeteners" + ], + "negative_points": 18, + "positive_nutrients": [ + "fruits_vegetables_legumes", + "fiber" + ], + "positive_points": 1, + "proteins": 5.7, + "proteins_points": 2, + "salt": 2.1, + "salt_points": 10, + "saturated_fat": 1.4, + "saturated_fat_points": 1, + "sugars": 8.7, + "sugars_points": 2 + }, + "grade": "d", + "nutrients_available": 1, + "nutriscore_applicable": 1, + "nutriscore_computed": 1, + "score": 17 + } + }, + "nutriscore_2021_tags": [ + "d" + ], + "nutriscore_2023_tags": [ + "d" + ], + "nutriscore_data": { + "energy": 1759, + "energy_points": 5, + "energy_value": 1759, + "fiber": 3.9, + "fiber_points": 4, + "fiber_value": 3.9, + "fruits_vegetables_nuts_colza_walnut_olive_oils": "0", + "fruits_vegetables_nuts_colza_walnut_olive_oils_points": 0, + "fruits_vegetables_nuts_colza_walnut_olive_oils_value": 0, + "grade": "d", + "is_beverage": 0, + "is_cheese": 0, + "is_fat": 0, + "is_water": 0, + "negative_points": 16, + "positive_points": 4, + "proteins": 5.7, + "proteins_points": 3, + "proteins_value": 5.7, + "saturated_fat": 1.4, + "saturated_fat_points": 1, + "saturated_fat_value": 1.4, + "score": 12, + "sodium": 840, + "sodium_points": 9, + "sodium_value": 840, + "sugars": 8.7, + "sugars_points": 1, + "sugars_value": 8.7 + }, + "nutriscore_grade": "d", + "nutriscore_score": 12, + "nutriscore_score_opposite": -12, + "nutriscore_tags": [ + "d" + ], + "nutriscore_version": "2021", + "nutrition_data": "on", + "nutrition_data_per": "100g", + "nutrition_data_prepared": "", + "nutrition_data_prepared_per": "100g", + "nutrition_grade_fr": "d", + "nutrition_grades": "d", + "nutrition_grades_tags": [ + "d" + ], + "nutrition_score_beverage": 0, + "nutrition_score_debug": "", + "obsolete": "", + "obsolete_since_date": "", + "origin": "", + "origin_en": "", + "origins": "", + "origins_hierarchy": [], + "origins_lc": "en", + "origins_old": "", + "origins_tags": [], + "other_nutritional_substances_tags": [], + "packaging": "Plastic,Mixed plastic film-packet", + "packaging_hierarchy": [ + "en:plastic", + "en:Mixed plastic film-packet" + ], + "packaging_lc": "en", + "packaging_materials_tags": [ + "en:plastic" + ], + "packaging_old": "Plastic, Mixed plastic-packet", + "packaging_old_before_taxonomization": "Plastic, en:mixed plastic-packet", + "packaging_recycling_tags": [], + "packaging_shapes_tags": [ + "en:packet" + ], + "packaging_tags": [ + "en:plastic", + "en:mixed-plastic-film-packet" + ], + "packaging_text": "", + "packaging_text_en": "", + "packagings": [ + { + "material": "en:plastic", + "shape": "en:packet" + }, + { + "material": "en:plastic", + "shape": "en:packet" + } + ], + "packagings_complete": 0, + "packagings_materials": { + "all": {}, + "en:plastic": {} + }, + "packagings_n": 2, + "photographers_tags": [ + "kyzh", + "kiliweb" + ], + "pnns_groups_1": "Salty snacks", + "pnns_groups_1_tags": [ + "salty-snacks", + "known" + ], + "pnns_groups_2": "Appetizers", + "pnns_groups_2_tags": [ + "appetizers", + "known" + ], + "popularity_key": 21900000007, + "popularity_tags": [ + "bottom-25-percent-scans-2019", + "bottom-20-percent-scans-2019", + "top-100000-hk-scans-2022", + "top-10000-us-scans-2022", + "top-50000-us-scans-2022", + "top-100000-us-scans-2022" + ], + "product_name": "Barbeque Potato Chips", + "product_name_en": "Barbeque Potato Chips", + "product_name_fr": "", + "product_name_fr_debug_tags": [], + "product_quantity": "23", + "purchase_places": "", + "purchase_places_tags": [], + "quantity": "23 g", + "removed_countries_tags": [], + "rev": 33, + "scans_n": 6, + "selected_images": { + "front": { + "display": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg" + }, + "small": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg" + }, + "thumb": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg" + } + }, + "ingredients": { + "display": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg" + }, + "small": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg" + }, + "thumb": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg" + } + }, + "nutrition": { + "display": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg" + }, + "small": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg" + }, + "thumb": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg" + } + } + }, + "serving_quantity": "23", + "serving_size": "23 g", + "sortkey": 1535456524, + "states": "en:to-be-completed, en:nutrition-facts-completed, en:ingredients-completed, en:expiration-date-completed, en:packaging-code-to-be-completed, en:characteristics-to-be-completed, en:origins-to-be-completed, en:categories-completed, en:brands-completed, en:packaging-completed, en:quantity-completed, en:product-name-completed, en:photos-to-be-validated, en:packaging-photo-to-be-selected, en:nutrition-photo-selected, en:ingredients-photo-selected, en:front-photo-selected, en:photos-uploaded", + "states_hierarchy": [ + "en:to-be-completed", + "en:nutrition-facts-completed", + "en:ingredients-completed", + "en:ingredients-photo-selected", + "en:front-photo-selected", + "en:photos-uploaded" + ], + "states_tags": [ + "en:to-be-completed", + "en:nutrition-facts-completed", + "en:ingredients-completed", + "en:ingredients-photo-selected", + "en:front-photo-selected", + "en:photos-uploaded" + ], + "stores": "", + "stores_tags": [], + "teams": "swipe-studio", + "teams_tags": [ + "swipe-studio" + ], + "traces": "", + "traces_from_ingredients": "", + "traces_from_user": "(en) ", + "traces_hierarchy": [], + "traces_lc": "en", + "traces_tags": [], + "unique_scans_n": 4, + "unknown_ingredients_n": 1, + "unknown_nutrients_tags": [], + "update_key": "eco20231129", + "vitamins_prev_tags": [], + "vitamins_tags": [], + "weighers_tags": [] + }, + "status": 1, + "status_verbose": "product found" +} diff --git a/test/experimental/food_product.sql b/test/experimental/food_product.sql new file mode 100644 index 0000000..b0829ac --- /dev/null +++ b/test/experimental/food_product.sql @@ -0,0 +1,7044 @@ +drop table food_product cascade constraints; +drop table product cascade constraints; +drop table categories_properties cascade constraints; +drop table category_properties cascade constraints; +drop table ecoscore_data cascade constraints; +drop table origins_of_ingredients cascade constraints; +drop table aggregated_origins cascade constraints; +drop table transportation_scores cascade constraints; +drop table transportation_values cascade constraints; +drop table the_values cascade constraints; +drop table packaging cascade constraints; +drop table packagings1 cascade constraints; +drop table production_system cascade constraints; +drop table agribalyse1 cascade constraints; +drop table grades cascade constraints; +drop table missing cascade constraints; +drop table previous_data cascade constraints; +drop table agribalyse2 cascade constraints; +drop table scores cascade constraints; +drop table impact cascade constraints; +drop table likeliest_impacts cascade constraints; +drop table likeliest_recipe cascade constraints; +drop table uncharacterized_ingredients_mass_proportion cascade constraints; +drop table uncharacterized_ingredients_ratio cascade constraints; +drop table front cascade constraints; +drop table full cascade constraints; +drop table front_en cascade constraints; +drop table full cascade constraints; +drop table ingredients1 cascade constraints; +drop table full cascade constraints; +drop table ingredients_en cascade constraints; +drop table full cascade constraints; +drop table nutrition cascade constraints; +drop table full cascade constraints; +drop table nutrition_en cascade constraints; +drop table full cascade constraints; +drop table ingredients2 cascade constraints; +drop table languages cascade constraints; +drop table languages_codes cascade constraints; +drop table nutrient_levels cascade constraints; +drop table nutriments cascade constraints; +drop table nutriscore_data cascade constraints; +drop table packagings2 cascade constraints; +drop table display cascade constraints; +drop table small cascade constraints; +drop table thumb cascade constraints; +drop table display cascade constraints; +drop table small cascade constraints; +drop table thumb cascade constraints; +drop table display cascade constraints; +drop table small cascade constraints; +drop table thumb cascade constraints; +-- create tables + +create table packagings2 ( + material varchar2(4000 char), + shape varchar2(4000 char) +); + + +create table full ( + h number, + w number +); + + +create table packagings1 ( + ecoscore_material_score number, + ecoscore_shape_ratio number, + material varchar2(4000 char), + non_recyclable_and_non_biodegradable varchar2(4000 char), + shape varchar2(4000 char) +); + + +create table food_product ( + code varchar2(4000 char), + status number, + status_verbose varchar2(4000 char) +); + + +create table product ( + id varchar2(32 char) not null + constraint product_id_pk primary key, + packagings2_id number + constraint product_packagings2_id_fk + references packagings2, + food_product_id number + constraint product_food_product_id_fk + references food_product, + "_id" number, + "_keywords" varchar2(4000 char), + additives_n number, + additives_old_n number, + additives_old_tags varchar2(4000 char), + additives_original_tags varchar2(4000 char), + additives_prev_original_tags varchar2(4000 char), + additives_tags varchar2(4000 char), + allergens varchar2(4000 char), + allergens_from_ingredients varchar2(4000 char), + allergens_from_user varchar2(4000 char), + allergens_hierarchy varchar2(4000 char), + allergens_lc varchar2(4000 char), + allergens_tags varchar2(4000 char), + brands varchar2(4000 char), + brands_tags varchar2(4000 char), + carbon_footprint_from_known_ingredients_debug varchar2(4000 char), + carbon_footprint_percent_of_known_ingredients number, + categories varchar2(4000 char), + categories_hierarchy varchar2(4000 char), + categories_lc varchar2(4000 char), + categories_old varchar2(4000 char), + categories_properties_tags varchar2(4000 char), + categories_tags varchar2(4000 char), + ciqual_food_name_tags varchar2(4000 char), + code varchar2(4000 char), + codes_tags varchar2(4000 char), + compared_to_category varchar2(4000 char), + complete number, + completeness number, + correctors_tags varchar2(4000 char), + countries varchar2(4000 char), + countries_hierarchy varchar2(4000 char), + countries_lc varchar2(4000 char), + countries_tags varchar2(4000 char), + created_t date, + creator varchar2(4000 char), + data_quality_info_tags varchar2(4000 char), + data_quality_tags varchar2(4000 char), + data_quality_warnings_tags varchar2(4000 char), + data_sources varchar2(4000 char), + data_sources_tags varchar2(4000 char), + debug_param_sorted_langs varchar2(4000 char), + ecoscore_extended_data_version varchar2(4000 char), + ecoscore_grade varchar2(4000 char), + ecoscore_score number, + ecoscore_tags varchar2(4000 char), + editors varchar2(4000 char), + editors_tags varchar2(4000 char), + emb_codes varchar2(4000 char), + emb_codes_20141016 varchar2(4000 char), + emb_codes_orig varchar2(4000 char), + entry_dates_tags varchar2(4000 char), + expiration_date date, + food_groups varchar2(4000 char), + food_groups_tags varchar2(4000 char), + "fruits-vegetables-nuts_100g_estimate" number, + generic_name varchar2(255 char), + generic_name_en varchar2(4000 char), + generic_name_fr varchar2(4000 char), + image_front_small_url varchar2(4000 char), + image_front_thumb_url varchar2(4000 char), + image_front_url varchar2(4000 char), + image_ingredients_small_url varchar2(4000 char), + image_ingredients_thumb_url varchar2(4000 char), + image_ingredients_url varchar2(4000 char), + image_nutrition_small_url varchar2(4000 char), + image_nutrition_thumb_url varchar2(4000 char), + image_nutrition_url varchar2(4000 char), + image_small_url varchar2(4000 char), + image_thumb_url varchar2(4000 char), + image_url varchar2(4000 char), + informers_tags varchar2(4000 char), + "en:non-vegan" varchar2(4000 char), + "en:palm-oil-content-unknown" varchar2(4000 char), + "en:vegan-status-unknown" varchar2(4000 char), + "en:vegetarian-status-unknown" varchar2(4000 char), + ingredients_analysis_tags varchar2(4000 char), + ingredients_debug varchar2(4000 char), + ingredients_from_or_that_may_be_from_palm_oil_n number, + ingredients_from_palm_oil_n number, + ingredients_hierarchy varchar2(4000 char), + ingredients_ids_debug varchar2(4000 char), + ingredients_n number, + ingredients_n_tags varchar2(4000 char), + ingredients_original_tags varchar2(4000 char), + ingredients_percent_analysis number, + ingredients_tags varchar2(4000 char), + ingredients_text varchar2(4000 char), + ingredients_text_debug varchar2(4000 char), + ingredients_text_en varchar2(4000 char), + ingredients_text_fr varchar2(4000 char), + ingredients_text_with_allergens varchar2(4000 char), + ingredients_text_with_allergens_en varchar2(4000 char), + ingredients_that_may_be_from_palm_oil_n number, + ingredients_with_specified_percent_n number, + ingredients_with_specified_percent_sum number, + ingredients_with_unspecified_percent_n number, + ingredients_with_unspecified_percent_sum number, + ingredients_without_ciqual_codes varchar2(4000 char), + ingredients_without_ciqual_codes_n number, + interface_version_created varchar2(4000 char), + interface_version_modified varchar2(4000 char), + known_ingredients_n number, + labels varchar2(4000 char), + labels_hierarchy varchar2(4000 char), + labels_lc varchar2(4000 char), + labels_old varchar2(4000 char), + labels_tags varchar2(4000 char), + lang varchar2(4000 char), + languages_hierarchy varchar2(4000 char), + languages_tags varchar2(4000 char), + last_edit_dates_tags varchar2(4000 char), + last_editor varchar2(4000 char), + last_image_dates_tags varchar2(4000 char), + last_image_t number, + last_modified_by varchar2(4000 char), + last_modified_t number, + lc varchar2(4000 char), + link varchar2(4000 char), + manufacturing_places varchar2(4000 char), + manufacturing_places_tags varchar2(4000 char), + max_imgid varchar2(4000 char), + misc_tags varchar2(4000 char), + no_nutrition_data varchar2(4000 char), + nova_group number, + nova_group_debug varchar2(4000 char), + nova_groups varchar2(4000 char), + nova_groups_tags varchar2(4000 char), + nutrient_levels_tags varchar2(4000 char), + nutriscore_2021_tags varchar2(4000 char), + nutriscore_2023_tags varchar2(4000 char), + nutriscore_grade varchar2(4000 char), + nutriscore_score number, + nutriscore_score_opposite number, + nutriscore_tags varchar2(4000 char), + nutriscore_version varchar2(4000 char), + nutrition_data varchar2(4000 char), + nutrition_data_per varchar2(4000 char), + nutrition_data_prepared varchar2(4000 char), + nutrition_data_prepared_per varchar2(4000 char), + nutrition_grade_fr varchar2(4000 char), + nutrition_grades varchar2(4000 char), + nutrition_grades_tags varchar2(4000 char), + nutrition_score_beverage number, + nutrition_score_debug varchar2(4000 char), + obsolete varchar2(4000 char), + obsolete_since_date date, + origin varchar2(4000 char), + origin_en varchar2(4000 char), + origins varchar2(4000 char), + origins_lc varchar2(4000 char), + origins_old varchar2(4000 char), + packaging varchar2(4000 char), + packaging_hierarchy varchar2(4000 char), + packaging_lc varchar2(4000 char), + packaging_materials_tags varchar2(4000 char), + packaging_old varchar2(4000 char), + packaging_old_before_taxonomization varchar2(4000 char), + packaging_shapes_tags varchar2(4000 char), + packaging_tags varchar2(4000 char), + packaging_text varchar2(4000 char), + packaging_text_en varchar2(4000 char), + packagings_complete number, + packagings_n number, + photographers_tags varchar2(4000 char), + pnns_groups_1 varchar2(4000 char), + pnns_groups_1_tags varchar2(4000 char), + pnns_groups_2 varchar2(4000 char), + pnns_groups_2_tags varchar2(4000 char), + popularity_key number, + popularity_tags varchar2(4000 char), + product_name varchar2(255 char), + product_name_en varchar2(4000 char), + product_name_fr varchar2(4000 char), + product_quantity varchar2(4000 char), + purchase_places varchar2(4000 char), + quantity number, + rev number, + scans_n number, + serving_quantity varchar2(4000 char), + serving_size varchar2(4000 char), + sortkey number, + states varchar2(4000 char), + states_hierarchy varchar2(4000 char), + states_tags varchar2(4000 char), + stores varchar2(4000 char), + teams varchar2(4000 char), + teams_tags varchar2(4000 char), + traces varchar2(4000 char), + traces_from_ingredients varchar2(4000 char), + traces_from_user varchar2(4000 char), + traces_lc varchar2(4000 char), + unique_scans_n number, + unknown_ingredients_n number, + update_key varchar2(4000 char) +); + +-- table index +create index product_i1 on product (packagings2_id); + +create index product_i2 on product (food_product_id); + + +create table categories_properties ( + product_id varchar2(32 char) + constraint categories_properties_product_id_fk + references product, + "agribalyse_food_code:en" varchar2(4000 char), + "ciqual_food_code:en" varchar2(4000 char) +); + +-- table index +create index categories_properties_i1 on categories_properties (product_id); + + +create table category_properties ( + product_id varchar2(32 char) + constraint category_properties_product_id_fk + references product, + "ciqual_food_name:en" varchar2(255 char), + "ciqual_food_name:fr" varchar2(255 char) +); + +-- table index +create index category_properties_i1 on category_properties (product_id); + + +create table ecoscore_data ( + product_id varchar2(32 char) + constraint ecoscore_data_product_id_fk + references product, + grade varchar2(4000 char), + missing_data_warning number, + score number, + status varchar2(4000 char) +); + +-- table index +create index ecoscore_data_i1 on ecoscore_data (product_id); + + +create table origins_of_ingredients ( + ecoscore_data_id number + constraint origins_of_ingredients_ecoscore_data_id_fk + references ecoscore_data, + epi_score number, + epi_value number, + origins_from_categories varchar2(4000 char), + origins_from_origins_field varchar2(4000 char), + transportation_score number, + transportation_value number, + value number, + warning varchar2(4000 char) +); + +-- table index +create index origins_of_ingredients_i1 on origins_of_ingredients (ecoscore_data_id); + + +create table aggregated_origins ( + origins_of_ingredient_id number + constraint aggregated_origins_origins_of_ingredient_id_fk + references origins_of_ingredients, + epi_score varchar2(4000 char), + origin varchar2(4000 char), + percent number, + transportation_score varchar2(4000 char) +); + +-- table index +create index aggregated_origins_i1 on aggregated_origins (origins_of_ingredient_id); + + +create table transportation_scores ( + origins_of_ingredient_id number + constraint transportation_scores_origins_of_ingredient_id_fk + references origins_of_ingredients, + ad number, + al number, + va number, + world number, + xk number +); + +-- table index +create index transportation_scores_i1 on transportation_scores (origins_of_ingredient_id); + + +create table transportation_values ( + origins_of_ingredient_id number + constraint transportation_values_origins_of_ingredient_id_fk + references origins_of_ingredients, + ad number, + ua number, + uk number, + us number, + va number, + world number, + xk number +); + +-- table index +create index transportation_values_i1 on transportation_values (origins_of_ingredient_id); + + +create table the_values ( + origins_of_ingredient_id number + constraint the_values_origins_of_ingredient_id_fk + references origins_of_ingredients, + ad number, + al number, + at number, + uk number, + us number, + va number, + world number, + xk number +); + +-- table index +create index the_values_i1 on the_values (origins_of_ingredient_id); + + +create table packaging ( + packagings1_id number + constraint packaging_packagings1_id_fk + references packagings1, + ecoscore_data_id number + constraint packaging_ecoscore_data_id_fk + references ecoscore_data, + non_recyclable_and_non_biodegradable_materials number, + score number, + value number +); + +-- table index +create index packaging_i1 on packaging (packagings1_id); + +create index packaging_i2 on packaging (ecoscore_data_id); + + +create table production_system ( + ecoscore_data_id number + constraint production_system_ecoscore_data_id_fk + references ecoscore_data, + value number, + warning varchar2(4000 char) +); + +-- table index +create index production_system_i1 on production_system (ecoscore_data_id); + + +create table agribalyse1 ( + ecoscore_data_id number + constraint agribalyse1_ecoscore_data_id_fk + references ecoscore_data, + agribalyse_food_code varchar2(4000 char), + co2_agriculture number, + co2_consumption number, + co2_distribution number, + co2_packaging number, + co2_processing number, + co2_total number, + co2_transportation number, + code varchar2(4000 char), + dqr varchar2(4000 char), + ef_agriculture number, + ef_consumption number, + ef_distribution number, + ef_packaging number, + ef_processing number, + ef_total number, + ef_transportation number, + is_beverage number, + name_en varchar2(255 char), + name_fr varchar2(255 char), + score number, + version varchar2(4000 char) +); + +-- table index +create index agribalyse1_i1 on agribalyse1 (ecoscore_data_id); + + +create table grades ( + ecoscore_data_id number + constraint grades_ecoscore_data_id_fk + references ecoscore_data, + ad varchar2(4000 char), + al varchar2(4000 char), + tr varchar2(4000 char), + ua varchar2(4000 char), + uk varchar2(4000 char), + us varchar2(4000 char), + va varchar2(4000 char), + world varchar2(4000 char), + xk varchar2(4000 char) +); + +-- table index +create index grades_i1 on grades (ecoscore_data_id); + + +create table missing ( + ecoscore_data_id number + constraint missing_ecoscore_data_id_fk + references ecoscore_data, + labels number, + origins number +); + +-- table index +create index missing_i1 on missing (ecoscore_data_id); + + +create table previous_data ( + ecoscore_data_id number + constraint previous_data_ecoscore_data_id_fk + references ecoscore_data, + grade varchar2(4000 char), + score number +); + +-- table index +create index previous_data_i1 on previous_data (ecoscore_data_id); + + +create table agribalyse2 ( + previous_data_id number + constraint agribalyse2_previous_data_id_fk + references previous_data, + agribalyse_food_code varchar2(4000 char), + co2_agriculture number, + co2_consumption number, + co2_distribution number, + co2_packaging number, + co2_processing number, + co2_total number, + co2_transportation number, + code varchar2(4000 char), + dqr varchar2(4000 char), + ef_agriculture number, + ef_consumption number, + ef_distribution number, + ef_packaging number, + ef_processing number, + ef_total number, + ef_transportation number, + is_beverage number, + name_en varchar2(255 char), + name_fr varchar2(255 char), + score number +); + +-- table index +create index agribalyse2_i1 on agribalyse2 (previous_data_id); + + +create table scores ( + ecoscore_data_id number + constraint scores_ecoscore_data_id_fk + references ecoscore_data, + ad number, + al number, + at number, + va number, + world number, + xk number +); + +-- table index +create index scores_i1 on scores (ecoscore_data_id); + + +create table impact ( + product_id varchar2(32 char) + constraint impact_product_id_fk + references product, + ef_single_score_log_stddev number, + mass_ratio_uncharacterized number, + impact varchar2(4000 char), + nutrition varchar2(4000 char), + warnings varchar2(4000 char) +); + +-- table index +create index impact_i1 on impact (product_id); + + +create table likeliest_impacts ( + impact_id number + constraint likeliest_impacts_impact_id_fk + references impact, + Climate_change number, + EF_single_score number +); + +-- table index +create index likeliest_impacts_i1 on likeliest_impacts (impact_id); + + +create table likeliest_recipe ( + impact_id number + constraint likeliest_recipe_impact_id_fk + references impact, + "en:Oak_smoked_sea_salti_yeast_extract" number, + "en:e160c" number, + "en:e330" number, + "en:flavouring" number, + "en:garlic_powder" number, + "en:milk" number, + "en:onion" number, + "en:potato" number, + "en:potato_starch" number, + "en:rice_flour" number, + "en:salt" number, + "en:spice" number, + "en:sugar" number, + "en:sunflower_oil" number, + "en:tomato_powder" number, + "en:water" number, + "en:yeast_powder" number +); + +-- table index +create index likeliest_recipe_i1 on likeliest_recipe (impact_id); + + +create table uncharacterized_ingredients_mass_proportion ( + impact_id number + constraint uncharacterized_ingredients_mass_proportion_impact_id_fk + references impact, + impact number, + nutrition number +); + +-- table index +create index uncharacterized_ingredients_mass_proportion_i1 on uncharacterized_ingredients_mass_proportion (impact_id); + + +create table uncharacterized_ingredients_ratio ( + impact_id number + constraint uncharacterized_ingredients_ratio_impact_id_fk + references impact, + impact number, + nutrition number +); + +-- table index +create index uncharacterized_ingredients_ratio_i1 on uncharacterized_ingredients_ratio (impact_id); + + +create table front ( + full_id number + constraint front_full_id_fk + references full, + product_id varchar2(32 char) + constraint front_product_id_fk + references product, + geometry varchar2(4000 char), + imgid varchar2(4000 char), + normalize varchar2(4000 char), + rev varchar2(4000 char), + white_magic varchar2(4000 char) +); + +-- table index +create index front_i1 on front (full_id); + +create index front_i2 on front (product_id); + + +create table front_en ( + full_id number + constraint front_en_full_id_fk + references full, + product_id varchar2(32 char) + constraint front_en_product_id_fk + references product, + angle number, + coordinates_image_size varchar2(4000 char), + geometry varchar2(4000 char), + imgid varchar2(4000 char), + normalize varchar2(4000 char), + rev varchar2(4000 char), + white_magic varchar2(4000 char), + x1 varchar2(4000 char), + x2 varchar2(4000 char), + y1 varchar2(4000 char), + y2 varchar2(4000 char) +); + +-- table index +create index front_en_i1 on front_en (full_id); + +create index front_en_i2 on front_en (product_id); + + +create table ingredients1 ( + full_id number + constraint ingredients1_full_id_fk + references full, + product_id varchar2(32 char) + constraint ingredients1_product_id_fk + references product, + geometry varchar2(4000 char), + imgid varchar2(4000 char), + normalize varchar2(4000 char), + ocr number, + orientation varchar2(4000 char), + rev varchar2(4000 char), + white_magic varchar2(4000 char) +); + +-- table index +create index ingredients1_i1 on ingredients1 (full_id); + +create index ingredients1_i2 on ingredients1 (product_id); + + +create table ingredients_en ( + full_id number + constraint ingredients_en_full_id_fk + references full, + product_id varchar2(32 char) + constraint ingredients_en_product_id_fk + references product, + geometry varchar2(4000 char), + imgid varchar2(4000 char), + normalize varchar2(4000 char), + ocr number, + orientation varchar2(4000 char), + rev varchar2(4000 char), + white_magic varchar2(4000 char) +); + +-- table index +create index ingredients_en_i1 on ingredients_en (full_id); + +create index ingredients_en_i2 on ingredients_en (product_id); + + +create table nutrition ( + full_id number + constraint nutrition_full_id_fk + references full, + product_id varchar2(32 char) + constraint nutrition_product_id_fk + references product, + geometry varchar2(4000 char), + imgid varchar2(4000 char), + normalize varchar2(4000 char), + ocr number, + orientation varchar2(4000 char), + rev varchar2(4000 char), + white_magic varchar2(4000 char) +); + +-- table index +create index nutrition_i1 on nutrition (full_id); + +create index nutrition_i2 on nutrition (product_id); + + +create table nutrition_en ( + full_id number + constraint nutrition_en_full_id_fk + references full, + product_id varchar2(32 char) + constraint nutrition_en_product_id_fk + references product, + angle number, + coordinates_image_size varchar2(4000 char), + geometry varchar2(4000 char), + imgid varchar2(4000 char), + normalize varchar2(4000 char), + rev varchar2(4000 char), + white_magic varchar2(4000 char), + x1 varchar2(4000 char), + x2 varchar2(4000 char), + y1 varchar2(4000 char), + y2 varchar2(4000 char) +); + +-- table index +create index nutrition_en_i1 on nutrition_en (full_id); + +create index nutrition_en_i2 on nutrition_en (product_id); + + +create table ingredients2 ( + id varchar2(32 char) not null + constraint ingredients2_id_pk primary key, + product_id varchar2(32 char) + constraint ingredients2_product_id_fk + references product, + ciqual_food_code varchar2(4000 char), + percent number, + percent_estimate number, + percent_max number, + percent_min number, + processing varchar2(4000 char), + rank number, + text varchar2(4000 char), + vegan varchar2(4000 char), + vegetarian varchar2(4000 char) +); + +-- table index +create index ingredients2_i1 on ingredients2 (product_id); + + +create table languages ( + product_id varchar2(32 char) + constraint languages_product_id_fk + references product, + "en:english" number +); + +-- table index +create index languages_i1 on languages (product_id); + + +create table languages_codes ( + product_id varchar2(32 char) + constraint languages_codes_product_id_fk + references product, + en number +); + +-- table index +create index languages_codes_i1 on languages_codes (product_id); + + +create table nutrient_levels ( + product_id varchar2(32 char) + constraint nutrient_levels_product_id_fk + references product, + fat varchar2(4000 char), + salt varchar2(4000 char), + "saturated-fat" varchar2(4000 char), + sugars varchar2(4000 char) +); + +-- table index +create index nutrient_levels_i1 on nutrient_levels (product_id); + + +create table nutriments ( + product_id varchar2(32 char) + constraint nutriments_product_id_fk + references product, + carbohydrates number, + carbohydrates_100g number, + carbohydrates_serving number, + carbohydrates_unit varchar2(4000 char), + carbohydrates_value number, + "carbon-footprint-from-known-ingredients_100g" number, + "carbon-footprint-from-known-ingredients_product" number, + salt number, + salt_100g number, + salt_serving number, + salt_unit varchar2(4000 char), + salt_value number, + "saturated-fat" number, + "saturated-fat_100g" number, + "saturated-fat_serving" number, + "saturated-fat_unit" varchar2(4000 char), + "saturated-fat_value" number, + sodium number, + sodium_100g number, + sodium_serving number, + sodium_unit varchar2(4000 char), + sodium_value number, + sugars number, + sugars_100g number, + sugars_serving number, + sugars_unit varchar2(4000 char), + sugars_value number +); + +-- table index +create index nutriments_i1 on nutriments (product_id); + + +create table nutriscore_data ( + product_id varchar2(32 char) + constraint nutriscore_data_product_id_fk + references product, + energy number, + energy_points number, + energy_value number, + fiber number, + fiber_points number, + fiber_value number, + fruits_vegetables_nuts_colza_walnut_olive_oils varchar2(4000 char), + fruits_vegetables_nuts_colza_walnut_olive_oils_points number, + fruits_vegetables_nuts_colza_walnut_olive_oils_value number, + grade varchar2(4000 char), + is_beverage number, + is_cheese number, + is_fat number, + is_water number, + negative_points number, + positive_points number, + proteins number, + proteins_points number, + proteins_value number, + saturated_fat number, + saturated_fat_points number, + saturated_fat_value number, + score number, + sodium number, + sodium_points number, + sodium_value number, + sugars number, + sugars_points number, + sugars_value number +); + +-- table index +create index nutriscore_data_i1 on nutriscore_data (product_id); + + +create table display ( + product_id varchar2(32 char) + constraint display_product_id_fk + references product, + en varchar2(4000 char) +); + +-- table index +create index display_i1 on display (product_id); + + +create table small ( + product_id varchar2(32 char) + constraint small_product_id_fk + references product, + en varchar2(4000 char) +); + +-- table index +create index small_i1 on small (product_id); + + +create table thumb ( + product_id varchar2(32 char) + constraint thumb_product_id_fk + references product, + en varchar2(4000 char) +); + +-- table index +create index thumb_i1 on thumb (product_id); + + + +-- load data + +insert into packagings2 ( + material, + shape +) values ( + 'en:plastic', + 'en:packet' +); +insert into packagings2 ( + material, + shape +) values ( + 'en:plastic', + 'en:packet' +); + +commit; + +insert into full ( + h, + w +) values ( + 1482, + 2000 +); +insert into full ( + h, + w +) values ( + 1482, + 2000 +); +insert into full ( + h, + w +) values ( + 1482, + 2000 +); +insert into full ( + h, + w +) values ( + 1482, + 2000 +); +insert into full ( + h, + w +) values ( + 1482, + 2000 +); +insert into full ( + h, + w +) values ( + 1482, + 2000 +); +insert into full ( + h, + w +) values ( + 846, + 1974 +); +insert into full ( + h, + w +) values ( + 1140, + 930 +); +insert into full ( + h, + w +) values ( + 569, + 1011 +); +insert into full ( + h, + w +) values ( + 1825, + 1421 +); +insert into full ( + h, + w +) values ( + 1140, + 930 +); +insert into full ( + h, + w +) values ( + 526, + 1730 +); +insert into full ( + h, + w +) values ( + 526, + 1730 +); +insert into full ( + h, + w +) values ( + 920, + 1131 +); +insert into full ( + h, + w +) values ( + 569, + 1011 +); + +commit; + +insert into packagings1 ( + ecoscore_material_score, + ecoscore_shape_ratio, + material, + non_recyclable_and_non_biodegradable, + shape +) values ( + 0, + 1, + 'en:plastic', + 'maybe', + 'en:packet' +); +insert into packagings1 ( + ecoscore_material_score, + ecoscore_shape_ratio, + material, + non_recyclable_and_non_biodegradable, + shape +) values ( + 0, + 1, + 'en:plastic', + 'maybe', + 'en:packet' +); + +commit; + +insert into food_product ( + code, + status, + status_verbose +) values ( + '5060292302201', + 1, + 'product found' +); + +commit; + +insert into product ( + id, + packagings2_id, + food_product_id, + "_id", + "_keywords", + additives_n, + additives_old_n, + additives_old_tags, + additives_original_tags, + additives_prev_original_tags, + additives_tags, + allergens, + allergens_from_ingredients, + allergens_from_user, + allergens_hierarchy, + allergens_lc, + allergens_tags, + brands, + brands_tags, + carbon_footprint_from_known_ingredients_debug, + carbon_footprint_percent_of_known_ingredients, + categories, + categories_hierarchy, + categories_lc, + categories_old, + categories_properties_tags, + categories_tags, + ciqual_food_name_tags, + code, + codes_tags, + compared_to_category, + complete, + completeness, + correctors_tags, + countries, + countries_hierarchy, + countries_lc, + countries_tags, + created_t, + creator, + data_quality_info_tags, + data_quality_tags, + data_quality_warnings_tags, + data_sources, + data_sources_tags, + debug_param_sorted_langs, + ecoscore_extended_data_version, + ecoscore_grade, + ecoscore_score, + ecoscore_tags, + editors, + editors_tags, + emb_codes, + emb_codes_20141016, + emb_codes_orig, + entry_dates_tags, + expiration_date, + food_groups, + food_groups_tags, + "fruits-vegetables-nuts_100g_estimate", + generic_name, + generic_name_en, + generic_name_fr, + image_front_small_url, + image_front_thumb_url, + image_front_url, + image_ingredients_small_url, + image_ingredients_thumb_url, + image_ingredients_url, + image_nutrition_small_url, + image_nutrition_thumb_url, + image_nutrition_url, + image_small_url, + image_thumb_url, + image_url, + informers_tags, + "en:non-vegan", + "en:palm-oil-content-unknown", + "en:vegan-status-unknown", + "en:vegetarian-status-unknown", + ingredients_analysis_tags, + ingredients_debug, + ingredients_from_or_that_may_be_from_palm_oil_n, + ingredients_from_palm_oil_n, + ingredients_hierarchy, + ingredients_ids_debug, + ingredients_n, + ingredients_n_tags, + ingredients_original_tags, + ingredients_percent_analysis, + ingredients_tags, + ingredients_text, + ingredients_text_debug, + ingredients_text_en, + ingredients_text_fr, + ingredients_text_with_allergens, + ingredients_text_with_allergens_en, + ingredients_that_may_be_from_palm_oil_n, + ingredients_with_specified_percent_n, + ingredients_with_specified_percent_sum, + ingredients_with_unspecified_percent_n, + ingredients_with_unspecified_percent_sum, + ingredients_without_ciqual_codes, + ingredients_without_ciqual_codes_n, + interface_version_created, + interface_version_modified, + known_ingredients_n, + labels, + labels_hierarchy, + labels_lc, + labels_old, + labels_tags, + lang, + languages_hierarchy, + languages_tags, + last_edit_dates_tags, + last_editor, + last_image_dates_tags, + last_image_t, + last_modified_by, + last_modified_t, + lc, + link, + manufacturing_places, + manufacturing_places_tags, + max_imgid, + misc_tags, + no_nutrition_data, + nova_group, + nova_group_debug, + nova_groups, + nova_groups_tags, + nutrient_levels_tags, + nutriscore_2021_tags, + nutriscore_2023_tags, + nutriscore_grade, + nutriscore_score, + nutriscore_score_opposite, + nutriscore_tags, + nutriscore_version, + nutrition_data, + nutrition_data_per, + nutrition_data_prepared, + nutrition_data_prepared_per, + nutrition_grade_fr, + nutrition_grades, + nutrition_grades_tags, + nutrition_score_beverage, + nutrition_score_debug, + obsolete, + obsolete_since_date, + origin, + origin_en, + origins, + origins_lc, + origins_old, + packaging, + packaging_hierarchy, + packaging_lc, + packaging_materials_tags, + packaging_old, + packaging_old_before_taxonomization, + packaging_shapes_tags, + packaging_tags, + packaging_text, + packaging_text_en, + packagings_complete, + packagings_n, + photographers_tags, + pnns_groups_1, + pnns_groups_1_tags, + pnns_groups_2, + pnns_groups_2_tags, + popularity_key, + popularity_tags, + product_name, + product_name_en, + product_name_fr, + product_quantity, + purchase_places, + quantity, + rev, + scans_n, + serving_quantity, + serving_size, + sortkey, + states, + states_hierarchy, + states_tags, + stores, + teams, + teams_tags, + traces, + traces_from_ingredients, + traces_from_user, + traces_lc, + unique_scans_n, + unknown_ingredients_n, + update_key +) values ( + '5060292302201', + 2, + 1, + 84, + 'N/A', + 2, + 2, + 'N/A', + 'N/A', + 'N/A', + 'N/A', + 'en:milk', + 'en:milk, milk', + '(en) en:milk', + 'N/A', + 'en', + 'N/A', + 'Popchips', + 'N/A', + 'en:potato 54% x 0.6 = 32.4 g - ', + 54, + 'Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil', + 'N/A', + 'en', + 'Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil', + 'N/A', + 'N/A', + 'Travis Ortega', + '5060292302201', + 'N/A', + 'en:potato-crisps-in-sunflower-oil', + 0, + 0.8875, + 'N/A', + 'France,United Kingdom', + 'N/A', + 'en', + 'N/A', + 1433338177, + 'kyzh', + 'N/A', + 'N/A', + 'N/A', + 'App - yuka, Apps, App - Horizon', + 'N/A', + 'N/A', + '4', + 'b', + 67, + 'N/A', + 'N/A', + 'N/A', + '', + '', + '', + 'N/A', + 11/05/2016, + 'en:appetizers', + 'N/A', + 21, + '', + '', + '', + 'https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg', + 'https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg', + 'https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg', + 'https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg', + 'https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg', + 'https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg', + 'https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg', + 'https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg', + 'https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg', + 'https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg', + 'https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg', + 'https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg', + 'N/A', + 'N/A', + 'N/A', + 'N/A', + 'N/A', + 'N/A', + 'N/A', + 0, + 0, + 'N/A', + 'N/A', + 20, + 'N/A', + 'N/A', + 1, + 'N/A', + '54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.', + '54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.', + '54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.', + '', + '54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.', + '54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.', + 0, + 1, + 54, + 15, + 46, + 'N/A', + 9, + '20120622', + '20190830', + 36, + 'Vegetarian, No preservatives, No artificial anything', + 'N/A', + 'en', + 'Vegetarian,No preservatives,No artificial anything', + 'N/A', + 'en', + 'N/A', + 'N/A', + 'N/A', + 'aleene', + 'N/A', + 1656075071, + 'aleene', + 1679645675, + 'en', + '', + 'European Union', + 'N/A', + '9', + 'N/A', + '', + 4, + '', + '4', + 'N/A', + 'N/A', + 'N/A', + 'N/A', + 'd', + 12, + -12, + 'N/A', + '2021', + 'on', + '100g', + '', + '100g', + 'd', + 'd', + 'N/A', + 0, + '', + '', + , + '', + '', + '', + 'en', + '', + 'Plastic,Mixed plastic film-packet', + 'N/A', + 'en', + 'N/A', + 'Plastic, Mixed plastic-packet', + 'Plastic, en:mixed plastic-packet', + 'N/A', + 'N/A', + '', + '', + 0, + 2, + 'N/A', + 'Salty snacks', + 'N/A', + 'Appetizers', + 'N/A', + 21900000007, + 'N/A', + 'Barbeque Potato Chips', + 'Barbeque Potato Chips', + '', + '23', + '', + 23 g, + 33, + 6, + '23', + '23 g', + 1535456524, + 'en:to-be-completed, en:nutrition-facts-completed, en:ingredients-completed, en:expiration-date-completed, en:packaging-code-to-be-completed, en:characteristics-to-be-completed, en:origins-to-be-completed, en:categories-completed, en:brands-completed, en:packaging-completed, en:quantity-completed, en:product-name-completed, en:photos-to-be-validated, en:packaging-photo-to-be-selected, en:nutrition-photo-selected, en:ingredients-photo-selected, en:front-photo-selected, en:photos-uploaded', + 'N/A', + 'N/A', + '', + 'swipe-studio', + 'N/A', + '', + '', + '(en) ', + 'en', + 4, + 1, + 'eco20231129' +); + +commit; + +insert into categories_properties ( + product_id, + "agribalyse_food_code:en", + "ciqual_food_code:en" +) values ( + 1, + 'N/A', + 'N/A' +); + +commit; + +insert into category_properties ( + product_id, + "ciqual_food_name:en", + "ciqual_food_name:fr" +) values ( + 1, + 'Pearl Reed', + 'Pearl Reed' +); + +commit; + +insert into ecoscore_data ( + product_id, + grade, + missing_data_warning, + score, + status +) values ( + 1, + 'b', + 1, + 67, + 'known' +); + +commit; + +insert into origins_of_ingredients ( + ecoscore_data_id, + epi_score, + epi_value, + origins_from_categories, + origins_from_origins_field, + transportation_score, + transportation_value, + value, + warning +) values ( + 1, + 0, + -5, + 'N/A', + 'N/A', + 0, + 0, + -5, + 'origins_are_100_percent_unknown' +); + +commit; + +insert into aggregated_origins ( + origins_of_ingredient_id, + epi_score, + origin, + percent, + transportation_score +) values ( + 1, + '0', + 'en:unknown', + 100, + 'N/A' +); + +commit; + +insert into transportation_scores ( + origins_of_ingredient_id, + ad, + al, + va, + world, + xk +) values ( + 1, + 0, + 0, + 0, + 0, + 0 +); + +commit; + +insert into transportation_values ( + origins_of_ingredient_id, + ad, + ua, + uk, + us, + va, + world, + xk +) values ( + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 +); + +commit; + +insert into the_values ( + origins_of_ingredient_id, + ad, + al, + at, + uk, + us, + va, + world, + xk +) values ( + 1, + 90, + 59, + 89, + 38, + 65, + 52, + 89, + 75 +); + +commit; + +insert into packaging ( + packagings1_id, + ecoscore_data_id, + non_recyclable_and_non_biodegradable_materials, + score, + value +) values ( + 1, + 1, + 2, + -100, + -15 +); + +commit; + +insert into production_system ( + ecoscore_data_id, + value, + warning +) values ( + 1, + 0, + 'no_label' +); + +commit; + +insert into agribalyse1 ( + ecoscore_data_id, + agribalyse_food_code, + co2_agriculture, + co2_consumption, + co2_distribution, + co2_packaging, + co2_processing, + co2_total, + co2_transportation, + code, + dqr, + ef_agriculture, + ef_consumption, + ef_distribution, + ef_packaging, + ef_processing, + ef_total, + ef_transportation, + is_beverage, + name_en, + name_fr, + score, + version +) values ( + 1, + '4004', + 0.82655583, + 0, + 0.019537154, + 0.28154442, + 0.23156851, + 1.543669164, + 0.18446325, + '4004', + '2.45', + 0.14029442, + 0, + 0.004831936, + 0.02370999, + 0.038707917, + 0.223317319, + 0.015773056, + 0, + 'Potato crisps', + 'Chips de pommes de terre, standard', + 87, + '3.1' +); + +commit; + +insert into grades ( + ecoscore_data_id, + ad, + al, + tr, + ua, + uk, + us, + va, + world, + xk +) values ( + 1, + 'b', + 'b', + 'b', + 'b', + 'b', + 'b', + 'b', + 'b', + 'b' +); + +commit; + +insert into missing ( + ecoscore_data_id, + labels, + origins +) values ( + 1, + 1, + 1 +); + +commit; + +insert into previous_data ( + ecoscore_data_id, + grade, + score +) values ( + 1, + 'b', + 63 +); + +commit; + +insert into agribalyse2 ( + previous_data_id, + agribalyse_food_code, + co2_agriculture, + co2_consumption, + co2_distribution, + co2_packaging, + co2_processing, + co2_total, + co2_transportation, + code, + dqr, + ef_agriculture, + ef_consumption, + ef_distribution, + ef_packaging, + ef_processing, + ef_total, + ef_transportation, + is_beverage, + name_en, + name_fr, + score +) values ( + 1, + '4004', + 1.2992636, + 0, + 0.029120657, + 0.28581962, + 0.39294234, + 2.2443641, + 0.23728203, + '4004', + '2.45', + 0.18214682, + 0, + 0.0098990521, + 0.021558384, + 0.057508389, + 0.29200269, + 0.020894187, + 0, + 'Potato crisps', + 'Chips de pommes de terre, standard', + 78 +); + +commit; + +insert into scores ( + ecoscore_data_id, + ad, + al, + at, + va, + world, + xk +) values ( + 1, + 67, + 67, + 67, + 67, + 67, + 67 +); + +commit; + +insert into impact ( + product_id, + ef_single_score_log_stddev, + mass_ratio_uncharacterized, + impact, + nutrition, + warnings +) values ( + 1, + 0.0664290643574977, + 0.0244618467395455, + 'N/A', + 'N/A', + 'N/A' +); + +commit; + +insert into likeliest_impacts ( + impact_id, + Climate_change, + EF_single_score +) values ( + 1, + 0.0835225930657116, + 0.0132996566234689 +); + +commit; + +insert into likeliest_recipe ( + impact_id, + "en:Oak_smoked_sea_salti_yeast_extract", + "en:e160c", + "en:e330", + "en:flavouring", + "en:garlic_powder", + "en:milk", + "en:onion", + "en:potato", + "en:potato_starch", + "en:rice_flour", + "en:salt", + "en:spice", + "en:sugar", + "en:sunflower_oil", + "en:tomato_powder", + "en:water", + "en:yeast_powder" +) values ( + 1, + 56, + 0, + 88, + 14, + 14, + 4, + 21, + 82, + 90, + 48, + 50, + 52, + 63, + 71, + 85, + 59, + 95 +); + +commit; + +insert into uncharacterized_ingredients_mass_proportion ( + impact_id, + impact, + nutrition +) values ( + 1, + 0.0244618467395455, + 0.0106506947223728 +); + +commit; + +insert into uncharacterized_ingredients_ratio ( + impact_id, + impact, + nutrition +) values ( + 1, + 0.3125, + 0.125 +); + +commit; + +insert into front ( + full_id, + product_id, + geometry, + imgid, + normalize, + rev, + white_magic +) values ( + 3, + 1, + 'N/A', + 'N/A', + 'N/A', + 'N/A', + 'N/A' +); + +commit; + +insert into front_en ( + full_id, + product_id, + angle, + coordinates_image_size, + geometry, + imgid, + normalize, + rev, + white_magic, + x1, + x2, + y1, + y2 +) values ( + 6, + '5060292302201', + 0, + 'full', + '0x0--1--1', + '8', + 'N/A', + '23', + 'N/A', + '-1', + '-1', + '-1', + '-1' +); + +commit; + +insert into ingredients1 ( + full_id, + product_id, + geometry, + imgid, + normalize, + ocr, + orientation, + rev, + white_magic +) values ( + 1, + '5060292302201', + '1730x526-125-304', + '5', + 'false', + 1, + '0', + '11', + 'false' +); + +commit; + +insert into ingredients_en ( + full_id, + product_id, + geometry, + imgid, + normalize, + ocr, + orientation, + rev, + white_magic +) values ( + 12, + '5060292302201', + '1730x526-125-304', + '5', + 'false', + 1, + '0', + '11', + 'false' +); + +commit; + +insert into nutrition ( + full_id, + product_id, + geometry, + imgid, + normalize, + ocr, + orientation, + rev, + white_magic +) values ( + 7, + 1, + 'N/A', + 'N/A', + 'N/A', + 72, + 'N/A', + 'N/A', + 'N/A' +); + +commit; + +insert into nutrition_en ( + full_id, + product_id, + angle, + coordinates_image_size, + geometry, + imgid, + normalize, + rev, + white_magic, + x1, + x2, + y1, + y2 +) values ( + 14, + '5060292302201', + 0, + 'full', + '0x0--1--1', + '9', + 'N/A', + '32', + 'N/A', + '-1', + '-1', + '-1', + '-1' +); + +commit; + +insert into ingredients2 ( + id, + product_id, + ciqual_food_code, + percent, + percent_estimate, + percent_max, + percent_min, + processing, + rank, + text, + vegan, + vegetarian +) values ( + '5060292302201', + '5060292302201', + '4003', + 54, + 54, + 54, + 54, + 'en:dried', + 1, + 'potatoes', + 'yes', + 'yes' +); +insert into ingredients2 ( + id, + product_id, + ciqual_food_code, + percent, + percent_estimate, + percent_max, + percent_min, + processing, + rank, + text, + vegan, + vegetarian +) values ( + '5060292302201', + '5060292302201', + '17440', + 39, + 28.75, + 46, + 11.5, + 'N/A', + 2, + 'sunflower oil', + 'yes', + 'yes' +); +insert into ingredients2 ( + id, + product_id, + ciqual_food_code, + percent, + percent_estimate, + percent_max, + percent_min, + processing, + rank, + text, + vegan, + vegetarian +) values ( + '5060292302201', + '5060292302201', + 'N/A', + 68, + 8.625, + 33.3333333333333, + 0, + 'N/A', + 3, + 'seasoning', + 'maybe', + 'maybe' +); +insert into ingredients2 ( + id, + product_id, + ciqual_food_code, + percent, + percent_estimate, + percent_max, + percent_min, + processing, + rank, + text, + vegan, + vegetarian +) values ( + '5060292302201', + '5060292302201', + '9520', + 12, + 4.3125, + 17.25, + 0, + 'N/A', + 4, + 'rice flour', + 'yes', + 'yes' +); +insert into ingredients2 ( + id, + product_id, + ciqual_food_code, + percent, + percent_estimate, + percent_max, + percent_min, + processing, + rank, + text, + vegan, + vegetarian +) values ( + '5060292302201', + '5060292302201', + 'N/A', + 35, + 4.3125, + 11.5, + 0, + 'N/A', + 5, + 'potato starch', + 'yes', + 'yes' +); +insert into ingredients2 ( + id, + product_id, + ciqual_food_code, + percent, + percent_estimate, + percent_max, + percent_min, + processing, + rank, + text, + vegan, + vegetarian +) values ( + '5060292302201', + '5060292302201', + 'N/A', + 48, + 4.3125, + 8.7, + 0, + 'N/A', + 96, + 'sugar', + 'yes', + 'yes' +); +insert into ingredients2 ( + id, + product_id, + ciqual_food_code, + percent, + percent_estimate, + percent_max, + percent_min, + processing, + rank, + text, + vegan, + vegetarian +) values ( + '5060292302201', + '5060292302201', + 'N/A', + 38, + 2.15625, + 8.7, + 0, + 'N/A', + 83, + 'whey powder', + 'no', + 'maybe' +); +insert into ingredients2 ( + id, + product_id, + ciqual_food_code, + percent, + percent_estimate, + percent_max, + percent_min, + processing, + rank, + text, + vegan, + vegetarian +) values ( + '5060292302201', + '5060292302201', + '11058', + 81, + 1.05, + 2.1, + 0, + 'N/A', + 54, + 'salt', + 'yes', + 'yes' +); +insert into ingredients2 ( + id, + product_id, + ciqual_food_code, + percent, + percent_estimate, + percent_max, + percent_min, + processing, + rank, + text, + vegan, + vegetarian +) values ( + '5060292302201', + '5060292302201', + '20034', + 21, + 0.553125, + 2.1, + 0, + 'en:powder', + 83, + 'onion', + 'yes', + 'yes' +); +insert into ingredients2 ( + id, + product_id, + ciqual_food_code, + percent, + percent_estimate, + percent_max, + percent_min, + processing, + rank, + text, + vegan, + vegetarian +) values ( + '5060292302201', + '5060292302201', + 'N/A', + 27, + 0.2765625, + 2.1, + 0, + 'N/A', + 36, + 'yeast powder', + 'yes', + 'yes' +); +insert into ingredients2 ( + id, + product_id, + ciqual_food_code, + percent, + percent_estimate, + percent_max, + percent_min, + processing, + rank, + text, + vegan, + vegetarian +) values ( + '5060292302201', + '5060292302201', + '11000', + 52, + 0.13828125, + 2.1, + 0, + 'en:powder', + 35, + 'garlic', + 'yes', + 'yes' +); +insert into ingredients2 ( + id, + product_id, + ciqual_food_code, + percent, + percent_estimate, + percent_max, + percent_min, + processing, + rank, + text, + vegan, + vegetarian +) values ( + '5060292302201', + '5060292302201', + '20047', + 81, + 0.0691406250000002, + 2.1, + 0, + 'en:powder', + 37, + 'tomato', + 'yes', + 'yes' +); +insert into ingredients2 ( + id, + product_id, + ciqual_food_code, + percent, + percent_estimate, + percent_max, + percent_min, + processing, + rank, + text, + vegan, + vegetarian +) values ( + '5060292302201', + '5060292302201', + 'N/A', + 47, + 0.0345703124999996, + 2.1, + 0, + 'N/A', + 90, + 'Oak smoked sea salti yeast extract', + 'N/A', + 'N/A' +); +insert into ingredients2 ( + id, + product_id, + ciqual_food_code, + percent, + percent_estimate, + percent_max, + percent_min, + processing, + rank, + text, + vegan, + vegetarian +) values ( + '5060292302201', + '5060292302201', + 'N/A', + 3, + 0.0172851562499998, + 2.1, + 0, + 'N/A', + 15, + 'flavourings', + 'maybe', + 'maybe' +); +insert into ingredients2 ( + id, + product_id, + ciqual_food_code, + percent, + percent_estimate, + percent_max, + percent_min, + processing, + rank, + text, + vegan, + vegetarian +) values ( + '5060292302201', + '5060292302201', + 'N/A', + 39, + 0.00864257812500036, + 2.1, + 0, + 'N/A', + 33, + 'spices', + 'yes', + 'yes' +); +insert into ingredients2 ( + id, + product_id, + ciqual_food_code, + percent, + percent_estimate, + percent_max, + percent_min, + processing, + rank, + text, + vegan, + vegetarian +) values ( + '5060292302201', + '5060292302201', + 'N/A', + 28, + 0.00432128906250018, + 2.1, + 0, + 'N/A', + 63, + 'acid', + 'N/A', + 'N/A' +); +insert into ingredients2 ( + id, + product_id, + ciqual_food_code, + percent, + percent_estimate, + percent_max, + percent_min, + processing, + rank, + text, + vegan, + vegetarian +) values ( + '5060292302201', + '5060292302201', + 'N/A', + 89, + 0.00432128906249929, + 2.1, + 0, + 'N/A', + 66, + 'colour', + 'N/A', + 'N/A' +); +insert into ingredients2 ( + id, + product_id, + ciqual_food_code, + percent, + percent_estimate, + percent_max, + percent_min, + processing, + rank, + text, + vegan, + vegetarian +) values ( + '5060292302201', + '5060292302201', + 'N/A', + 92, + 2.15625, + 8.7, + 0, + 'N/A', + 6, + 'milk', + 'no', + 'yes' +); +insert into ingredients2 ( + id, + product_id, + ciqual_food_code, + percent, + percent_estimate, + percent_max, + percent_min, + processing, + rank, + text, + vegan, + vegetarian +) values ( + '5060292302201', + '5060292302201', + 'N/A', + 91, + 0.00432128906250018, + 2.1, + 0, + 'N/A', + 27, + 'citric acid', + 'yes', + 'yes' +); +insert into ingredients2 ( + id, + product_id, + ciqual_food_code, + percent, + percent_estimate, + percent_max, + percent_min, + processing, + rank, + text, + vegan, + vegetarian +) values ( + '5060292302201', + '5060292302201', + 'N/A', + 87, + 0.00432128906249929, + 2.1, + 0, + 'N/A', + 26, + 'paprika extract', + 'yes', + 'yes' +); + +commit; + +insert into languages ( + product_id, + "en:english" +) values ( + '5060292302201', + 63 +); + +commit; + +insert into languages_codes ( + product_id, + en +) values ( + '5060292302201', + 5 +); + +commit; + +insert into nutrient_levels ( + product_id, + fat, + salt, + "saturated-fat", + sugars +) values ( + '5060292302201', + 'moderate', + 'high', + 'N/A', + 'moderate' +); + +commit; + +insert into nutriments ( + product_id, + carbohydrates, + carbohydrates_100g, + carbohydrates_serving, + carbohydrates_unit, + carbohydrates_value, + "carbon-footprint-from-known-ingredients_100g", + "carbon-footprint-from-known-ingredients_product", + salt, + salt_100g, + salt_serving, + salt_unit, + salt_value, + "saturated-fat", + "saturated-fat_100g", + "saturated-fat_serving", + "saturated-fat_unit", + "saturated-fat_value", + sodium, + sodium_100g, + sodium_serving, + sodium_unit, + sodium_value, + sugars, + sugars_100g, + sugars_serving, + sugars_unit, + sugars_value +) values ( + '5060292302201', + 62, + 62, + 14.3, + 'g', + 62, + 63, + 28, + 2.1, + 2.1, + 0.483, + 'g', + 2.1, + 38, + 85, + 52, + 'N/A', + 36, + 0.84, + 0.84, + 0.193, + 'g', + 0.84, + 8.7, + 8.7, + 2, + 'g', + 8.7 +); + +commit; + +insert into nutriscore_data ( + product_id, + energy, + energy_points, + energy_value, + fiber, + fiber_points, + fiber_value, + fruits_vegetables_nuts_colza_walnut_olive_oils, + fruits_vegetables_nuts_colza_walnut_olive_oils_points, + fruits_vegetables_nuts_colza_walnut_olive_oils_value, + grade, + is_beverage, + is_cheese, + is_fat, + is_water, + negative_points, + positive_points, + proteins, + proteins_points, + proteins_value, + saturated_fat, + saturated_fat_points, + saturated_fat_value, + score, + sodium, + sodium_points, + sodium_value, + sugars, + sugars_points, + sugars_value +) values ( + '5060292302201', + 1759, + 5, + 1759, + 3.9, + 4, + 3.9, + '0', + 0, + 0, + 'd', + 0, + 0, + 0, + 0, + 16, + 4, + 5.7, + 3, + 5.7, + 1.4, + 1, + 1.4, + 12, + 840, + 9, + 840, + 8.7, + 1, + 8.7 +); + +commit; + +insert into display ( + en +) values ( + 'https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg' +); +insert into display ( + en +) values ( + 'https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg' +); +insert into display ( + en +) values ( + 'https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg' +); + +commit; + +insert into small ( + en +) values ( + 'https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg' +); +insert into small ( + en +) values ( + 'https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg' +); +insert into small ( + en +) values ( + 'https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg' +); + +commit; + +insert into thumb ( + en +) values ( + 'https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg' +); +insert into thumb ( + en +) values ( + 'https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg' +); +insert into thumb ( + en +) values ( + 'https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg' +); + +commit; + + +-- Generated by Quick SQL development 1/30/2024, 11:20:40 AM + +/* + +food_product /insert 1 + code + product /insert 1 + _id + _keywords + additives_n num + additives_old_n num + additives_old_tags + additives_original_tags + additives_prev_original_tags + additives_tags + allergens + allergens_from_ingredients + allergens_from_user + allergens_hierarchy + allergens_lc + allergens_tags + brands + brands_tags + carbon_footprint_from_known_ingredients_debug + carbon_footprint_percent_of_known_ingredients num + categories + categories_hierarchy + categories_lc + categories_old + categories_properties /insert 1 + agribalyse_food_code:en + ciqual_food_code:en + categories_properties_tags + categories_tags + category_properties /insert 1 + ciqual_food_name:en + ciqual_food_name:fr + ciqual_food_name_tags + code + codes_tags + compared_to_category + complete num + completeness num + correctors_tags + countries + countries_hierarchy + countries_lc + countries_tags + created_t num + creator + data_quality_info_tags + data_quality_tags + data_quality_warnings_tags + data_sources + data_sources_tags + debug_param_sorted_langs + ecoscore_data /insert 1 + origins_of_ingredients /insert 1 + aggregated_origins /insert 1 + epi_score + origin + percent num + transportation_score + epi_score num + epi_value num + origins_from_categories + origins_from_origins_field + transportation_score num + transportation_scores /insert 1 + ad num + al num + va num + world num + xk num + transportation_value num + transportation_values /insert 1 + ad num + ua num + uk num + us num + va num + world num + xk num + value num + values /insert 1 + ad num + al num + at num + uk num + us num + va num + world num + xk num + warning + packaging /insert 1 + non_recyclable_and_non_biodegradable_materials num + >packagings1 /insert 2 + ecoscore_material_score num + ecoscore_shape_ratio num + material + non_recyclable_and_non_biodegradable + shape + score num + value num + production_system /insert 1 + value num + warning + agribalyse1 /insert 1 + agribalyse_food_code + co2_agriculture num + co2_consumption num + co2_distribution num + co2_packaging num + co2_processing num + co2_total num + co2_transportation num + code + dqr + ef_agriculture num + ef_consumption num + ef_distribution num + ef_packaging num + ef_processing num + ef_total num + ef_transportation num + is_beverage num + name_en + name_fr + score num + version + grade + grades /insert 1 + ad + al + tr + ua + uk + us + va + world + xk + missing /insert 1 + labels num + origins num + missing_data_warning num + previous_data /insert 1 + agribalyse2 /insert 1 + agribalyse_food_code + co2_agriculture num + co2_consumption num + co2_distribution num + co2_packaging num + co2_processing num + co2_total num + co2_transportation num + code + dqr + ef_agriculture num + ef_consumption num + ef_distribution num + ef_packaging num + ef_processing num + ef_total num + ef_transportation num + is_beverage num + name_en + name_fr + score num + grade + score num + score num + scores /insert 1 + ad num + al num + at num + va num + world num + xk num + status + impact /insert 1 + ef_single_score_log_stddev num + likeliest_impacts /insert 1 + Climate_change num + EF_single_score num + likeliest_recipe /insert 1 + en:Oak_smoked_sea_salti_yeast_extract num + en:e160c num + en:e330 num + en:flavouring num + en:garlic_powder num + en:milk num + en:onion num + en:potato num + en:potato_starch num + en:rice_flour num + en:salt num + en:spice num + en:sugar num + en:sunflower_oil num + en:tomato_powder num + en:water num + en:yeast_powder num + mass_ratio_uncharacterized num + impact + nutrition + uncharacterized_ingredients_mass_proportion /insert 1 + impact num + nutrition num + uncharacterized_ingredients_ratio /insert 1 + impact num + nutrition num + warnings + ecoscore_extended_data_version + ecoscore_grade + ecoscore_score num + ecoscore_tags + editors + editors_tags + emb_codes + emb_codes_20141016 + emb_codes_orig + entry_dates_tags + expiration_date + food_groups + food_groups_tags + fruits-vegetables-nuts_100g_estimate num + generic_name + generic_name_en + generic_name_fr + id vc32 /pk + image_front_small_url + image_front_thumb_url + image_front_url + image_ingredients_small_url + image_ingredients_thumb_url + image_ingredients_url + image_nutrition_small_url + image_nutrition_thumb_url + image_nutrition_url + image_small_url + image_thumb_url + image_url + front /insert 1 + geometry + imgid + normalize + rev + >full /insert 15 + h num + w num + white_magic + front_en /insert 1 + angle num + coordinates_image_size + geometry + imgid + normalize + rev + >full /insert 15 + h num + w num + white_magic + x1 + x2 + y1 + y2 + ingredients1 /insert 1 + geometry + imgid + normalize + ocr num + orientation + rev + >full /insert 15 + h num + w num + white_magic + ingredients_en /insert 1 + geometry + imgid + normalize + ocr num + orientation + rev + >full /insert 15 + h num + w num + white_magic + nutrition /insert 1 + geometry + imgid + normalize + ocr num + orientation + rev + >full /insert 15 + h num + w num + white_magic + nutrition_en /insert 1 + angle num + coordinates_image_size + geometry + imgid + normalize + rev + >full /insert 15 + h num + w num + white_magic + x1 + x2 + y1 + y2 + informers_tags + ingredients2 /insert 20 + ciqual_food_code + id vc32 /pk + percent num + percent_estimate num + percent_max num + percent_min num + processing + rank num + text + vegan + vegetarian + en:non-vegan + en:palm-oil-content-unknown + en:vegan-status-unknown + en:vegetarian-status-unknown + ingredients_analysis_tags + ingredients_debug + ingredients_from_or_that_may_be_from_palm_oil_n num + ingredients_from_palm_oil_n num + ingredients_hierarchy + ingredients_ids_debug + ingredients_n num + ingredients_n_tags + ingredients_original_tags + ingredients_percent_analysis num + ingredients_tags + ingredients_text + ingredients_text_debug + ingredients_text_en + ingredients_text_fr + ingredients_text_with_allergens + ingredients_text_with_allergens_en + ingredients_that_may_be_from_palm_oil_n num + ingredients_with_specified_percent_n num + ingredients_with_specified_percent_sum num + ingredients_with_unspecified_percent_n num + ingredients_with_unspecified_percent_sum num + ingredients_without_ciqual_codes + ingredients_without_ciqual_codes_n num + interface_version_created + interface_version_modified + known_ingredients_n num + labels + labels_hierarchy + labels_lc + labels_old + labels_tags + lang + languages /insert 1 + en:english num + languages_codes /insert 1 + en num + languages_hierarchy + languages_tags + last_edit_dates_tags + last_editor + last_image_dates_tags + last_image_t num + last_modified_by + last_modified_t num + lc + link + manufacturing_places + manufacturing_places_tags + max_imgid + misc_tags + no_nutrition_data + nova_group num + nova_group_debug + nova_groups + nova_groups_tags + nutrient_levels /insert 1 + fat + salt + saturated-fat + sugars + nutrient_levels_tags + nutriments /insert 1 + carbohydrates num + carbohydrates_100g num + carbohydrates_serving num + carbohydrates_unit + carbohydrates_value num + carbon-footprint-from-known-ingredients_100g num + carbon-footprint-from-known-ingredients_product num + salt num + salt_100g num + salt_serving num + salt_unit + salt_value num + saturated-fat num + saturated-fat_100g num + saturated-fat_serving num + saturated-fat_unit + saturated-fat_value num + sodium num + sodium_100g num + sodium_serving num + sodium_unit + sodium_value num + sugars num + sugars_100g num + sugars_serving num + sugars_unit + sugars_value num + nutriscore_2021_tags + nutriscore_2023_tags + nutriscore_data /insert 1 + energy num + energy_points num + energy_value num + fiber num + fiber_points num + fiber_value num + fruits_vegetables_nuts_colza_walnut_olive_oils + fruits_vegetables_nuts_colza_walnut_olive_oils_points num + fruits_vegetables_nuts_colza_walnut_olive_oils_value num + grade + is_beverage num + is_cheese num + is_fat num + is_water num + negative_points num + positive_points num + proteins num + proteins_points num + proteins_value num + saturated_fat num + saturated_fat_points num + saturated_fat_value num + score num + sodium num + sodium_points num + sodium_value num + sugars num + sugars_points num + sugars_value num + nutriscore_grade + nutriscore_score num + nutriscore_score_opposite num + nutriscore_tags + nutriscore_version + nutrition_data + nutrition_data_per + nutrition_data_prepared + nutrition_data_prepared_per + nutrition_grade_fr + nutrition_grades + nutrition_grades_tags + nutrition_score_beverage num + nutrition_score_debug + obsolete + obsolete_since_date + origin + origin_en + origins + origins_lc + origins_old + packaging + packaging_hierarchy + packaging_lc + packaging_materials_tags + packaging_old + packaging_old_before_taxonomization + packaging_shapes_tags + packaging_tags + packaging_text + packaging_text_en + >packagings2 /insert 2 + material + shape + packagings_complete num + packagings_n num + photographers_tags + pnns_groups_1 + pnns_groups_1_tags + pnns_groups_2 + pnns_groups_2_tags + popularity_key num + popularity_tags + product_name + product_name_en + product_name_fr + product_quantity + purchase_places + quantity + rev num + scans_n num + display /insert 3 + en + small /insert 3 + en + thumb /insert 3 + en + display /insert 3 + en + small /insert 3 + en + thumb /insert 3 + en + display /insert 3 + en + small /insert 3 + en + thumb /insert 3 + en + serving_quantity + serving_size + sortkey num + states + states_hierarchy + states_tags + stores + teams + teams_tags + traces + traces_from_ingredients + traces_from_user + traces_lc + unique_scans_n num + unknown_ingredients_n num + update_key + status num + status_verbose + + + + + + +{ + "_keywords": [ + { + "0": "and", + "1": "anything", + "2": "appetizer", + "3": "artificial", + "4": "barbeque", + "5": "beverage", + "6": "potatoe", + "7": "preservative", + "8": "salty", + "9": "snack", + "10": "sunflower", + "11": "vegetarian", + "_id": "5060292302201" + } + ], + "added_countries_tags": [], + "additives_debug_tags": [], + "additives_old_tags": [ + { + "0": "en:e330", + "1": "en:e160c", + "_id": "5060292302201" + } + ], + "additives_original_tags": [ + { + "0": "en:e330", + "1": "en:e160c", + "_id": "5060292302201" + } + ], + "additives_prev_original_tags": [ + { + "0": "en:e330", + "1": "en:e160c", + "_id": "5060292302201" + } + ], + "additives_tags": [ + { + "0": "en:e160c", + "1": "en:e330", + "_id": "5060292302201" + } + ], + "allergens_hierarchy": [ + { + "0": "en:milk", + "_id": "5060292302201" + } + ], + "allergens_tags": [ + { + "0": "en:milk", + "_id": "5060292302201" + } + ], + "amino_acids_prev_tags": [], + "amino_acids_tags": [], + "brands_tags": [ + { + "0": "popchips", + "_id": "5060292302201" + } + ], + "categories_hierarchy": [ + { + "0": "en:plant-based-foods-and-beverages", + "1": "en:plant-based-foods", + "2": "en:snacks", + "3": "en:cereals-and-potatoes", + "4": "en:salty-snacks", + "5": "en:appetizers", + "6": "en:chips-and-fries", + "7": "en:crisps", + "8": "en:potato-crisps", + "9": "en:potato-crisps-in-sunflower-oil", + "_id": "5060292302201" + } + ], + "categories_properties": [ + { + "agribalyse_food_code:en": "4004", + "ciqual_food_code:en": "4004", + "_id": "5060292302201" + } + ], + "categories_properties_tags": [ + { + "0": "all-products", + "1": "categories-known", + "2": "agribalyse-food-code-4004", + "3": "agribalyse-food-code-known", + "4": "agribalyse-proxy-food-code-unknown", + "5": "ciqual-food-code-4004", + "6": "ciqual-food-code-known", + "7": "agribalyse-known", + "8": "agribalyse-4004", + "_id": "5060292302201" + } + ], + "categories_tags": [ + { + "0": "en:plant-based-foods-and-beverages", + "1": "en:plant-based-foods", + "2": "en:snacks", + "3": "en:cereals-and-potatoes", + "4": "en:salty-snacks", + "5": "en:appetizers", + "6": "en:chips-and-fries", + "7": "en:crisps", + "8": "en:potato-crisps", + "9": "en:potato-crisps-in-sunflower-oil", + "_id": "5060292302201" + } + ], + "category_properties": [ + { + "ciqual_food_name:en": "Potato crisps", + "ciqual_food_name:fr": "Chips de pommes de terre, standard", + "_id": "5060292302201" + } + ], + "checkers_tags": [], + "ciqual_food_name_tags": [ + { + "0": "potato-crisps", + "_id": "5060292302201" + } + ], + "cities_tags": [], + "codes_tags": [ + { + "0": "code-13", + "1": "5060292302xxx", + "2": "506029230xxxx", + "3": "50602923xxxxx", + "4": "5060292xxxxxx", + "5": "506029xxxxxxx", + "6": "50602xxxxxxxx", + "7": "5060xxxxxxxxx", + "8": "506xxxxxxxxxx", + "9": "50xxxxxxxxxxx", + "10": "5xxxxxxxxxxxx", + "_id": "5060292302201" + } + ], + "correctors_tags": [ + { + "0": "tacite", + "1": "tacite-mass-editor", + "2": "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", + "3": "openfoodfacts-contributors", + "4": "swipe-studio", + "5": "yuka.sY2b0xO6T85zoF3NwEKvllZnctbb-gn-LDr4mHzUyem0FYPXMO5by7b5NKg", + "6": "kiliweb", + "7": "packbot", + "8": "foodless", + "9": "yuka.sY2b0xO6T85zoF3NwEKvlmBZVPXu-gnlBU3miFTQ-NeSIbDaMdUtu4fLGas", + "10": "aleene", + "_id": "5060292302201" + } + ], + "countries_hierarchy": [ + { + "0": "en:france", + "1": "en:united-kingdom", + "_id": "5060292302201" + } + ], + "countries_tags": [ + { + "0": "en:france", + "1": "en:united-kingdom", + "_id": "5060292302201" + } + ], + "data_quality_bugs_tags": [], + "data_quality_errors_tags": [], + "data_quality_info_tags": [ + { + "0": "en:packaging-data-incomplete", + "1": "en:ingredients-percent-analysis-ok", + "2": "en:carbon-footprint-from-known-ingredients-but-not-from-meat-or-fish", + "3": "en:ecoscore-extended-data-computed", + "4": "en:ecoscore-extended-data-less-precise-than-agribalyse", + "5": "en:food-groups-1-known", + "6": "en:food-groups-2-known", + "7": "en:food-groups-3-unknown", + "_id": "5060292302201" + } + ], + "data_quality_tags": [ + { + "0": "en:packaging-data-incomplete", + "1": "en:ingredients-percent-analysis-ok", + "2": "en:carbon-footprint-from-known-ingredients-but-not-from-meat-or-fish", + "3": "en:ecoscore-extended-data-computed", + "4": "en:ecoscore-extended-data-less-precise-than-agribalyse", + "5": "en:food-groups-1-known", + "6": "en:food-groups-2-known", + "7": "en:food-groups-3-unknown", + "8": "en:nutrition-value-very-low-for-category-energy", + "9": "en:nutrition-value-very-low-for-category-fat", + "10": "en:nutrition-value-very-high-for-category-sugars", + "11": "en:vegetarian-label-but-could-not-confirm-for-all-ingredients", + "12": "en:ecoscore-origins-of-ingredients-origins-are-100-percent-unknown", + "13": "en:ecoscore-production-system-no-label", + "_id": "5060292302201" + } + ], + "data_quality_warnings_tags": [ + { + "0": "en:nutrition-value-very-low-for-category-energy", + "1": "en:nutrition-value-very-low-for-category-fat", + "2": "en:nutrition-value-very-high-for-category-sugars", + "3": "en:vegetarian-label-but-could-not-confirm-for-all-ingredients", + "4": "en:ecoscore-origins-of-ingredients-origins-are-100-percent-unknown", + "5": "en:ecoscore-production-system-no-label", + "_id": "5060292302201" + } + ], + "data_sources_tags": [ + { + "0": "app-yuka", + "1": "apps", + "2": "app-horizon", + "_id": "5060292302201" + } + ], + "debug_param_sorted_langs": [ + { + "0": "en", + "_id": "5060292302201" + } + ], + "aggregated_origins": [ + { + "epi_score": "0", + "origin": "en:unknown", + "percent": 100, + "transportation_score": null, + "_id": "5060292302201" + } + ], + "origins_from_categories": [ + { + "0": "en:unknown", + "_id": "5060292302201" + } + ], + "origins_from_origins_field": [ + { + "0": "en:unknown", + "_id": "5060292302201" + } + ], + "transportation_scores": [ + { + "ad": 0, + "al": 0, + "va": 0, + "world": 0, + "xk": 0, + "_id": "5060292302201" + } + ], + "transportation_values": [ + { + "ad": 0, + "ua": 0, + "uk": 0, + "us": 0, + "va": 0, + "world": 0, + "xk": 0, + "_id": "5060292302201" + } + ], + "values": [ + { + "ad": -5, + "al": -5, + "at": -5, + "uk": -5, + "us": -5, + "va": -5, + "world": -5, + "xk": -5, + "_id": "5060292302201" + } + ], + "origins_of_ingredients": [ + { + "epi_score": 0, + "epi_value": -5, + "transportation_score": 0, + "transportation_value": 0, + "value": -5, + "warning": "origins_are_100_percent_unknown", + "_id": "5060292302201" + } + ], + "packaging_packagings": [ + { + "packaging_id": "5060292302201", + "packagings1_id": 1 + }, + { + "packaging_id": "5060292302201", + "packagings1_id": 2 + } + ], + "packagings1": [ + { + "ecoscore_material_score": 0, + "ecoscore_shape_ratio": 1, + "material": "en:plastic", + "non_recyclable_and_non_biodegradable": "maybe", + "shape": "en:packet", + "id": 1 + }, + { + "ecoscore_material_score": 0, + "ecoscore_shape_ratio": 1, + "material": "en:plastic", + "non_recyclable_and_non_biodegradable": "maybe", + "shape": "en:packet", + "id": 2 + } + ], + "packaging": [ + { + "non_recyclable_and_non_biodegradable_materials": 2, + "score": -100, + "value": -15, + "_id": "5060292302201" + } + ], + "labels": [], + "production_system": [ + { + "value": 0, + "warning": "no_label", + "_id": "5060292302201" + } + ], + "threatened_species": [], + "adjustments": [], + "agribalyse1": [ + { + "agribalyse_food_code": "4004", + "co2_agriculture": 0.82655583, + "co2_consumption": 0, + "co2_distribution": 0.019537154, + "co2_packaging": 0.28154442, + "co2_processing": 0.23156851, + "co2_total": 1.543669164, + "co2_transportation": 0.18446325, + "code": "4004", + "dqr": "2.45", + "ef_agriculture": 0.14029442, + "ef_consumption": 0, + "ef_distribution": 0.004831936, + "ef_packaging": 0.02370999, + "ef_processing": 0.038707917, + "ef_total": 0.223317319, + "ef_transportation": 0.015773056, + "is_beverage": 0, + "name_en": "Potato crisps", + "name_fr": "Chips de pommes de terre, standard", + "score": 87, + "version": "3.1", + "_id": "5060292302201" + } + ], + "grades": [ + { + "ad": "b", + "al": "b", + "tr": "b", + "ua": "b", + "uk": "b", + "us": "b", + "va": "b", + "world": "b", + "xk": "b", + "_id": "5060292302201" + } + ], + "missing": [ + { + "labels": 1, + "origins": 1, + "_id": "5060292302201" + } + ], + "agribalyse2": [ + { + "agribalyse_food_code": "4004", + "co2_agriculture": 1.2992636, + "co2_consumption": 0, + "co2_distribution": 0.029120657, + "co2_packaging": 0.28581962, + "co2_processing": 0.39294234, + "co2_total": 2.2443641, + "co2_transportation": 0.23728203, + "code": "4004", + "dqr": "2.45", + "ef_agriculture": 0.18214682, + "ef_consumption": 0, + "ef_distribution": 0.0098990521, + "ef_packaging": 0.021558384, + "ef_processing": 0.057508389, + "ef_total": 0.29200269, + "ef_transportation": 0.020894187, + "is_beverage": 0, + "name_en": "Potato crisps", + "name_fr": "Chips de pommes de terre, standard", + "score": 78, + "_id": "5060292302201" + } + ], + "previous_data": [ + { + "grade": "b", + "score": 63, + "_id": "5060292302201" + } + ], + "scores": [ + { + "ad": 67, + "al": 67, + "at": 67, + "va": 67, + "world": 67, + "xk": 67, + "_id": "5060292302201" + } + ], + "ecoscore_data": [ + { + "grade": "b", + "missing_data_warning": 1, + "score": 67, + "status": "known", + "_id": "5060292302201" + } + ], + "likeliest_impacts": [ + { + "Climate_change": 0.0835225930657116, + "EF_single_score": 0.0132996566234689, + "_id": "5060292302201" + } + ], + "likeliest_recipe": [ + { + "en:Oak_smoked_sea_salti_yeast_extract": 0.103505496656251, + "en:e160c": 0.10350549665625, + "en:e330": 0.10350549665625, + "en:flavouring": 0.10350549665625, + "en:garlic_powder": 0.103505496656251, + "en:milk": 1.55847864453775, + "en:onion": 0.15510736429208, + "en:potato": 69.2208020730349, + "en:potato_starch": 10.5320407294931, + "en:rice_flour": 13.8595510001351, + "en:salt": 1.3345917157533, + "en:spice": 0.10350549665625, + "en:sugar": 10.2883618334396, + "en:sunflower_oil": 14.1645835312727, + "en:tomato_powder": 0.10350549665625, + "en:water": 6.24510964041154, + "en:yeast_powder": 0.103505496656251, + "_id": "5060292302201" + } + ], + "impact": [ + { + "ef_single_score_log_stddev": 0.0664290643574977, + "mass_ratio_uncharacterized": 0.0244618467395455, + "_id": "5060292302201" + } + ], + "nutrition": [], + "uncharacterized_ingredients": [], + "uncharacterized_ingredients_mass_proportion": [ + { + "impact": 0.0244618467395455, + "nutrition": 0.0106506947223728, + "_id": "5060292302201" + } + ], + "uncharacterized_ingredients_ratio": [ + { + "impact": 0.3125, + "nutrition": 0.125, + "_id": "5060292302201" + } + ], + "warnings": [ + { + "0": "Fermentation agents are present in the product (en:yeast-powder). Carbohydrates and sugars mass balance will not be considered to estimate potential recipes", + "1": "The product has a high number of impact uncharacterized ingredients: 31%", + "_id": "5060292302201" + } + ], + "ecoscore_extended_data": [], + "ecoscore_tags": [ + { + "0": "b", + "_id": "5060292302201" + } + ], + "editors": [ + { + "0": "kyzh", + "1": "tacite", + "_id": "5060292302201" + } + ], + "editors_tags": [ + { + "0": "kiliweb", + "1": "openfoodfacts-contributors", + "2": "aleene", + "3": "tacite-mass-editor", + "4": "yuka.sY2b0xO6T85zoF3NwEKvlmBZVPXu-gnlBU3miFTQ-NeSIbDaMdUtu4fLGas", + "5": "kyzh", + "6": "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", + "7": "ecoscore-impact-estimator", + "8": "tacite", + "9": "foodless", + "10": "yuka.sY2b0xO6T85zoF3NwEKvllZnctbb-gn-LDr4mHzUyem0FYPXMO5by7b5NKg", + "11": "swipe-studio", + "12": "packbot", + "_id": "5060292302201" + } + ], + "emb_codes_tags": [], + "entry_dates_tags": [ + { + "0": "2015-06-03", + "1": "2015-06", + "2": "2015", + "_id": "5060292302201" + } + ], + "food_groups_tags": [ + { + "0": "en:salty-snacks", + "1": "en:appetizers", + "_id": "5060292302201" + } + ], + "generic_name_fr_debug_tags": [], + "sizes": [ + { + "h": 74, + "w": 100, + "id": "5060292302201" + }, + { + "h": 296, + "w": 400, + "id": "5060292302201" + }, + { + "h": 43, + "w": 100, + "id": "5060292302201" + }, + { + "h": 171, + "w": 400, + "id": "5060292302201" + }, + { + "h": 100, + "w": 82, + "id": "5060292302201" + }, + { + "h": 400, + "w": 326, + "id": "5060292302201" + }, + { + "h": 56, + "w": 100, + "id": "5060292302201" + }, + { + "h": 225, + "w": 400, + "id": "5060292302201" + }, + { + "h": 100, + "w": 78, + "id": "5060292302201" + }, + { + "h": 200, + "w": 156, + "id": "5060292302201" + }, + { + "h": 400, + "w": 311, + "id": "5060292302201" + }, + { + "h": 200, + "w": 163, + "id": "5060292302201" + }, + { + "h": 30, + "w": 100, + "id": "5060292302201" + }, + { + "h": 61, + "w": 200, + "id": "5060292302201" + }, + { + "h": 122, + "w": 400, + "id": "5060292302201" + }, + { + "h": 81, + "w": 100, + "id": "5060292302201" + }, + { + "h": 163, + "w": 200, + "id": "5060292302201" + }, + { + "h": 325, + "w": 400, + "id": "5060292302201" + }, + { + "h": 113, + "w": 200, + "id": "5060292302201" + } + ], + "nutrition_en_full": [ + { + "nutrition_en_id": "5060292302201", + "full_id": 3 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 4 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 5 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 6 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 7 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 8 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 9 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 10 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 11 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 12 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 13 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 14 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 15 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 16 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 17 + } + ], + "full": [ + { + "h": 1482, + "w": 2000, + "id": 3 + }, + { + "h": 1482, + "w": 2000, + "id": 4 + }, + { + "h": 1482, + "w": 2000, + "id": 5 + }, + { + "h": 1482, + "w": 2000, + "id": 6 + }, + { + "h": 1482, + "w": 2000, + "id": 7 + }, + { + "h": 1482, + "w": 2000, + "id": 8 + }, + { + "h": 846, + "w": 1974, + "id": 9 + }, + { + "h": 1140, + "w": 930, + "id": 10 + }, + { + "h": 569, + "w": 1011, + "id": 11 + }, + { + "h": 1825, + "w": 1421, + "id": 12 + }, + { + "h": 1140, + "w": 930, + "id": 13 + }, + { + "h": 526, + "w": 1730, + "id": 14 + }, + { + "h": 526, + "w": 1730, + "id": 15 + }, + { + "h": 920, + "w": 1131, + "id": 16 + }, + { + "h": 569, + "w": 1011, + "id": 17 + } + ], + "images": [ + { + "uploaded_t": 1433338177, + "uploader": "kyzh", + "id": "5060292302201" + }, + { + "uploaded_t": 1433338194, + "uploader": "kyzh", + "id": "5060292302201" + }, + { + "uploaded_t": 1433338203, + "uploader": "kyzh", + "id": "5060292302201" + }, + { + "uploaded_t": 1433338215, + "uploader": "kyzh", + "id": "5060292302201" + }, + { + "uploaded_t": 1433338229, + "uploader": "kyzh", + "id": "5060292302201" + }, + { + "uploaded_t": 1433338245, + "uploader": "kyzh", + "id": "5060292302201" + }, + { + "uploaded_t": "1508236270", + "uploader": "kiliweb", + "id": "5060292302201" + }, + { + "uploaded_t": 1620505759, + "uploader": "kiliweb", + "id": "5060292302201" + }, + { + "uploaded_t": 1656075071, + "uploader": "kiliweb", + "id": "5060292302201" + } + ], + "front": [], + "front_en": [ + { + "angle": 0, + "coordinates_image_size": "full", + "geometry": "0x0--1--1", + "imgid": "8", + "normalize": null, + "rev": "23", + "white_magic": null, + "x1": "-1", + "x2": "-1", + "y1": "-1", + "y2": "-1", + "id": "5060292302201" + } + ], + "ingredients1": [ + { + "geometry": "1730x526-125-304", + "imgid": "5", + "normalize": "false", + "ocr": 1, + "orientation": "0", + "rev": "11", + "white_magic": "false", + "id": "5060292302201" + } + ], + "ingredients_en": [ + { + "geometry": "1730x526-125-304", + "imgid": "5", + "normalize": "false", + "ocr": 1, + "orientation": "0", + "rev": "11", + "white_magic": "false", + "id": "5060292302201" + } + ], + "nutrition_en": [ + { + "angle": 0, + "coordinates_image_size": "full", + "geometry": "0x0--1--1", + "imgid": "9", + "normalize": null, + "rev": "32", + "white_magic": null, + "x1": "-1", + "x2": "-1", + "y1": "-1", + "y2": "-1", + "id": "5060292302201" + } + ], + "informers_tags": [ + { + "0": "kyzh", + "1": "tacite", + "2": "tacite-mass-editor", + "3": "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", + "4": "openfoodfacts-contributors", + "5": "aleene", + "id": "5060292302201" + } + ], + "ingredients2": [ + { + "ciqual_food_code": "4003", + "id": "5060292302201", + "percent": 54, + "percent_estimate": 54, + "percent_max": 54, + "percent_min": 54, + "processing": "en:dried", + "rank": 1, + "text": "potatoes", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "17440", + "from_palm_oil": "no", + "id": "5060292302201", + "percent_estimate": 28.75, + "percent_max": 46, + "percent_min": 11.5, + "rank": 2, + "text": "sunflower oil", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "has_sub_ingredients": "yes", + "id": "5060292302201", + "percent_estimate": 8.625, + "percent_max": 33.3333333333333, + "percent_min": 0, + "rank": 3, + "text": "seasoning", + "vegan": "maybe", + "vegetarian": "maybe" + }, + { + "ciqual_food_code": "9520", + "id": "5060292302201", + "percent_estimate": 4.3125, + "percent_max": 17.25, + "percent_min": 0, + "rank": 4, + "text": "rice flour", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "5060292302201", + "percent_estimate": 4.3125, + "percent_max": 11.5, + "percent_min": 0, + "rank": 5, + "text": "potato starch", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "5060292302201", + "percent_estimate": 4.3125, + "percent_max": 8.7, + "percent_min": 0, + "text": "sugar", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "has_sub_ingredients": "yes", + "id": "5060292302201", + "percent_estimate": 2.15625, + "percent_max": 8.7, + "percent_min": 0, + "text": "whey powder", + "vegan": "no", + "vegetarian": "maybe" + }, + { + "ciqual_food_code": "11058", + "id": "5060292302201", + "percent_estimate": 1.05, + "percent_max": 2.1, + "percent_min": 0, + "text": "salt", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "20034", + "id": "5060292302201", + "percent_estimate": 0.553125, + "percent_max": 2.1, + "percent_min": 0, + "processing": "en:powder", + "text": "onion", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "5060292302201", + "percent_estimate": 0.2765625, + "percent_max": 2.1, + "percent_min": 0, + "text": "yeast powder", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "11000", + "id": "5060292302201", + "percent_estimate": 0.13828125, + "percent_max": 2.1, + "percent_min": 0, + "processing": "en:powder", + "text": "garlic", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "20047", + "id": "5060292302201", + "percent_estimate": 0.0691406250000002, + "percent_max": 2.1, + "percent_min": 0, + "processing": "en:powder", + "text": "tomato", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "5060292302201", + "percent_estimate": 0.0345703124999996, + "percent_max": 2.1, + "percent_min": 0, + "text": "Oak smoked sea salti yeast extract" + }, + { + "id": "5060292302201", + "percent_estimate": 0.0172851562499998, + "percent_max": 2.1, + "percent_min": 0, + "text": "flavourings", + "vegan": "maybe", + "vegetarian": "maybe" + }, + { + "id": "5060292302201", + "percent_estimate": 0.00864257812500036, + "percent_max": 2.1, + "percent_min": 0, + "text": "spices", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "has_sub_ingredients": "yes", + "id": "5060292302201", + "percent_estimate": 0.00432128906250018, + "percent_max": 2.1, + "percent_min": 0, + "text": "acid" + }, + { + "has_sub_ingredients": "yes", + "id": "5060292302201", + "percent_estimate": 0.00432128906249929, + "percent_max": 2.1, + "percent_min": 0, + "text": "colour" + }, + { + "id": "5060292302201", + "percent_estimate": 2.15625, + "percent_max": 8.7, + "percent_min": 0, + "text": "milk", + "vegan": "no", + "vegetarian": "yes" + }, + { + "id": "5060292302201", + "percent_estimate": 0.00432128906250018, + "percent_max": 2.1, + "percent_min": 0, + "text": "citric acid", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "5060292302201", + "percent_estimate": 0.00432128906249929, + "percent_max": 2.1, + "percent_min": 0, + "text": "paprika extract", + "vegan": "yes", + "vegetarian": "yes" + } + ], + "en:non-vegan": [ + { + "0": "en:whey-powder", + "1": "en:milk", + "id": "5060292302201" + } + ], + "en:palm-oil-content-unknown": [ + { + "0": "en:oak-smoked-sea-salti-yeast-extract", + "id": "5060292302201" + } + ], + "en:vegan-status-unknown": [ + { + "0": "en:oak-smoked-sea-salti-yeast-extract", + "id": "5060292302201" + } + ], + "en:vegetarian-status-unknown": [ + { + "0": "en:oak-smoked-sea-salti-yeast-extract", + "id": "5060292302201" + } + ], + "ingredients_analysis": [], + "ingredients_analysis_tags": [ + { + "0": "en:palm-oil-free", + "1": "en:non-vegan", + "2": "en:vegetarian", + "id": "5060292302201" + } + ], + "ingredients_debug": [ + { + "0": "54% dried potatoes", + "1": ",", + "2": null, + "3": null, + "4": null, + "5": " sunflower oil", + "6": ",", + "7": null, + "8": null, + "9": null, + "10": " seasoning ", + "11": "(", + "12": "(", + "13": null, + "14": null, + "15": "sugar", + "16": ",", + "17": null, + "18": null, + "19": null, + "20": " whey powder ", + "21": "[", + "22": "[", + "23": null, + "24": null, + "25": "milk]", + "26": ",", + "27": null, + "28": null, + "29": null, + "30": " salt", + "31": ",", + "32": null, + "33": null, + "34": null, + "35": " onion powder", + "36": ",", + "37": null, + "38": null, + "39": null, + "40": " yeast powder", + "41": ",", + "42": null, + "43": null, + "44": null, + "45": " garlic powder", + "46": ",", + "47": null, + "48": null, + "49": null, + "50": " tomato powder", + "51": ",", + "52": null, + "53": null, + "54": null, + "55": " Oak smoked sea salti yeast extract", + "56": ",", + "57": null, + "58": null, + "59": null, + "60": " flavourings", + "61": ",", + "62": null, + "63": null, + "64": null, + "65": " spices", + "66": ",", + "67": null, + "68": null, + "69": null, + "70": " acid", + "71": ":", + "72": ":", + "73": null, + "74": null, + "75": " citric acid", + "76": ",", + "77": null, + "78": null, + "79": null, + "80": " colour", + "81": ":", + "82": ":", + "83": null, + "84": null, + "85": " paprika extract)", + "86": ",", + "87": null, + "88": null, + "89": null, + "90": " rice flour", + "91": ",", + "92": null, + "93": null, + "94": null, + "95": " potato starch.", + "id": "5060292302201" + } + ], + "ingredients_from_palm_oil_tags": [], + "ingredients_hierarchy": [ + { + "0": "en:potato", + "1": "en:vegetable", + "2": "en:root-vegetable", + "3": "en:tuber", + "4": "en:sunflower-oil", + "5": "en:oil-and-fat", + "6": "en:spice", + "7": "en:condiment", + "8": "en:acid", + "9": "en:colour", + "10": "en:milk", + "11": "en:e330", + "12": "en:e160c", + "id": "5060292302201" + } + ], + "ingredients_ids_debug": [ + { + "0": "54-dried-potatoes", + "1": "sunflower-oil", + "2": "seasoning", + "3": "sugar", + "4": "colour", + "5": "paprika-extract", + "6": "rice-flour", + "7": "potato-starch", + "id": "5060292302201" + } + ], + "ingredients_n_tags": [ + { + "0": "20", + "1": "11-20", + "id": "5060292302201" + } + ], + "ingredients_original_tags": [ + { + "0": "en:potato", + "1": "en:sunflower-oil", + "2": "en:coating", + "3": "en:rice-flour", + "4": "en:potato-starch", + "5": "en:sugar", + "6": "en:whey-powder", + "7": "en:salt", + "8": "en:onion", + "9": "en:yeast-powder", + "10": "en:garlic", + "11": "en:tomato", + "12": "en:oak-smoked-sea-salti-yeast-extract", + "13": "en:flavouring", + "14": "en:spice", + "15": "en:acid", + "16": "en:colour", + "17": "en:milk", + "18": "en:e330", + "19": "en:e160c", + "id": "5060292302201" + } + ], + "ingredients_tags": [ + { + "0": "en:potato", + "1": "en:vegetable", + "2": "en:root-vegetable", + "3": "en:milk", + "4": "en:e330", + "5": "en:e160c", + "id": "5060292302201" + } + ], + "ingredients_text_debug_tags": [], + "ingredients_text_fr_debug_tags": [], + "ingredients_that_may_be_from_palm_oil_tags": [], + "ingredients_without_ciqual_codes": [ + { + "0": "en:e160c", + "1": "en:e330", + "2": "en:flavouring", + "3": "en:milk", + "4": "en:oak-smoked-sea-salti-yeast-extract", + "5": "en:potato-starch", + "6": "en:spice", + "7": "en:sugar", + "8": "en:yeast-powder", + "id": "5060292302201" + } + ], + "labels_hierarchy": [ + { + "0": "en:vegetarian", + "1": "en:no-preservatives", + "2": "en:No artificial anything", + "id": "5060292302201" + } + ], + "labels_tags": [ + { + "0": "en:vegetarian", + "1": "en:no-preservatives", + "2": "en:no-artificial-anything", + "id": "5060292302201" + } + ], + "languages": [ + { + "en:english": 5, + "id": "5060292302201" + } + ], + "languages_codes": [ + { + "en": 5, + "id": "5060292302201" + } + ], + "languages_hierarchy": [ + { + "0": "en:english", + "id": "5060292302201" + } + ], + "languages_tags": [ + { + "0": "en:english", + "1": "en:1", + "id": "5060292302201" + } + ], + "last_edit_dates_tags": [ + { + "0": "2023-03-24", + "1": "2023-03", + "2": "2023", + "id": "5060292302201" + } + ], + "last_image_dates_tags": [ + { + "0": "2022-06-24", + "1": "2022-06", + "2": "2022", + "id": "5060292302201" + } + ], + "main_countries_tags": [], + "manufacturing_places_tags": [ + { + "0": "european-union", + "id": "5060292302201" + } + ], + "minerals_prev_tags": [], + "minerals_tags": [], + "misc_tags": [ + { + "0": "en:nutriscore-computed", + "1": "en:nutrition-fruits-vegetables-nuts-from-category", + "2": "en:nutrition-fruits-vegetables-nuts-from-category-en-potato-crisps-in-sunflower-oil", + "3": "en:nutrition-fruits-vegetables-legumes-from-category", + "4": "en:nutrition-fruits-vegetables-legumes-from-category-en-potato-crisps-in-sunflower-oil", + "5": "en:nutriscore-2021-same-as-2023", + "6": "en:nutriscore-2021-d-2023-d", + "7": "en:packagings-number-of-components-2", + "8": "en:packagings-not-complete", + "9": "en:packagings-not-empty-but-not-complete", + "10": "en:packagings-not-empty", + "11": "en:ecoscore-extended-data-computed", + "12": "en:ecoscore-extended-data-version-4", + "13": "en:ecoscore-missing-data-warning", + "14": "en:ecoscore-missing-data-labels", + "15": "en:ecoscore-missing-data-origins", + "16": "en:ecoscore-computed", + "17": "en:ecoscore-changed", + "id": "5060292302201" + } + ], + "nova_groups_markers": [ + { + "0": "categories", + "1": "en:salty-snacks", + "id": "5060292302201" + }, + { + "0": "ingredients", + "1": "en:salt", + "id": "5060292302201" + }, + { + "0": "ingredients", + "1": "en:starch", + "id": "5060292302201" + }, + { + "0": "ingredients", + "1": "en:sugar", + "id": "5060292302201" + }, + { + "0": "ingredients", + "1": "en:vegetable-oil", + "id": "5060292302201" + }, + { + "0": "additives", + "1": "en:e160c", + "id": "5060292302201" + }, + { + "0": "ingredients", + "1": "en:colour", + "id": "5060292302201" + }, + { + "0": "ingredients", + "1": "en:flavouring", + "id": "5060292302201" + }, + { + "0": "ingredients", + "1": "en:whey", + "id": "5060292302201" + } + ], + "nova_groups_tags": [ + { + "0": "en:4-ultra-processed-food-and-drink-products", + "id": "5060292302201" + } + ], + "nucleotides_prev_tags": [], + "nucleotides_tags": [], + "nutrient_levels": [ + { + "fat": "moderate", + "salt": "high", + "saturated-fat": "low", + "sugars": "moderate", + "id": "5060292302201" + } + ], + "nutrient_levels_tags": [ + { + "0": "en:fat-in-moderate-quantity", + "1": "en:saturated-fat-in-low-quantity", + "2": "en:sugars-in-moderate-quantity", + "3": "en:salt-in-high-quantity", + "id": "5060292302201" + } + ], + "nutriments": [ + { + "carbohydrates": 62, + "carbohydrates_100g": 62, + "carbohydrates_serving": 14.3, + "carbohydrates_unit": "g", + "carbohydrates_value": 62, + "carbon-footprint-from-known-ingredients_100g": 32.4, + "carbon-footprint-from-known-ingredients_product": 7.45, + "salt": 2.1, + "salt_100g": 2.1, + "salt_serving": 0.483, + "salt_unit": "g", + "salt_value": 2.1, + "saturated-fat": 1.4, + "saturated-fat_100g": 1.4, + "saturated-fat_serving": 0.322, + "saturated-fat_unit": "g", + "saturated-fat_value": 1.4, + "sodium": 0.84, + "sodium_100g": 0.84, + "sodium_serving": 0.193, + "sodium_unit": "g", + "sodium_value": 0.84, + "sugars": 8.7, + "sugars_100g": 8.7, + "sugars_serving": 2, + "sugars_unit": "g", + "sugars_value": 8.7, + "id": "5060292302201" + } + ], + "data": [ + { + "count_proteins": 0, + "count_proteins_reason": "negative_points_more_than_11", + "energy": 1759, + "is_red_meat_product": 0, + "is_water": 0, + "negative_points": 18, + "positive_points": 1, + "proteins": 5.7, + "proteins_points": 2, + "salt": 2.1, + "salt_points": 10, + "saturated_fat": 1.4, + "saturated_fat_points": 1, + "sugars": 8.7, + "sugars_points": 2, + "id": "5060292302201" + } + ], + "nutriscore": [ + { + "category_available": 1, + "grade": "d", + "nutrients_available": 1, + "nutriscore_applicable": 1, + "nutriscore_computed": 1, + "score": 12, + "id": "5060292302201" + }, + { + "category_available": 1, + "grade": "d", + "nutrients_available": 1, + "nutriscore_applicable": 1, + "nutriscore_computed": 1, + "score": 17, + "id": "5060292302201" + } + ], + "negative_nutrients": [ + { + "0": "energy", + "1": "sugars", + "2": "saturated_fat", + "3": "salt", + "4": "non_nutritive_sweeteners", + "id": "5060292302201" + } + ], + "positive_nutrients": [ + { + "0": "fruits_vegetables_legumes", + "1": "fiber", + "id": "5060292302201" + } + ], + "nutriscore_2021_tags": [ + { + "0": "d", + "id": "5060292302201" + } + ], + "nutriscore_2023_tags": [ + { + "0": "d", + "id": "5060292302201" + } + ], + "nutriscore_data": [ + { + "energy": 1759, + "energy_points": 5, + "energy_value": 1759, + "fiber": 3.9, + "fiber_points": 4, + "fiber_value": 3.9, + "fruits_vegetables_nuts_colza_walnut_olive_oils": "0", + "fruits_vegetables_nuts_colza_walnut_olive_oils_points": 0, + "fruits_vegetables_nuts_colza_walnut_olive_oils_value": 0, + "grade": "d", + "is_beverage": 0, + "is_cheese": 0, + "is_fat": 0, + "is_water": 0, + "negative_points": 16, + "positive_points": 4, + "proteins": 5.7, + "proteins_points": 3, + "proteins_value": 5.7, + "saturated_fat": 1.4, + "saturated_fat_points": 1, + "saturated_fat_value": 1.4, + "score": 12, + "sodium": 840, + "sodium_points": 9, + "sodium_value": 840, + "sugars": 8.7, + "sugars_points": 1, + "sugars_value": 8.7, + "id": "5060292302201" + } + ], + "nutriscore_tags": [ + { + "0": "d", + "id": "5060292302201" + } + ], + "nutrition_grades_tags": [ + { + "0": "d", + "id": "5060292302201" + } + ], + "origins_hierarchy": [], + "origins_tags": [], + "other_nutritional_substances_tags": [], + "packaging_hierarchy": [ + { + "0": "en:plastic", + "1": "en:Mixed plastic film-packet", + "id": "5060292302201" + } + ], + "packaging_materials_tags": [ + { + "0": "en:plastic", + "id": "5060292302201" + } + ], + "packaging_recycling_tags": [], + "packaging_shapes_tags": [ + { + "0": "en:packet", + "id": "5060292302201" + } + ], + "packaging_tags": [ + { + "0": "en:plastic", + "1": "en:mixed-plastic-film-packet", + "id": "5060292302201" + } + ], + "product_packagings": [ + { + "product_id": "5060292302201", + "packagings2_id": 18 + }, + { + "product_id": "5060292302201", + "packagings2_id": 19 + } + ], + "packagings2": [ + { + "material": "en:plastic", + "shape": "en:packet", + "id": 18 + }, + { + "material": "en:plastic", + "shape": "en:packet", + "id": 19 + } + ], + "all": [], + "en:plastic": [], + "packagings_materials": [], + "photographers_tags": [ + { + "0": "kyzh", + "1": "kiliweb", + "id": "5060292302201" + } + ], + "pnns_groups_1_tags": [ + { + "0": "salty-snacks", + "1": "known", + "id": "5060292302201" + } + ], + "pnns_groups_2_tags": [ + { + "0": "appetizers", + "1": "known", + "id": "5060292302201" + } + ], + "popularity_tags": [ + { + "0": "bottom-25-percent-scans-2019", + "1": "bottom-20-percent-scans-2019", + "2": "top-100000-hk-scans-2022", + "3": "top-10000-us-scans-2022", + "4": "top-50000-us-scans-2022", + "5": "top-100000-us-scans-2022", + "id": "5060292302201" + } + ], + "product_name_fr_debug_tags": [], + "purchase_places_tags": [], + "removed_countries_tags": [], + "display": [ + { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", + "id": "5060292302201" + }, + { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg", + "id": "5060292302201" + }, + { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg", + "id": "5060292302201" + } + ], + "small": [ + { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", + "id": "5060292302201" + }, + { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg", + "id": "5060292302201" + }, + { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg", + "id": "5060292302201" + } + ], + "thumb": [ + { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", + "id": "5060292302201" + }, + { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg", + "id": "5060292302201" + }, + { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg", + "id": "5060292302201" + } + ], + "ingredients-1": [], + "selected_images": [], + "states_hierarchy": [ + { + "0": "en:to-be-completed", + "1": "en:nutrition-facts-completed", + "2": "en:ingredients-completed", + "3": "en:ingredients-photo-selected", + "4": "en:front-photo-selected", + "5": "en:photos-uploaded", + "id": "5060292302201" + } + ], + "states_tags": [ + { + "0": "en:to-be-completed", + "1": "en:nutrition-facts-completed", + "2": "en:ingredients-completed", + "3": "en:ingredients-photo-selected", + "4": "en:front-photo-selected", + "5": "en:photos-uploaded", + "id": "5060292302201" + } + ], + "stores_tags": [], + "teams_tags": [ + { + "0": "swipe-studio", + "id": "5060292302201" + } + ], + "traces_hierarchy": [], + "traces_tags": [], + "unknown_nutrients_tags": [], + "vitamins_prev_tags": [], + "vitamins_tags": [], + "weighers_tags": [], + "product": [ + { + "_id": "5060292302201", + "additives_n": 2, + "additives_old_n": 2, + "allergens": "en:milk", + "allergens_from_ingredients": "en:milk, milk", + "allergens_from_user": "(en) en:milk", + "allergens_lc": "en", + "brands": "Popchips", + "carbon_footprint_from_known_ingredients_debug": "en:potato 54% x 0.6 = 32.4 g - ", + "carbon_footprint_percent_of_known_ingredients": 54, + "categories": "Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil", + "categories_lc": "en", + "categories_old": "Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil", + "code": "5060292302201", + "compared_to_category": "en:potato-crisps-in-sunflower-oil", + "complete": 0, + "completeness": 0.8875, + "countries": "France,United Kingdom", + "countries_lc": "en", + "created_t": 1433338177, + "creator": "kyzh", + "data_sources": "App - yuka, Apps, App - Horizon", + "ecoscore_extended_data_version": "4", + "ecoscore_grade": "b", + "ecoscore_score": 67, + "emb_codes": "", + "emb_codes_20141016": "", + "emb_codes_orig": "", + "expiration_date": "11/05/2016", + "food_groups": "en:appetizers", + "fruits-vegetables-nuts_100g_estimate": 0, + "generic_name": "", + "generic_name_en": "", + "generic_name_fr": "", + "id": "5060292302201", + "image_front_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", + "image_front_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", + "image_front_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", + "image_ingredients_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg", + "image_ingredients_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg", + "image_ingredients_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg", + "image_nutrition_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg", + "image_nutrition_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg", + "image_nutrition_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg", + "image_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", + "image_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", + "image_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", + "ingredients_from_or_that_may_be_from_palm_oil_n": 0, + "ingredients_from_palm_oil_n": 0, + "ingredients_n": 20, + "ingredients_percent_analysis": 1, + "ingredients_text": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_debug": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_en": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_fr": "", + "ingredients_text_with_allergens": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_with_allergens_en": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_that_may_be_from_palm_oil_n": 0, + "ingredients_with_specified_percent_n": 1, + "ingredients_with_specified_percent_sum": 54, + "ingredients_with_unspecified_percent_n": 15, + "ingredients_with_unspecified_percent_sum": 46, + "ingredients_without_ciqual_codes_n": 9, + "interface_version_created": "20120622", + "interface_version_modified": "20190830", + "known_ingredients_n": 36, + "labels": "Vegetarian, No preservatives, No artificial anything", + "labels_lc": "en", + "labels_old": "Vegetarian,No preservatives,No artificial anything", + "lang": "en", + "last_editor": "aleene", + "last_image_t": 1656075071, + "last_modified_by": "aleene", + "last_modified_t": 1679645675, + "lc": "en", + "link": "", + "manufacturing_places": "European Union", + "max_imgid": "9", + "no_nutrition_data": "", + "nova_group": 4, + "nova_group_debug": "", + "nova_groups": "4", + "nutriscore_grade": "d", + "nutriscore_score": 12, + "nutriscore_score_opposite": -12, + "nutriscore_version": "2021", + "nutrition_data": "on", + "nutrition_data_per": "100g", + "nutrition_data_prepared": "", + "nutrition_data_prepared_per": "100g", + "nutrition_grade_fr": "d", + "nutrition_grades": "d", + "nutrition_score_beverage": 0, + "nutrition_score_debug": "", + "obsolete": "", + "obsolete_since_date": "", + "origin": "", + "origin_en": "", + "origins": "", + "origins_lc": "en", + "origins_old": "", + "packaging": "Plastic,Mixed plastic film-packet", + "packaging_lc": "en", + "packaging_old": "Plastic, Mixed plastic-packet", + "packaging_old_before_taxonomization": "Plastic, en:mixed plastic-packet", + "packaging_text": "", + "packaging_text_en": "", + "packagings_complete": 0, + "packagings_n": 2, + "pnns_groups_1": "Salty snacks", + "pnns_groups_2": "Appetizers", + "popularity_key": 21900000007, + "product_name": "Barbeque Potato Chips", + "product_name_en": "Barbeque Potato Chips", + "product_name_fr": "", + "product_quantity": "23", + "purchase_places": "", + "quantity": "23 g", + "rev": 33, + "scans_n": 6, + "serving_quantity": "23", + "serving_size": "23 g", + "sortkey": 1535456524, + "states": "en:to-be-completed, en:nutrition-facts-completed, en:ingredients-completed, en:expiration-date-completed, en:packaging-code-to-be-completed, en:characteristics-to-be-completed, en:origins-to-be-completed, en:categories-completed, en:brands-completed, en:packaging-completed, en:quantity-completed, en:product-name-completed, en:photos-to-be-validated, en:packaging-photo-to-be-selected, en:nutrition-photo-selected, en:ingredients-photo-selected, en:front-photo-selected, en:photos-uploaded", + "stores": "", + "teams": "swipe-studio", + "traces": "", + "traces_from_ingredients": "", + "traces_from_user": "(en) ", + "traces_lc": "en", + "unique_scans_n": 4, + "unknown_ingredients_n": 1, + "update_key": "eco20231129" + } + ], + "food_product": [ + { + "code": "5060292302201", + "status": 1, + "status_verbose": "product found" + } + ] +} + + +-- Generated by json2qsql.js development 1/30/2024, 11:19:56 AM + + + +{ + "code": "5060292302201", + "product": { + "_id": "5060292302201", + "_keywords": [ + "and", + "anything", + "appetizer", + "artificial", + "barbeque", + "beverage", + "potatoe", + "preservative", + "salty", + "snack", + "sunflower", + "vegetarian" + ], + "added_countries_tags": [], + "additives_debug_tags": [], + "additives_n": 2, + "additives_old_n": 2, + "additives_old_tags": [ + "en:e330", + "en:e160c" + ], + "additives_original_tags": [ + "en:e330", + "en:e160c" + ], + "additives_prev_original_tags": [ + "en:e330", + "en:e160c" + ], + "additives_tags": [ + "en:e160c", + "en:e330" + ], + "allergens": "en:milk", + "allergens_from_ingredients": "en:milk, milk", + "allergens_from_user": "(en) en:milk", + "allergens_hierarchy": [ + "en:milk" + ], + "allergens_lc": "en", + "allergens_tags": [ + "en:milk" + ], + "amino_acids_prev_tags": [], + "amino_acids_tags": [], + "brands": "Popchips", + "brands_tags": [ + "popchips" + ], + "carbon_footprint_from_known_ingredients_debug": "en:potato 54% x 0.6 = 32.4 g - ", + "carbon_footprint_percent_of_known_ingredients": 54, + "categories": "Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil", + "categories_hierarchy": [ + "en:plant-based-foods-and-beverages", + "en:plant-based-foods", + "en:snacks", + "en:cereals-and-potatoes", + "en:salty-snacks", + "en:appetizers", + "en:chips-and-fries", + "en:crisps", + "en:potato-crisps", + "en:potato-crisps-in-sunflower-oil" + ], + "categories_lc": "en", + "categories_old": "Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil", + "categories_properties": { + "agribalyse_food_code:en": "4004", + "ciqual_food_code:en": "4004" + }, + "categories_properties_tags": [ + "all-products", + "categories-known", + "agribalyse-food-code-4004", + "agribalyse-food-code-known", + "agribalyse-proxy-food-code-unknown", + "ciqual-food-code-4004", + "ciqual-food-code-known", + "agribalyse-known", + "agribalyse-4004" + ], + "categories_tags": [ + "en:plant-based-foods-and-beverages", + "en:plant-based-foods", + "en:snacks", + "en:cereals-and-potatoes", + "en:salty-snacks", + "en:appetizers", + "en:chips-and-fries", + "en:crisps", + "en:potato-crisps", + "en:potato-crisps-in-sunflower-oil" + ], + "category_properties": { + "ciqual_food_name:en": "Potato crisps", + "ciqual_food_name:fr": "Chips de pommes de terre, standard" + }, + "checkers_tags": [], + "ciqual_food_name_tags": [ + "potato-crisps" + ], + "cities_tags": [], + "code": "5060292302201", + "codes_tags": [ + "code-13", + "5060292302xxx", + "506029230xxxx", + "50602923xxxxx", + "5060292xxxxxx", + "506029xxxxxxx", + "50602xxxxxxxx", + "5060xxxxxxxxx", + "506xxxxxxxxxx", + "50xxxxxxxxxxx", + "5xxxxxxxxxxxx" + ], + "compared_to_category": "en:potato-crisps-in-sunflower-oil", + "complete": 0, + "completeness": 0.8875, + "correctors_tags": [ + "tacite", + "tacite-mass-editor", + "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", + "openfoodfacts-contributors", + "swipe-studio", + "yuka.sY2b0xO6T85zoF3NwEKvllZnctbb-gn-LDr4mHzUyem0FYPXMO5by7b5NKg", + "kiliweb", + "packbot", + "foodless", + "yuka.sY2b0xO6T85zoF3NwEKvlmBZVPXu-gnlBU3miFTQ-NeSIbDaMdUtu4fLGas", + "aleene" + ], + "countries": "France,United Kingdom", + "countries_hierarchy": [ + "en:france", + "en:united-kingdom" + ], + "countries_lc": "en", + "countries_tags": [ + "en:france", + "en:united-kingdom" + ], + "created_t": 1433338177, + "creator": "kyzh", + "data_quality_bugs_tags": [], + "data_quality_errors_tags": [], + "data_quality_info_tags": [ + "en:packaging-data-incomplete", + "en:ingredients-percent-analysis-ok", + "en:carbon-footprint-from-known-ingredients-but-not-from-meat-or-fish", + "en:ecoscore-extended-data-computed", + "en:ecoscore-extended-data-less-precise-than-agribalyse", + "en:food-groups-1-known", + "en:food-groups-2-known", + "en:food-groups-3-unknown" + ], + "data_quality_tags": [ + "en:packaging-data-incomplete", + "en:ingredients-percent-analysis-ok", + "en:carbon-footprint-from-known-ingredients-but-not-from-meat-or-fish", + "en:ecoscore-extended-data-computed", + "en:ecoscore-extended-data-less-precise-than-agribalyse", + "en:food-groups-1-known", + "en:food-groups-2-known", + "en:food-groups-3-unknown", + "en:nutrition-value-very-low-for-category-energy", + "en:nutrition-value-very-low-for-category-fat", + "en:nutrition-value-very-high-for-category-sugars", + "en:vegetarian-label-but-could-not-confirm-for-all-ingredients", + "en:ecoscore-origins-of-ingredients-origins-are-100-percent-unknown", + "en:ecoscore-production-system-no-label" + ], + "data_quality_warnings_tags": [ + "en:nutrition-value-very-low-for-category-energy", + "en:nutrition-value-very-low-for-category-fat", + "en:nutrition-value-very-high-for-category-sugars", + "en:vegetarian-label-but-could-not-confirm-for-all-ingredients", + "en:ecoscore-origins-of-ingredients-origins-are-100-percent-unknown", + "en:ecoscore-production-system-no-label" + ], + "data_sources": "App - yuka, Apps, App - Horizon", + "data_sources_tags": [ + "app-yuka", + "apps", + "app-horizon" + ], + "debug_param_sorted_langs": [ + "en" + ], + "ecoscore_data": { + "adjustments": { + "origins_of_ingredients": { + "aggregated_origins": [ + { + "epi_score": "0", + "origin": "en:unknown", + "percent": 100, + "transportation_score": null + } + ], + "epi_score": 0, + "epi_value": -5, + "origins_from_categories": [ + "en:unknown" + ], + "origins_from_origins_field": [ + "en:unknown" + ], + "transportation_score": 0, + "transportation_scores": { + "ad": 0, + "al": 0, + "va": 0, + "world": 0, + "xk": 0 + }, + "transportation_value": 0, + "transportation_values": { + "ad": 0, + "ua": 0, + "uk": 0, + "us": 0, + "va": 0, + "world": 0, + "xk": 0 + }, + "value": -5, + "values": { + "ad": -5, + "al": -5, + "at": -5, + "uk": -5, + "us": -5, + "va": -5, + "world": -5, + "xk": -5 + }, + "warning": "origins_are_100_percent_unknown" + }, + "packaging": { + "non_recyclable_and_non_biodegradable_materials": 2, + "packagings": [ + { + "ecoscore_material_score": 0, + "ecoscore_shape_ratio": 1, + "material": "en:plastic", + "non_recyclable_and_non_biodegradable": "maybe", + "shape": "en:packet" + }, + { + "ecoscore_material_score": 0, + "ecoscore_shape_ratio": 1, + "material": "en:plastic", + "non_recyclable_and_non_biodegradable": "maybe", + "shape": "en:packet" + } + ], + "score": -100, + "value": -15 + }, + "production_system": { + "labels": [], + "value": 0, + "warning": "no_label" + }, + "threatened_species": {} + }, + "agribalyse": { + "agribalyse_food_code": "4004", + "co2_agriculture": 0.82655583, + "co2_consumption": 0, + "co2_distribution": 0.019537154, + "co2_packaging": 0.28154442, + "co2_processing": 0.23156851, + "co2_total": 1.543669164, + "co2_transportation": 0.18446325, + "code": "4004", + "dqr": "2.45", + "ef_agriculture": 0.14029442, + "ef_consumption": 0, + "ef_distribution": 0.004831936, + "ef_packaging": 0.02370999, + "ef_processing": 0.038707917, + "ef_total": 0.223317319, + "ef_transportation": 0.015773056, + "is_beverage": 0, + "name_en": "Potato crisps", + "name_fr": "Chips de pommes de terre, standard", + "score": 87, + "version": "3.1" + }, + "grade": "b", + "grades": { + "ad": "b", + "al": "b", + "tr": "b", + "ua": "b", + "uk": "b", + "us": "b", + "va": "b", + "world": "b", + "xk": "b" + }, + "missing": { + "labels": 1, + "origins": 1 + }, + "missing_data_warning": 1, + "previous_data": { + "agribalyse": { + "agribalyse_food_code": "4004", + "co2_agriculture": 1.2992636, + "co2_consumption": 0, + "co2_distribution": 0.029120657, + "co2_packaging": 0.28581962, + "co2_processing": 0.39294234, + "co2_total": 2.2443641, + "co2_transportation": 0.23728203, + "code": "4004", + "dqr": "2.45", + "ef_agriculture": 0.18214682, + "ef_consumption": 0, + "ef_distribution": 0.0098990521, + "ef_packaging": 0.021558384, + "ef_processing": 0.057508389, + "ef_total": 0.29200269, + "ef_transportation": 0.020894187, + "is_beverage": 0, + "name_en": "Potato crisps", + "name_fr": "Chips de pommes de terre, standard", + "score": 78 + }, + "grade": "b", + "score": 63 + }, + "score": 67, + "scores": { + "ad": 67, + "al": 67, + "at": 67, + "va": 67, + "world": 67, + "xk": 67 + }, + "status": "known" + }, + "ecoscore_extended_data": { + "impact": { + "ef_single_score_log_stddev": 0.0664290643574977, + "likeliest_impacts": { + "Climate_change": 0.0835225930657116, + "EF_single_score": 0.0132996566234689 + }, + "likeliest_recipe": { + "en:Oak_smoked_sea_salti_yeast_extract": 0.103505496656251, + "en:e160c": 0.10350549665625, + "en:e330": 0.10350549665625, + "en:flavouring": 0.10350549665625, + "en:garlic_powder": 0.103505496656251, + "en:milk": 1.55847864453775, + "en:onion": 0.15510736429208, + "en:potato": 69.2208020730349, + "en:potato_starch": 10.5320407294931, + "en:rice_flour": 13.8595510001351, + "en:salt": 1.3345917157533, + "en:spice": 0.10350549665625, + "en:sugar": 10.2883618334396, + "en:sunflower_oil": 14.1645835312727, + "en:tomato_powder": 0.10350549665625, + "en:water": 6.24510964041154, + "en:yeast_powder": 0.103505496656251 + }, + "mass_ratio_uncharacterized": 0.0244618467395455, + "uncharacterized_ingredients": { + "impact": [ + "en:yeast-powder", + "en:flavouring", + "en:Oak smoked sea salti yeast extract", + "en:e160c", + "en:e330" + ], + "nutrition": [ + "en:flavouring", + "en:Oak smoked sea salti yeast extract" + ] + }, + "uncharacterized_ingredients_mass_proportion": { + "impact": 0.0244618467395455, + "nutrition": 0.0106506947223728 + }, + "uncharacterized_ingredients_ratio": { + "impact": 0.3125, + "nutrition": 0.125 + }, + "warnings": [ + "Fermentation agents are present in the product (en:yeast-powder). Carbohydrates and sugars mass balance will not be considered to estimate potential recipes", + "The product has a high number of impact uncharacterized ingredients: 31%" + ] + } + }, + "ecoscore_extended_data_version": "4", + "ecoscore_grade": "b", + "ecoscore_score": 67, + "ecoscore_tags": [ + "b" + ], + "editors": [ + "kyzh", + "tacite" + ], + "editors_tags": [ + "kiliweb", + "openfoodfacts-contributors", + "aleene", + "tacite-mass-editor", + "yuka.sY2b0xO6T85zoF3NwEKvlmBZVPXu-gnlBU3miFTQ-NeSIbDaMdUtu4fLGas", + "kyzh", + "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", + "ecoscore-impact-estimator", + "tacite", + "foodless", + "yuka.sY2b0xO6T85zoF3NwEKvllZnctbb-gn-LDr4mHzUyem0FYPXMO5by7b5NKg", + "swipe-studio", + "packbot" + ], + "emb_codes": "", + "emb_codes_20141016": "", + "emb_codes_orig": "", + "emb_codes_tags": [], + "entry_dates_tags": [ + "2015-06-03", + "2015-06", + "2015" + ], + "expiration_date": "11/05/2016", + "food_groups": "en:appetizers", + "food_groups_tags": [ + "en:salty-snacks", + "en:appetizers" + ], + "fruits-vegetables-nuts_100g_estimate": 0, + "generic_name": "", + "generic_name_en": "", + "generic_name_fr": "", + "generic_name_fr_debug_tags": [], + "id": "5060292302201", + "image_front_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", + "image_front_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", + "image_front_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", + "image_ingredients_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg", + "image_ingredients_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg", + "image_ingredients_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg", + "image_nutrition_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg", + "image_nutrition_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg", + "image_nutrition_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg", + "image_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", + "image_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", + "image_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", + "images": { + "1": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338177, + "uploader": "kyzh" + }, + "2": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338194, + "uploader": "kyzh" + }, + "3": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338203, + "uploader": "kyzh" + }, + "4": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338215, + "uploader": "kyzh" + }, + "5": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338229, + "uploader": "kyzh" + }, + "6": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338245, + "uploader": "kyzh" + }, + "7": { + "sizes": { + "100": { + "h": 43, + "w": 100 + }, + "400": { + "h": 171, + "w": 400 + }, + "full": { + "h": 846, + "w": 1974 + } + }, + "uploaded_t": "1508236270", + "uploader": "kiliweb" + }, + "8": { + "sizes": { + "100": { + "h": 100, + "w": 82 + }, + "400": { + "h": 400, + "w": 326 + }, + "full": { + "h": 1140, + "w": 930 + } + }, + "uploaded_t": 1620505759, + "uploader": "kiliweb" + }, + "9": { + "sizes": { + "100": { + "h": 56, + "w": 100 + }, + "400": { + "h": 225, + "w": 400 + }, + "full": { + "h": 569, + "w": 1011 + } + }, + "uploaded_t": 1656075071, + "uploader": "kiliweb" + }, + "front": { + "geometry": "1421x1825-0-95", + "imgid": "1", + "normalize": "false", + "rev": "9", + "sizes": { + "100": { + "h": 100, + "w": 78 + }, + "200": { + "h": 200, + "w": 156 + }, + "400": { + "h": 400, + "w": 311 + }, + "full": { + "h": 1825, + "w": 1421 + } + }, + "white_magic": "true" + }, + "front_en": { + "angle": 0, + "coordinates_image_size": "full", + "geometry": "0x0--1--1", + "imgid": "8", + "normalize": null, + "rev": "23", + "sizes": { + "100": { + "h": 100, + "w": 82 + }, + "200": { + "h": 200, + "w": 163 + }, + "400": { + "h": 400, + "w": 326 + }, + "full": { + "h": 1140, + "w": 930 + } + }, + "white_magic": null, + "x1": "-1", + "x2": "-1", + "y1": "-1", + "y2": "-1" + }, + "ingredients": { + "geometry": "1730x526-125-304", + "imgid": "5", + "normalize": "false", + "ocr": 1, + "orientation": "0", + "rev": "11", + "sizes": { + "100": { + "h": 30, + "w": 100 + }, + "200": { + "h": 61, + "w": 200 + }, + "400": { + "h": 122, + "w": 400 + }, + "full": { + "h": 526, + "w": 1730 + } + }, + "white_magic": "false" + }, + "ingredients_en": { + "geometry": "1730x526-125-304", + "imgid": "5", + "normalize": "false", + "ocr": 1, + "orientation": "0", + "rev": "11", + "sizes": { + "100": { + "h": 30, + "w": 100 + }, + "200": { + "h": 61, + "w": 200 + }, + "400": { + "h": 122, + "w": 400 + }, + "full": { + "h": 526, + "w": 1730 + } + }, + "white_magic": "false" + }, + "nutrition": { + "geometry": "1131x920-150-794", + "imgid": "3", + "normalize": "false", + "ocr": 1, + "orientation": "0", + "rev": "10", + "sizes": { + "100": { + "h": 81, + "w": 100 + }, + "200": { + "h": 163, + "w": 200 + }, + "400": { + "h": 325, + "w": 400 + }, + "full": { + "h": 920, + "w": 1131 + } + }, + "white_magic": "false" + }, + "nutrition_en": { + "angle": 0, + "coordinates_image_size": "full", + "geometry": "0x0--1--1", + "imgid": "9", + "normalize": null, + "rev": "32", + "sizes": { + "100": { + "h": 56, + "w": 100 + }, + "200": { + "h": 113, + "w": 200 + }, + "400": { + "h": 225, + "w": 400 + }, + "full": { + "h": 569, + "w": 1011 + } + }, + "white_magic": null, + "x1": "-1", + "x2": "-1", + "y1": "-1", + "y2": "-1" + } + }, + "informers_tags": [ + "kyzh", + "tacite", + "tacite-mass-editor", + "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", + "openfoodfacts-contributors", + "aleene" + ], + "ingredients": [ + { + "ciqual_food_code": "4003", + "id": "en:potato", + "percent": 54, + "percent_estimate": 54, + "percent_max": 54, + "percent_min": 54, + "processing": "en:dried", + "rank": 1, + "text": "potatoes", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "17440", + "from_palm_oil": "no", + "id": "en:sunflower-oil", + "percent_estimate": 28.75, + "percent_max": 46, + "percent_min": 11.5, + "rank": 2, + "text": "sunflower oil", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "has_sub_ingredients": "yes", + "id": "en:coating", + "percent_estimate": 8.625, + "percent_max": 33.3333333333333, + "percent_min": 0, + "rank": 3, + "text": "seasoning", + "vegan": "maybe", + "vegetarian": "maybe" + }, + { + "ciqual_food_code": "9520", + "id": "en:rice-flour", + "percent_estimate": 4.3125, + "percent_max": 17.25, + "percent_min": 0, + "rank": 4, + "text": "rice flour", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "en:potato-starch", + "percent_estimate": 4.3125, + "percent_max": 11.5, + "percent_min": 0, + "rank": 5, + "text": "potato starch", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "en:sugar", + "percent_estimate": 4.3125, + "percent_max": 8.7, + "percent_min": 0, + "text": "sugar", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "has_sub_ingredients": "yes", + "id": "en:whey-powder", + "percent_estimate": 2.15625, + "percent_max": 8.7, + "percent_min": 0, + "text": "whey powder", + "vegan": "no", + "vegetarian": "maybe" + }, + { + "ciqual_food_code": "11058", + "id": "en:salt", + "percent_estimate": 1.05, + "percent_max": 2.1, + "percent_min": 0, + "text": "salt", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "20034", + "id": "en:onion", + "percent_estimate": 0.553125, + "percent_max": 2.1, + "percent_min": 0, + "processing": "en:powder", + "text": "onion", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "en:yeast-powder", + "percent_estimate": 0.2765625, + "percent_max": 2.1, + "percent_min": 0, + "text": "yeast powder", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "11000", + "id": "en:garlic", + "percent_estimate": 0.13828125, + "percent_max": 2.1, + "percent_min": 0, + "processing": "en:powder", + "text": "garlic", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "20047", + "id": "en:tomato", + "percent_estimate": 0.0691406250000002, + "percent_max": 2.1, + "percent_min": 0, + "processing": "en:powder", + "text": "tomato", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "en:oak-smoked-sea-salti-yeast-extract", + "percent_estimate": 0.0345703124999996, + "percent_max": 2.1, + "percent_min": 0, + "text": "Oak smoked sea salti yeast extract" + }, + { + "id": "en:flavouring", + "percent_estimate": 0.0172851562499998, + "percent_max": 2.1, + "percent_min": 0, + "text": "flavourings", + "vegan": "maybe", + "vegetarian": "maybe" + }, + { + "id": "en:spice", + "percent_estimate": 0.00864257812500036, + "percent_max": 2.1, + "percent_min": 0, + "text": "spices", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "has_sub_ingredients": "yes", + "id": "en:acid", + "percent_estimate": 0.00432128906250018, + "percent_max": 2.1, + "percent_min": 0, + "text": "acid" + }, + { + "has_sub_ingredients": "yes", + "id": "en:colour", + "percent_estimate": 0.00432128906249929, + "percent_max": 2.1, + "percent_min": 0, + "text": "colour" + }, + { + "id": "en:milk", + "percent_estimate": 2.15625, + "percent_max": 8.7, + "percent_min": 0, + "text": "milk", + "vegan": "no", + "vegetarian": "yes" + }, + { + "id": "en:e330", + "percent_estimate": 0.00432128906250018, + "percent_max": 2.1, + "percent_min": 0, + "text": "citric acid", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "en:e160c", + "percent_estimate": 0.00432128906249929, + "percent_max": 2.1, + "percent_min": 0, + "text": "paprika extract", + "vegan": "yes", + "vegetarian": "yes" + } + ], + "ingredients_analysis": { + "en:non-vegan": [ + "en:whey-powder", + "en:milk" + ], + "en:palm-oil-content-unknown": [ + "en:oak-smoked-sea-salti-yeast-extract" + ], + "en:vegan-status-unknown": [ + "en:oak-smoked-sea-salti-yeast-extract" + ], + "en:vegetarian-status-unknown": [ + "en:oak-smoked-sea-salti-yeast-extract" + ] + }, + "ingredients_analysis_tags": [ + "en:palm-oil-free", + "en:non-vegan", + "en:vegetarian" + ], + "ingredients_debug": [ + "54% dried potatoes", + ",", + null, + null, + null, + " sunflower oil", + ",", + null, + null, + null, + " seasoning ", + "(", + "(", + null, + null, + "sugar", + ",", + null, + null, + null, + " whey powder ", + "[", + "[", + null, + null, + "milk]", + ",", + null, + null, + null, + " salt", + ",", + null, + null, + null, + " onion powder", + ",", + null, + null, + null, + " yeast powder", + ",", + null, + null, + null, + " garlic powder", + ",", + null, + null, + null, + " tomato powder", + ",", + null, + null, + null, + " Oak smoked sea salti yeast extract", + ",", + null, + null, + null, + " flavourings", + ",", + null, + null, + null, + " spices", + ",", + null, + null, + null, + " acid", + ":", + ":", + null, + null, + " citric acid", + ",", + null, + null, + null, + " colour", + ":", + ":", + null, + null, + " paprika extract)", + ",", + null, + null, + null, + " rice flour", + ",", + null, + null, + null, + " potato starch." + ], + "ingredients_from_or_that_may_be_from_palm_oil_n": 0, + "ingredients_from_palm_oil_n": 0, + "ingredients_from_palm_oil_tags": [], + "ingredients_hierarchy": [ + "en:potato", + "en:vegetable", + "en:root-vegetable", + "en:tuber", + "en:sunflower-oil", + "en:oil-and-fat", + "en:spice", + "en:condiment", + "en:acid", + "en:colour", + "en:milk", + "en:e330", + "en:e160c" + ], + "ingredients_ids_debug": [ + "54-dried-potatoes", + "sunflower-oil", + "seasoning", + "sugar", + "colour", + "paprika-extract", + "rice-flour", + "potato-starch" + ], + "ingredients_n": 20, + "ingredients_n_tags": [ + "20", + "11-20" + ], + "ingredients_original_tags": [ + "en:potato", + "en:sunflower-oil", + "en:coating", + "en:rice-flour", + "en:potato-starch", + "en:sugar", + "en:whey-powder", + "en:salt", + "en:onion", + "en:yeast-powder", + "en:garlic", + "en:tomato", + "en:oak-smoked-sea-salti-yeast-extract", + "en:flavouring", + "en:spice", + "en:acid", + "en:colour", + "en:milk", + "en:e330", + "en:e160c" + ], + "ingredients_percent_analysis": 1, + "ingredients_tags": [ + "en:potato", + "en:vegetable", + "en:root-vegetable", + "en:milk", + "en:e330", + "en:e160c" + ], + "ingredients_text": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_debug": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_debug_tags": [], + "ingredients_text_en": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_fr": "", + "ingredients_text_fr_debug_tags": [], + "ingredients_text_with_allergens": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_with_allergens_en": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_that_may_be_from_palm_oil_n": 0, + "ingredients_that_may_be_from_palm_oil_tags": [], + "ingredients_with_specified_percent_n": 1, + "ingredients_with_specified_percent_sum": 54, + "ingredients_with_unspecified_percent_n": 15, + "ingredients_with_unspecified_percent_sum": 46, + "ingredients_without_ciqual_codes": [ + "en:e160c", + "en:e330", + "en:flavouring", + "en:milk", + "en:oak-smoked-sea-salti-yeast-extract", + "en:potato-starch", + "en:spice", + "en:sugar", + "en:yeast-powder" + ], + "ingredients_without_ciqual_codes_n": 9, + "interface_version_created": "20120622", + "interface_version_modified": "20190830", + "known_ingredients_n": 36, + "labels": "Vegetarian, No preservatives, No artificial anything", + "labels_hierarchy": [ + "en:vegetarian", + "en:no-preservatives", + "en:No artificial anything" + ], + "labels_lc": "en", + "labels_old": "Vegetarian,No preservatives,No artificial anything", + "labels_tags": [ + "en:vegetarian", + "en:no-preservatives", + "en:no-artificial-anything" + ], + "lang": "en", + "languages": { + "en:english": 5 + }, + "languages_codes": { + "en": 5 + }, + "languages_hierarchy": [ + "en:english" + ], + "languages_tags": [ + "en:english", + "en:1" + ], + "last_edit_dates_tags": [ + "2023-03-24", + "2023-03", + "2023" + ], + "last_editor": "aleene", + "last_image_dates_tags": [ + "2022-06-24", + "2022-06", + "2022" + ], + "last_image_t": 1656075071, + "last_modified_by": "aleene", + "last_modified_t": 1679645675, + "lc": "en", + "link": "", + "main_countries_tags": [], + "manufacturing_places": "European Union", + "manufacturing_places_tags": [ + "european-union" + ], + "max_imgid": "9", + "minerals_prev_tags": [], + "minerals_tags": [], + "misc_tags": [ + "en:nutriscore-computed", + "en:nutrition-fruits-vegetables-nuts-from-category", + "en:nutrition-fruits-vegetables-nuts-from-category-en-potato-crisps-in-sunflower-oil", + "en:nutrition-fruits-vegetables-legumes-from-category", + "en:nutrition-fruits-vegetables-legumes-from-category-en-potato-crisps-in-sunflower-oil", + "en:nutriscore-2021-same-as-2023", + "en:nutriscore-2021-d-2023-d", + "en:packagings-number-of-components-2", + "en:packagings-not-complete", + "en:packagings-not-empty-but-not-complete", + "en:packagings-not-empty", + "en:ecoscore-extended-data-computed", + "en:ecoscore-extended-data-version-4", + "en:ecoscore-missing-data-warning", + "en:ecoscore-missing-data-labels", + "en:ecoscore-missing-data-origins", + "en:ecoscore-computed", + "en:ecoscore-changed" + ], + "no_nutrition_data": "", + "nova_group": 4, + "nova_group_debug": "", + "nova_groups": "4", + "nova_groups_markers": { + "3": [ + [ + "categories", + "en:salty-snacks" + ], + [ + "ingredients", + "en:salt" + ], + [ + "ingredients", + "en:starch" + ], + [ + "ingredients", + "en:sugar" + ], + [ + "ingredients", + "en:vegetable-oil" + ] + ], + "4": [ + [ + "additives", + "en:e160c" + ], + [ + "ingredients", + "en:colour" + ], + [ + "ingredients", + "en:flavouring" + ], + [ + "ingredients", + "en:whey" + ] + ] + }, + "nova_groups_tags": [ + "en:4-ultra-processed-food-and-drink-products" + ], + "nucleotides_prev_tags": [], + "nucleotides_tags": [], + "nutrient_levels": { + "fat": "moderate", + "salt": "high", + "saturated-fat": "low", + "sugars": "moderate" + }, + "nutrient_levels_tags": [ + "en:fat-in-moderate-quantity", + "en:saturated-fat-in-low-quantity", + "en:sugars-in-moderate-quantity", + "en:salt-in-high-quantity" + ], + "nutriments": { + "carbohydrates": 62, + "carbohydrates_100g": 62, + "carbohydrates_serving": 14.3, + "carbohydrates_unit": "g", + "carbohydrates_value": 62, + "carbon-footprint-from-known-ingredients_100g": 32.4, + "carbon-footprint-from-known-ingredients_product": 7.45, + "salt": 2.1, + "salt_100g": 2.1, + "salt_serving": 0.483, + "salt_unit": "g", + "salt_value": 2.1, + "saturated-fat": 1.4, + "saturated-fat_100g": 1.4, + "saturated-fat_serving": 0.322, + "saturated-fat_unit": "g", + "saturated-fat_value": 1.4, + "sodium": 0.84, + "sodium_100g": 0.84, + "sodium_serving": 0.193, + "sodium_unit": "g", + "sodium_value": 0.84, + "sugars": 8.7, + "sugars_100g": 8.7, + "sugars_serving": 2, + "sugars_unit": "g", + "sugars_value": 8.7 + }, + "nutriscore": { + "2021": { + "category_available": 1, + "data": { + "energy": 1759, + "energy_points": 5, + "energy_value": 1759, + "fiber": 3.9, + "fiber_points": 4, + "sugars": 8.7, + "sugars_points": 1, + "sugars_value": 8.7 + }, + "grade": "d", + "nutrients_available": 1, + "nutriscore_applicable": 1, + "nutriscore_computed": 1, + "score": 12 + }, + "2023": { + "category_available": 1, + "data": { + "count_proteins": 0, + "count_proteins_reason": "negative_points_more_than_11", + "energy": 1759, + "is_red_meat_product": 0, + "is_water": 0, + "negative_nutrients": [ + "energy", + "sugars", + "saturated_fat", + "salt", + "non_nutritive_sweeteners" + ], + "negative_points": 18, + "positive_nutrients": [ + "fruits_vegetables_legumes", + "fiber" + ], + "positive_points": 1, + "proteins": 5.7, + "proteins_points": 2, + "salt": 2.1, + "salt_points": 10, + "saturated_fat": 1.4, + "saturated_fat_points": 1, + "sugars": 8.7, + "sugars_points": 2 + }, + "grade": "d", + "nutrients_available": 1, + "nutriscore_applicable": 1, + "nutriscore_computed": 1, + "score": 17 + } + }, + "nutriscore_2021_tags": [ + "d" + ], + "nutriscore_2023_tags": [ + "d" + ], + "nutriscore_data": { + "energy": 1759, + "energy_points": 5, + "energy_value": 1759, + "fiber": 3.9, + "fiber_points": 4, + "fiber_value": 3.9, + "fruits_vegetables_nuts_colza_walnut_olive_oils": "0", + "fruits_vegetables_nuts_colza_walnut_olive_oils_points": 0, + "fruits_vegetables_nuts_colza_walnut_olive_oils_value": 0, + "grade": "d", + "is_beverage": 0, + "is_cheese": 0, + "is_fat": 0, + "is_water": 0, + "negative_points": 16, + "positive_points": 4, + "proteins": 5.7, + "proteins_points": 3, + "proteins_value": 5.7, + "saturated_fat": 1.4, + "saturated_fat_points": 1, + "saturated_fat_value": 1.4, + "score": 12, + "sodium": 840, + "sodium_points": 9, + "sodium_value": 840, + "sugars": 8.7, + "sugars_points": 1, + "sugars_value": 8.7 + }, + "nutriscore_grade": "d", + "nutriscore_score": 12, + "nutriscore_score_opposite": -12, + "nutriscore_tags": [ + "d" + ], + "nutriscore_version": "2021", + "nutrition_data": "on", + "nutrition_data_per": "100g", + "nutrition_data_prepared": "", + "nutrition_data_prepared_per": "100g", + "nutrition_grade_fr": "d", + "nutrition_grades": "d", + "nutrition_grades_tags": [ + "d" + ], + "nutrition_score_beverage": 0, + "nutrition_score_debug": "", + "obsolete": "", + "obsolete_since_date": "", + "origin": "", + "origin_en": "", + "origins": "", + "origins_hierarchy": [], + "origins_lc": "en", + "origins_old": "", + "origins_tags": [], + "other_nutritional_substances_tags": [], + "packaging": "Plastic,Mixed plastic film-packet", + "packaging_hierarchy": [ + "en:plastic", + "en:Mixed plastic film-packet" + ], + "packaging_lc": "en", + "packaging_materials_tags": [ + "en:plastic" + ], + "packaging_old": "Plastic, Mixed plastic-packet", + "packaging_old_before_taxonomization": "Plastic, en:mixed plastic-packet", + "packaging_recycling_tags": [], + "packaging_shapes_tags": [ + "en:packet" + ], + "packaging_tags": [ + "en:plastic", + "en:mixed-plastic-film-packet" + ], + "packaging_text": "", + "packaging_text_en": "", + "packagings": [ + { + "material": "en:plastic", + "shape": "en:packet" + }, + { + "material": "en:plastic", + "shape": "en:packet" + } + ], + "packagings_complete": 0, + "packagings_materials": { + "all": {}, + "en:plastic": {} + }, + "packagings_n": 2, + "photographers_tags": [ + "kyzh", + "kiliweb" + ], + "pnns_groups_1": "Salty snacks", + "pnns_groups_1_tags": [ + "salty-snacks", + "known" + ], + "pnns_groups_2": "Appetizers", + "pnns_groups_2_tags": [ + "appetizers", + "known" + ], + "popularity_key": 21900000007, + "popularity_tags": [ + "bottom-25-percent-scans-2019", + "bottom-20-percent-scans-2019", + "top-100000-hk-scans-2022", + "top-10000-us-scans-2022", + "top-50000-us-scans-2022", + "top-100000-us-scans-2022" + ], + "product_name": "Barbeque Potato Chips", + "product_name_en": "Barbeque Potato Chips", + "product_name_fr": "", + "product_name_fr_debug_tags": [], + "product_quantity": "23", + "purchase_places": "", + "purchase_places_tags": [], + "quantity": "23 g", + "removed_countries_tags": [], + "rev": 33, + "scans_n": 6, + "selected_images": { + "front": { + "display": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg" + }, + "small": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg" + }, + "thumb": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg" + } + }, + "ingredients": { + "display": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg" + }, + "small": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg" + }, + "thumb": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg" + } + }, + "nutrition": { + "display": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg" + }, + "small": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg" + }, + "thumb": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg" + } + } + }, + "serving_quantity": "23", + "serving_size": "23 g", + "sortkey": 1535456524, + "states": "en:to-be-completed, en:nutrition-facts-completed, en:ingredients-completed, en:expiration-date-completed, en:packaging-code-to-be-completed, en:characteristics-to-be-completed, en:origins-to-be-completed, en:categories-completed, en:brands-completed, en:packaging-completed, en:quantity-completed, en:product-name-completed, en:photos-to-be-validated, en:packaging-photo-to-be-selected, en:nutrition-photo-selected, en:ingredients-photo-selected, en:front-photo-selected, en:photos-uploaded", + "states_hierarchy": [ + "en:to-be-completed", + "en:nutrition-facts-completed", + "en:ingredients-completed", + "en:ingredients-photo-selected", + "en:front-photo-selected", + "en:photos-uploaded" + ], + "states_tags": [ + "en:to-be-completed", + "en:nutrition-facts-completed", + "en:ingredients-completed", + "en:ingredients-photo-selected", + "en:front-photo-selected", + "en:photos-uploaded" + ], + "stores": "", + "stores_tags": [], + "teams": "swipe-studio", + "teams_tags": [ + "swipe-studio" + ], + "traces": "", + "traces_from_ingredients": "", + "traces_from_user": "(en) ", + "traces_hierarchy": [], + "traces_lc": "en", + "traces_tags": [], + "unique_scans_n": 4, + "unknown_ingredients_n": 1, + "unknown_nutrients_tags": [], + "update_key": "eco20231129", + "vitamins_prev_tags": [], + "vitamins_tags": [], + "weighers_tags": [] + }, + "status": 1, + "status_verbose": "product found" +} + + + Non-default options: +# settings = {"genpk":false,"drop":true} + +*/ \ No newline at end of file diff --git a/test/single_test.js b/test/single_test.js index 85c7316..00b95d9 100644 --- a/test/single_test.js +++ b/test/single_test.js @@ -24,7 +24,9 @@ try { const sp = file.lastIndexOf('/'); if( 0 < sp ) key = key.substring(sp+1); + let t1 = Date.now(); output = fromJSON(input, key); + console.log("JSON Time = "+(Date.now()-t1)); if( 0 <= ofile.indexOf('/experimental/') ) fs.writeFileSync(ofile+'.qsql', output); else { @@ -32,11 +34,14 @@ try { console.log(output); } input = output; - } + } + let t1 = Date.now(); if( 0 <= file.indexOf('/erd/') ) { output = JSON.stringify(new quicksql(input).toERD(), null, 4); } else output = new quicksql(input).getDDL(); + + console.log("DDL Time = "+(Date.now()-t1)); if( 0 <= ofile.indexOf('/experimental/') ) fs.writeFileSync(ofile+'.sql', output); From de70a2d850affeaca1206382e911a862146a6add Mon Sep 17 00:00:00 2001 From: Vadim Tropashko Date: Wed, 31 Jan 2024 09:27:00 -0800 Subject: [PATCH 16/22] removed WIP generated files --- test/experimental/food_product.qsql | 4151 ---------------- test/experimental/food_product.sql | 7044 --------------------------- 2 files changed, 11195 deletions(-) delete mode 100644 test/experimental/food_product.qsql delete mode 100644 test/experimental/food_product.sql diff --git a/test/experimental/food_product.qsql b/test/experimental/food_product.qsql deleted file mode 100644 index e993be7..0000000 --- a/test/experimental/food_product.qsql +++ /dev/null @@ -1,4151 +0,0 @@ - -food_product /insert 1 - code - product /insert 1 - _id - _keywords - additives_n num - additives_old_n num - additives_old_tags - additives_original_tags - additives_prev_original_tags - additives_tags - allergens - allergens_from_ingredients - allergens_from_user - allergens_hierarchy - allergens_lc - allergens_tags - brands - brands_tags - carbon_footprint_from_known_ingredients_debug - carbon_footprint_percent_of_known_ingredients num - categories - categories_hierarchy - categories_lc - categories_old - categories_properties /insert 1 - agribalyse_food_code:en - ciqual_food_code:en - categories_properties_tags - categories_tags - category_properties /insert 1 - ciqual_food_name:en - ciqual_food_name:fr - ciqual_food_name_tags - code - codes_tags - compared_to_category - complete num - completeness num - correctors_tags - countries - countries_hierarchy - countries_lc - countries_tags - created_t num - creator - data_quality_info_tags - data_quality_tags - data_quality_warnings_tags - data_sources - data_sources_tags - debug_param_sorted_langs - ecoscore_data /insert 1 - origins_of_ingredients /insert 1 - aggregated_origins /insert 1 - epi_score - origin - percent num - transportation_score - epi_score num - epi_value num - origins_from_categories - origins_from_origins_field - transportation_score num - transportation_scores /insert 1 - ad num - al num - va num - world num - xk num - transportation_value num - transportation_values /insert 1 - ad num - ua num - uk num - us num - va num - world num - xk num - value num - values /insert 1 - ad num - al num - at num - uk num - us num - va num - world num - xk num - warning - packaging /insert 1 - non_recyclable_and_non_biodegradable_materials num - >packagings1 /insert 2 - ecoscore_material_score num - ecoscore_shape_ratio num - material - non_recyclable_and_non_biodegradable - shape - score num - value num - production_system /insert 1 - value num - warning - agribalyse1 /insert 1 - agribalyse_food_code - co2_agriculture num - co2_consumption num - co2_distribution num - co2_packaging num - co2_processing num - co2_total num - co2_transportation num - code - dqr - ef_agriculture num - ef_consumption num - ef_distribution num - ef_packaging num - ef_processing num - ef_total num - ef_transportation num - is_beverage num - name_en - name_fr - score num - version - grade - grades /insert 1 - ad - al - tr - ua - uk - us - va - world - xk - missing /insert 1 - labels num - origins num - missing_data_warning num - previous_data /insert 1 - agribalyse2 /insert 1 - agribalyse_food_code - co2_agriculture num - co2_consumption num - co2_distribution num - co2_packaging num - co2_processing num - co2_total num - co2_transportation num - code - dqr - ef_agriculture num - ef_consumption num - ef_distribution num - ef_packaging num - ef_processing num - ef_total num - ef_transportation num - is_beverage num - name_en - name_fr - score num - grade - score num - score num - scores /insert 1 - ad num - al num - at num - va num - world num - xk num - status - impact /insert 1 - ef_single_score_log_stddev num - likeliest_impacts /insert 1 - Climate_change num - EF_single_score num - likeliest_recipe /insert 1 - en:Oak_smoked_sea_salti_yeast_extract num - en:e160c num - en:e330 num - en:flavouring num - en:garlic_powder num - en:milk num - en:onion num - en:potato num - en:potato_starch num - en:rice_flour num - en:salt num - en:spice num - en:sugar num - en:sunflower_oil num - en:tomato_powder num - en:water num - en:yeast_powder num - mass_ratio_uncharacterized num - impact - nutrition - uncharacterized_ingredients_mass_proportion /insert 1 - impact num - nutrition num - uncharacterized_ingredients_ratio /insert 1 - impact num - nutrition num - warnings - ecoscore_extended_data_version - ecoscore_grade - ecoscore_score num - ecoscore_tags - editors - editors_tags - emb_codes - emb_codes_20141016 - emb_codes_orig - entry_dates_tags - expiration_date - food_groups - food_groups_tags - fruits-vegetables-nuts_100g_estimate num - generic_name - generic_name_en - generic_name_fr - id vc32 /pk - image_front_small_url - image_front_thumb_url - image_front_url - image_ingredients_small_url - image_ingredients_thumb_url - image_ingredients_url - image_nutrition_small_url - image_nutrition_thumb_url - image_nutrition_url - image_small_url - image_thumb_url - image_url - front /insert 1 - geometry - imgid - normalize - rev - >full /insert 15 - h num - w num - white_magic - front_en /insert 1 - angle num - coordinates_image_size - geometry - imgid - normalize - rev - >full /insert 15 - h num - w num - white_magic - x1 - x2 - y1 - y2 - ingredients1 /insert 1 - geometry - imgid - normalize - ocr num - orientation - rev - >full /insert 15 - h num - w num - white_magic - ingredients_en /insert 1 - geometry - imgid - normalize - ocr num - orientation - rev - >full /insert 15 - h num - w num - white_magic - nutrition /insert 1 - geometry - imgid - normalize - ocr num - orientation - rev - >full /insert 15 - h num - w num - white_magic - nutrition_en /insert 1 - angle num - coordinates_image_size - geometry - imgid - normalize - rev - >full /insert 15 - h num - w num - white_magic - x1 - x2 - y1 - y2 - informers_tags - ingredients2 /insert 20 - ciqual_food_code - id vc32 /pk - percent num - percent_estimate num - percent_max num - percent_min num - processing - rank num - text - vegan - vegetarian - en:non-vegan - en:palm-oil-content-unknown - en:vegan-status-unknown - en:vegetarian-status-unknown - ingredients_analysis_tags - ingredients_debug - ingredients_from_or_that_may_be_from_palm_oil_n num - ingredients_from_palm_oil_n num - ingredients_hierarchy - ingredients_ids_debug - ingredients_n num - ingredients_n_tags - ingredients_original_tags - ingredients_percent_analysis num - ingredients_tags - ingredients_text - ingredients_text_debug - ingredients_text_en - ingredients_text_fr - ingredients_text_with_allergens - ingredients_text_with_allergens_en - ingredients_that_may_be_from_palm_oil_n num - ingredients_with_specified_percent_n num - ingredients_with_specified_percent_sum num - ingredients_with_unspecified_percent_n num - ingredients_with_unspecified_percent_sum num - ingredients_without_ciqual_codes - ingredients_without_ciqual_codes_n num - interface_version_created - interface_version_modified - known_ingredients_n num - labels - labels_hierarchy - labels_lc - labels_old - labels_tags - lang - languages /insert 1 - en:english num - languages_codes /insert 1 - en num - languages_hierarchy - languages_tags - last_edit_dates_tags - last_editor - last_image_dates_tags - last_image_t num - last_modified_by - last_modified_t num - lc - link - manufacturing_places - manufacturing_places_tags - max_imgid - misc_tags - no_nutrition_data - nova_group num - nova_group_debug - nova_groups - nova_groups_tags - nutrient_levels /insert 1 - fat - salt - saturated-fat - sugars - nutrient_levels_tags - nutriments /insert 1 - carbohydrates num - carbohydrates_100g num - carbohydrates_serving num - carbohydrates_unit - carbohydrates_value num - carbon-footprint-from-known-ingredients_100g num - carbon-footprint-from-known-ingredients_product num - salt num - salt_100g num - salt_serving num - salt_unit - salt_value num - saturated-fat num - saturated-fat_100g num - saturated-fat_serving num - saturated-fat_unit - saturated-fat_value num - sodium num - sodium_100g num - sodium_serving num - sodium_unit - sodium_value num - sugars num - sugars_100g num - sugars_serving num - sugars_unit - sugars_value num - nutriscore_2021_tags - nutriscore_2023_tags - nutriscore_data /insert 1 - energy num - energy_points num - energy_value num - fiber num - fiber_points num - fiber_value num - fruits_vegetables_nuts_colza_walnut_olive_oils - fruits_vegetables_nuts_colza_walnut_olive_oils_points num - fruits_vegetables_nuts_colza_walnut_olive_oils_value num - grade - is_beverage num - is_cheese num - is_fat num - is_water num - negative_points num - positive_points num - proteins num - proteins_points num - proteins_value num - saturated_fat num - saturated_fat_points num - saturated_fat_value num - score num - sodium num - sodium_points num - sodium_value num - sugars num - sugars_points num - sugars_value num - nutriscore_grade - nutriscore_score num - nutriscore_score_opposite num - nutriscore_tags - nutriscore_version - nutrition_data - nutrition_data_per - nutrition_data_prepared - nutrition_data_prepared_per - nutrition_grade_fr - nutrition_grades - nutrition_grades_tags - nutrition_score_beverage num - nutrition_score_debug - obsolete - obsolete_since_date - origin - origin_en - origins - origins_lc - origins_old - packaging - packaging_hierarchy - packaging_lc - packaging_materials_tags - packaging_old - packaging_old_before_taxonomization - packaging_shapes_tags - packaging_tags - packaging_text - packaging_text_en - >packagings2 /insert 2 - material - shape - packagings_complete num - packagings_n num - photographers_tags - pnns_groups_1 - pnns_groups_1_tags - pnns_groups_2 - pnns_groups_2_tags - popularity_key num - popularity_tags - product_name - product_name_en - product_name_fr - product_quantity - purchase_places - quantity - rev num - scans_n num - display /insert 3 - en - small /insert 3 - en - thumb /insert 3 - en - display /insert 3 - en - small /insert 3 - en - thumb /insert 3 - en - display /insert 3 - en - small /insert 3 - en - thumb /insert 3 - en - serving_quantity - serving_size - sortkey num - states - states_hierarchy - states_tags - stores - teams - teams_tags - traces - traces_from_ingredients - traces_from_user - traces_lc - unique_scans_n num - unknown_ingredients_n num - update_key - status num - status_verbose - -#settings = { genpk: false, drop: true } - -#flattened = -{ - "_keywords": [ - { - "0": "and", - "1": "anything", - "2": "appetizer", - "3": "artificial", - "4": "barbeque", - "5": "beverage", - "6": "potatoe", - "7": "preservative", - "8": "salty", - "9": "snack", - "10": "sunflower", - "11": "vegetarian", - "_id": "5060292302201" - } - ], - "added_countries_tags": [], - "additives_debug_tags": [], - "additives_old_tags": [ - { - "0": "en:e330", - "1": "en:e160c", - "_id": "5060292302201" - } - ], - "additives_original_tags": [ - { - "0": "en:e330", - "1": "en:e160c", - "_id": "5060292302201" - } - ], - "additives_prev_original_tags": [ - { - "0": "en:e330", - "1": "en:e160c", - "_id": "5060292302201" - } - ], - "additives_tags": [ - { - "0": "en:e160c", - "1": "en:e330", - "_id": "5060292302201" - } - ], - "allergens_hierarchy": [ - { - "0": "en:milk", - "_id": "5060292302201" - } - ], - "allergens_tags": [ - { - "0": "en:milk", - "_id": "5060292302201" - } - ], - "amino_acids_prev_tags": [], - "amino_acids_tags": [], - "brands_tags": [ - { - "0": "popchips", - "_id": "5060292302201" - } - ], - "categories_hierarchy": [ - { - "0": "en:plant-based-foods-and-beverages", - "1": "en:plant-based-foods", - "2": "en:snacks", - "3": "en:cereals-and-potatoes", - "4": "en:salty-snacks", - "5": "en:appetizers", - "6": "en:chips-and-fries", - "7": "en:crisps", - "8": "en:potato-crisps", - "9": "en:potato-crisps-in-sunflower-oil", - "_id": "5060292302201" - } - ], - "categories_properties": [ - { - "agribalyse_food_code:en": "4004", - "ciqual_food_code:en": "4004", - "_id": "5060292302201" - } - ], - "categories_properties_tags": [ - { - "0": "all-products", - "1": "categories-known", - "2": "agribalyse-food-code-4004", - "3": "agribalyse-food-code-known", - "4": "agribalyse-proxy-food-code-unknown", - "5": "ciqual-food-code-4004", - "6": "ciqual-food-code-known", - "7": "agribalyse-known", - "8": "agribalyse-4004", - "_id": "5060292302201" - } - ], - "categories_tags": [ - { - "0": "en:plant-based-foods-and-beverages", - "1": "en:plant-based-foods", - "2": "en:snacks", - "3": "en:cereals-and-potatoes", - "4": "en:salty-snacks", - "5": "en:appetizers", - "6": "en:chips-and-fries", - "7": "en:crisps", - "8": "en:potato-crisps", - "9": "en:potato-crisps-in-sunflower-oil", - "_id": "5060292302201" - } - ], - "category_properties": [ - { - "ciqual_food_name:en": "Potato crisps", - "ciqual_food_name:fr": "Chips de pommes de terre, standard", - "_id": "5060292302201" - } - ], - "checkers_tags": [], - "ciqual_food_name_tags": [ - { - "0": "potato-crisps", - "_id": "5060292302201" - } - ], - "cities_tags": [], - "codes_tags": [ - { - "0": "code-13", - "1": "5060292302xxx", - "2": "506029230xxxx", - "3": "50602923xxxxx", - "4": "5060292xxxxxx", - "5": "506029xxxxxxx", - "6": "50602xxxxxxxx", - "7": "5060xxxxxxxxx", - "8": "506xxxxxxxxxx", - "9": "50xxxxxxxxxxx", - "10": "5xxxxxxxxxxxx", - "_id": "5060292302201" - } - ], - "correctors_tags": [ - { - "0": "tacite", - "1": "tacite-mass-editor", - "2": "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", - "3": "openfoodfacts-contributors", - "4": "swipe-studio", - "5": "yuka.sY2b0xO6T85zoF3NwEKvllZnctbb-gn-LDr4mHzUyem0FYPXMO5by7b5NKg", - "6": "kiliweb", - "7": "packbot", - "8": "foodless", - "9": "yuka.sY2b0xO6T85zoF3NwEKvlmBZVPXu-gnlBU3miFTQ-NeSIbDaMdUtu4fLGas", - "10": "aleene", - "_id": "5060292302201" - } - ], - "countries_hierarchy": [ - { - "0": "en:france", - "1": "en:united-kingdom", - "_id": "5060292302201" - } - ], - "countries_tags": [ - { - "0": "en:france", - "1": "en:united-kingdom", - "_id": "5060292302201" - } - ], - "data_quality_bugs_tags": [], - "data_quality_errors_tags": [], - "data_quality_info_tags": [ - { - "0": "en:packaging-data-incomplete", - "1": "en:ingredients-percent-analysis-ok", - "2": "en:carbon-footprint-from-known-ingredients-but-not-from-meat-or-fish", - "3": "en:ecoscore-extended-data-computed", - "4": "en:ecoscore-extended-data-less-precise-than-agribalyse", - "5": "en:food-groups-1-known", - "6": "en:food-groups-2-known", - "7": "en:food-groups-3-unknown", - "_id": "5060292302201" - } - ], - "data_quality_tags": [ - { - "0": "en:packaging-data-incomplete", - "1": "en:ingredients-percent-analysis-ok", - "2": "en:carbon-footprint-from-known-ingredients-but-not-from-meat-or-fish", - "3": "en:ecoscore-extended-data-computed", - "4": "en:ecoscore-extended-data-less-precise-than-agribalyse", - "5": "en:food-groups-1-known", - "6": "en:food-groups-2-known", - "7": "en:food-groups-3-unknown", - "8": "en:nutrition-value-very-low-for-category-energy", - "9": "en:nutrition-value-very-low-for-category-fat", - "10": "en:nutrition-value-very-high-for-category-sugars", - "11": "en:vegetarian-label-but-could-not-confirm-for-all-ingredients", - "12": "en:ecoscore-origins-of-ingredients-origins-are-100-percent-unknown", - "13": "en:ecoscore-production-system-no-label", - "_id": "5060292302201" - } - ], - "data_quality_warnings_tags": [ - { - "0": "en:nutrition-value-very-low-for-category-energy", - "1": "en:nutrition-value-very-low-for-category-fat", - "2": "en:nutrition-value-very-high-for-category-sugars", - "3": "en:vegetarian-label-but-could-not-confirm-for-all-ingredients", - "4": "en:ecoscore-origins-of-ingredients-origins-are-100-percent-unknown", - "5": "en:ecoscore-production-system-no-label", - "_id": "5060292302201" - } - ], - "data_sources_tags": [ - { - "0": "app-yuka", - "1": "apps", - "2": "app-horizon", - "_id": "5060292302201" - } - ], - "debug_param_sorted_langs": [ - { - "0": "en", - "_id": "5060292302201" - } - ], - "aggregated_origins": [ - { - "epi_score": "0", - "origin": "en:unknown", - "percent": 100, - "transportation_score": null, - "_id": "5060292302201" - } - ], - "origins_from_categories": [ - { - "0": "en:unknown", - "_id": "5060292302201" - } - ], - "origins_from_origins_field": [ - { - "0": "en:unknown", - "_id": "5060292302201" - } - ], - "transportation_scores": [ - { - "ad": 0, - "al": 0, - "va": 0, - "world": 0, - "xk": 0, - "_id": "5060292302201" - } - ], - "transportation_values": [ - { - "ad": 0, - "ua": 0, - "uk": 0, - "us": 0, - "va": 0, - "world": 0, - "xk": 0, - "_id": "5060292302201" - } - ], - "values": [ - { - "ad": -5, - "al": -5, - "at": -5, - "uk": -5, - "us": -5, - "va": -5, - "world": -5, - "xk": -5, - "_id": "5060292302201" - } - ], - "origins_of_ingredients": [ - { - "epi_score": 0, - "epi_value": -5, - "transportation_score": 0, - "transportation_value": 0, - "value": -5, - "warning": "origins_are_100_percent_unknown", - "_id": "5060292302201" - } - ], - "packaging_packagings": [ - { - "packaging_id": "5060292302201", - "packagings1_id": 1 - }, - { - "packaging_id": "5060292302201", - "packagings1_id": 2 - } - ], - "packagings1": [ - { - "ecoscore_material_score": 0, - "ecoscore_shape_ratio": 1, - "material": "en:plastic", - "non_recyclable_and_non_biodegradable": "maybe", - "shape": "en:packet", - "id": 1 - }, - { - "ecoscore_material_score": 0, - "ecoscore_shape_ratio": 1, - "material": "en:plastic", - "non_recyclable_and_non_biodegradable": "maybe", - "shape": "en:packet", - "id": 2 - } - ], - "packaging": [ - { - "non_recyclable_and_non_biodegradable_materials": 2, - "score": -100, - "value": -15, - "_id": "5060292302201" - } - ], - "labels": [], - "production_system": [ - { - "value": 0, - "warning": "no_label", - "_id": "5060292302201" - } - ], - "threatened_species": [], - "adjustments": [], - "agribalyse1": [ - { - "agribalyse_food_code": "4004", - "co2_agriculture": 0.82655583, - "co2_consumption": 0, - "co2_distribution": 0.019537154, - "co2_packaging": 0.28154442, - "co2_processing": 0.23156851, - "co2_total": 1.543669164, - "co2_transportation": 0.18446325, - "code": "4004", - "dqr": "2.45", - "ef_agriculture": 0.14029442, - "ef_consumption": 0, - "ef_distribution": 0.004831936, - "ef_packaging": 0.02370999, - "ef_processing": 0.038707917, - "ef_total": 0.223317319, - "ef_transportation": 0.015773056, - "is_beverage": 0, - "name_en": "Potato crisps", - "name_fr": "Chips de pommes de terre, standard", - "score": 87, - "version": "3.1", - "_id": "5060292302201" - } - ], - "grades": [ - { - "ad": "b", - "al": "b", - "tr": "b", - "ua": "b", - "uk": "b", - "us": "b", - "va": "b", - "world": "b", - "xk": "b", - "_id": "5060292302201" - } - ], - "missing": [ - { - "labels": 1, - "origins": 1, - "_id": "5060292302201" - } - ], - "agribalyse2": [ - { - "agribalyse_food_code": "4004", - "co2_agriculture": 1.2992636, - "co2_consumption": 0, - "co2_distribution": 0.029120657, - "co2_packaging": 0.28581962, - "co2_processing": 0.39294234, - "co2_total": 2.2443641, - "co2_transportation": 0.23728203, - "code": "4004", - "dqr": "2.45", - "ef_agriculture": 0.18214682, - "ef_consumption": 0, - "ef_distribution": 0.0098990521, - "ef_packaging": 0.021558384, - "ef_processing": 0.057508389, - "ef_total": 0.29200269, - "ef_transportation": 0.020894187, - "is_beverage": 0, - "name_en": "Potato crisps", - "name_fr": "Chips de pommes de terre, standard", - "score": 78, - "_id": "5060292302201" - } - ], - "previous_data": [ - { - "grade": "b", - "score": 63, - "_id": "5060292302201" - } - ], - "scores": [ - { - "ad": 67, - "al": 67, - "at": 67, - "va": 67, - "world": 67, - "xk": 67, - "_id": "5060292302201" - } - ], - "ecoscore_data": [ - { - "grade": "b", - "missing_data_warning": 1, - "score": 67, - "status": "known", - "_id": "5060292302201" - } - ], - "likeliest_impacts": [ - { - "Climate_change": 0.0835225930657116, - "EF_single_score": 0.0132996566234689, - "_id": "5060292302201" - } - ], - "likeliest_recipe": [ - { - "en:Oak_smoked_sea_salti_yeast_extract": 0.103505496656251, - "en:e160c": 0.10350549665625, - "en:e330": 0.10350549665625, - "en:flavouring": 0.10350549665625, - "en:garlic_powder": 0.103505496656251, - "en:milk": 1.55847864453775, - "en:onion": 0.15510736429208, - "en:potato": 69.2208020730349, - "en:potato_starch": 10.5320407294931, - "en:rice_flour": 13.8595510001351, - "en:salt": 1.3345917157533, - "en:spice": 0.10350549665625, - "en:sugar": 10.2883618334396, - "en:sunflower_oil": 14.1645835312727, - "en:tomato_powder": 0.10350549665625, - "en:water": 6.24510964041154, - "en:yeast_powder": 0.103505496656251, - "_id": "5060292302201" - } - ], - "impact": [ - { - "ef_single_score_log_stddev": 0.0664290643574977, - "mass_ratio_uncharacterized": 0.0244618467395455, - "_id": "5060292302201" - } - ], - "nutrition": [], - "uncharacterized_ingredients": [], - "uncharacterized_ingredients_mass_proportion": [ - { - "impact": 0.0244618467395455, - "nutrition": 0.0106506947223728, - "_id": "5060292302201" - } - ], - "uncharacterized_ingredients_ratio": [ - { - "impact": 0.3125, - "nutrition": 0.125, - "_id": "5060292302201" - } - ], - "warnings": [ - { - "0": "Fermentation agents are present in the product (en:yeast-powder). Carbohydrates and sugars mass balance will not be considered to estimate potential recipes", - "1": "The product has a high number of impact uncharacterized ingredients: 31%", - "_id": "5060292302201" - } - ], - "ecoscore_extended_data": [], - "ecoscore_tags": [ - { - "0": "b", - "_id": "5060292302201" - } - ], - "editors": [ - { - "0": "kyzh", - "1": "tacite", - "_id": "5060292302201" - } - ], - "editors_tags": [ - { - "0": "kiliweb", - "1": "openfoodfacts-contributors", - "2": "aleene", - "3": "tacite-mass-editor", - "4": "yuka.sY2b0xO6T85zoF3NwEKvlmBZVPXu-gnlBU3miFTQ-NeSIbDaMdUtu4fLGas", - "5": "kyzh", - "6": "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", - "7": "ecoscore-impact-estimator", - "8": "tacite", - "9": "foodless", - "10": "yuka.sY2b0xO6T85zoF3NwEKvllZnctbb-gn-LDr4mHzUyem0FYPXMO5by7b5NKg", - "11": "swipe-studio", - "12": "packbot", - "_id": "5060292302201" - } - ], - "emb_codes_tags": [], - "entry_dates_tags": [ - { - "0": "2015-06-03", - "1": "2015-06", - "2": "2015", - "_id": "5060292302201" - } - ], - "food_groups_tags": [ - { - "0": "en:salty-snacks", - "1": "en:appetizers", - "_id": "5060292302201" - } - ], - "generic_name_fr_debug_tags": [], - "sizes": [ - { - "h": 74, - "w": 100, - "id": "5060292302201" - }, - { - "h": 296, - "w": 400, - "id": "5060292302201" - }, - { - "h": 43, - "w": 100, - "id": "5060292302201" - }, - { - "h": 171, - "w": 400, - "id": "5060292302201" - }, - { - "h": 100, - "w": 82, - "id": "5060292302201" - }, - { - "h": 400, - "w": 326, - "id": "5060292302201" - }, - { - "h": 56, - "w": 100, - "id": "5060292302201" - }, - { - "h": 225, - "w": 400, - "id": "5060292302201" - }, - { - "h": 100, - "w": 78, - "id": "5060292302201" - }, - { - "h": 200, - "w": 156, - "id": "5060292302201" - }, - { - "h": 400, - "w": 311, - "id": "5060292302201" - }, - { - "h": 200, - "w": 163, - "id": "5060292302201" - }, - { - "h": 30, - "w": 100, - "id": "5060292302201" - }, - { - "h": 61, - "w": 200, - "id": "5060292302201" - }, - { - "h": 122, - "w": 400, - "id": "5060292302201" - }, - { - "h": 81, - "w": 100, - "id": "5060292302201" - }, - { - "h": 163, - "w": 200, - "id": "5060292302201" - }, - { - "h": 325, - "w": 400, - "id": "5060292302201" - }, - { - "h": 113, - "w": 200, - "id": "5060292302201" - } - ], - "nutrition_en_full": [ - { - "nutrition_en_id": "5060292302201", - "full_id": 3 - }, - { - "nutrition_en_id": "5060292302201", - "full_id": 4 - }, - { - "nutrition_en_id": "5060292302201", - "full_id": 5 - }, - { - "nutrition_en_id": "5060292302201", - "full_id": 6 - }, - { - "nutrition_en_id": "5060292302201", - "full_id": 7 - }, - { - "nutrition_en_id": "5060292302201", - "full_id": 8 - }, - { - "nutrition_en_id": "5060292302201", - "full_id": 9 - }, - { - "nutrition_en_id": "5060292302201", - "full_id": 10 - }, - { - "nutrition_en_id": "5060292302201", - "full_id": 11 - }, - { - "nutrition_en_id": "5060292302201", - "full_id": 12 - }, - { - "nutrition_en_id": "5060292302201", - "full_id": 13 - }, - { - "nutrition_en_id": "5060292302201", - "full_id": 14 - }, - { - "nutrition_en_id": "5060292302201", - "full_id": 15 - }, - { - "nutrition_en_id": "5060292302201", - "full_id": 16 - }, - { - "nutrition_en_id": "5060292302201", - "full_id": 17 - } - ], - "full": [ - { - "h": 1482, - "w": 2000, - "id": 3 - }, - { - "h": 1482, - "w": 2000, - "id": 4 - }, - { - "h": 1482, - "w": 2000, - "id": 5 - }, - { - "h": 1482, - "w": 2000, - "id": 6 - }, - { - "h": 1482, - "w": 2000, - "id": 7 - }, - { - "h": 1482, - "w": 2000, - "id": 8 - }, - { - "h": 846, - "w": 1974, - "id": 9 - }, - { - "h": 1140, - "w": 930, - "id": 10 - }, - { - "h": 569, - "w": 1011, - "id": 11 - }, - { - "h": 1825, - "w": 1421, - "id": 12 - }, - { - "h": 1140, - "w": 930, - "id": 13 - }, - { - "h": 526, - "w": 1730, - "id": 14 - }, - { - "h": 526, - "w": 1730, - "id": 15 - }, - { - "h": 920, - "w": 1131, - "id": 16 - }, - { - "h": 569, - "w": 1011, - "id": 17 - } - ], - "images": [ - { - "uploaded_t": 1433338177, - "uploader": "kyzh", - "id": "5060292302201" - }, - { - "uploaded_t": 1433338194, - "uploader": "kyzh", - "id": "5060292302201" - }, - { - "uploaded_t": 1433338203, - "uploader": "kyzh", - "id": "5060292302201" - }, - { - "uploaded_t": 1433338215, - "uploader": "kyzh", - "id": "5060292302201" - }, - { - "uploaded_t": 1433338229, - "uploader": "kyzh", - "id": "5060292302201" - }, - { - "uploaded_t": 1433338245, - "uploader": "kyzh", - "id": "5060292302201" - }, - { - "uploaded_t": "1508236270", - "uploader": "kiliweb", - "id": "5060292302201" - }, - { - "uploaded_t": 1620505759, - "uploader": "kiliweb", - "id": "5060292302201" - }, - { - "uploaded_t": 1656075071, - "uploader": "kiliweb", - "id": "5060292302201" - } - ], - "front": [], - "front_en": [ - { - "angle": 0, - "coordinates_image_size": "full", - "geometry": "0x0--1--1", - "imgid": "8", - "normalize": null, - "rev": "23", - "white_magic": null, - "x1": "-1", - "x2": "-1", - "y1": "-1", - "y2": "-1", - "id": "5060292302201" - } - ], - "ingredients1": [ - { - "geometry": "1730x526-125-304", - "imgid": "5", - "normalize": "false", - "ocr": 1, - "orientation": "0", - "rev": "11", - "white_magic": "false", - "id": "5060292302201" - } - ], - "ingredients_en": [ - { - "geometry": "1730x526-125-304", - "imgid": "5", - "normalize": "false", - "ocr": 1, - "orientation": "0", - "rev": "11", - "white_magic": "false", - "id": "5060292302201" - } - ], - "nutrition_en": [ - { - "angle": 0, - "coordinates_image_size": "full", - "geometry": "0x0--1--1", - "imgid": "9", - "normalize": null, - "rev": "32", - "white_magic": null, - "x1": "-1", - "x2": "-1", - "y1": "-1", - "y2": "-1", - "id": "5060292302201" - } - ], - "informers_tags": [ - { - "0": "kyzh", - "1": "tacite", - "2": "tacite-mass-editor", - "3": "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", - "4": "openfoodfacts-contributors", - "5": "aleene", - "id": "5060292302201" - } - ], - "ingredients2": [ - { - "ciqual_food_code": "4003", - "id": "5060292302201", - "percent": 54, - "percent_estimate": 54, - "percent_max": 54, - "percent_min": 54, - "processing": "en:dried", - "rank": 1, - "text": "potatoes", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "ciqual_food_code": "17440", - "from_palm_oil": "no", - "id": "5060292302201", - "percent_estimate": 28.75, - "percent_max": 46, - "percent_min": 11.5, - "rank": 2, - "text": "sunflower oil", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "has_sub_ingredients": "yes", - "id": "5060292302201", - "percent_estimate": 8.625, - "percent_max": 33.3333333333333, - "percent_min": 0, - "rank": 3, - "text": "seasoning", - "vegan": "maybe", - "vegetarian": "maybe" - }, - { - "ciqual_food_code": "9520", - "id": "5060292302201", - "percent_estimate": 4.3125, - "percent_max": 17.25, - "percent_min": 0, - "rank": 4, - "text": "rice flour", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "id": "5060292302201", - "percent_estimate": 4.3125, - "percent_max": 11.5, - "percent_min": 0, - "rank": 5, - "text": "potato starch", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "id": "5060292302201", - "percent_estimate": 4.3125, - "percent_max": 8.7, - "percent_min": 0, - "text": "sugar", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "has_sub_ingredients": "yes", - "id": "5060292302201", - "percent_estimate": 2.15625, - "percent_max": 8.7, - "percent_min": 0, - "text": "whey powder", - "vegan": "no", - "vegetarian": "maybe" - }, - { - "ciqual_food_code": "11058", - "id": "5060292302201", - "percent_estimate": 1.05, - "percent_max": 2.1, - "percent_min": 0, - "text": "salt", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "ciqual_food_code": "20034", - "id": "5060292302201", - "percent_estimate": 0.553125, - "percent_max": 2.1, - "percent_min": 0, - "processing": "en:powder", - "text": "onion", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "id": "5060292302201", - "percent_estimate": 0.2765625, - "percent_max": 2.1, - "percent_min": 0, - "text": "yeast powder", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "ciqual_food_code": "11000", - "id": "5060292302201", - "percent_estimate": 0.13828125, - "percent_max": 2.1, - "percent_min": 0, - "processing": "en:powder", - "text": "garlic", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "ciqual_food_code": "20047", - "id": "5060292302201", - "percent_estimate": 0.0691406250000002, - "percent_max": 2.1, - "percent_min": 0, - "processing": "en:powder", - "text": "tomato", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "id": "5060292302201", - "percent_estimate": 0.0345703124999996, - "percent_max": 2.1, - "percent_min": 0, - "text": "Oak smoked sea salti yeast extract" - }, - { - "id": "5060292302201", - "percent_estimate": 0.0172851562499998, - "percent_max": 2.1, - "percent_min": 0, - "text": "flavourings", - "vegan": "maybe", - "vegetarian": "maybe" - }, - { - "id": "5060292302201", - "percent_estimate": 0.00864257812500036, - "percent_max": 2.1, - "percent_min": 0, - "text": "spices", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "has_sub_ingredients": "yes", - "id": "5060292302201", - "percent_estimate": 0.00432128906250018, - "percent_max": 2.1, - "percent_min": 0, - "text": "acid" - }, - { - "has_sub_ingredients": "yes", - "id": "5060292302201", - "percent_estimate": 0.00432128906249929, - "percent_max": 2.1, - "percent_min": 0, - "text": "colour" - }, - { - "id": "5060292302201", - "percent_estimate": 2.15625, - "percent_max": 8.7, - "percent_min": 0, - "text": "milk", - "vegan": "no", - "vegetarian": "yes" - }, - { - "id": "5060292302201", - "percent_estimate": 0.00432128906250018, - "percent_max": 2.1, - "percent_min": 0, - "text": "citric acid", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "id": "5060292302201", - "percent_estimate": 0.00432128906249929, - "percent_max": 2.1, - "percent_min": 0, - "text": "paprika extract", - "vegan": "yes", - "vegetarian": "yes" - } - ], - "en:non-vegan": [ - { - "0": "en:whey-powder", - "1": "en:milk", - "id": "5060292302201" - } - ], - "en:palm-oil-content-unknown": [ - { - "0": "en:oak-smoked-sea-salti-yeast-extract", - "id": "5060292302201" - } - ], - "en:vegan-status-unknown": [ - { - "0": "en:oak-smoked-sea-salti-yeast-extract", - "id": "5060292302201" - } - ], - "en:vegetarian-status-unknown": [ - { - "0": "en:oak-smoked-sea-salti-yeast-extract", - "id": "5060292302201" - } - ], - "ingredients_analysis": [], - "ingredients_analysis_tags": [ - { - "0": "en:palm-oil-free", - "1": "en:non-vegan", - "2": "en:vegetarian", - "id": "5060292302201" - } - ], - "ingredients_debug": [ - { - "0": "54% dried potatoes", - "1": ",", - "2": null, - "3": null, - "4": null, - "5": " sunflower oil", - "6": ",", - "7": null, - "8": null, - "9": null, - "10": " seasoning ", - "11": "(", - "12": "(", - "13": null, - "14": null, - "15": "sugar", - "16": ",", - "17": null, - "18": null, - "19": null, - "20": " whey powder ", - "21": "[", - "22": "[", - "23": null, - "24": null, - "25": "milk]", - "26": ",", - "27": null, - "28": null, - "29": null, - "30": " salt", - "31": ",", - "32": null, - "33": null, - "34": null, - "35": " onion powder", - "36": ",", - "37": null, - "38": null, - "39": null, - "40": " yeast powder", - "41": ",", - "42": null, - "43": null, - "44": null, - "45": " garlic powder", - "46": ",", - "47": null, - "48": null, - "49": null, - "50": " tomato powder", - "51": ",", - "52": null, - "53": null, - "54": null, - "55": " Oak smoked sea salti yeast extract", - "56": ",", - "57": null, - "58": null, - "59": null, - "60": " flavourings", - "61": ",", - "62": null, - "63": null, - "64": null, - "65": " spices", - "66": ",", - "67": null, - "68": null, - "69": null, - "70": " acid", - "71": ":", - "72": ":", - "73": null, - "74": null, - "75": " citric acid", - "76": ",", - "77": null, - "78": null, - "79": null, - "80": " colour", - "81": ":", - "82": ":", - "83": null, - "84": null, - "85": " paprika extract)", - "86": ",", - "87": null, - "88": null, - "89": null, - "90": " rice flour", - "91": ",", - "92": null, - "93": null, - "94": null, - "95": " potato starch.", - "id": "5060292302201" - } - ], - "ingredients_from_palm_oil_tags": [], - "ingredients_hierarchy": [ - { - "0": "en:potato", - "1": "en:vegetable", - "2": "en:root-vegetable", - "3": "en:tuber", - "4": "en:sunflower-oil", - "5": "en:oil-and-fat", - "6": "en:spice", - "7": "en:condiment", - "8": "en:acid", - "9": "en:colour", - "10": "en:milk", - "11": "en:e330", - "12": "en:e160c", - "id": "5060292302201" - } - ], - "ingredients_ids_debug": [ - { - "0": "54-dried-potatoes", - "1": "sunflower-oil", - "2": "seasoning", - "3": "sugar", - "4": "colour", - "5": "paprika-extract", - "6": "rice-flour", - "7": "potato-starch", - "id": "5060292302201" - } - ], - "ingredients_n_tags": [ - { - "0": "20", - "1": "11-20", - "id": "5060292302201" - } - ], - "ingredients_original_tags": [ - { - "0": "en:potato", - "1": "en:sunflower-oil", - "2": "en:coating", - "3": "en:rice-flour", - "4": "en:potato-starch", - "5": "en:sugar", - "6": "en:whey-powder", - "7": "en:salt", - "8": "en:onion", - "9": "en:yeast-powder", - "10": "en:garlic", - "11": "en:tomato", - "12": "en:oak-smoked-sea-salti-yeast-extract", - "13": "en:flavouring", - "14": "en:spice", - "15": "en:acid", - "16": "en:colour", - "17": "en:milk", - "18": "en:e330", - "19": "en:e160c", - "id": "5060292302201" - } - ], - "ingredients_tags": [ - { - "0": "en:potato", - "1": "en:vegetable", - "2": "en:root-vegetable", - "3": "en:milk", - "4": "en:e330", - "5": "en:e160c", - "id": "5060292302201" - } - ], - "ingredients_text_debug_tags": [], - "ingredients_text_fr_debug_tags": [], - "ingredients_that_may_be_from_palm_oil_tags": [], - "ingredients_without_ciqual_codes": [ - { - "0": "en:e160c", - "1": "en:e330", - "2": "en:flavouring", - "3": "en:milk", - "4": "en:oak-smoked-sea-salti-yeast-extract", - "5": "en:potato-starch", - "6": "en:spice", - "7": "en:sugar", - "8": "en:yeast-powder", - "id": "5060292302201" - } - ], - "labels_hierarchy": [ - { - "0": "en:vegetarian", - "1": "en:no-preservatives", - "2": "en:No artificial anything", - "id": "5060292302201" - } - ], - "labels_tags": [ - { - "0": "en:vegetarian", - "1": "en:no-preservatives", - "2": "en:no-artificial-anything", - "id": "5060292302201" - } - ], - "languages": [ - { - "en:english": 5, - "id": "5060292302201" - } - ], - "languages_codes": [ - { - "en": 5, - "id": "5060292302201" - } - ], - "languages_hierarchy": [ - { - "0": "en:english", - "id": "5060292302201" - } - ], - "languages_tags": [ - { - "0": "en:english", - "1": "en:1", - "id": "5060292302201" - } - ], - "last_edit_dates_tags": [ - { - "0": "2023-03-24", - "1": "2023-03", - "2": "2023", - "id": "5060292302201" - } - ], - "last_image_dates_tags": [ - { - "0": "2022-06-24", - "1": "2022-06", - "2": "2022", - "id": "5060292302201" - } - ], - "main_countries_tags": [], - "manufacturing_places_tags": [ - { - "0": "european-union", - "id": "5060292302201" - } - ], - "minerals_prev_tags": [], - "minerals_tags": [], - "misc_tags": [ - { - "0": "en:nutriscore-computed", - "1": "en:nutrition-fruits-vegetables-nuts-from-category", - "2": "en:nutrition-fruits-vegetables-nuts-from-category-en-potato-crisps-in-sunflower-oil", - "3": "en:nutrition-fruits-vegetables-legumes-from-category", - "4": "en:nutrition-fruits-vegetables-legumes-from-category-en-potato-crisps-in-sunflower-oil", - "5": "en:nutriscore-2021-same-as-2023", - "6": "en:nutriscore-2021-d-2023-d", - "7": "en:packagings-number-of-components-2", - "8": "en:packagings-not-complete", - "9": "en:packagings-not-empty-but-not-complete", - "10": "en:packagings-not-empty", - "11": "en:ecoscore-extended-data-computed", - "12": "en:ecoscore-extended-data-version-4", - "13": "en:ecoscore-missing-data-warning", - "14": "en:ecoscore-missing-data-labels", - "15": "en:ecoscore-missing-data-origins", - "16": "en:ecoscore-computed", - "17": "en:ecoscore-changed", - "id": "5060292302201" - } - ], - "nova_groups_markers": [ - { - "0": "categories", - "1": "en:salty-snacks", - "id": "5060292302201" - }, - { - "0": "ingredients", - "1": "en:salt", - "id": "5060292302201" - }, - { - "0": "ingredients", - "1": "en:starch", - "id": "5060292302201" - }, - { - "0": "ingredients", - "1": "en:sugar", - "id": "5060292302201" - }, - { - "0": "ingredients", - "1": "en:vegetable-oil", - "id": "5060292302201" - }, - { - "0": "additives", - "1": "en:e160c", - "id": "5060292302201" - }, - { - "0": "ingredients", - "1": "en:colour", - "id": "5060292302201" - }, - { - "0": "ingredients", - "1": "en:flavouring", - "id": "5060292302201" - }, - { - "0": "ingredients", - "1": "en:whey", - "id": "5060292302201" - } - ], - "nova_groups_tags": [ - { - "0": "en:4-ultra-processed-food-and-drink-products", - "id": "5060292302201" - } - ], - "nucleotides_prev_tags": [], - "nucleotides_tags": [], - "nutrient_levels": [ - { - "fat": "moderate", - "salt": "high", - "saturated-fat": "low", - "sugars": "moderate", - "id": "5060292302201" - } - ], - "nutrient_levels_tags": [ - { - "0": "en:fat-in-moderate-quantity", - "1": "en:saturated-fat-in-low-quantity", - "2": "en:sugars-in-moderate-quantity", - "3": "en:salt-in-high-quantity", - "id": "5060292302201" - } - ], - "nutriments": [ - { - "carbohydrates": 62, - "carbohydrates_100g": 62, - "carbohydrates_serving": 14.3, - "carbohydrates_unit": "g", - "carbohydrates_value": 62, - "carbon-footprint-from-known-ingredients_100g": 32.4, - "carbon-footprint-from-known-ingredients_product": 7.45, - "salt": 2.1, - "salt_100g": 2.1, - "salt_serving": 0.483, - "salt_unit": "g", - "salt_value": 2.1, - "saturated-fat": 1.4, - "saturated-fat_100g": 1.4, - "saturated-fat_serving": 0.322, - "saturated-fat_unit": "g", - "saturated-fat_value": 1.4, - "sodium": 0.84, - "sodium_100g": 0.84, - "sodium_serving": 0.193, - "sodium_unit": "g", - "sodium_value": 0.84, - "sugars": 8.7, - "sugars_100g": 8.7, - "sugars_serving": 2, - "sugars_unit": "g", - "sugars_value": 8.7, - "id": "5060292302201" - } - ], - "data": [ - { - "count_proteins": 0, - "count_proteins_reason": "negative_points_more_than_11", - "energy": 1759, - "is_red_meat_product": 0, - "is_water": 0, - "negative_points": 18, - "positive_points": 1, - "proteins": 5.7, - "proteins_points": 2, - "salt": 2.1, - "salt_points": 10, - "saturated_fat": 1.4, - "saturated_fat_points": 1, - "sugars": 8.7, - "sugars_points": 2, - "id": "5060292302201" - } - ], - "nutriscore": [ - { - "category_available": 1, - "grade": "d", - "nutrients_available": 1, - "nutriscore_applicable": 1, - "nutriscore_computed": 1, - "score": 12, - "id": "5060292302201" - }, - { - "category_available": 1, - "grade": "d", - "nutrients_available": 1, - "nutriscore_applicable": 1, - "nutriscore_computed": 1, - "score": 17, - "id": "5060292302201" - } - ], - "negative_nutrients": [ - { - "0": "energy", - "1": "sugars", - "2": "saturated_fat", - "3": "salt", - "4": "non_nutritive_sweeteners", - "id": "5060292302201" - } - ], - "positive_nutrients": [ - { - "0": "fruits_vegetables_legumes", - "1": "fiber", - "id": "5060292302201" - } - ], - "nutriscore_2021_tags": [ - { - "0": "d", - "id": "5060292302201" - } - ], - "nutriscore_2023_tags": [ - { - "0": "d", - "id": "5060292302201" - } - ], - "nutriscore_data": [ - { - "energy": 1759, - "energy_points": 5, - "energy_value": 1759, - "fiber": 3.9, - "fiber_points": 4, - "fiber_value": 3.9, - "fruits_vegetables_nuts_colza_walnut_olive_oils": "0", - "fruits_vegetables_nuts_colza_walnut_olive_oils_points": 0, - "fruits_vegetables_nuts_colza_walnut_olive_oils_value": 0, - "grade": "d", - "is_beverage": 0, - "is_cheese": 0, - "is_fat": 0, - "is_water": 0, - "negative_points": 16, - "positive_points": 4, - "proteins": 5.7, - "proteins_points": 3, - "proteins_value": 5.7, - "saturated_fat": 1.4, - "saturated_fat_points": 1, - "saturated_fat_value": 1.4, - "score": 12, - "sodium": 840, - "sodium_points": 9, - "sodium_value": 840, - "sugars": 8.7, - "sugars_points": 1, - "sugars_value": 8.7, - "id": "5060292302201" - } - ], - "nutriscore_tags": [ - { - "0": "d", - "id": "5060292302201" - } - ], - "nutrition_grades_tags": [ - { - "0": "d", - "id": "5060292302201" - } - ], - "origins_hierarchy": [], - "origins_tags": [], - "other_nutritional_substances_tags": [], - "packaging_hierarchy": [ - { - "0": "en:plastic", - "1": "en:Mixed plastic film-packet", - "id": "5060292302201" - } - ], - "packaging_materials_tags": [ - { - "0": "en:plastic", - "id": "5060292302201" - } - ], - "packaging_recycling_tags": [], - "packaging_shapes_tags": [ - { - "0": "en:packet", - "id": "5060292302201" - } - ], - "packaging_tags": [ - { - "0": "en:plastic", - "1": "en:mixed-plastic-film-packet", - "id": "5060292302201" - } - ], - "product_packagings": [ - { - "product_id": "5060292302201", - "packagings2_id": 18 - }, - { - "product_id": "5060292302201", - "packagings2_id": 19 - } - ], - "packagings2": [ - { - "material": "en:plastic", - "shape": "en:packet", - "id": 18 - }, - { - "material": "en:plastic", - "shape": "en:packet", - "id": 19 - } - ], - "all": [], - "en:plastic": [], - "packagings_materials": [], - "photographers_tags": [ - { - "0": "kyzh", - "1": "kiliweb", - "id": "5060292302201" - } - ], - "pnns_groups_1_tags": [ - { - "0": "salty-snacks", - "1": "known", - "id": "5060292302201" - } - ], - "pnns_groups_2_tags": [ - { - "0": "appetizers", - "1": "known", - "id": "5060292302201" - } - ], - "popularity_tags": [ - { - "0": "bottom-25-percent-scans-2019", - "1": "bottom-20-percent-scans-2019", - "2": "top-100000-hk-scans-2022", - "3": "top-10000-us-scans-2022", - "4": "top-50000-us-scans-2022", - "5": "top-100000-us-scans-2022", - "id": "5060292302201" - } - ], - "product_name_fr_debug_tags": [], - "purchase_places_tags": [], - "removed_countries_tags": [], - "display": [ - { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", - "id": "5060292302201" - }, - { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg", - "id": "5060292302201" - }, - { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg", - "id": "5060292302201" - } - ], - "small": [ - { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", - "id": "5060292302201" - }, - { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg", - "id": "5060292302201" - }, - { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg", - "id": "5060292302201" - } - ], - "thumb": [ - { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", - "id": "5060292302201" - }, - { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg", - "id": "5060292302201" - }, - { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg", - "id": "5060292302201" - } - ], - "ingredients-1": [], - "selected_images": [], - "states_hierarchy": [ - { - "0": "en:to-be-completed", - "1": "en:nutrition-facts-completed", - "2": "en:ingredients-completed", - "3": "en:ingredients-photo-selected", - "4": "en:front-photo-selected", - "5": "en:photos-uploaded", - "id": "5060292302201" - } - ], - "states_tags": [ - { - "0": "en:to-be-completed", - "1": "en:nutrition-facts-completed", - "2": "en:ingredients-completed", - "3": "en:ingredients-photo-selected", - "4": "en:front-photo-selected", - "5": "en:photos-uploaded", - "id": "5060292302201" - } - ], - "stores_tags": [], - "teams_tags": [ - { - "0": "swipe-studio", - "id": "5060292302201" - } - ], - "traces_hierarchy": [], - "traces_tags": [], - "unknown_nutrients_tags": [], - "vitamins_prev_tags": [], - "vitamins_tags": [], - "weighers_tags": [], - "product": [ - { - "_id": "5060292302201", - "additives_n": 2, - "additives_old_n": 2, - "allergens": "en:milk", - "allergens_from_ingredients": "en:milk, milk", - "allergens_from_user": "(en) en:milk", - "allergens_lc": "en", - "brands": "Popchips", - "carbon_footprint_from_known_ingredients_debug": "en:potato 54% x 0.6 = 32.4 g - ", - "carbon_footprint_percent_of_known_ingredients": 54, - "categories": "Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil", - "categories_lc": "en", - "categories_old": "Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil", - "code": "5060292302201", - "compared_to_category": "en:potato-crisps-in-sunflower-oil", - "complete": 0, - "completeness": 0.8875, - "countries": "France,United Kingdom", - "countries_lc": "en", - "created_t": 1433338177, - "creator": "kyzh", - "data_sources": "App - yuka, Apps, App - Horizon", - "ecoscore_extended_data_version": "4", - "ecoscore_grade": "b", - "ecoscore_score": 67, - "emb_codes": "", - "emb_codes_20141016": "", - "emb_codes_orig": "", - "expiration_date": "11/05/2016", - "food_groups": "en:appetizers", - "fruits-vegetables-nuts_100g_estimate": 0, - "generic_name": "", - "generic_name_en": "", - "generic_name_fr": "", - "id": "5060292302201", - "image_front_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", - "image_front_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", - "image_front_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", - "image_ingredients_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg", - "image_ingredients_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg", - "image_ingredients_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg", - "image_nutrition_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg", - "image_nutrition_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg", - "image_nutrition_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg", - "image_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", - "image_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", - "image_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", - "ingredients_from_or_that_may_be_from_palm_oil_n": 0, - "ingredients_from_palm_oil_n": 0, - "ingredients_n": 20, - "ingredients_percent_analysis": 1, - "ingredients_text": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", - "ingredients_text_debug": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", - "ingredients_text_en": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", - "ingredients_text_fr": "", - "ingredients_text_with_allergens": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", - "ingredients_text_with_allergens_en": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", - "ingredients_that_may_be_from_palm_oil_n": 0, - "ingredients_with_specified_percent_n": 1, - "ingredients_with_specified_percent_sum": 54, - "ingredients_with_unspecified_percent_n": 15, - "ingredients_with_unspecified_percent_sum": 46, - "ingredients_without_ciqual_codes_n": 9, - "interface_version_created": "20120622", - "interface_version_modified": "20190830", - "known_ingredients_n": 36, - "labels": "Vegetarian, No preservatives, No artificial anything", - "labels_lc": "en", - "labels_old": "Vegetarian,No preservatives,No artificial anything", - "lang": "en", - "last_editor": "aleene", - "last_image_t": 1656075071, - "last_modified_by": "aleene", - "last_modified_t": 1679645675, - "lc": "en", - "link": "", - "manufacturing_places": "European Union", - "max_imgid": "9", - "no_nutrition_data": "", - "nova_group": 4, - "nova_group_debug": "", - "nova_groups": "4", - "nutriscore_grade": "d", - "nutriscore_score": 12, - "nutriscore_score_opposite": -12, - "nutriscore_version": "2021", - "nutrition_data": "on", - "nutrition_data_per": "100g", - "nutrition_data_prepared": "", - "nutrition_data_prepared_per": "100g", - "nutrition_grade_fr": "d", - "nutrition_grades": "d", - "nutrition_score_beverage": 0, - "nutrition_score_debug": "", - "obsolete": "", - "obsolete_since_date": "", - "origin": "", - "origin_en": "", - "origins": "", - "origins_lc": "en", - "origins_old": "", - "packaging": "Plastic,Mixed plastic film-packet", - "packaging_lc": "en", - "packaging_old": "Plastic, Mixed plastic-packet", - "packaging_old_before_taxonomization": "Plastic, en:mixed plastic-packet", - "packaging_text": "", - "packaging_text_en": "", - "packagings_complete": 0, - "packagings_n": 2, - "pnns_groups_1": "Salty snacks", - "pnns_groups_2": "Appetizers", - "popularity_key": 21900000007, - "product_name": "Barbeque Potato Chips", - "product_name_en": "Barbeque Potato Chips", - "product_name_fr": "", - "product_quantity": "23", - "purchase_places": "", - "quantity": "23 g", - "rev": 33, - "scans_n": 6, - "serving_quantity": "23", - "serving_size": "23 g", - "sortkey": 1535456524, - "states": "en:to-be-completed, en:nutrition-facts-completed, en:ingredients-completed, en:expiration-date-completed, en:packaging-code-to-be-completed, en:characteristics-to-be-completed, en:origins-to-be-completed, en:categories-completed, en:brands-completed, en:packaging-completed, en:quantity-completed, en:product-name-completed, en:photos-to-be-validated, en:packaging-photo-to-be-selected, en:nutrition-photo-selected, en:ingredients-photo-selected, en:front-photo-selected, en:photos-uploaded", - "stores": "", - "teams": "swipe-studio", - "traces": "", - "traces_from_ingredients": "", - "traces_from_user": "(en) ", - "traces_lc": "en", - "unique_scans_n": 4, - "unknown_ingredients_n": 1, - "update_key": "eco20231129" - } - ], - "food_product": [ - { - "code": "5060292302201", - "status": 1, - "status_verbose": "product found" - } - ] -} - - --- Generated by json2qsql.js development 1/30/2024, 11:19:56 AM - -#document = -{ - "code": "5060292302201", - "product": { - "_id": "5060292302201", - "_keywords": [ - "and", - "anything", - "appetizer", - "artificial", - "barbeque", - "beverage", - "potatoe", - "preservative", - "salty", - "snack", - "sunflower", - "vegetarian" - ], - "added_countries_tags": [], - "additives_debug_tags": [], - "additives_n": 2, - "additives_old_n": 2, - "additives_old_tags": [ - "en:e330", - "en:e160c" - ], - "additives_original_tags": [ - "en:e330", - "en:e160c" - ], - "additives_prev_original_tags": [ - "en:e330", - "en:e160c" - ], - "additives_tags": [ - "en:e160c", - "en:e330" - ], - "allergens": "en:milk", - "allergens_from_ingredients": "en:milk, milk", - "allergens_from_user": "(en) en:milk", - "allergens_hierarchy": [ - "en:milk" - ], - "allergens_lc": "en", - "allergens_tags": [ - "en:milk" - ], - "amino_acids_prev_tags": [], - "amino_acids_tags": [], - "brands": "Popchips", - "brands_tags": [ - "popchips" - ], - "carbon_footprint_from_known_ingredients_debug": "en:potato 54% x 0.6 = 32.4 g - ", - "carbon_footprint_percent_of_known_ingredients": 54, - "categories": "Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil", - "categories_hierarchy": [ - "en:plant-based-foods-and-beverages", - "en:plant-based-foods", - "en:snacks", - "en:cereals-and-potatoes", - "en:salty-snacks", - "en:appetizers", - "en:chips-and-fries", - "en:crisps", - "en:potato-crisps", - "en:potato-crisps-in-sunflower-oil" - ], - "categories_lc": "en", - "categories_old": "Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil", - "categories_properties": { - "agribalyse_food_code:en": "4004", - "ciqual_food_code:en": "4004" - }, - "categories_properties_tags": [ - "all-products", - "categories-known", - "agribalyse-food-code-4004", - "agribalyse-food-code-known", - "agribalyse-proxy-food-code-unknown", - "ciqual-food-code-4004", - "ciqual-food-code-known", - "agribalyse-known", - "agribalyse-4004" - ], - "categories_tags": [ - "en:plant-based-foods-and-beverages", - "en:plant-based-foods", - "en:snacks", - "en:cereals-and-potatoes", - "en:salty-snacks", - "en:appetizers", - "en:chips-and-fries", - "en:crisps", - "en:potato-crisps", - "en:potato-crisps-in-sunflower-oil" - ], - "category_properties": { - "ciqual_food_name:en": "Potato crisps", - "ciqual_food_name:fr": "Chips de pommes de terre, standard" - }, - "checkers_tags": [], - "ciqual_food_name_tags": [ - "potato-crisps" - ], - "cities_tags": [], - "code": "5060292302201", - "codes_tags": [ - "code-13", - "5060292302xxx", - "506029230xxxx", - "50602923xxxxx", - "5060292xxxxxx", - "506029xxxxxxx", - "50602xxxxxxxx", - "5060xxxxxxxxx", - "506xxxxxxxxxx", - "50xxxxxxxxxxx", - "5xxxxxxxxxxxx" - ], - "compared_to_category": "en:potato-crisps-in-sunflower-oil", - "complete": 0, - "completeness": 0.8875, - "correctors_tags": [ - "tacite", - "tacite-mass-editor", - "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", - "openfoodfacts-contributors", - "swipe-studio", - "yuka.sY2b0xO6T85zoF3NwEKvllZnctbb-gn-LDr4mHzUyem0FYPXMO5by7b5NKg", - "kiliweb", - "packbot", - "foodless", - "yuka.sY2b0xO6T85zoF3NwEKvlmBZVPXu-gnlBU3miFTQ-NeSIbDaMdUtu4fLGas", - "aleene" - ], - "countries": "France,United Kingdom", - "countries_hierarchy": [ - "en:france", - "en:united-kingdom" - ], - "countries_lc": "en", - "countries_tags": [ - "en:france", - "en:united-kingdom" - ], - "created_t": 1433338177, - "creator": "kyzh", - "data_quality_bugs_tags": [], - "data_quality_errors_tags": [], - "data_quality_info_tags": [ - "en:packaging-data-incomplete", - "en:ingredients-percent-analysis-ok", - "en:carbon-footprint-from-known-ingredients-but-not-from-meat-or-fish", - "en:ecoscore-extended-data-computed", - "en:ecoscore-extended-data-less-precise-than-agribalyse", - "en:food-groups-1-known", - "en:food-groups-2-known", - "en:food-groups-3-unknown" - ], - "data_quality_tags": [ - "en:packaging-data-incomplete", - "en:ingredients-percent-analysis-ok", - "en:carbon-footprint-from-known-ingredients-but-not-from-meat-or-fish", - "en:ecoscore-extended-data-computed", - "en:ecoscore-extended-data-less-precise-than-agribalyse", - "en:food-groups-1-known", - "en:food-groups-2-known", - "en:food-groups-3-unknown", - "en:nutrition-value-very-low-for-category-energy", - "en:nutrition-value-very-low-for-category-fat", - "en:nutrition-value-very-high-for-category-sugars", - "en:vegetarian-label-but-could-not-confirm-for-all-ingredients", - "en:ecoscore-origins-of-ingredients-origins-are-100-percent-unknown", - "en:ecoscore-production-system-no-label" - ], - "data_quality_warnings_tags": [ - "en:nutrition-value-very-low-for-category-energy", - "en:nutrition-value-very-low-for-category-fat", - "en:nutrition-value-very-high-for-category-sugars", - "en:vegetarian-label-but-could-not-confirm-for-all-ingredients", - "en:ecoscore-origins-of-ingredients-origins-are-100-percent-unknown", - "en:ecoscore-production-system-no-label" - ], - "data_sources": "App - yuka, Apps, App - Horizon", - "data_sources_tags": [ - "app-yuka", - "apps", - "app-horizon" - ], - "debug_param_sorted_langs": [ - "en" - ], - "ecoscore_data": { - "adjustments": { - "origins_of_ingredients": { - "aggregated_origins": [ - { - "epi_score": "0", - "origin": "en:unknown", - "percent": 100, - "transportation_score": null - } - ], - "epi_score": 0, - "epi_value": -5, - "origins_from_categories": [ - "en:unknown" - ], - "origins_from_origins_field": [ - "en:unknown" - ], - "transportation_score": 0, - "transportation_scores": { - "ad": 0, - "al": 0, - "va": 0, - "world": 0, - "xk": 0 - }, - "transportation_value": 0, - "transportation_values": { - "ad": 0, - "ua": 0, - "uk": 0, - "us": 0, - "va": 0, - "world": 0, - "xk": 0 - }, - "value": -5, - "values": { - "ad": -5, - "al": -5, - "at": -5, - "uk": -5, - "us": -5, - "va": -5, - "world": -5, - "xk": -5 - }, - "warning": "origins_are_100_percent_unknown" - }, - "packaging": { - "non_recyclable_and_non_biodegradable_materials": 2, - "packagings": [ - { - "ecoscore_material_score": 0, - "ecoscore_shape_ratio": 1, - "material": "en:plastic", - "non_recyclable_and_non_biodegradable": "maybe", - "shape": "en:packet" - }, - { - "ecoscore_material_score": 0, - "ecoscore_shape_ratio": 1, - "material": "en:plastic", - "non_recyclable_and_non_biodegradable": "maybe", - "shape": "en:packet" - } - ], - "score": -100, - "value": -15 - }, - "production_system": { - "labels": [], - "value": 0, - "warning": "no_label" - }, - "threatened_species": {} - }, - "agribalyse": { - "agribalyse_food_code": "4004", - "co2_agriculture": 0.82655583, - "co2_consumption": 0, - "co2_distribution": 0.019537154, - "co2_packaging": 0.28154442, - "co2_processing": 0.23156851, - "co2_total": 1.543669164, - "co2_transportation": 0.18446325, - "code": "4004", - "dqr": "2.45", - "ef_agriculture": 0.14029442, - "ef_consumption": 0, - "ef_distribution": 0.004831936, - "ef_packaging": 0.02370999, - "ef_processing": 0.038707917, - "ef_total": 0.223317319, - "ef_transportation": 0.015773056, - "is_beverage": 0, - "name_en": "Potato crisps", - "name_fr": "Chips de pommes de terre, standard", - "score": 87, - "version": "3.1" - }, - "grade": "b", - "grades": { - "ad": "b", - "al": "b", - "tr": "b", - "ua": "b", - "uk": "b", - "us": "b", - "va": "b", - "world": "b", - "xk": "b" - }, - "missing": { - "labels": 1, - "origins": 1 - }, - "missing_data_warning": 1, - "previous_data": { - "agribalyse": { - "agribalyse_food_code": "4004", - "co2_agriculture": 1.2992636, - "co2_consumption": 0, - "co2_distribution": 0.029120657, - "co2_packaging": 0.28581962, - "co2_processing": 0.39294234, - "co2_total": 2.2443641, - "co2_transportation": 0.23728203, - "code": "4004", - "dqr": "2.45", - "ef_agriculture": 0.18214682, - "ef_consumption": 0, - "ef_distribution": 0.0098990521, - "ef_packaging": 0.021558384, - "ef_processing": 0.057508389, - "ef_total": 0.29200269, - "ef_transportation": 0.020894187, - "is_beverage": 0, - "name_en": "Potato crisps", - "name_fr": "Chips de pommes de terre, standard", - "score": 78 - }, - "grade": "b", - "score": 63 - }, - "score": 67, - "scores": { - "ad": 67, - "al": 67, - "at": 67, - "va": 67, - "world": 67, - "xk": 67 - }, - "status": "known" - }, - "ecoscore_extended_data": { - "impact": { - "ef_single_score_log_stddev": 0.0664290643574977, - "likeliest_impacts": { - "Climate_change": 0.0835225930657116, - "EF_single_score": 0.0132996566234689 - }, - "likeliest_recipe": { - "en:Oak_smoked_sea_salti_yeast_extract": 0.103505496656251, - "en:e160c": 0.10350549665625, - "en:e330": 0.10350549665625, - "en:flavouring": 0.10350549665625, - "en:garlic_powder": 0.103505496656251, - "en:milk": 1.55847864453775, - "en:onion": 0.15510736429208, - "en:potato": 69.2208020730349, - "en:potato_starch": 10.5320407294931, - "en:rice_flour": 13.8595510001351, - "en:salt": 1.3345917157533, - "en:spice": 0.10350549665625, - "en:sugar": 10.2883618334396, - "en:sunflower_oil": 14.1645835312727, - "en:tomato_powder": 0.10350549665625, - "en:water": 6.24510964041154, - "en:yeast_powder": 0.103505496656251 - }, - "mass_ratio_uncharacterized": 0.0244618467395455, - "uncharacterized_ingredients": { - "impact": [ - "en:yeast-powder", - "en:flavouring", - "en:Oak smoked sea salti yeast extract", - "en:e160c", - "en:e330" - ], - "nutrition": [ - "en:flavouring", - "en:Oak smoked sea salti yeast extract" - ] - }, - "uncharacterized_ingredients_mass_proportion": { - "impact": 0.0244618467395455, - "nutrition": 0.0106506947223728 - }, - "uncharacterized_ingredients_ratio": { - "impact": 0.3125, - "nutrition": 0.125 - }, - "warnings": [ - "Fermentation agents are present in the product (en:yeast-powder). Carbohydrates and sugars mass balance will not be considered to estimate potential recipes", - "The product has a high number of impact uncharacterized ingredients: 31%" - ] - } - }, - "ecoscore_extended_data_version": "4", - "ecoscore_grade": "b", - "ecoscore_score": 67, - "ecoscore_tags": [ - "b" - ], - "editors": [ - "kyzh", - "tacite" - ], - "editors_tags": [ - "kiliweb", - "openfoodfacts-contributors", - "aleene", - "tacite-mass-editor", - "yuka.sY2b0xO6T85zoF3NwEKvlmBZVPXu-gnlBU3miFTQ-NeSIbDaMdUtu4fLGas", - "kyzh", - "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", - "ecoscore-impact-estimator", - "tacite", - "foodless", - "yuka.sY2b0xO6T85zoF3NwEKvllZnctbb-gn-LDr4mHzUyem0FYPXMO5by7b5NKg", - "swipe-studio", - "packbot" - ], - "emb_codes": "", - "emb_codes_20141016": "", - "emb_codes_orig": "", - "emb_codes_tags": [], - "entry_dates_tags": [ - "2015-06-03", - "2015-06", - "2015" - ], - "expiration_date": "11/05/2016", - "food_groups": "en:appetizers", - "food_groups_tags": [ - "en:salty-snacks", - "en:appetizers" - ], - "fruits-vegetables-nuts_100g_estimate": 0, - "generic_name": "", - "generic_name_en": "", - "generic_name_fr": "", - "generic_name_fr_debug_tags": [], - "id": "5060292302201", - "image_front_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", - "image_front_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", - "image_front_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", - "image_ingredients_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg", - "image_ingredients_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg", - "image_ingredients_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg", - "image_nutrition_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg", - "image_nutrition_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg", - "image_nutrition_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg", - "image_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", - "image_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", - "image_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", - "images": { - "1": { - "sizes": { - "100": { - "h": 74, - "w": 100 - }, - "400": { - "h": 296, - "w": 400 - }, - "full": { - "h": 1482, - "w": 2000 - } - }, - "uploaded_t": 1433338177, - "uploader": "kyzh" - }, - "2": { - "sizes": { - "100": { - "h": 74, - "w": 100 - }, - "400": { - "h": 296, - "w": 400 - }, - "full": { - "h": 1482, - "w": 2000 - } - }, - "uploaded_t": 1433338194, - "uploader": "kyzh" - }, - "3": { - "sizes": { - "100": { - "h": 74, - "w": 100 - }, - "400": { - "h": 296, - "w": 400 - }, - "full": { - "h": 1482, - "w": 2000 - } - }, - "uploaded_t": 1433338203, - "uploader": "kyzh" - }, - "4": { - "sizes": { - "100": { - "h": 74, - "w": 100 - }, - "400": { - "h": 296, - "w": 400 - }, - "full": { - "h": 1482, - "w": 2000 - } - }, - "uploaded_t": 1433338215, - "uploader": "kyzh" - }, - "5": { - "sizes": { - "100": { - "h": 74, - "w": 100 - }, - "400": { - "h": 296, - "w": 400 - }, - "full": { - "h": 1482, - "w": 2000 - } - }, - "uploaded_t": 1433338229, - "uploader": "kyzh" - }, - "6": { - "sizes": { - "100": { - "h": 74, - "w": 100 - }, - "400": { - "h": 296, - "w": 400 - }, - "full": { - "h": 1482, - "w": 2000 - } - }, - "uploaded_t": 1433338245, - "uploader": "kyzh" - }, - "7": { - "sizes": { - "100": { - "h": 43, - "w": 100 - }, - "400": { - "h": 171, - "w": 400 - }, - "full": { - "h": 846, - "w": 1974 - } - }, - "uploaded_t": "1508236270", - "uploader": "kiliweb" - }, - "8": { - "sizes": { - "100": { - "h": 100, - "w": 82 - }, - "400": { - "h": 400, - "w": 326 - }, - "full": { - "h": 1140, - "w": 930 - } - }, - "uploaded_t": 1620505759, - "uploader": "kiliweb" - }, - "9": { - "sizes": { - "100": { - "h": 56, - "w": 100 - }, - "400": { - "h": 225, - "w": 400 - }, - "full": { - "h": 569, - "w": 1011 - } - }, - "uploaded_t": 1656075071, - "uploader": "kiliweb" - }, - "front": { - "geometry": "1421x1825-0-95", - "imgid": "1", - "normalize": "false", - "rev": "9", - "sizes": { - "100": { - "h": 100, - "w": 78 - }, - "200": { - "h": 200, - "w": 156 - }, - "400": { - "h": 400, - "w": 311 - }, - "full": { - "h": 1825, - "w": 1421 - } - }, - "white_magic": "true" - }, - "front_en": { - "angle": 0, - "coordinates_image_size": "full", - "geometry": "0x0--1--1", - "imgid": "8", - "normalize": null, - "rev": "23", - "sizes": { - "100": { - "h": 100, - "w": 82 - }, - "200": { - "h": 200, - "w": 163 - }, - "400": { - "h": 400, - "w": 326 - }, - "full": { - "h": 1140, - "w": 930 - } - }, - "white_magic": null, - "x1": "-1", - "x2": "-1", - "y1": "-1", - "y2": "-1" - }, - "ingredients": { - "geometry": "1730x526-125-304", - "imgid": "5", - "normalize": "false", - "ocr": 1, - "orientation": "0", - "rev": "11", - "sizes": { - "100": { - "h": 30, - "w": 100 - }, - "200": { - "h": 61, - "w": 200 - }, - "400": { - "h": 122, - "w": 400 - }, - "full": { - "h": 526, - "w": 1730 - } - }, - "white_magic": "false" - }, - "ingredients_en": { - "geometry": "1730x526-125-304", - "imgid": "5", - "normalize": "false", - "ocr": 1, - "orientation": "0", - "rev": "11", - "sizes": { - "100": { - "h": 30, - "w": 100 - }, - "200": { - "h": 61, - "w": 200 - }, - "400": { - "h": 122, - "w": 400 - }, - "full": { - "h": 526, - "w": 1730 - } - }, - "white_magic": "false" - }, - "nutrition": { - "geometry": "1131x920-150-794", - "imgid": "3", - "normalize": "false", - "ocr": 1, - "orientation": "0", - "rev": "10", - "sizes": { - "100": { - "h": 81, - "w": 100 - }, - "200": { - "h": 163, - "w": 200 - }, - "400": { - "h": 325, - "w": 400 - }, - "full": { - "h": 920, - "w": 1131 - } - }, - "white_magic": "false" - }, - "nutrition_en": { - "angle": 0, - "coordinates_image_size": "full", - "geometry": "0x0--1--1", - "imgid": "9", - "normalize": null, - "rev": "32", - "sizes": { - "100": { - "h": 56, - "w": 100 - }, - "200": { - "h": 113, - "w": 200 - }, - "400": { - "h": 225, - "w": 400 - }, - "full": { - "h": 569, - "w": 1011 - } - }, - "white_magic": null, - "x1": "-1", - "x2": "-1", - "y1": "-1", - "y2": "-1" - } - }, - "informers_tags": [ - "kyzh", - "tacite", - "tacite-mass-editor", - "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", - "openfoodfacts-contributors", - "aleene" - ], - "ingredients": [ - { - "ciqual_food_code": "4003", - "id": "en:potato", - "percent": 54, - "percent_estimate": 54, - "percent_max": 54, - "percent_min": 54, - "processing": "en:dried", - "rank": 1, - "text": "potatoes", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "ciqual_food_code": "17440", - "from_palm_oil": "no", - "id": "en:sunflower-oil", - "percent_estimate": 28.75, - "percent_max": 46, - "percent_min": 11.5, - "rank": 2, - "text": "sunflower oil", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "has_sub_ingredients": "yes", - "id": "en:coating", - "percent_estimate": 8.625, - "percent_max": 33.3333333333333, - "percent_min": 0, - "rank": 3, - "text": "seasoning", - "vegan": "maybe", - "vegetarian": "maybe" - }, - { - "ciqual_food_code": "9520", - "id": "en:rice-flour", - "percent_estimate": 4.3125, - "percent_max": 17.25, - "percent_min": 0, - "rank": 4, - "text": "rice flour", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "id": "en:potato-starch", - "percent_estimate": 4.3125, - "percent_max": 11.5, - "percent_min": 0, - "rank": 5, - "text": "potato starch", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "id": "en:sugar", - "percent_estimate": 4.3125, - "percent_max": 8.7, - "percent_min": 0, - "text": "sugar", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "has_sub_ingredients": "yes", - "id": "en:whey-powder", - "percent_estimate": 2.15625, - "percent_max": 8.7, - "percent_min": 0, - "text": "whey powder", - "vegan": "no", - "vegetarian": "maybe" - }, - { - "ciqual_food_code": "11058", - "id": "en:salt", - "percent_estimate": 1.05, - "percent_max": 2.1, - "percent_min": 0, - "text": "salt", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "ciqual_food_code": "20034", - "id": "en:onion", - "percent_estimate": 0.553125, - "percent_max": 2.1, - "percent_min": 0, - "processing": "en:powder", - "text": "onion", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "id": "en:yeast-powder", - "percent_estimate": 0.2765625, - "percent_max": 2.1, - "percent_min": 0, - "text": "yeast powder", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "ciqual_food_code": "11000", - "id": "en:garlic", - "percent_estimate": 0.13828125, - "percent_max": 2.1, - "percent_min": 0, - "processing": "en:powder", - "text": "garlic", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "ciqual_food_code": "20047", - "id": "en:tomato", - "percent_estimate": 0.0691406250000002, - "percent_max": 2.1, - "percent_min": 0, - "processing": "en:powder", - "text": "tomato", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "id": "en:oak-smoked-sea-salti-yeast-extract", - "percent_estimate": 0.0345703124999996, - "percent_max": 2.1, - "percent_min": 0, - "text": "Oak smoked sea salti yeast extract" - }, - { - "id": "en:flavouring", - "percent_estimate": 0.0172851562499998, - "percent_max": 2.1, - "percent_min": 0, - "text": "flavourings", - "vegan": "maybe", - "vegetarian": "maybe" - }, - { - "id": "en:spice", - "percent_estimate": 0.00864257812500036, - "percent_max": 2.1, - "percent_min": 0, - "text": "spices", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "has_sub_ingredients": "yes", - "id": "en:acid", - "percent_estimate": 0.00432128906250018, - "percent_max": 2.1, - "percent_min": 0, - "text": "acid" - }, - { - "has_sub_ingredients": "yes", - "id": "en:colour", - "percent_estimate": 0.00432128906249929, - "percent_max": 2.1, - "percent_min": 0, - "text": "colour" - }, - { - "id": "en:milk", - "percent_estimate": 2.15625, - "percent_max": 8.7, - "percent_min": 0, - "text": "milk", - "vegan": "no", - "vegetarian": "yes" - }, - { - "id": "en:e330", - "percent_estimate": 0.00432128906250018, - "percent_max": 2.1, - "percent_min": 0, - "text": "citric acid", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "id": "en:e160c", - "percent_estimate": 0.00432128906249929, - "percent_max": 2.1, - "percent_min": 0, - "text": "paprika extract", - "vegan": "yes", - "vegetarian": "yes" - } - ], - "ingredients_analysis": { - "en:non-vegan": [ - "en:whey-powder", - "en:milk" - ], - "en:palm-oil-content-unknown": [ - "en:oak-smoked-sea-salti-yeast-extract" - ], - "en:vegan-status-unknown": [ - "en:oak-smoked-sea-salti-yeast-extract" - ], - "en:vegetarian-status-unknown": [ - "en:oak-smoked-sea-salti-yeast-extract" - ] - }, - "ingredients_analysis_tags": [ - "en:palm-oil-free", - "en:non-vegan", - "en:vegetarian" - ], - "ingredients_debug": [ - "54% dried potatoes", - ",", - null, - null, - null, - " sunflower oil", - ",", - null, - null, - null, - " seasoning ", - "(", - "(", - null, - null, - "sugar", - ",", - null, - null, - null, - " whey powder ", - "[", - "[", - null, - null, - "milk]", - ",", - null, - null, - null, - " salt", - ",", - null, - null, - null, - " onion powder", - ",", - null, - null, - null, - " yeast powder", - ",", - null, - null, - null, - " garlic powder", - ",", - null, - null, - null, - " tomato powder", - ",", - null, - null, - null, - " Oak smoked sea salti yeast extract", - ",", - null, - null, - null, - " flavourings", - ",", - null, - null, - null, - " spices", - ",", - null, - null, - null, - " acid", - ":", - ":", - null, - null, - " citric acid", - ",", - null, - null, - null, - " colour", - ":", - ":", - null, - null, - " paprika extract)", - ",", - null, - null, - null, - " rice flour", - ",", - null, - null, - null, - " potato starch." - ], - "ingredients_from_or_that_may_be_from_palm_oil_n": 0, - "ingredients_from_palm_oil_n": 0, - "ingredients_from_palm_oil_tags": [], - "ingredients_hierarchy": [ - "en:potato", - "en:vegetable", - "en:root-vegetable", - "en:tuber", - "en:sunflower-oil", - "en:oil-and-fat", - "en:spice", - "en:condiment", - "en:acid", - "en:colour", - "en:milk", - "en:e330", - "en:e160c" - ], - "ingredients_ids_debug": [ - "54-dried-potatoes", - "sunflower-oil", - "seasoning", - "sugar", - "colour", - "paprika-extract", - "rice-flour", - "potato-starch" - ], - "ingredients_n": 20, - "ingredients_n_tags": [ - "20", - "11-20" - ], - "ingredients_original_tags": [ - "en:potato", - "en:sunflower-oil", - "en:coating", - "en:rice-flour", - "en:potato-starch", - "en:sugar", - "en:whey-powder", - "en:salt", - "en:onion", - "en:yeast-powder", - "en:garlic", - "en:tomato", - "en:oak-smoked-sea-salti-yeast-extract", - "en:flavouring", - "en:spice", - "en:acid", - "en:colour", - "en:milk", - "en:e330", - "en:e160c" - ], - "ingredients_percent_analysis": 1, - "ingredients_tags": [ - "en:potato", - "en:vegetable", - "en:root-vegetable", - "en:milk", - "en:e330", - "en:e160c" - ], - "ingredients_text": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", - "ingredients_text_debug": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", - "ingredients_text_debug_tags": [], - "ingredients_text_en": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", - "ingredients_text_fr": "", - "ingredients_text_fr_debug_tags": [], - "ingredients_text_with_allergens": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", - "ingredients_text_with_allergens_en": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", - "ingredients_that_may_be_from_palm_oil_n": 0, - "ingredients_that_may_be_from_palm_oil_tags": [], - "ingredients_with_specified_percent_n": 1, - "ingredients_with_specified_percent_sum": 54, - "ingredients_with_unspecified_percent_n": 15, - "ingredients_with_unspecified_percent_sum": 46, - "ingredients_without_ciqual_codes": [ - "en:e160c", - "en:e330", - "en:flavouring", - "en:milk", - "en:oak-smoked-sea-salti-yeast-extract", - "en:potato-starch", - "en:spice", - "en:sugar", - "en:yeast-powder" - ], - "ingredients_without_ciqual_codes_n": 9, - "interface_version_created": "20120622", - "interface_version_modified": "20190830", - "known_ingredients_n": 36, - "labels": "Vegetarian, No preservatives, No artificial anything", - "labels_hierarchy": [ - "en:vegetarian", - "en:no-preservatives", - "en:No artificial anything" - ], - "labels_lc": "en", - "labels_old": "Vegetarian,No preservatives,No artificial anything", - "labels_tags": [ - "en:vegetarian", - "en:no-preservatives", - "en:no-artificial-anything" - ], - "lang": "en", - "languages": { - "en:english": 5 - }, - "languages_codes": { - "en": 5 - }, - "languages_hierarchy": [ - "en:english" - ], - "languages_tags": [ - "en:english", - "en:1" - ], - "last_edit_dates_tags": [ - "2023-03-24", - "2023-03", - "2023" - ], - "last_editor": "aleene", - "last_image_dates_tags": [ - "2022-06-24", - "2022-06", - "2022" - ], - "last_image_t": 1656075071, - "last_modified_by": "aleene", - "last_modified_t": 1679645675, - "lc": "en", - "link": "", - "main_countries_tags": [], - "manufacturing_places": "European Union", - "manufacturing_places_tags": [ - "european-union" - ], - "max_imgid": "9", - "minerals_prev_tags": [], - "minerals_tags": [], - "misc_tags": [ - "en:nutriscore-computed", - "en:nutrition-fruits-vegetables-nuts-from-category", - "en:nutrition-fruits-vegetables-nuts-from-category-en-potato-crisps-in-sunflower-oil", - "en:nutrition-fruits-vegetables-legumes-from-category", - "en:nutrition-fruits-vegetables-legumes-from-category-en-potato-crisps-in-sunflower-oil", - "en:nutriscore-2021-same-as-2023", - "en:nutriscore-2021-d-2023-d", - "en:packagings-number-of-components-2", - "en:packagings-not-complete", - "en:packagings-not-empty-but-not-complete", - "en:packagings-not-empty", - "en:ecoscore-extended-data-computed", - "en:ecoscore-extended-data-version-4", - "en:ecoscore-missing-data-warning", - "en:ecoscore-missing-data-labels", - "en:ecoscore-missing-data-origins", - "en:ecoscore-computed", - "en:ecoscore-changed" - ], - "no_nutrition_data": "", - "nova_group": 4, - "nova_group_debug": "", - "nova_groups": "4", - "nova_groups_markers": { - "3": [ - [ - "categories", - "en:salty-snacks" - ], - [ - "ingredients", - "en:salt" - ], - [ - "ingredients", - "en:starch" - ], - [ - "ingredients", - "en:sugar" - ], - [ - "ingredients", - "en:vegetable-oil" - ] - ], - "4": [ - [ - "additives", - "en:e160c" - ], - [ - "ingredients", - "en:colour" - ], - [ - "ingredients", - "en:flavouring" - ], - [ - "ingredients", - "en:whey" - ] - ] - }, - "nova_groups_tags": [ - "en:4-ultra-processed-food-and-drink-products" - ], - "nucleotides_prev_tags": [], - "nucleotides_tags": [], - "nutrient_levels": { - "fat": "moderate", - "salt": "high", - "saturated-fat": "low", - "sugars": "moderate" - }, - "nutrient_levels_tags": [ - "en:fat-in-moderate-quantity", - "en:saturated-fat-in-low-quantity", - "en:sugars-in-moderate-quantity", - "en:salt-in-high-quantity" - ], - "nutriments": { - "carbohydrates": 62, - "carbohydrates_100g": 62, - "carbohydrates_serving": 14.3, - "carbohydrates_unit": "g", - "carbohydrates_value": 62, - "carbon-footprint-from-known-ingredients_100g": 32.4, - "carbon-footprint-from-known-ingredients_product": 7.45, - "salt": 2.1, - "salt_100g": 2.1, - "salt_serving": 0.483, - "salt_unit": "g", - "salt_value": 2.1, - "saturated-fat": 1.4, - "saturated-fat_100g": 1.4, - "saturated-fat_serving": 0.322, - "saturated-fat_unit": "g", - "saturated-fat_value": 1.4, - "sodium": 0.84, - "sodium_100g": 0.84, - "sodium_serving": 0.193, - "sodium_unit": "g", - "sodium_value": 0.84, - "sugars": 8.7, - "sugars_100g": 8.7, - "sugars_serving": 2, - "sugars_unit": "g", - "sugars_value": 8.7 - }, - "nutriscore": { - "2021": { - "category_available": 1, - "data": { - "energy": 1759, - "energy_points": 5, - "energy_value": 1759, - "fiber": 3.9, - "fiber_points": 4, - "sugars": 8.7, - "sugars_points": 1, - "sugars_value": 8.7 - }, - "grade": "d", - "nutrients_available": 1, - "nutriscore_applicable": 1, - "nutriscore_computed": 1, - "score": 12 - }, - "2023": { - "category_available": 1, - "data": { - "count_proteins": 0, - "count_proteins_reason": "negative_points_more_than_11", - "energy": 1759, - "is_red_meat_product": 0, - "is_water": 0, - "negative_nutrients": [ - "energy", - "sugars", - "saturated_fat", - "salt", - "non_nutritive_sweeteners" - ], - "negative_points": 18, - "positive_nutrients": [ - "fruits_vegetables_legumes", - "fiber" - ], - "positive_points": 1, - "proteins": 5.7, - "proteins_points": 2, - "salt": 2.1, - "salt_points": 10, - "saturated_fat": 1.4, - "saturated_fat_points": 1, - "sugars": 8.7, - "sugars_points": 2 - }, - "grade": "d", - "nutrients_available": 1, - "nutriscore_applicable": 1, - "nutriscore_computed": 1, - "score": 17 - } - }, - "nutriscore_2021_tags": [ - "d" - ], - "nutriscore_2023_tags": [ - "d" - ], - "nutriscore_data": { - "energy": 1759, - "energy_points": 5, - "energy_value": 1759, - "fiber": 3.9, - "fiber_points": 4, - "fiber_value": 3.9, - "fruits_vegetables_nuts_colza_walnut_olive_oils": "0", - "fruits_vegetables_nuts_colza_walnut_olive_oils_points": 0, - "fruits_vegetables_nuts_colza_walnut_olive_oils_value": 0, - "grade": "d", - "is_beverage": 0, - "is_cheese": 0, - "is_fat": 0, - "is_water": 0, - "negative_points": 16, - "positive_points": 4, - "proteins": 5.7, - "proteins_points": 3, - "proteins_value": 5.7, - "saturated_fat": 1.4, - "saturated_fat_points": 1, - "saturated_fat_value": 1.4, - "score": 12, - "sodium": 840, - "sodium_points": 9, - "sodium_value": 840, - "sugars": 8.7, - "sugars_points": 1, - "sugars_value": 8.7 - }, - "nutriscore_grade": "d", - "nutriscore_score": 12, - "nutriscore_score_opposite": -12, - "nutriscore_tags": [ - "d" - ], - "nutriscore_version": "2021", - "nutrition_data": "on", - "nutrition_data_per": "100g", - "nutrition_data_prepared": "", - "nutrition_data_prepared_per": "100g", - "nutrition_grade_fr": "d", - "nutrition_grades": "d", - "nutrition_grades_tags": [ - "d" - ], - "nutrition_score_beverage": 0, - "nutrition_score_debug": "", - "obsolete": "", - "obsolete_since_date": "", - "origin": "", - "origin_en": "", - "origins": "", - "origins_hierarchy": [], - "origins_lc": "en", - "origins_old": "", - "origins_tags": [], - "other_nutritional_substances_tags": [], - "packaging": "Plastic,Mixed plastic film-packet", - "packaging_hierarchy": [ - "en:plastic", - "en:Mixed plastic film-packet" - ], - "packaging_lc": "en", - "packaging_materials_tags": [ - "en:plastic" - ], - "packaging_old": "Plastic, Mixed plastic-packet", - "packaging_old_before_taxonomization": "Plastic, en:mixed plastic-packet", - "packaging_recycling_tags": [], - "packaging_shapes_tags": [ - "en:packet" - ], - "packaging_tags": [ - "en:plastic", - "en:mixed-plastic-film-packet" - ], - "packaging_text": "", - "packaging_text_en": "", - "packagings": [ - { - "material": "en:plastic", - "shape": "en:packet" - }, - { - "material": "en:plastic", - "shape": "en:packet" - } - ], - "packagings_complete": 0, - "packagings_materials": { - "all": {}, - "en:plastic": {} - }, - "packagings_n": 2, - "photographers_tags": [ - "kyzh", - "kiliweb" - ], - "pnns_groups_1": "Salty snacks", - "pnns_groups_1_tags": [ - "salty-snacks", - "known" - ], - "pnns_groups_2": "Appetizers", - "pnns_groups_2_tags": [ - "appetizers", - "known" - ], - "popularity_key": 21900000007, - "popularity_tags": [ - "bottom-25-percent-scans-2019", - "bottom-20-percent-scans-2019", - "top-100000-hk-scans-2022", - "top-10000-us-scans-2022", - "top-50000-us-scans-2022", - "top-100000-us-scans-2022" - ], - "product_name": "Barbeque Potato Chips", - "product_name_en": "Barbeque Potato Chips", - "product_name_fr": "", - "product_name_fr_debug_tags": [], - "product_quantity": "23", - "purchase_places": "", - "purchase_places_tags": [], - "quantity": "23 g", - "removed_countries_tags": [], - "rev": 33, - "scans_n": 6, - "selected_images": { - "front": { - "display": { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg" - }, - "small": { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg" - }, - "thumb": { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg" - } - }, - "ingredients": { - "display": { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg" - }, - "small": { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg" - }, - "thumb": { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg" - } - }, - "nutrition": { - "display": { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg" - }, - "small": { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg" - }, - "thumb": { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg" - } - } - }, - "serving_quantity": "23", - "serving_size": "23 g", - "sortkey": 1535456524, - "states": "en:to-be-completed, en:nutrition-facts-completed, en:ingredients-completed, en:expiration-date-completed, en:packaging-code-to-be-completed, en:characteristics-to-be-completed, en:origins-to-be-completed, en:categories-completed, en:brands-completed, en:packaging-completed, en:quantity-completed, en:product-name-completed, en:photos-to-be-validated, en:packaging-photo-to-be-selected, en:nutrition-photo-selected, en:ingredients-photo-selected, en:front-photo-selected, en:photos-uploaded", - "states_hierarchy": [ - "en:to-be-completed", - "en:nutrition-facts-completed", - "en:ingredients-completed", - "en:ingredients-photo-selected", - "en:front-photo-selected", - "en:photos-uploaded" - ], - "states_tags": [ - "en:to-be-completed", - "en:nutrition-facts-completed", - "en:ingredients-completed", - "en:ingredients-photo-selected", - "en:front-photo-selected", - "en:photos-uploaded" - ], - "stores": "", - "stores_tags": [], - "teams": "swipe-studio", - "teams_tags": [ - "swipe-studio" - ], - "traces": "", - "traces_from_ingredients": "", - "traces_from_user": "(en) ", - "traces_hierarchy": [], - "traces_lc": "en", - "traces_tags": [], - "unique_scans_n": 4, - "unknown_ingredients_n": 1, - "unknown_nutrients_tags": [], - "update_key": "eco20231129", - "vitamins_prev_tags": [], - "vitamins_tags": [], - "weighers_tags": [] - }, - "status": 1, - "status_verbose": "product found" -} diff --git a/test/experimental/food_product.sql b/test/experimental/food_product.sql deleted file mode 100644 index b0829ac..0000000 --- a/test/experimental/food_product.sql +++ /dev/null @@ -1,7044 +0,0 @@ -drop table food_product cascade constraints; -drop table product cascade constraints; -drop table categories_properties cascade constraints; -drop table category_properties cascade constraints; -drop table ecoscore_data cascade constraints; -drop table origins_of_ingredients cascade constraints; -drop table aggregated_origins cascade constraints; -drop table transportation_scores cascade constraints; -drop table transportation_values cascade constraints; -drop table the_values cascade constraints; -drop table packaging cascade constraints; -drop table packagings1 cascade constraints; -drop table production_system cascade constraints; -drop table agribalyse1 cascade constraints; -drop table grades cascade constraints; -drop table missing cascade constraints; -drop table previous_data cascade constraints; -drop table agribalyse2 cascade constraints; -drop table scores cascade constraints; -drop table impact cascade constraints; -drop table likeliest_impacts cascade constraints; -drop table likeliest_recipe cascade constraints; -drop table uncharacterized_ingredients_mass_proportion cascade constraints; -drop table uncharacterized_ingredients_ratio cascade constraints; -drop table front cascade constraints; -drop table full cascade constraints; -drop table front_en cascade constraints; -drop table full cascade constraints; -drop table ingredients1 cascade constraints; -drop table full cascade constraints; -drop table ingredients_en cascade constraints; -drop table full cascade constraints; -drop table nutrition cascade constraints; -drop table full cascade constraints; -drop table nutrition_en cascade constraints; -drop table full cascade constraints; -drop table ingredients2 cascade constraints; -drop table languages cascade constraints; -drop table languages_codes cascade constraints; -drop table nutrient_levels cascade constraints; -drop table nutriments cascade constraints; -drop table nutriscore_data cascade constraints; -drop table packagings2 cascade constraints; -drop table display cascade constraints; -drop table small cascade constraints; -drop table thumb cascade constraints; -drop table display cascade constraints; -drop table small cascade constraints; -drop table thumb cascade constraints; -drop table display cascade constraints; -drop table small cascade constraints; -drop table thumb cascade constraints; --- create tables - -create table packagings2 ( - material varchar2(4000 char), - shape varchar2(4000 char) -); - - -create table full ( - h number, - w number -); - - -create table packagings1 ( - ecoscore_material_score number, - ecoscore_shape_ratio number, - material varchar2(4000 char), - non_recyclable_and_non_biodegradable varchar2(4000 char), - shape varchar2(4000 char) -); - - -create table food_product ( - code varchar2(4000 char), - status number, - status_verbose varchar2(4000 char) -); - - -create table product ( - id varchar2(32 char) not null - constraint product_id_pk primary key, - packagings2_id number - constraint product_packagings2_id_fk - references packagings2, - food_product_id number - constraint product_food_product_id_fk - references food_product, - "_id" number, - "_keywords" varchar2(4000 char), - additives_n number, - additives_old_n number, - additives_old_tags varchar2(4000 char), - additives_original_tags varchar2(4000 char), - additives_prev_original_tags varchar2(4000 char), - additives_tags varchar2(4000 char), - allergens varchar2(4000 char), - allergens_from_ingredients varchar2(4000 char), - allergens_from_user varchar2(4000 char), - allergens_hierarchy varchar2(4000 char), - allergens_lc varchar2(4000 char), - allergens_tags varchar2(4000 char), - brands varchar2(4000 char), - brands_tags varchar2(4000 char), - carbon_footprint_from_known_ingredients_debug varchar2(4000 char), - carbon_footprint_percent_of_known_ingredients number, - categories varchar2(4000 char), - categories_hierarchy varchar2(4000 char), - categories_lc varchar2(4000 char), - categories_old varchar2(4000 char), - categories_properties_tags varchar2(4000 char), - categories_tags varchar2(4000 char), - ciqual_food_name_tags varchar2(4000 char), - code varchar2(4000 char), - codes_tags varchar2(4000 char), - compared_to_category varchar2(4000 char), - complete number, - completeness number, - correctors_tags varchar2(4000 char), - countries varchar2(4000 char), - countries_hierarchy varchar2(4000 char), - countries_lc varchar2(4000 char), - countries_tags varchar2(4000 char), - created_t date, - creator varchar2(4000 char), - data_quality_info_tags varchar2(4000 char), - data_quality_tags varchar2(4000 char), - data_quality_warnings_tags varchar2(4000 char), - data_sources varchar2(4000 char), - data_sources_tags varchar2(4000 char), - debug_param_sorted_langs varchar2(4000 char), - ecoscore_extended_data_version varchar2(4000 char), - ecoscore_grade varchar2(4000 char), - ecoscore_score number, - ecoscore_tags varchar2(4000 char), - editors varchar2(4000 char), - editors_tags varchar2(4000 char), - emb_codes varchar2(4000 char), - emb_codes_20141016 varchar2(4000 char), - emb_codes_orig varchar2(4000 char), - entry_dates_tags varchar2(4000 char), - expiration_date date, - food_groups varchar2(4000 char), - food_groups_tags varchar2(4000 char), - "fruits-vegetables-nuts_100g_estimate" number, - generic_name varchar2(255 char), - generic_name_en varchar2(4000 char), - generic_name_fr varchar2(4000 char), - image_front_small_url varchar2(4000 char), - image_front_thumb_url varchar2(4000 char), - image_front_url varchar2(4000 char), - image_ingredients_small_url varchar2(4000 char), - image_ingredients_thumb_url varchar2(4000 char), - image_ingredients_url varchar2(4000 char), - image_nutrition_small_url varchar2(4000 char), - image_nutrition_thumb_url varchar2(4000 char), - image_nutrition_url varchar2(4000 char), - image_small_url varchar2(4000 char), - image_thumb_url varchar2(4000 char), - image_url varchar2(4000 char), - informers_tags varchar2(4000 char), - "en:non-vegan" varchar2(4000 char), - "en:palm-oil-content-unknown" varchar2(4000 char), - "en:vegan-status-unknown" varchar2(4000 char), - "en:vegetarian-status-unknown" varchar2(4000 char), - ingredients_analysis_tags varchar2(4000 char), - ingredients_debug varchar2(4000 char), - ingredients_from_or_that_may_be_from_palm_oil_n number, - ingredients_from_palm_oil_n number, - ingredients_hierarchy varchar2(4000 char), - ingredients_ids_debug varchar2(4000 char), - ingredients_n number, - ingredients_n_tags varchar2(4000 char), - ingredients_original_tags varchar2(4000 char), - ingredients_percent_analysis number, - ingredients_tags varchar2(4000 char), - ingredients_text varchar2(4000 char), - ingredients_text_debug varchar2(4000 char), - ingredients_text_en varchar2(4000 char), - ingredients_text_fr varchar2(4000 char), - ingredients_text_with_allergens varchar2(4000 char), - ingredients_text_with_allergens_en varchar2(4000 char), - ingredients_that_may_be_from_palm_oil_n number, - ingredients_with_specified_percent_n number, - ingredients_with_specified_percent_sum number, - ingredients_with_unspecified_percent_n number, - ingredients_with_unspecified_percent_sum number, - ingredients_without_ciqual_codes varchar2(4000 char), - ingredients_without_ciqual_codes_n number, - interface_version_created varchar2(4000 char), - interface_version_modified varchar2(4000 char), - known_ingredients_n number, - labels varchar2(4000 char), - labels_hierarchy varchar2(4000 char), - labels_lc varchar2(4000 char), - labels_old varchar2(4000 char), - labels_tags varchar2(4000 char), - lang varchar2(4000 char), - languages_hierarchy varchar2(4000 char), - languages_tags varchar2(4000 char), - last_edit_dates_tags varchar2(4000 char), - last_editor varchar2(4000 char), - last_image_dates_tags varchar2(4000 char), - last_image_t number, - last_modified_by varchar2(4000 char), - last_modified_t number, - lc varchar2(4000 char), - link varchar2(4000 char), - manufacturing_places varchar2(4000 char), - manufacturing_places_tags varchar2(4000 char), - max_imgid varchar2(4000 char), - misc_tags varchar2(4000 char), - no_nutrition_data varchar2(4000 char), - nova_group number, - nova_group_debug varchar2(4000 char), - nova_groups varchar2(4000 char), - nova_groups_tags varchar2(4000 char), - nutrient_levels_tags varchar2(4000 char), - nutriscore_2021_tags varchar2(4000 char), - nutriscore_2023_tags varchar2(4000 char), - nutriscore_grade varchar2(4000 char), - nutriscore_score number, - nutriscore_score_opposite number, - nutriscore_tags varchar2(4000 char), - nutriscore_version varchar2(4000 char), - nutrition_data varchar2(4000 char), - nutrition_data_per varchar2(4000 char), - nutrition_data_prepared varchar2(4000 char), - nutrition_data_prepared_per varchar2(4000 char), - nutrition_grade_fr varchar2(4000 char), - nutrition_grades varchar2(4000 char), - nutrition_grades_tags varchar2(4000 char), - nutrition_score_beverage number, - nutrition_score_debug varchar2(4000 char), - obsolete varchar2(4000 char), - obsolete_since_date date, - origin varchar2(4000 char), - origin_en varchar2(4000 char), - origins varchar2(4000 char), - origins_lc varchar2(4000 char), - origins_old varchar2(4000 char), - packaging varchar2(4000 char), - packaging_hierarchy varchar2(4000 char), - packaging_lc varchar2(4000 char), - packaging_materials_tags varchar2(4000 char), - packaging_old varchar2(4000 char), - packaging_old_before_taxonomization varchar2(4000 char), - packaging_shapes_tags varchar2(4000 char), - packaging_tags varchar2(4000 char), - packaging_text varchar2(4000 char), - packaging_text_en varchar2(4000 char), - packagings_complete number, - packagings_n number, - photographers_tags varchar2(4000 char), - pnns_groups_1 varchar2(4000 char), - pnns_groups_1_tags varchar2(4000 char), - pnns_groups_2 varchar2(4000 char), - pnns_groups_2_tags varchar2(4000 char), - popularity_key number, - popularity_tags varchar2(4000 char), - product_name varchar2(255 char), - product_name_en varchar2(4000 char), - product_name_fr varchar2(4000 char), - product_quantity varchar2(4000 char), - purchase_places varchar2(4000 char), - quantity number, - rev number, - scans_n number, - serving_quantity varchar2(4000 char), - serving_size varchar2(4000 char), - sortkey number, - states varchar2(4000 char), - states_hierarchy varchar2(4000 char), - states_tags varchar2(4000 char), - stores varchar2(4000 char), - teams varchar2(4000 char), - teams_tags varchar2(4000 char), - traces varchar2(4000 char), - traces_from_ingredients varchar2(4000 char), - traces_from_user varchar2(4000 char), - traces_lc varchar2(4000 char), - unique_scans_n number, - unknown_ingredients_n number, - update_key varchar2(4000 char) -); - --- table index -create index product_i1 on product (packagings2_id); - -create index product_i2 on product (food_product_id); - - -create table categories_properties ( - product_id varchar2(32 char) - constraint categories_properties_product_id_fk - references product, - "agribalyse_food_code:en" varchar2(4000 char), - "ciqual_food_code:en" varchar2(4000 char) -); - --- table index -create index categories_properties_i1 on categories_properties (product_id); - - -create table category_properties ( - product_id varchar2(32 char) - constraint category_properties_product_id_fk - references product, - "ciqual_food_name:en" varchar2(255 char), - "ciqual_food_name:fr" varchar2(255 char) -); - --- table index -create index category_properties_i1 on category_properties (product_id); - - -create table ecoscore_data ( - product_id varchar2(32 char) - constraint ecoscore_data_product_id_fk - references product, - grade varchar2(4000 char), - missing_data_warning number, - score number, - status varchar2(4000 char) -); - --- table index -create index ecoscore_data_i1 on ecoscore_data (product_id); - - -create table origins_of_ingredients ( - ecoscore_data_id number - constraint origins_of_ingredients_ecoscore_data_id_fk - references ecoscore_data, - epi_score number, - epi_value number, - origins_from_categories varchar2(4000 char), - origins_from_origins_field varchar2(4000 char), - transportation_score number, - transportation_value number, - value number, - warning varchar2(4000 char) -); - --- table index -create index origins_of_ingredients_i1 on origins_of_ingredients (ecoscore_data_id); - - -create table aggregated_origins ( - origins_of_ingredient_id number - constraint aggregated_origins_origins_of_ingredient_id_fk - references origins_of_ingredients, - epi_score varchar2(4000 char), - origin varchar2(4000 char), - percent number, - transportation_score varchar2(4000 char) -); - --- table index -create index aggregated_origins_i1 on aggregated_origins (origins_of_ingredient_id); - - -create table transportation_scores ( - origins_of_ingredient_id number - constraint transportation_scores_origins_of_ingredient_id_fk - references origins_of_ingredients, - ad number, - al number, - va number, - world number, - xk number -); - --- table index -create index transportation_scores_i1 on transportation_scores (origins_of_ingredient_id); - - -create table transportation_values ( - origins_of_ingredient_id number - constraint transportation_values_origins_of_ingredient_id_fk - references origins_of_ingredients, - ad number, - ua number, - uk number, - us number, - va number, - world number, - xk number -); - --- table index -create index transportation_values_i1 on transportation_values (origins_of_ingredient_id); - - -create table the_values ( - origins_of_ingredient_id number - constraint the_values_origins_of_ingredient_id_fk - references origins_of_ingredients, - ad number, - al number, - at number, - uk number, - us number, - va number, - world number, - xk number -); - --- table index -create index the_values_i1 on the_values (origins_of_ingredient_id); - - -create table packaging ( - packagings1_id number - constraint packaging_packagings1_id_fk - references packagings1, - ecoscore_data_id number - constraint packaging_ecoscore_data_id_fk - references ecoscore_data, - non_recyclable_and_non_biodegradable_materials number, - score number, - value number -); - --- table index -create index packaging_i1 on packaging (packagings1_id); - -create index packaging_i2 on packaging (ecoscore_data_id); - - -create table production_system ( - ecoscore_data_id number - constraint production_system_ecoscore_data_id_fk - references ecoscore_data, - value number, - warning varchar2(4000 char) -); - --- table index -create index production_system_i1 on production_system (ecoscore_data_id); - - -create table agribalyse1 ( - ecoscore_data_id number - constraint agribalyse1_ecoscore_data_id_fk - references ecoscore_data, - agribalyse_food_code varchar2(4000 char), - co2_agriculture number, - co2_consumption number, - co2_distribution number, - co2_packaging number, - co2_processing number, - co2_total number, - co2_transportation number, - code varchar2(4000 char), - dqr varchar2(4000 char), - ef_agriculture number, - ef_consumption number, - ef_distribution number, - ef_packaging number, - ef_processing number, - ef_total number, - ef_transportation number, - is_beverage number, - name_en varchar2(255 char), - name_fr varchar2(255 char), - score number, - version varchar2(4000 char) -); - --- table index -create index agribalyse1_i1 on agribalyse1 (ecoscore_data_id); - - -create table grades ( - ecoscore_data_id number - constraint grades_ecoscore_data_id_fk - references ecoscore_data, - ad varchar2(4000 char), - al varchar2(4000 char), - tr varchar2(4000 char), - ua varchar2(4000 char), - uk varchar2(4000 char), - us varchar2(4000 char), - va varchar2(4000 char), - world varchar2(4000 char), - xk varchar2(4000 char) -); - --- table index -create index grades_i1 on grades (ecoscore_data_id); - - -create table missing ( - ecoscore_data_id number - constraint missing_ecoscore_data_id_fk - references ecoscore_data, - labels number, - origins number -); - --- table index -create index missing_i1 on missing (ecoscore_data_id); - - -create table previous_data ( - ecoscore_data_id number - constraint previous_data_ecoscore_data_id_fk - references ecoscore_data, - grade varchar2(4000 char), - score number -); - --- table index -create index previous_data_i1 on previous_data (ecoscore_data_id); - - -create table agribalyse2 ( - previous_data_id number - constraint agribalyse2_previous_data_id_fk - references previous_data, - agribalyse_food_code varchar2(4000 char), - co2_agriculture number, - co2_consumption number, - co2_distribution number, - co2_packaging number, - co2_processing number, - co2_total number, - co2_transportation number, - code varchar2(4000 char), - dqr varchar2(4000 char), - ef_agriculture number, - ef_consumption number, - ef_distribution number, - ef_packaging number, - ef_processing number, - ef_total number, - ef_transportation number, - is_beverage number, - name_en varchar2(255 char), - name_fr varchar2(255 char), - score number -); - --- table index -create index agribalyse2_i1 on agribalyse2 (previous_data_id); - - -create table scores ( - ecoscore_data_id number - constraint scores_ecoscore_data_id_fk - references ecoscore_data, - ad number, - al number, - at number, - va number, - world number, - xk number -); - --- table index -create index scores_i1 on scores (ecoscore_data_id); - - -create table impact ( - product_id varchar2(32 char) - constraint impact_product_id_fk - references product, - ef_single_score_log_stddev number, - mass_ratio_uncharacterized number, - impact varchar2(4000 char), - nutrition varchar2(4000 char), - warnings varchar2(4000 char) -); - --- table index -create index impact_i1 on impact (product_id); - - -create table likeliest_impacts ( - impact_id number - constraint likeliest_impacts_impact_id_fk - references impact, - Climate_change number, - EF_single_score number -); - --- table index -create index likeliest_impacts_i1 on likeliest_impacts (impact_id); - - -create table likeliest_recipe ( - impact_id number - constraint likeliest_recipe_impact_id_fk - references impact, - "en:Oak_smoked_sea_salti_yeast_extract" number, - "en:e160c" number, - "en:e330" number, - "en:flavouring" number, - "en:garlic_powder" number, - "en:milk" number, - "en:onion" number, - "en:potato" number, - "en:potato_starch" number, - "en:rice_flour" number, - "en:salt" number, - "en:spice" number, - "en:sugar" number, - "en:sunflower_oil" number, - "en:tomato_powder" number, - "en:water" number, - "en:yeast_powder" number -); - --- table index -create index likeliest_recipe_i1 on likeliest_recipe (impact_id); - - -create table uncharacterized_ingredients_mass_proportion ( - impact_id number - constraint uncharacterized_ingredients_mass_proportion_impact_id_fk - references impact, - impact number, - nutrition number -); - --- table index -create index uncharacterized_ingredients_mass_proportion_i1 on uncharacterized_ingredients_mass_proportion (impact_id); - - -create table uncharacterized_ingredients_ratio ( - impact_id number - constraint uncharacterized_ingredients_ratio_impact_id_fk - references impact, - impact number, - nutrition number -); - --- table index -create index uncharacterized_ingredients_ratio_i1 on uncharacterized_ingredients_ratio (impact_id); - - -create table front ( - full_id number - constraint front_full_id_fk - references full, - product_id varchar2(32 char) - constraint front_product_id_fk - references product, - geometry varchar2(4000 char), - imgid varchar2(4000 char), - normalize varchar2(4000 char), - rev varchar2(4000 char), - white_magic varchar2(4000 char) -); - --- table index -create index front_i1 on front (full_id); - -create index front_i2 on front (product_id); - - -create table front_en ( - full_id number - constraint front_en_full_id_fk - references full, - product_id varchar2(32 char) - constraint front_en_product_id_fk - references product, - angle number, - coordinates_image_size varchar2(4000 char), - geometry varchar2(4000 char), - imgid varchar2(4000 char), - normalize varchar2(4000 char), - rev varchar2(4000 char), - white_magic varchar2(4000 char), - x1 varchar2(4000 char), - x2 varchar2(4000 char), - y1 varchar2(4000 char), - y2 varchar2(4000 char) -); - --- table index -create index front_en_i1 on front_en (full_id); - -create index front_en_i2 on front_en (product_id); - - -create table ingredients1 ( - full_id number - constraint ingredients1_full_id_fk - references full, - product_id varchar2(32 char) - constraint ingredients1_product_id_fk - references product, - geometry varchar2(4000 char), - imgid varchar2(4000 char), - normalize varchar2(4000 char), - ocr number, - orientation varchar2(4000 char), - rev varchar2(4000 char), - white_magic varchar2(4000 char) -); - --- table index -create index ingredients1_i1 on ingredients1 (full_id); - -create index ingredients1_i2 on ingredients1 (product_id); - - -create table ingredients_en ( - full_id number - constraint ingredients_en_full_id_fk - references full, - product_id varchar2(32 char) - constraint ingredients_en_product_id_fk - references product, - geometry varchar2(4000 char), - imgid varchar2(4000 char), - normalize varchar2(4000 char), - ocr number, - orientation varchar2(4000 char), - rev varchar2(4000 char), - white_magic varchar2(4000 char) -); - --- table index -create index ingredients_en_i1 on ingredients_en (full_id); - -create index ingredients_en_i2 on ingredients_en (product_id); - - -create table nutrition ( - full_id number - constraint nutrition_full_id_fk - references full, - product_id varchar2(32 char) - constraint nutrition_product_id_fk - references product, - geometry varchar2(4000 char), - imgid varchar2(4000 char), - normalize varchar2(4000 char), - ocr number, - orientation varchar2(4000 char), - rev varchar2(4000 char), - white_magic varchar2(4000 char) -); - --- table index -create index nutrition_i1 on nutrition (full_id); - -create index nutrition_i2 on nutrition (product_id); - - -create table nutrition_en ( - full_id number - constraint nutrition_en_full_id_fk - references full, - product_id varchar2(32 char) - constraint nutrition_en_product_id_fk - references product, - angle number, - coordinates_image_size varchar2(4000 char), - geometry varchar2(4000 char), - imgid varchar2(4000 char), - normalize varchar2(4000 char), - rev varchar2(4000 char), - white_magic varchar2(4000 char), - x1 varchar2(4000 char), - x2 varchar2(4000 char), - y1 varchar2(4000 char), - y2 varchar2(4000 char) -); - --- table index -create index nutrition_en_i1 on nutrition_en (full_id); - -create index nutrition_en_i2 on nutrition_en (product_id); - - -create table ingredients2 ( - id varchar2(32 char) not null - constraint ingredients2_id_pk primary key, - product_id varchar2(32 char) - constraint ingredients2_product_id_fk - references product, - ciqual_food_code varchar2(4000 char), - percent number, - percent_estimate number, - percent_max number, - percent_min number, - processing varchar2(4000 char), - rank number, - text varchar2(4000 char), - vegan varchar2(4000 char), - vegetarian varchar2(4000 char) -); - --- table index -create index ingredients2_i1 on ingredients2 (product_id); - - -create table languages ( - product_id varchar2(32 char) - constraint languages_product_id_fk - references product, - "en:english" number -); - --- table index -create index languages_i1 on languages (product_id); - - -create table languages_codes ( - product_id varchar2(32 char) - constraint languages_codes_product_id_fk - references product, - en number -); - --- table index -create index languages_codes_i1 on languages_codes (product_id); - - -create table nutrient_levels ( - product_id varchar2(32 char) - constraint nutrient_levels_product_id_fk - references product, - fat varchar2(4000 char), - salt varchar2(4000 char), - "saturated-fat" varchar2(4000 char), - sugars varchar2(4000 char) -); - --- table index -create index nutrient_levels_i1 on nutrient_levels (product_id); - - -create table nutriments ( - product_id varchar2(32 char) - constraint nutriments_product_id_fk - references product, - carbohydrates number, - carbohydrates_100g number, - carbohydrates_serving number, - carbohydrates_unit varchar2(4000 char), - carbohydrates_value number, - "carbon-footprint-from-known-ingredients_100g" number, - "carbon-footprint-from-known-ingredients_product" number, - salt number, - salt_100g number, - salt_serving number, - salt_unit varchar2(4000 char), - salt_value number, - "saturated-fat" number, - "saturated-fat_100g" number, - "saturated-fat_serving" number, - "saturated-fat_unit" varchar2(4000 char), - "saturated-fat_value" number, - sodium number, - sodium_100g number, - sodium_serving number, - sodium_unit varchar2(4000 char), - sodium_value number, - sugars number, - sugars_100g number, - sugars_serving number, - sugars_unit varchar2(4000 char), - sugars_value number -); - --- table index -create index nutriments_i1 on nutriments (product_id); - - -create table nutriscore_data ( - product_id varchar2(32 char) - constraint nutriscore_data_product_id_fk - references product, - energy number, - energy_points number, - energy_value number, - fiber number, - fiber_points number, - fiber_value number, - fruits_vegetables_nuts_colza_walnut_olive_oils varchar2(4000 char), - fruits_vegetables_nuts_colza_walnut_olive_oils_points number, - fruits_vegetables_nuts_colza_walnut_olive_oils_value number, - grade varchar2(4000 char), - is_beverage number, - is_cheese number, - is_fat number, - is_water number, - negative_points number, - positive_points number, - proteins number, - proteins_points number, - proteins_value number, - saturated_fat number, - saturated_fat_points number, - saturated_fat_value number, - score number, - sodium number, - sodium_points number, - sodium_value number, - sugars number, - sugars_points number, - sugars_value number -); - --- table index -create index nutriscore_data_i1 on nutriscore_data (product_id); - - -create table display ( - product_id varchar2(32 char) - constraint display_product_id_fk - references product, - en varchar2(4000 char) -); - --- table index -create index display_i1 on display (product_id); - - -create table small ( - product_id varchar2(32 char) - constraint small_product_id_fk - references product, - en varchar2(4000 char) -); - --- table index -create index small_i1 on small (product_id); - - -create table thumb ( - product_id varchar2(32 char) - constraint thumb_product_id_fk - references product, - en varchar2(4000 char) -); - --- table index -create index thumb_i1 on thumb (product_id); - - - --- load data - -insert into packagings2 ( - material, - shape -) values ( - 'en:plastic', - 'en:packet' -); -insert into packagings2 ( - material, - shape -) values ( - 'en:plastic', - 'en:packet' -); - -commit; - -insert into full ( - h, - w -) values ( - 1482, - 2000 -); -insert into full ( - h, - w -) values ( - 1482, - 2000 -); -insert into full ( - h, - w -) values ( - 1482, - 2000 -); -insert into full ( - h, - w -) values ( - 1482, - 2000 -); -insert into full ( - h, - w -) values ( - 1482, - 2000 -); -insert into full ( - h, - w -) values ( - 1482, - 2000 -); -insert into full ( - h, - w -) values ( - 846, - 1974 -); -insert into full ( - h, - w -) values ( - 1140, - 930 -); -insert into full ( - h, - w -) values ( - 569, - 1011 -); -insert into full ( - h, - w -) values ( - 1825, - 1421 -); -insert into full ( - h, - w -) values ( - 1140, - 930 -); -insert into full ( - h, - w -) values ( - 526, - 1730 -); -insert into full ( - h, - w -) values ( - 526, - 1730 -); -insert into full ( - h, - w -) values ( - 920, - 1131 -); -insert into full ( - h, - w -) values ( - 569, - 1011 -); - -commit; - -insert into packagings1 ( - ecoscore_material_score, - ecoscore_shape_ratio, - material, - non_recyclable_and_non_biodegradable, - shape -) values ( - 0, - 1, - 'en:plastic', - 'maybe', - 'en:packet' -); -insert into packagings1 ( - ecoscore_material_score, - ecoscore_shape_ratio, - material, - non_recyclable_and_non_biodegradable, - shape -) values ( - 0, - 1, - 'en:plastic', - 'maybe', - 'en:packet' -); - -commit; - -insert into food_product ( - code, - status, - status_verbose -) values ( - '5060292302201', - 1, - 'product found' -); - -commit; - -insert into product ( - id, - packagings2_id, - food_product_id, - "_id", - "_keywords", - additives_n, - additives_old_n, - additives_old_tags, - additives_original_tags, - additives_prev_original_tags, - additives_tags, - allergens, - allergens_from_ingredients, - allergens_from_user, - allergens_hierarchy, - allergens_lc, - allergens_tags, - brands, - brands_tags, - carbon_footprint_from_known_ingredients_debug, - carbon_footprint_percent_of_known_ingredients, - categories, - categories_hierarchy, - categories_lc, - categories_old, - categories_properties_tags, - categories_tags, - ciqual_food_name_tags, - code, - codes_tags, - compared_to_category, - complete, - completeness, - correctors_tags, - countries, - countries_hierarchy, - countries_lc, - countries_tags, - created_t, - creator, - data_quality_info_tags, - data_quality_tags, - data_quality_warnings_tags, - data_sources, - data_sources_tags, - debug_param_sorted_langs, - ecoscore_extended_data_version, - ecoscore_grade, - ecoscore_score, - ecoscore_tags, - editors, - editors_tags, - emb_codes, - emb_codes_20141016, - emb_codes_orig, - entry_dates_tags, - expiration_date, - food_groups, - food_groups_tags, - "fruits-vegetables-nuts_100g_estimate", - generic_name, - generic_name_en, - generic_name_fr, - image_front_small_url, - image_front_thumb_url, - image_front_url, - image_ingredients_small_url, - image_ingredients_thumb_url, - image_ingredients_url, - image_nutrition_small_url, - image_nutrition_thumb_url, - image_nutrition_url, - image_small_url, - image_thumb_url, - image_url, - informers_tags, - "en:non-vegan", - "en:palm-oil-content-unknown", - "en:vegan-status-unknown", - "en:vegetarian-status-unknown", - ingredients_analysis_tags, - ingredients_debug, - ingredients_from_or_that_may_be_from_palm_oil_n, - ingredients_from_palm_oil_n, - ingredients_hierarchy, - ingredients_ids_debug, - ingredients_n, - ingredients_n_tags, - ingredients_original_tags, - ingredients_percent_analysis, - ingredients_tags, - ingredients_text, - ingredients_text_debug, - ingredients_text_en, - ingredients_text_fr, - ingredients_text_with_allergens, - ingredients_text_with_allergens_en, - ingredients_that_may_be_from_palm_oil_n, - ingredients_with_specified_percent_n, - ingredients_with_specified_percent_sum, - ingredients_with_unspecified_percent_n, - ingredients_with_unspecified_percent_sum, - ingredients_without_ciqual_codes, - ingredients_without_ciqual_codes_n, - interface_version_created, - interface_version_modified, - known_ingredients_n, - labels, - labels_hierarchy, - labels_lc, - labels_old, - labels_tags, - lang, - languages_hierarchy, - languages_tags, - last_edit_dates_tags, - last_editor, - last_image_dates_tags, - last_image_t, - last_modified_by, - last_modified_t, - lc, - link, - manufacturing_places, - manufacturing_places_tags, - max_imgid, - misc_tags, - no_nutrition_data, - nova_group, - nova_group_debug, - nova_groups, - nova_groups_tags, - nutrient_levels_tags, - nutriscore_2021_tags, - nutriscore_2023_tags, - nutriscore_grade, - nutriscore_score, - nutriscore_score_opposite, - nutriscore_tags, - nutriscore_version, - nutrition_data, - nutrition_data_per, - nutrition_data_prepared, - nutrition_data_prepared_per, - nutrition_grade_fr, - nutrition_grades, - nutrition_grades_tags, - nutrition_score_beverage, - nutrition_score_debug, - obsolete, - obsolete_since_date, - origin, - origin_en, - origins, - origins_lc, - origins_old, - packaging, - packaging_hierarchy, - packaging_lc, - packaging_materials_tags, - packaging_old, - packaging_old_before_taxonomization, - packaging_shapes_tags, - packaging_tags, - packaging_text, - packaging_text_en, - packagings_complete, - packagings_n, - photographers_tags, - pnns_groups_1, - pnns_groups_1_tags, - pnns_groups_2, - pnns_groups_2_tags, - popularity_key, - popularity_tags, - product_name, - product_name_en, - product_name_fr, - product_quantity, - purchase_places, - quantity, - rev, - scans_n, - serving_quantity, - serving_size, - sortkey, - states, - states_hierarchy, - states_tags, - stores, - teams, - teams_tags, - traces, - traces_from_ingredients, - traces_from_user, - traces_lc, - unique_scans_n, - unknown_ingredients_n, - update_key -) values ( - '5060292302201', - 2, - 1, - 84, - 'N/A', - 2, - 2, - 'N/A', - 'N/A', - 'N/A', - 'N/A', - 'en:milk', - 'en:milk, milk', - '(en) en:milk', - 'N/A', - 'en', - 'N/A', - 'Popchips', - 'N/A', - 'en:potato 54% x 0.6 = 32.4 g - ', - 54, - 'Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil', - 'N/A', - 'en', - 'Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil', - 'N/A', - 'N/A', - 'Travis Ortega', - '5060292302201', - 'N/A', - 'en:potato-crisps-in-sunflower-oil', - 0, - 0.8875, - 'N/A', - 'France,United Kingdom', - 'N/A', - 'en', - 'N/A', - 1433338177, - 'kyzh', - 'N/A', - 'N/A', - 'N/A', - 'App - yuka, Apps, App - Horizon', - 'N/A', - 'N/A', - '4', - 'b', - 67, - 'N/A', - 'N/A', - 'N/A', - '', - '', - '', - 'N/A', - 11/05/2016, - 'en:appetizers', - 'N/A', - 21, - '', - '', - '', - 'https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg', - 'https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg', - 'https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg', - 'https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg', - 'https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg', - 'https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg', - 'https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg', - 'https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg', - 'https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg', - 'https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg', - 'https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg', - 'https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg', - 'N/A', - 'N/A', - 'N/A', - 'N/A', - 'N/A', - 'N/A', - 'N/A', - 0, - 0, - 'N/A', - 'N/A', - 20, - 'N/A', - 'N/A', - 1, - 'N/A', - '54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.', - '54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.', - '54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.', - '', - '54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.', - '54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.', - 0, - 1, - 54, - 15, - 46, - 'N/A', - 9, - '20120622', - '20190830', - 36, - 'Vegetarian, No preservatives, No artificial anything', - 'N/A', - 'en', - 'Vegetarian,No preservatives,No artificial anything', - 'N/A', - 'en', - 'N/A', - 'N/A', - 'N/A', - 'aleene', - 'N/A', - 1656075071, - 'aleene', - 1679645675, - 'en', - '', - 'European Union', - 'N/A', - '9', - 'N/A', - '', - 4, - '', - '4', - 'N/A', - 'N/A', - 'N/A', - 'N/A', - 'd', - 12, - -12, - 'N/A', - '2021', - 'on', - '100g', - '', - '100g', - 'd', - 'd', - 'N/A', - 0, - '', - '', - , - '', - '', - '', - 'en', - '', - 'Plastic,Mixed plastic film-packet', - 'N/A', - 'en', - 'N/A', - 'Plastic, Mixed plastic-packet', - 'Plastic, en:mixed plastic-packet', - 'N/A', - 'N/A', - '', - '', - 0, - 2, - 'N/A', - 'Salty snacks', - 'N/A', - 'Appetizers', - 'N/A', - 21900000007, - 'N/A', - 'Barbeque Potato Chips', - 'Barbeque Potato Chips', - '', - '23', - '', - 23 g, - 33, - 6, - '23', - '23 g', - 1535456524, - 'en:to-be-completed, en:nutrition-facts-completed, en:ingredients-completed, en:expiration-date-completed, en:packaging-code-to-be-completed, en:characteristics-to-be-completed, en:origins-to-be-completed, en:categories-completed, en:brands-completed, en:packaging-completed, en:quantity-completed, en:product-name-completed, en:photos-to-be-validated, en:packaging-photo-to-be-selected, en:nutrition-photo-selected, en:ingredients-photo-selected, en:front-photo-selected, en:photos-uploaded', - 'N/A', - 'N/A', - '', - 'swipe-studio', - 'N/A', - '', - '', - '(en) ', - 'en', - 4, - 1, - 'eco20231129' -); - -commit; - -insert into categories_properties ( - product_id, - "agribalyse_food_code:en", - "ciqual_food_code:en" -) values ( - 1, - 'N/A', - 'N/A' -); - -commit; - -insert into category_properties ( - product_id, - "ciqual_food_name:en", - "ciqual_food_name:fr" -) values ( - 1, - 'Pearl Reed', - 'Pearl Reed' -); - -commit; - -insert into ecoscore_data ( - product_id, - grade, - missing_data_warning, - score, - status -) values ( - 1, - 'b', - 1, - 67, - 'known' -); - -commit; - -insert into origins_of_ingredients ( - ecoscore_data_id, - epi_score, - epi_value, - origins_from_categories, - origins_from_origins_field, - transportation_score, - transportation_value, - value, - warning -) values ( - 1, - 0, - -5, - 'N/A', - 'N/A', - 0, - 0, - -5, - 'origins_are_100_percent_unknown' -); - -commit; - -insert into aggregated_origins ( - origins_of_ingredient_id, - epi_score, - origin, - percent, - transportation_score -) values ( - 1, - '0', - 'en:unknown', - 100, - 'N/A' -); - -commit; - -insert into transportation_scores ( - origins_of_ingredient_id, - ad, - al, - va, - world, - xk -) values ( - 1, - 0, - 0, - 0, - 0, - 0 -); - -commit; - -insert into transportation_values ( - origins_of_ingredient_id, - ad, - ua, - uk, - us, - va, - world, - xk -) values ( - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 -); - -commit; - -insert into the_values ( - origins_of_ingredient_id, - ad, - al, - at, - uk, - us, - va, - world, - xk -) values ( - 1, - 90, - 59, - 89, - 38, - 65, - 52, - 89, - 75 -); - -commit; - -insert into packaging ( - packagings1_id, - ecoscore_data_id, - non_recyclable_and_non_biodegradable_materials, - score, - value -) values ( - 1, - 1, - 2, - -100, - -15 -); - -commit; - -insert into production_system ( - ecoscore_data_id, - value, - warning -) values ( - 1, - 0, - 'no_label' -); - -commit; - -insert into agribalyse1 ( - ecoscore_data_id, - agribalyse_food_code, - co2_agriculture, - co2_consumption, - co2_distribution, - co2_packaging, - co2_processing, - co2_total, - co2_transportation, - code, - dqr, - ef_agriculture, - ef_consumption, - ef_distribution, - ef_packaging, - ef_processing, - ef_total, - ef_transportation, - is_beverage, - name_en, - name_fr, - score, - version -) values ( - 1, - '4004', - 0.82655583, - 0, - 0.019537154, - 0.28154442, - 0.23156851, - 1.543669164, - 0.18446325, - '4004', - '2.45', - 0.14029442, - 0, - 0.004831936, - 0.02370999, - 0.038707917, - 0.223317319, - 0.015773056, - 0, - 'Potato crisps', - 'Chips de pommes de terre, standard', - 87, - '3.1' -); - -commit; - -insert into grades ( - ecoscore_data_id, - ad, - al, - tr, - ua, - uk, - us, - va, - world, - xk -) values ( - 1, - 'b', - 'b', - 'b', - 'b', - 'b', - 'b', - 'b', - 'b', - 'b' -); - -commit; - -insert into missing ( - ecoscore_data_id, - labels, - origins -) values ( - 1, - 1, - 1 -); - -commit; - -insert into previous_data ( - ecoscore_data_id, - grade, - score -) values ( - 1, - 'b', - 63 -); - -commit; - -insert into agribalyse2 ( - previous_data_id, - agribalyse_food_code, - co2_agriculture, - co2_consumption, - co2_distribution, - co2_packaging, - co2_processing, - co2_total, - co2_transportation, - code, - dqr, - ef_agriculture, - ef_consumption, - ef_distribution, - ef_packaging, - ef_processing, - ef_total, - ef_transportation, - is_beverage, - name_en, - name_fr, - score -) values ( - 1, - '4004', - 1.2992636, - 0, - 0.029120657, - 0.28581962, - 0.39294234, - 2.2443641, - 0.23728203, - '4004', - '2.45', - 0.18214682, - 0, - 0.0098990521, - 0.021558384, - 0.057508389, - 0.29200269, - 0.020894187, - 0, - 'Potato crisps', - 'Chips de pommes de terre, standard', - 78 -); - -commit; - -insert into scores ( - ecoscore_data_id, - ad, - al, - at, - va, - world, - xk -) values ( - 1, - 67, - 67, - 67, - 67, - 67, - 67 -); - -commit; - -insert into impact ( - product_id, - ef_single_score_log_stddev, - mass_ratio_uncharacterized, - impact, - nutrition, - warnings -) values ( - 1, - 0.0664290643574977, - 0.0244618467395455, - 'N/A', - 'N/A', - 'N/A' -); - -commit; - -insert into likeliest_impacts ( - impact_id, - Climate_change, - EF_single_score -) values ( - 1, - 0.0835225930657116, - 0.0132996566234689 -); - -commit; - -insert into likeliest_recipe ( - impact_id, - "en:Oak_smoked_sea_salti_yeast_extract", - "en:e160c", - "en:e330", - "en:flavouring", - "en:garlic_powder", - "en:milk", - "en:onion", - "en:potato", - "en:potato_starch", - "en:rice_flour", - "en:salt", - "en:spice", - "en:sugar", - "en:sunflower_oil", - "en:tomato_powder", - "en:water", - "en:yeast_powder" -) values ( - 1, - 56, - 0, - 88, - 14, - 14, - 4, - 21, - 82, - 90, - 48, - 50, - 52, - 63, - 71, - 85, - 59, - 95 -); - -commit; - -insert into uncharacterized_ingredients_mass_proportion ( - impact_id, - impact, - nutrition -) values ( - 1, - 0.0244618467395455, - 0.0106506947223728 -); - -commit; - -insert into uncharacterized_ingredients_ratio ( - impact_id, - impact, - nutrition -) values ( - 1, - 0.3125, - 0.125 -); - -commit; - -insert into front ( - full_id, - product_id, - geometry, - imgid, - normalize, - rev, - white_magic -) values ( - 3, - 1, - 'N/A', - 'N/A', - 'N/A', - 'N/A', - 'N/A' -); - -commit; - -insert into front_en ( - full_id, - product_id, - angle, - coordinates_image_size, - geometry, - imgid, - normalize, - rev, - white_magic, - x1, - x2, - y1, - y2 -) values ( - 6, - '5060292302201', - 0, - 'full', - '0x0--1--1', - '8', - 'N/A', - '23', - 'N/A', - '-1', - '-1', - '-1', - '-1' -); - -commit; - -insert into ingredients1 ( - full_id, - product_id, - geometry, - imgid, - normalize, - ocr, - orientation, - rev, - white_magic -) values ( - 1, - '5060292302201', - '1730x526-125-304', - '5', - 'false', - 1, - '0', - '11', - 'false' -); - -commit; - -insert into ingredients_en ( - full_id, - product_id, - geometry, - imgid, - normalize, - ocr, - orientation, - rev, - white_magic -) values ( - 12, - '5060292302201', - '1730x526-125-304', - '5', - 'false', - 1, - '0', - '11', - 'false' -); - -commit; - -insert into nutrition ( - full_id, - product_id, - geometry, - imgid, - normalize, - ocr, - orientation, - rev, - white_magic -) values ( - 7, - 1, - 'N/A', - 'N/A', - 'N/A', - 72, - 'N/A', - 'N/A', - 'N/A' -); - -commit; - -insert into nutrition_en ( - full_id, - product_id, - angle, - coordinates_image_size, - geometry, - imgid, - normalize, - rev, - white_magic, - x1, - x2, - y1, - y2 -) values ( - 14, - '5060292302201', - 0, - 'full', - '0x0--1--1', - '9', - 'N/A', - '32', - 'N/A', - '-1', - '-1', - '-1', - '-1' -); - -commit; - -insert into ingredients2 ( - id, - product_id, - ciqual_food_code, - percent, - percent_estimate, - percent_max, - percent_min, - processing, - rank, - text, - vegan, - vegetarian -) values ( - '5060292302201', - '5060292302201', - '4003', - 54, - 54, - 54, - 54, - 'en:dried', - 1, - 'potatoes', - 'yes', - 'yes' -); -insert into ingredients2 ( - id, - product_id, - ciqual_food_code, - percent, - percent_estimate, - percent_max, - percent_min, - processing, - rank, - text, - vegan, - vegetarian -) values ( - '5060292302201', - '5060292302201', - '17440', - 39, - 28.75, - 46, - 11.5, - 'N/A', - 2, - 'sunflower oil', - 'yes', - 'yes' -); -insert into ingredients2 ( - id, - product_id, - ciqual_food_code, - percent, - percent_estimate, - percent_max, - percent_min, - processing, - rank, - text, - vegan, - vegetarian -) values ( - '5060292302201', - '5060292302201', - 'N/A', - 68, - 8.625, - 33.3333333333333, - 0, - 'N/A', - 3, - 'seasoning', - 'maybe', - 'maybe' -); -insert into ingredients2 ( - id, - product_id, - ciqual_food_code, - percent, - percent_estimate, - percent_max, - percent_min, - processing, - rank, - text, - vegan, - vegetarian -) values ( - '5060292302201', - '5060292302201', - '9520', - 12, - 4.3125, - 17.25, - 0, - 'N/A', - 4, - 'rice flour', - 'yes', - 'yes' -); -insert into ingredients2 ( - id, - product_id, - ciqual_food_code, - percent, - percent_estimate, - percent_max, - percent_min, - processing, - rank, - text, - vegan, - vegetarian -) values ( - '5060292302201', - '5060292302201', - 'N/A', - 35, - 4.3125, - 11.5, - 0, - 'N/A', - 5, - 'potato starch', - 'yes', - 'yes' -); -insert into ingredients2 ( - id, - product_id, - ciqual_food_code, - percent, - percent_estimate, - percent_max, - percent_min, - processing, - rank, - text, - vegan, - vegetarian -) values ( - '5060292302201', - '5060292302201', - 'N/A', - 48, - 4.3125, - 8.7, - 0, - 'N/A', - 96, - 'sugar', - 'yes', - 'yes' -); -insert into ingredients2 ( - id, - product_id, - ciqual_food_code, - percent, - percent_estimate, - percent_max, - percent_min, - processing, - rank, - text, - vegan, - vegetarian -) values ( - '5060292302201', - '5060292302201', - 'N/A', - 38, - 2.15625, - 8.7, - 0, - 'N/A', - 83, - 'whey powder', - 'no', - 'maybe' -); -insert into ingredients2 ( - id, - product_id, - ciqual_food_code, - percent, - percent_estimate, - percent_max, - percent_min, - processing, - rank, - text, - vegan, - vegetarian -) values ( - '5060292302201', - '5060292302201', - '11058', - 81, - 1.05, - 2.1, - 0, - 'N/A', - 54, - 'salt', - 'yes', - 'yes' -); -insert into ingredients2 ( - id, - product_id, - ciqual_food_code, - percent, - percent_estimate, - percent_max, - percent_min, - processing, - rank, - text, - vegan, - vegetarian -) values ( - '5060292302201', - '5060292302201', - '20034', - 21, - 0.553125, - 2.1, - 0, - 'en:powder', - 83, - 'onion', - 'yes', - 'yes' -); -insert into ingredients2 ( - id, - product_id, - ciqual_food_code, - percent, - percent_estimate, - percent_max, - percent_min, - processing, - rank, - text, - vegan, - vegetarian -) values ( - '5060292302201', - '5060292302201', - 'N/A', - 27, - 0.2765625, - 2.1, - 0, - 'N/A', - 36, - 'yeast powder', - 'yes', - 'yes' -); -insert into ingredients2 ( - id, - product_id, - ciqual_food_code, - percent, - percent_estimate, - percent_max, - percent_min, - processing, - rank, - text, - vegan, - vegetarian -) values ( - '5060292302201', - '5060292302201', - '11000', - 52, - 0.13828125, - 2.1, - 0, - 'en:powder', - 35, - 'garlic', - 'yes', - 'yes' -); -insert into ingredients2 ( - id, - product_id, - ciqual_food_code, - percent, - percent_estimate, - percent_max, - percent_min, - processing, - rank, - text, - vegan, - vegetarian -) values ( - '5060292302201', - '5060292302201', - '20047', - 81, - 0.0691406250000002, - 2.1, - 0, - 'en:powder', - 37, - 'tomato', - 'yes', - 'yes' -); -insert into ingredients2 ( - id, - product_id, - ciqual_food_code, - percent, - percent_estimate, - percent_max, - percent_min, - processing, - rank, - text, - vegan, - vegetarian -) values ( - '5060292302201', - '5060292302201', - 'N/A', - 47, - 0.0345703124999996, - 2.1, - 0, - 'N/A', - 90, - 'Oak smoked sea salti yeast extract', - 'N/A', - 'N/A' -); -insert into ingredients2 ( - id, - product_id, - ciqual_food_code, - percent, - percent_estimate, - percent_max, - percent_min, - processing, - rank, - text, - vegan, - vegetarian -) values ( - '5060292302201', - '5060292302201', - 'N/A', - 3, - 0.0172851562499998, - 2.1, - 0, - 'N/A', - 15, - 'flavourings', - 'maybe', - 'maybe' -); -insert into ingredients2 ( - id, - product_id, - ciqual_food_code, - percent, - percent_estimate, - percent_max, - percent_min, - processing, - rank, - text, - vegan, - vegetarian -) values ( - '5060292302201', - '5060292302201', - 'N/A', - 39, - 0.00864257812500036, - 2.1, - 0, - 'N/A', - 33, - 'spices', - 'yes', - 'yes' -); -insert into ingredients2 ( - id, - product_id, - ciqual_food_code, - percent, - percent_estimate, - percent_max, - percent_min, - processing, - rank, - text, - vegan, - vegetarian -) values ( - '5060292302201', - '5060292302201', - 'N/A', - 28, - 0.00432128906250018, - 2.1, - 0, - 'N/A', - 63, - 'acid', - 'N/A', - 'N/A' -); -insert into ingredients2 ( - id, - product_id, - ciqual_food_code, - percent, - percent_estimate, - percent_max, - percent_min, - processing, - rank, - text, - vegan, - vegetarian -) values ( - '5060292302201', - '5060292302201', - 'N/A', - 89, - 0.00432128906249929, - 2.1, - 0, - 'N/A', - 66, - 'colour', - 'N/A', - 'N/A' -); -insert into ingredients2 ( - id, - product_id, - ciqual_food_code, - percent, - percent_estimate, - percent_max, - percent_min, - processing, - rank, - text, - vegan, - vegetarian -) values ( - '5060292302201', - '5060292302201', - 'N/A', - 92, - 2.15625, - 8.7, - 0, - 'N/A', - 6, - 'milk', - 'no', - 'yes' -); -insert into ingredients2 ( - id, - product_id, - ciqual_food_code, - percent, - percent_estimate, - percent_max, - percent_min, - processing, - rank, - text, - vegan, - vegetarian -) values ( - '5060292302201', - '5060292302201', - 'N/A', - 91, - 0.00432128906250018, - 2.1, - 0, - 'N/A', - 27, - 'citric acid', - 'yes', - 'yes' -); -insert into ingredients2 ( - id, - product_id, - ciqual_food_code, - percent, - percent_estimate, - percent_max, - percent_min, - processing, - rank, - text, - vegan, - vegetarian -) values ( - '5060292302201', - '5060292302201', - 'N/A', - 87, - 0.00432128906249929, - 2.1, - 0, - 'N/A', - 26, - 'paprika extract', - 'yes', - 'yes' -); - -commit; - -insert into languages ( - product_id, - "en:english" -) values ( - '5060292302201', - 63 -); - -commit; - -insert into languages_codes ( - product_id, - en -) values ( - '5060292302201', - 5 -); - -commit; - -insert into nutrient_levels ( - product_id, - fat, - salt, - "saturated-fat", - sugars -) values ( - '5060292302201', - 'moderate', - 'high', - 'N/A', - 'moderate' -); - -commit; - -insert into nutriments ( - product_id, - carbohydrates, - carbohydrates_100g, - carbohydrates_serving, - carbohydrates_unit, - carbohydrates_value, - "carbon-footprint-from-known-ingredients_100g", - "carbon-footprint-from-known-ingredients_product", - salt, - salt_100g, - salt_serving, - salt_unit, - salt_value, - "saturated-fat", - "saturated-fat_100g", - "saturated-fat_serving", - "saturated-fat_unit", - "saturated-fat_value", - sodium, - sodium_100g, - sodium_serving, - sodium_unit, - sodium_value, - sugars, - sugars_100g, - sugars_serving, - sugars_unit, - sugars_value -) values ( - '5060292302201', - 62, - 62, - 14.3, - 'g', - 62, - 63, - 28, - 2.1, - 2.1, - 0.483, - 'g', - 2.1, - 38, - 85, - 52, - 'N/A', - 36, - 0.84, - 0.84, - 0.193, - 'g', - 0.84, - 8.7, - 8.7, - 2, - 'g', - 8.7 -); - -commit; - -insert into nutriscore_data ( - product_id, - energy, - energy_points, - energy_value, - fiber, - fiber_points, - fiber_value, - fruits_vegetables_nuts_colza_walnut_olive_oils, - fruits_vegetables_nuts_colza_walnut_olive_oils_points, - fruits_vegetables_nuts_colza_walnut_olive_oils_value, - grade, - is_beverage, - is_cheese, - is_fat, - is_water, - negative_points, - positive_points, - proteins, - proteins_points, - proteins_value, - saturated_fat, - saturated_fat_points, - saturated_fat_value, - score, - sodium, - sodium_points, - sodium_value, - sugars, - sugars_points, - sugars_value -) values ( - '5060292302201', - 1759, - 5, - 1759, - 3.9, - 4, - 3.9, - '0', - 0, - 0, - 'd', - 0, - 0, - 0, - 0, - 16, - 4, - 5.7, - 3, - 5.7, - 1.4, - 1, - 1.4, - 12, - 840, - 9, - 840, - 8.7, - 1, - 8.7 -); - -commit; - -insert into display ( - en -) values ( - 'https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg' -); -insert into display ( - en -) values ( - 'https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg' -); -insert into display ( - en -) values ( - 'https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg' -); - -commit; - -insert into small ( - en -) values ( - 'https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg' -); -insert into small ( - en -) values ( - 'https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg' -); -insert into small ( - en -) values ( - 'https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg' -); - -commit; - -insert into thumb ( - en -) values ( - 'https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg' -); -insert into thumb ( - en -) values ( - 'https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg' -); -insert into thumb ( - en -) values ( - 'https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg' -); - -commit; - - --- Generated by Quick SQL development 1/30/2024, 11:20:40 AM - -/* - -food_product /insert 1 - code - product /insert 1 - _id - _keywords - additives_n num - additives_old_n num - additives_old_tags - additives_original_tags - additives_prev_original_tags - additives_tags - allergens - allergens_from_ingredients - allergens_from_user - allergens_hierarchy - allergens_lc - allergens_tags - brands - brands_tags - carbon_footprint_from_known_ingredients_debug - carbon_footprint_percent_of_known_ingredients num - categories - categories_hierarchy - categories_lc - categories_old - categories_properties /insert 1 - agribalyse_food_code:en - ciqual_food_code:en - categories_properties_tags - categories_tags - category_properties /insert 1 - ciqual_food_name:en - ciqual_food_name:fr - ciqual_food_name_tags - code - codes_tags - compared_to_category - complete num - completeness num - correctors_tags - countries - countries_hierarchy - countries_lc - countries_tags - created_t num - creator - data_quality_info_tags - data_quality_tags - data_quality_warnings_tags - data_sources - data_sources_tags - debug_param_sorted_langs - ecoscore_data /insert 1 - origins_of_ingredients /insert 1 - aggregated_origins /insert 1 - epi_score - origin - percent num - transportation_score - epi_score num - epi_value num - origins_from_categories - origins_from_origins_field - transportation_score num - transportation_scores /insert 1 - ad num - al num - va num - world num - xk num - transportation_value num - transportation_values /insert 1 - ad num - ua num - uk num - us num - va num - world num - xk num - value num - values /insert 1 - ad num - al num - at num - uk num - us num - va num - world num - xk num - warning - packaging /insert 1 - non_recyclable_and_non_biodegradable_materials num - >packagings1 /insert 2 - ecoscore_material_score num - ecoscore_shape_ratio num - material - non_recyclable_and_non_biodegradable - shape - score num - value num - production_system /insert 1 - value num - warning - agribalyse1 /insert 1 - agribalyse_food_code - co2_agriculture num - co2_consumption num - co2_distribution num - co2_packaging num - co2_processing num - co2_total num - co2_transportation num - code - dqr - ef_agriculture num - ef_consumption num - ef_distribution num - ef_packaging num - ef_processing num - ef_total num - ef_transportation num - is_beverage num - name_en - name_fr - score num - version - grade - grades /insert 1 - ad - al - tr - ua - uk - us - va - world - xk - missing /insert 1 - labels num - origins num - missing_data_warning num - previous_data /insert 1 - agribalyse2 /insert 1 - agribalyse_food_code - co2_agriculture num - co2_consumption num - co2_distribution num - co2_packaging num - co2_processing num - co2_total num - co2_transportation num - code - dqr - ef_agriculture num - ef_consumption num - ef_distribution num - ef_packaging num - ef_processing num - ef_total num - ef_transportation num - is_beverage num - name_en - name_fr - score num - grade - score num - score num - scores /insert 1 - ad num - al num - at num - va num - world num - xk num - status - impact /insert 1 - ef_single_score_log_stddev num - likeliest_impacts /insert 1 - Climate_change num - EF_single_score num - likeliest_recipe /insert 1 - en:Oak_smoked_sea_salti_yeast_extract num - en:e160c num - en:e330 num - en:flavouring num - en:garlic_powder num - en:milk num - en:onion num - en:potato num - en:potato_starch num - en:rice_flour num - en:salt num - en:spice num - en:sugar num - en:sunflower_oil num - en:tomato_powder num - en:water num - en:yeast_powder num - mass_ratio_uncharacterized num - impact - nutrition - uncharacterized_ingredients_mass_proportion /insert 1 - impact num - nutrition num - uncharacterized_ingredients_ratio /insert 1 - impact num - nutrition num - warnings - ecoscore_extended_data_version - ecoscore_grade - ecoscore_score num - ecoscore_tags - editors - editors_tags - emb_codes - emb_codes_20141016 - emb_codes_orig - entry_dates_tags - expiration_date - food_groups - food_groups_tags - fruits-vegetables-nuts_100g_estimate num - generic_name - generic_name_en - generic_name_fr - id vc32 /pk - image_front_small_url - image_front_thumb_url - image_front_url - image_ingredients_small_url - image_ingredients_thumb_url - image_ingredients_url - image_nutrition_small_url - image_nutrition_thumb_url - image_nutrition_url - image_small_url - image_thumb_url - image_url - front /insert 1 - geometry - imgid - normalize - rev - >full /insert 15 - h num - w num - white_magic - front_en /insert 1 - angle num - coordinates_image_size - geometry - imgid - normalize - rev - >full /insert 15 - h num - w num - white_magic - x1 - x2 - y1 - y2 - ingredients1 /insert 1 - geometry - imgid - normalize - ocr num - orientation - rev - >full /insert 15 - h num - w num - white_magic - ingredients_en /insert 1 - geometry - imgid - normalize - ocr num - orientation - rev - >full /insert 15 - h num - w num - white_magic - nutrition /insert 1 - geometry - imgid - normalize - ocr num - orientation - rev - >full /insert 15 - h num - w num - white_magic - nutrition_en /insert 1 - angle num - coordinates_image_size - geometry - imgid - normalize - rev - >full /insert 15 - h num - w num - white_magic - x1 - x2 - y1 - y2 - informers_tags - ingredients2 /insert 20 - ciqual_food_code - id vc32 /pk - percent num - percent_estimate num - percent_max num - percent_min num - processing - rank num - text - vegan - vegetarian - en:non-vegan - en:palm-oil-content-unknown - en:vegan-status-unknown - en:vegetarian-status-unknown - ingredients_analysis_tags - ingredients_debug - ingredients_from_or_that_may_be_from_palm_oil_n num - ingredients_from_palm_oil_n num - ingredients_hierarchy - ingredients_ids_debug - ingredients_n num - ingredients_n_tags - ingredients_original_tags - ingredients_percent_analysis num - ingredients_tags - ingredients_text - ingredients_text_debug - ingredients_text_en - ingredients_text_fr - ingredients_text_with_allergens - ingredients_text_with_allergens_en - ingredients_that_may_be_from_palm_oil_n num - ingredients_with_specified_percent_n num - ingredients_with_specified_percent_sum num - ingredients_with_unspecified_percent_n num - ingredients_with_unspecified_percent_sum num - ingredients_without_ciqual_codes - ingredients_without_ciqual_codes_n num - interface_version_created - interface_version_modified - known_ingredients_n num - labels - labels_hierarchy - labels_lc - labels_old - labels_tags - lang - languages /insert 1 - en:english num - languages_codes /insert 1 - en num - languages_hierarchy - languages_tags - last_edit_dates_tags - last_editor - last_image_dates_tags - last_image_t num - last_modified_by - last_modified_t num - lc - link - manufacturing_places - manufacturing_places_tags - max_imgid - misc_tags - no_nutrition_data - nova_group num - nova_group_debug - nova_groups - nova_groups_tags - nutrient_levels /insert 1 - fat - salt - saturated-fat - sugars - nutrient_levels_tags - nutriments /insert 1 - carbohydrates num - carbohydrates_100g num - carbohydrates_serving num - carbohydrates_unit - carbohydrates_value num - carbon-footprint-from-known-ingredients_100g num - carbon-footprint-from-known-ingredients_product num - salt num - salt_100g num - salt_serving num - salt_unit - salt_value num - saturated-fat num - saturated-fat_100g num - saturated-fat_serving num - saturated-fat_unit - saturated-fat_value num - sodium num - sodium_100g num - sodium_serving num - sodium_unit - sodium_value num - sugars num - sugars_100g num - sugars_serving num - sugars_unit - sugars_value num - nutriscore_2021_tags - nutriscore_2023_tags - nutriscore_data /insert 1 - energy num - energy_points num - energy_value num - fiber num - fiber_points num - fiber_value num - fruits_vegetables_nuts_colza_walnut_olive_oils - fruits_vegetables_nuts_colza_walnut_olive_oils_points num - fruits_vegetables_nuts_colza_walnut_olive_oils_value num - grade - is_beverage num - is_cheese num - is_fat num - is_water num - negative_points num - positive_points num - proteins num - proteins_points num - proteins_value num - saturated_fat num - saturated_fat_points num - saturated_fat_value num - score num - sodium num - sodium_points num - sodium_value num - sugars num - sugars_points num - sugars_value num - nutriscore_grade - nutriscore_score num - nutriscore_score_opposite num - nutriscore_tags - nutriscore_version - nutrition_data - nutrition_data_per - nutrition_data_prepared - nutrition_data_prepared_per - nutrition_grade_fr - nutrition_grades - nutrition_grades_tags - nutrition_score_beverage num - nutrition_score_debug - obsolete - obsolete_since_date - origin - origin_en - origins - origins_lc - origins_old - packaging - packaging_hierarchy - packaging_lc - packaging_materials_tags - packaging_old - packaging_old_before_taxonomization - packaging_shapes_tags - packaging_tags - packaging_text - packaging_text_en - >packagings2 /insert 2 - material - shape - packagings_complete num - packagings_n num - photographers_tags - pnns_groups_1 - pnns_groups_1_tags - pnns_groups_2 - pnns_groups_2_tags - popularity_key num - popularity_tags - product_name - product_name_en - product_name_fr - product_quantity - purchase_places - quantity - rev num - scans_n num - display /insert 3 - en - small /insert 3 - en - thumb /insert 3 - en - display /insert 3 - en - small /insert 3 - en - thumb /insert 3 - en - display /insert 3 - en - small /insert 3 - en - thumb /insert 3 - en - serving_quantity - serving_size - sortkey num - states - states_hierarchy - states_tags - stores - teams - teams_tags - traces - traces_from_ingredients - traces_from_user - traces_lc - unique_scans_n num - unknown_ingredients_n num - update_key - status num - status_verbose - - - - - - -{ - "_keywords": [ - { - "0": "and", - "1": "anything", - "2": "appetizer", - "3": "artificial", - "4": "barbeque", - "5": "beverage", - "6": "potatoe", - "7": "preservative", - "8": "salty", - "9": "snack", - "10": "sunflower", - "11": "vegetarian", - "_id": "5060292302201" - } - ], - "added_countries_tags": [], - "additives_debug_tags": [], - "additives_old_tags": [ - { - "0": "en:e330", - "1": "en:e160c", - "_id": "5060292302201" - } - ], - "additives_original_tags": [ - { - "0": "en:e330", - "1": "en:e160c", - "_id": "5060292302201" - } - ], - "additives_prev_original_tags": [ - { - "0": "en:e330", - "1": "en:e160c", - "_id": "5060292302201" - } - ], - "additives_tags": [ - { - "0": "en:e160c", - "1": "en:e330", - "_id": "5060292302201" - } - ], - "allergens_hierarchy": [ - { - "0": "en:milk", - "_id": "5060292302201" - } - ], - "allergens_tags": [ - { - "0": "en:milk", - "_id": "5060292302201" - } - ], - "amino_acids_prev_tags": [], - "amino_acids_tags": [], - "brands_tags": [ - { - "0": "popchips", - "_id": "5060292302201" - } - ], - "categories_hierarchy": [ - { - "0": "en:plant-based-foods-and-beverages", - "1": "en:plant-based-foods", - "2": "en:snacks", - "3": "en:cereals-and-potatoes", - "4": "en:salty-snacks", - "5": "en:appetizers", - "6": "en:chips-and-fries", - "7": "en:crisps", - "8": "en:potato-crisps", - "9": "en:potato-crisps-in-sunflower-oil", - "_id": "5060292302201" - } - ], - "categories_properties": [ - { - "agribalyse_food_code:en": "4004", - "ciqual_food_code:en": "4004", - "_id": "5060292302201" - } - ], - "categories_properties_tags": [ - { - "0": "all-products", - "1": "categories-known", - "2": "agribalyse-food-code-4004", - "3": "agribalyse-food-code-known", - "4": "agribalyse-proxy-food-code-unknown", - "5": "ciqual-food-code-4004", - "6": "ciqual-food-code-known", - "7": "agribalyse-known", - "8": "agribalyse-4004", - "_id": "5060292302201" - } - ], - "categories_tags": [ - { - "0": "en:plant-based-foods-and-beverages", - "1": "en:plant-based-foods", - "2": "en:snacks", - "3": "en:cereals-and-potatoes", - "4": "en:salty-snacks", - "5": "en:appetizers", - "6": "en:chips-and-fries", - "7": "en:crisps", - "8": "en:potato-crisps", - "9": "en:potato-crisps-in-sunflower-oil", - "_id": "5060292302201" - } - ], - "category_properties": [ - { - "ciqual_food_name:en": "Potato crisps", - "ciqual_food_name:fr": "Chips de pommes de terre, standard", - "_id": "5060292302201" - } - ], - "checkers_tags": [], - "ciqual_food_name_tags": [ - { - "0": "potato-crisps", - "_id": "5060292302201" - } - ], - "cities_tags": [], - "codes_tags": [ - { - "0": "code-13", - "1": "5060292302xxx", - "2": "506029230xxxx", - "3": "50602923xxxxx", - "4": "5060292xxxxxx", - "5": "506029xxxxxxx", - "6": "50602xxxxxxxx", - "7": "5060xxxxxxxxx", - "8": "506xxxxxxxxxx", - "9": "50xxxxxxxxxxx", - "10": "5xxxxxxxxxxxx", - "_id": "5060292302201" - } - ], - "correctors_tags": [ - { - "0": "tacite", - "1": "tacite-mass-editor", - "2": "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", - "3": "openfoodfacts-contributors", - "4": "swipe-studio", - "5": "yuka.sY2b0xO6T85zoF3NwEKvllZnctbb-gn-LDr4mHzUyem0FYPXMO5by7b5NKg", - "6": "kiliweb", - "7": "packbot", - "8": "foodless", - "9": "yuka.sY2b0xO6T85zoF3NwEKvlmBZVPXu-gnlBU3miFTQ-NeSIbDaMdUtu4fLGas", - "10": "aleene", - "_id": "5060292302201" - } - ], - "countries_hierarchy": [ - { - "0": "en:france", - "1": "en:united-kingdom", - "_id": "5060292302201" - } - ], - "countries_tags": [ - { - "0": "en:france", - "1": "en:united-kingdom", - "_id": "5060292302201" - } - ], - "data_quality_bugs_tags": [], - "data_quality_errors_tags": [], - "data_quality_info_tags": [ - { - "0": "en:packaging-data-incomplete", - "1": "en:ingredients-percent-analysis-ok", - "2": "en:carbon-footprint-from-known-ingredients-but-not-from-meat-or-fish", - "3": "en:ecoscore-extended-data-computed", - "4": "en:ecoscore-extended-data-less-precise-than-agribalyse", - "5": "en:food-groups-1-known", - "6": "en:food-groups-2-known", - "7": "en:food-groups-3-unknown", - "_id": "5060292302201" - } - ], - "data_quality_tags": [ - { - "0": "en:packaging-data-incomplete", - "1": "en:ingredients-percent-analysis-ok", - "2": "en:carbon-footprint-from-known-ingredients-but-not-from-meat-or-fish", - "3": "en:ecoscore-extended-data-computed", - "4": "en:ecoscore-extended-data-less-precise-than-agribalyse", - "5": "en:food-groups-1-known", - "6": "en:food-groups-2-known", - "7": "en:food-groups-3-unknown", - "8": "en:nutrition-value-very-low-for-category-energy", - "9": "en:nutrition-value-very-low-for-category-fat", - "10": "en:nutrition-value-very-high-for-category-sugars", - "11": "en:vegetarian-label-but-could-not-confirm-for-all-ingredients", - "12": "en:ecoscore-origins-of-ingredients-origins-are-100-percent-unknown", - "13": "en:ecoscore-production-system-no-label", - "_id": "5060292302201" - } - ], - "data_quality_warnings_tags": [ - { - "0": "en:nutrition-value-very-low-for-category-energy", - "1": "en:nutrition-value-very-low-for-category-fat", - "2": "en:nutrition-value-very-high-for-category-sugars", - "3": "en:vegetarian-label-but-could-not-confirm-for-all-ingredients", - "4": "en:ecoscore-origins-of-ingredients-origins-are-100-percent-unknown", - "5": "en:ecoscore-production-system-no-label", - "_id": "5060292302201" - } - ], - "data_sources_tags": [ - { - "0": "app-yuka", - "1": "apps", - "2": "app-horizon", - "_id": "5060292302201" - } - ], - "debug_param_sorted_langs": [ - { - "0": "en", - "_id": "5060292302201" - } - ], - "aggregated_origins": [ - { - "epi_score": "0", - "origin": "en:unknown", - "percent": 100, - "transportation_score": null, - "_id": "5060292302201" - } - ], - "origins_from_categories": [ - { - "0": "en:unknown", - "_id": "5060292302201" - } - ], - "origins_from_origins_field": [ - { - "0": "en:unknown", - "_id": "5060292302201" - } - ], - "transportation_scores": [ - { - "ad": 0, - "al": 0, - "va": 0, - "world": 0, - "xk": 0, - "_id": "5060292302201" - } - ], - "transportation_values": [ - { - "ad": 0, - "ua": 0, - "uk": 0, - "us": 0, - "va": 0, - "world": 0, - "xk": 0, - "_id": "5060292302201" - } - ], - "values": [ - { - "ad": -5, - "al": -5, - "at": -5, - "uk": -5, - "us": -5, - "va": -5, - "world": -5, - "xk": -5, - "_id": "5060292302201" - } - ], - "origins_of_ingredients": [ - { - "epi_score": 0, - "epi_value": -5, - "transportation_score": 0, - "transportation_value": 0, - "value": -5, - "warning": "origins_are_100_percent_unknown", - "_id": "5060292302201" - } - ], - "packaging_packagings": [ - { - "packaging_id": "5060292302201", - "packagings1_id": 1 - }, - { - "packaging_id": "5060292302201", - "packagings1_id": 2 - } - ], - "packagings1": [ - { - "ecoscore_material_score": 0, - "ecoscore_shape_ratio": 1, - "material": "en:plastic", - "non_recyclable_and_non_biodegradable": "maybe", - "shape": "en:packet", - "id": 1 - }, - { - "ecoscore_material_score": 0, - "ecoscore_shape_ratio": 1, - "material": "en:plastic", - "non_recyclable_and_non_biodegradable": "maybe", - "shape": "en:packet", - "id": 2 - } - ], - "packaging": [ - { - "non_recyclable_and_non_biodegradable_materials": 2, - "score": -100, - "value": -15, - "_id": "5060292302201" - } - ], - "labels": [], - "production_system": [ - { - "value": 0, - "warning": "no_label", - "_id": "5060292302201" - } - ], - "threatened_species": [], - "adjustments": [], - "agribalyse1": [ - { - "agribalyse_food_code": "4004", - "co2_agriculture": 0.82655583, - "co2_consumption": 0, - "co2_distribution": 0.019537154, - "co2_packaging": 0.28154442, - "co2_processing": 0.23156851, - "co2_total": 1.543669164, - "co2_transportation": 0.18446325, - "code": "4004", - "dqr": "2.45", - "ef_agriculture": 0.14029442, - "ef_consumption": 0, - "ef_distribution": 0.004831936, - "ef_packaging": 0.02370999, - "ef_processing": 0.038707917, - "ef_total": 0.223317319, - "ef_transportation": 0.015773056, - "is_beverage": 0, - "name_en": "Potato crisps", - "name_fr": "Chips de pommes de terre, standard", - "score": 87, - "version": "3.1", - "_id": "5060292302201" - } - ], - "grades": [ - { - "ad": "b", - "al": "b", - "tr": "b", - "ua": "b", - "uk": "b", - "us": "b", - "va": "b", - "world": "b", - "xk": "b", - "_id": "5060292302201" - } - ], - "missing": [ - { - "labels": 1, - "origins": 1, - "_id": "5060292302201" - } - ], - "agribalyse2": [ - { - "agribalyse_food_code": "4004", - "co2_agriculture": 1.2992636, - "co2_consumption": 0, - "co2_distribution": 0.029120657, - "co2_packaging": 0.28581962, - "co2_processing": 0.39294234, - "co2_total": 2.2443641, - "co2_transportation": 0.23728203, - "code": "4004", - "dqr": "2.45", - "ef_agriculture": 0.18214682, - "ef_consumption": 0, - "ef_distribution": 0.0098990521, - "ef_packaging": 0.021558384, - "ef_processing": 0.057508389, - "ef_total": 0.29200269, - "ef_transportation": 0.020894187, - "is_beverage": 0, - "name_en": "Potato crisps", - "name_fr": "Chips de pommes de terre, standard", - "score": 78, - "_id": "5060292302201" - } - ], - "previous_data": [ - { - "grade": "b", - "score": 63, - "_id": "5060292302201" - } - ], - "scores": [ - { - "ad": 67, - "al": 67, - "at": 67, - "va": 67, - "world": 67, - "xk": 67, - "_id": "5060292302201" - } - ], - "ecoscore_data": [ - { - "grade": "b", - "missing_data_warning": 1, - "score": 67, - "status": "known", - "_id": "5060292302201" - } - ], - "likeliest_impacts": [ - { - "Climate_change": 0.0835225930657116, - "EF_single_score": 0.0132996566234689, - "_id": "5060292302201" - } - ], - "likeliest_recipe": [ - { - "en:Oak_smoked_sea_salti_yeast_extract": 0.103505496656251, - "en:e160c": 0.10350549665625, - "en:e330": 0.10350549665625, - "en:flavouring": 0.10350549665625, - "en:garlic_powder": 0.103505496656251, - "en:milk": 1.55847864453775, - "en:onion": 0.15510736429208, - "en:potato": 69.2208020730349, - "en:potato_starch": 10.5320407294931, - "en:rice_flour": 13.8595510001351, - "en:salt": 1.3345917157533, - "en:spice": 0.10350549665625, - "en:sugar": 10.2883618334396, - "en:sunflower_oil": 14.1645835312727, - "en:tomato_powder": 0.10350549665625, - "en:water": 6.24510964041154, - "en:yeast_powder": 0.103505496656251, - "_id": "5060292302201" - } - ], - "impact": [ - { - "ef_single_score_log_stddev": 0.0664290643574977, - "mass_ratio_uncharacterized": 0.0244618467395455, - "_id": "5060292302201" - } - ], - "nutrition": [], - "uncharacterized_ingredients": [], - "uncharacterized_ingredients_mass_proportion": [ - { - "impact": 0.0244618467395455, - "nutrition": 0.0106506947223728, - "_id": "5060292302201" - } - ], - "uncharacterized_ingredients_ratio": [ - { - "impact": 0.3125, - "nutrition": 0.125, - "_id": "5060292302201" - } - ], - "warnings": [ - { - "0": "Fermentation agents are present in the product (en:yeast-powder). Carbohydrates and sugars mass balance will not be considered to estimate potential recipes", - "1": "The product has a high number of impact uncharacterized ingredients: 31%", - "_id": "5060292302201" - } - ], - "ecoscore_extended_data": [], - "ecoscore_tags": [ - { - "0": "b", - "_id": "5060292302201" - } - ], - "editors": [ - { - "0": "kyzh", - "1": "tacite", - "_id": "5060292302201" - } - ], - "editors_tags": [ - { - "0": "kiliweb", - "1": "openfoodfacts-contributors", - "2": "aleene", - "3": "tacite-mass-editor", - "4": "yuka.sY2b0xO6T85zoF3NwEKvlmBZVPXu-gnlBU3miFTQ-NeSIbDaMdUtu4fLGas", - "5": "kyzh", - "6": "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", - "7": "ecoscore-impact-estimator", - "8": "tacite", - "9": "foodless", - "10": "yuka.sY2b0xO6T85zoF3NwEKvllZnctbb-gn-LDr4mHzUyem0FYPXMO5by7b5NKg", - "11": "swipe-studio", - "12": "packbot", - "_id": "5060292302201" - } - ], - "emb_codes_tags": [], - "entry_dates_tags": [ - { - "0": "2015-06-03", - "1": "2015-06", - "2": "2015", - "_id": "5060292302201" - } - ], - "food_groups_tags": [ - { - "0": "en:salty-snacks", - "1": "en:appetizers", - "_id": "5060292302201" - } - ], - "generic_name_fr_debug_tags": [], - "sizes": [ - { - "h": 74, - "w": 100, - "id": "5060292302201" - }, - { - "h": 296, - "w": 400, - "id": "5060292302201" - }, - { - "h": 43, - "w": 100, - "id": "5060292302201" - }, - { - "h": 171, - "w": 400, - "id": "5060292302201" - }, - { - "h": 100, - "w": 82, - "id": "5060292302201" - }, - { - "h": 400, - "w": 326, - "id": "5060292302201" - }, - { - "h": 56, - "w": 100, - "id": "5060292302201" - }, - { - "h": 225, - "w": 400, - "id": "5060292302201" - }, - { - "h": 100, - "w": 78, - "id": "5060292302201" - }, - { - "h": 200, - "w": 156, - "id": "5060292302201" - }, - { - "h": 400, - "w": 311, - "id": "5060292302201" - }, - { - "h": 200, - "w": 163, - "id": "5060292302201" - }, - { - "h": 30, - "w": 100, - "id": "5060292302201" - }, - { - "h": 61, - "w": 200, - "id": "5060292302201" - }, - { - "h": 122, - "w": 400, - "id": "5060292302201" - }, - { - "h": 81, - "w": 100, - "id": "5060292302201" - }, - { - "h": 163, - "w": 200, - "id": "5060292302201" - }, - { - "h": 325, - "w": 400, - "id": "5060292302201" - }, - { - "h": 113, - "w": 200, - "id": "5060292302201" - } - ], - "nutrition_en_full": [ - { - "nutrition_en_id": "5060292302201", - "full_id": 3 - }, - { - "nutrition_en_id": "5060292302201", - "full_id": 4 - }, - { - "nutrition_en_id": "5060292302201", - "full_id": 5 - }, - { - "nutrition_en_id": "5060292302201", - "full_id": 6 - }, - { - "nutrition_en_id": "5060292302201", - "full_id": 7 - }, - { - "nutrition_en_id": "5060292302201", - "full_id": 8 - }, - { - "nutrition_en_id": "5060292302201", - "full_id": 9 - }, - { - "nutrition_en_id": "5060292302201", - "full_id": 10 - }, - { - "nutrition_en_id": "5060292302201", - "full_id": 11 - }, - { - "nutrition_en_id": "5060292302201", - "full_id": 12 - }, - { - "nutrition_en_id": "5060292302201", - "full_id": 13 - }, - { - "nutrition_en_id": "5060292302201", - "full_id": 14 - }, - { - "nutrition_en_id": "5060292302201", - "full_id": 15 - }, - { - "nutrition_en_id": "5060292302201", - "full_id": 16 - }, - { - "nutrition_en_id": "5060292302201", - "full_id": 17 - } - ], - "full": [ - { - "h": 1482, - "w": 2000, - "id": 3 - }, - { - "h": 1482, - "w": 2000, - "id": 4 - }, - { - "h": 1482, - "w": 2000, - "id": 5 - }, - { - "h": 1482, - "w": 2000, - "id": 6 - }, - { - "h": 1482, - "w": 2000, - "id": 7 - }, - { - "h": 1482, - "w": 2000, - "id": 8 - }, - { - "h": 846, - "w": 1974, - "id": 9 - }, - { - "h": 1140, - "w": 930, - "id": 10 - }, - { - "h": 569, - "w": 1011, - "id": 11 - }, - { - "h": 1825, - "w": 1421, - "id": 12 - }, - { - "h": 1140, - "w": 930, - "id": 13 - }, - { - "h": 526, - "w": 1730, - "id": 14 - }, - { - "h": 526, - "w": 1730, - "id": 15 - }, - { - "h": 920, - "w": 1131, - "id": 16 - }, - { - "h": 569, - "w": 1011, - "id": 17 - } - ], - "images": [ - { - "uploaded_t": 1433338177, - "uploader": "kyzh", - "id": "5060292302201" - }, - { - "uploaded_t": 1433338194, - "uploader": "kyzh", - "id": "5060292302201" - }, - { - "uploaded_t": 1433338203, - "uploader": "kyzh", - "id": "5060292302201" - }, - { - "uploaded_t": 1433338215, - "uploader": "kyzh", - "id": "5060292302201" - }, - { - "uploaded_t": 1433338229, - "uploader": "kyzh", - "id": "5060292302201" - }, - { - "uploaded_t": 1433338245, - "uploader": "kyzh", - "id": "5060292302201" - }, - { - "uploaded_t": "1508236270", - "uploader": "kiliweb", - "id": "5060292302201" - }, - { - "uploaded_t": 1620505759, - "uploader": "kiliweb", - "id": "5060292302201" - }, - { - "uploaded_t": 1656075071, - "uploader": "kiliweb", - "id": "5060292302201" - } - ], - "front": [], - "front_en": [ - { - "angle": 0, - "coordinates_image_size": "full", - "geometry": "0x0--1--1", - "imgid": "8", - "normalize": null, - "rev": "23", - "white_magic": null, - "x1": "-1", - "x2": "-1", - "y1": "-1", - "y2": "-1", - "id": "5060292302201" - } - ], - "ingredients1": [ - { - "geometry": "1730x526-125-304", - "imgid": "5", - "normalize": "false", - "ocr": 1, - "orientation": "0", - "rev": "11", - "white_magic": "false", - "id": "5060292302201" - } - ], - "ingredients_en": [ - { - "geometry": "1730x526-125-304", - "imgid": "5", - "normalize": "false", - "ocr": 1, - "orientation": "0", - "rev": "11", - "white_magic": "false", - "id": "5060292302201" - } - ], - "nutrition_en": [ - { - "angle": 0, - "coordinates_image_size": "full", - "geometry": "0x0--1--1", - "imgid": "9", - "normalize": null, - "rev": "32", - "white_magic": null, - "x1": "-1", - "x2": "-1", - "y1": "-1", - "y2": "-1", - "id": "5060292302201" - } - ], - "informers_tags": [ - { - "0": "kyzh", - "1": "tacite", - "2": "tacite-mass-editor", - "3": "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", - "4": "openfoodfacts-contributors", - "5": "aleene", - "id": "5060292302201" - } - ], - "ingredients2": [ - { - "ciqual_food_code": "4003", - "id": "5060292302201", - "percent": 54, - "percent_estimate": 54, - "percent_max": 54, - "percent_min": 54, - "processing": "en:dried", - "rank": 1, - "text": "potatoes", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "ciqual_food_code": "17440", - "from_palm_oil": "no", - "id": "5060292302201", - "percent_estimate": 28.75, - "percent_max": 46, - "percent_min": 11.5, - "rank": 2, - "text": "sunflower oil", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "has_sub_ingredients": "yes", - "id": "5060292302201", - "percent_estimate": 8.625, - "percent_max": 33.3333333333333, - "percent_min": 0, - "rank": 3, - "text": "seasoning", - "vegan": "maybe", - "vegetarian": "maybe" - }, - { - "ciqual_food_code": "9520", - "id": "5060292302201", - "percent_estimate": 4.3125, - "percent_max": 17.25, - "percent_min": 0, - "rank": 4, - "text": "rice flour", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "id": "5060292302201", - "percent_estimate": 4.3125, - "percent_max": 11.5, - "percent_min": 0, - "rank": 5, - "text": "potato starch", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "id": "5060292302201", - "percent_estimate": 4.3125, - "percent_max": 8.7, - "percent_min": 0, - "text": "sugar", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "has_sub_ingredients": "yes", - "id": "5060292302201", - "percent_estimate": 2.15625, - "percent_max": 8.7, - "percent_min": 0, - "text": "whey powder", - "vegan": "no", - "vegetarian": "maybe" - }, - { - "ciqual_food_code": "11058", - "id": "5060292302201", - "percent_estimate": 1.05, - "percent_max": 2.1, - "percent_min": 0, - "text": "salt", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "ciqual_food_code": "20034", - "id": "5060292302201", - "percent_estimate": 0.553125, - "percent_max": 2.1, - "percent_min": 0, - "processing": "en:powder", - "text": "onion", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "id": "5060292302201", - "percent_estimate": 0.2765625, - "percent_max": 2.1, - "percent_min": 0, - "text": "yeast powder", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "ciqual_food_code": "11000", - "id": "5060292302201", - "percent_estimate": 0.13828125, - "percent_max": 2.1, - "percent_min": 0, - "processing": "en:powder", - "text": "garlic", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "ciqual_food_code": "20047", - "id": "5060292302201", - "percent_estimate": 0.0691406250000002, - "percent_max": 2.1, - "percent_min": 0, - "processing": "en:powder", - "text": "tomato", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "id": "5060292302201", - "percent_estimate": 0.0345703124999996, - "percent_max": 2.1, - "percent_min": 0, - "text": "Oak smoked sea salti yeast extract" - }, - { - "id": "5060292302201", - "percent_estimate": 0.0172851562499998, - "percent_max": 2.1, - "percent_min": 0, - "text": "flavourings", - "vegan": "maybe", - "vegetarian": "maybe" - }, - { - "id": "5060292302201", - "percent_estimate": 0.00864257812500036, - "percent_max": 2.1, - "percent_min": 0, - "text": "spices", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "has_sub_ingredients": "yes", - "id": "5060292302201", - "percent_estimate": 0.00432128906250018, - "percent_max": 2.1, - "percent_min": 0, - "text": "acid" - }, - { - "has_sub_ingredients": "yes", - "id": "5060292302201", - "percent_estimate": 0.00432128906249929, - "percent_max": 2.1, - "percent_min": 0, - "text": "colour" - }, - { - "id": "5060292302201", - "percent_estimate": 2.15625, - "percent_max": 8.7, - "percent_min": 0, - "text": "milk", - "vegan": "no", - "vegetarian": "yes" - }, - { - "id": "5060292302201", - "percent_estimate": 0.00432128906250018, - "percent_max": 2.1, - "percent_min": 0, - "text": "citric acid", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "id": "5060292302201", - "percent_estimate": 0.00432128906249929, - "percent_max": 2.1, - "percent_min": 0, - "text": "paprika extract", - "vegan": "yes", - "vegetarian": "yes" - } - ], - "en:non-vegan": [ - { - "0": "en:whey-powder", - "1": "en:milk", - "id": "5060292302201" - } - ], - "en:palm-oil-content-unknown": [ - { - "0": "en:oak-smoked-sea-salti-yeast-extract", - "id": "5060292302201" - } - ], - "en:vegan-status-unknown": [ - { - "0": "en:oak-smoked-sea-salti-yeast-extract", - "id": "5060292302201" - } - ], - "en:vegetarian-status-unknown": [ - { - "0": "en:oak-smoked-sea-salti-yeast-extract", - "id": "5060292302201" - } - ], - "ingredients_analysis": [], - "ingredients_analysis_tags": [ - { - "0": "en:palm-oil-free", - "1": "en:non-vegan", - "2": "en:vegetarian", - "id": "5060292302201" - } - ], - "ingredients_debug": [ - { - "0": "54% dried potatoes", - "1": ",", - "2": null, - "3": null, - "4": null, - "5": " sunflower oil", - "6": ",", - "7": null, - "8": null, - "9": null, - "10": " seasoning ", - "11": "(", - "12": "(", - "13": null, - "14": null, - "15": "sugar", - "16": ",", - "17": null, - "18": null, - "19": null, - "20": " whey powder ", - "21": "[", - "22": "[", - "23": null, - "24": null, - "25": "milk]", - "26": ",", - "27": null, - "28": null, - "29": null, - "30": " salt", - "31": ",", - "32": null, - "33": null, - "34": null, - "35": " onion powder", - "36": ",", - "37": null, - "38": null, - "39": null, - "40": " yeast powder", - "41": ",", - "42": null, - "43": null, - "44": null, - "45": " garlic powder", - "46": ",", - "47": null, - "48": null, - "49": null, - "50": " tomato powder", - "51": ",", - "52": null, - "53": null, - "54": null, - "55": " Oak smoked sea salti yeast extract", - "56": ",", - "57": null, - "58": null, - "59": null, - "60": " flavourings", - "61": ",", - "62": null, - "63": null, - "64": null, - "65": " spices", - "66": ",", - "67": null, - "68": null, - "69": null, - "70": " acid", - "71": ":", - "72": ":", - "73": null, - "74": null, - "75": " citric acid", - "76": ",", - "77": null, - "78": null, - "79": null, - "80": " colour", - "81": ":", - "82": ":", - "83": null, - "84": null, - "85": " paprika extract)", - "86": ",", - "87": null, - "88": null, - "89": null, - "90": " rice flour", - "91": ",", - "92": null, - "93": null, - "94": null, - "95": " potato starch.", - "id": "5060292302201" - } - ], - "ingredients_from_palm_oil_tags": [], - "ingredients_hierarchy": [ - { - "0": "en:potato", - "1": "en:vegetable", - "2": "en:root-vegetable", - "3": "en:tuber", - "4": "en:sunflower-oil", - "5": "en:oil-and-fat", - "6": "en:spice", - "7": "en:condiment", - "8": "en:acid", - "9": "en:colour", - "10": "en:milk", - "11": "en:e330", - "12": "en:e160c", - "id": "5060292302201" - } - ], - "ingredients_ids_debug": [ - { - "0": "54-dried-potatoes", - "1": "sunflower-oil", - "2": "seasoning", - "3": "sugar", - "4": "colour", - "5": "paprika-extract", - "6": "rice-flour", - "7": "potato-starch", - "id": "5060292302201" - } - ], - "ingredients_n_tags": [ - { - "0": "20", - "1": "11-20", - "id": "5060292302201" - } - ], - "ingredients_original_tags": [ - { - "0": "en:potato", - "1": "en:sunflower-oil", - "2": "en:coating", - "3": "en:rice-flour", - "4": "en:potato-starch", - "5": "en:sugar", - "6": "en:whey-powder", - "7": "en:salt", - "8": "en:onion", - "9": "en:yeast-powder", - "10": "en:garlic", - "11": "en:tomato", - "12": "en:oak-smoked-sea-salti-yeast-extract", - "13": "en:flavouring", - "14": "en:spice", - "15": "en:acid", - "16": "en:colour", - "17": "en:milk", - "18": "en:e330", - "19": "en:e160c", - "id": "5060292302201" - } - ], - "ingredients_tags": [ - { - "0": "en:potato", - "1": "en:vegetable", - "2": "en:root-vegetable", - "3": "en:milk", - "4": "en:e330", - "5": "en:e160c", - "id": "5060292302201" - } - ], - "ingredients_text_debug_tags": [], - "ingredients_text_fr_debug_tags": [], - "ingredients_that_may_be_from_palm_oil_tags": [], - "ingredients_without_ciqual_codes": [ - { - "0": "en:e160c", - "1": "en:e330", - "2": "en:flavouring", - "3": "en:milk", - "4": "en:oak-smoked-sea-salti-yeast-extract", - "5": "en:potato-starch", - "6": "en:spice", - "7": "en:sugar", - "8": "en:yeast-powder", - "id": "5060292302201" - } - ], - "labels_hierarchy": [ - { - "0": "en:vegetarian", - "1": "en:no-preservatives", - "2": "en:No artificial anything", - "id": "5060292302201" - } - ], - "labels_tags": [ - { - "0": "en:vegetarian", - "1": "en:no-preservatives", - "2": "en:no-artificial-anything", - "id": "5060292302201" - } - ], - "languages": [ - { - "en:english": 5, - "id": "5060292302201" - } - ], - "languages_codes": [ - { - "en": 5, - "id": "5060292302201" - } - ], - "languages_hierarchy": [ - { - "0": "en:english", - "id": "5060292302201" - } - ], - "languages_tags": [ - { - "0": "en:english", - "1": "en:1", - "id": "5060292302201" - } - ], - "last_edit_dates_tags": [ - { - "0": "2023-03-24", - "1": "2023-03", - "2": "2023", - "id": "5060292302201" - } - ], - "last_image_dates_tags": [ - { - "0": "2022-06-24", - "1": "2022-06", - "2": "2022", - "id": "5060292302201" - } - ], - "main_countries_tags": [], - "manufacturing_places_tags": [ - { - "0": "european-union", - "id": "5060292302201" - } - ], - "minerals_prev_tags": [], - "minerals_tags": [], - "misc_tags": [ - { - "0": "en:nutriscore-computed", - "1": "en:nutrition-fruits-vegetables-nuts-from-category", - "2": "en:nutrition-fruits-vegetables-nuts-from-category-en-potato-crisps-in-sunflower-oil", - "3": "en:nutrition-fruits-vegetables-legumes-from-category", - "4": "en:nutrition-fruits-vegetables-legumes-from-category-en-potato-crisps-in-sunflower-oil", - "5": "en:nutriscore-2021-same-as-2023", - "6": "en:nutriscore-2021-d-2023-d", - "7": "en:packagings-number-of-components-2", - "8": "en:packagings-not-complete", - "9": "en:packagings-not-empty-but-not-complete", - "10": "en:packagings-not-empty", - "11": "en:ecoscore-extended-data-computed", - "12": "en:ecoscore-extended-data-version-4", - "13": "en:ecoscore-missing-data-warning", - "14": "en:ecoscore-missing-data-labels", - "15": "en:ecoscore-missing-data-origins", - "16": "en:ecoscore-computed", - "17": "en:ecoscore-changed", - "id": "5060292302201" - } - ], - "nova_groups_markers": [ - { - "0": "categories", - "1": "en:salty-snacks", - "id": "5060292302201" - }, - { - "0": "ingredients", - "1": "en:salt", - "id": "5060292302201" - }, - { - "0": "ingredients", - "1": "en:starch", - "id": "5060292302201" - }, - { - "0": "ingredients", - "1": "en:sugar", - "id": "5060292302201" - }, - { - "0": "ingredients", - "1": "en:vegetable-oil", - "id": "5060292302201" - }, - { - "0": "additives", - "1": "en:e160c", - "id": "5060292302201" - }, - { - "0": "ingredients", - "1": "en:colour", - "id": "5060292302201" - }, - { - "0": "ingredients", - "1": "en:flavouring", - "id": "5060292302201" - }, - { - "0": "ingredients", - "1": "en:whey", - "id": "5060292302201" - } - ], - "nova_groups_tags": [ - { - "0": "en:4-ultra-processed-food-and-drink-products", - "id": "5060292302201" - } - ], - "nucleotides_prev_tags": [], - "nucleotides_tags": [], - "nutrient_levels": [ - { - "fat": "moderate", - "salt": "high", - "saturated-fat": "low", - "sugars": "moderate", - "id": "5060292302201" - } - ], - "nutrient_levels_tags": [ - { - "0": "en:fat-in-moderate-quantity", - "1": "en:saturated-fat-in-low-quantity", - "2": "en:sugars-in-moderate-quantity", - "3": "en:salt-in-high-quantity", - "id": "5060292302201" - } - ], - "nutriments": [ - { - "carbohydrates": 62, - "carbohydrates_100g": 62, - "carbohydrates_serving": 14.3, - "carbohydrates_unit": "g", - "carbohydrates_value": 62, - "carbon-footprint-from-known-ingredients_100g": 32.4, - "carbon-footprint-from-known-ingredients_product": 7.45, - "salt": 2.1, - "salt_100g": 2.1, - "salt_serving": 0.483, - "salt_unit": "g", - "salt_value": 2.1, - "saturated-fat": 1.4, - "saturated-fat_100g": 1.4, - "saturated-fat_serving": 0.322, - "saturated-fat_unit": "g", - "saturated-fat_value": 1.4, - "sodium": 0.84, - "sodium_100g": 0.84, - "sodium_serving": 0.193, - "sodium_unit": "g", - "sodium_value": 0.84, - "sugars": 8.7, - "sugars_100g": 8.7, - "sugars_serving": 2, - "sugars_unit": "g", - "sugars_value": 8.7, - "id": "5060292302201" - } - ], - "data": [ - { - "count_proteins": 0, - "count_proteins_reason": "negative_points_more_than_11", - "energy": 1759, - "is_red_meat_product": 0, - "is_water": 0, - "negative_points": 18, - "positive_points": 1, - "proteins": 5.7, - "proteins_points": 2, - "salt": 2.1, - "salt_points": 10, - "saturated_fat": 1.4, - "saturated_fat_points": 1, - "sugars": 8.7, - "sugars_points": 2, - "id": "5060292302201" - } - ], - "nutriscore": [ - { - "category_available": 1, - "grade": "d", - "nutrients_available": 1, - "nutriscore_applicable": 1, - "nutriscore_computed": 1, - "score": 12, - "id": "5060292302201" - }, - { - "category_available": 1, - "grade": "d", - "nutrients_available": 1, - "nutriscore_applicable": 1, - "nutriscore_computed": 1, - "score": 17, - "id": "5060292302201" - } - ], - "negative_nutrients": [ - { - "0": "energy", - "1": "sugars", - "2": "saturated_fat", - "3": "salt", - "4": "non_nutritive_sweeteners", - "id": "5060292302201" - } - ], - "positive_nutrients": [ - { - "0": "fruits_vegetables_legumes", - "1": "fiber", - "id": "5060292302201" - } - ], - "nutriscore_2021_tags": [ - { - "0": "d", - "id": "5060292302201" - } - ], - "nutriscore_2023_tags": [ - { - "0": "d", - "id": "5060292302201" - } - ], - "nutriscore_data": [ - { - "energy": 1759, - "energy_points": 5, - "energy_value": 1759, - "fiber": 3.9, - "fiber_points": 4, - "fiber_value": 3.9, - "fruits_vegetables_nuts_colza_walnut_olive_oils": "0", - "fruits_vegetables_nuts_colza_walnut_olive_oils_points": 0, - "fruits_vegetables_nuts_colza_walnut_olive_oils_value": 0, - "grade": "d", - "is_beverage": 0, - "is_cheese": 0, - "is_fat": 0, - "is_water": 0, - "negative_points": 16, - "positive_points": 4, - "proteins": 5.7, - "proteins_points": 3, - "proteins_value": 5.7, - "saturated_fat": 1.4, - "saturated_fat_points": 1, - "saturated_fat_value": 1.4, - "score": 12, - "sodium": 840, - "sodium_points": 9, - "sodium_value": 840, - "sugars": 8.7, - "sugars_points": 1, - "sugars_value": 8.7, - "id": "5060292302201" - } - ], - "nutriscore_tags": [ - { - "0": "d", - "id": "5060292302201" - } - ], - "nutrition_grades_tags": [ - { - "0": "d", - "id": "5060292302201" - } - ], - "origins_hierarchy": [], - "origins_tags": [], - "other_nutritional_substances_tags": [], - "packaging_hierarchy": [ - { - "0": "en:plastic", - "1": "en:Mixed plastic film-packet", - "id": "5060292302201" - } - ], - "packaging_materials_tags": [ - { - "0": "en:plastic", - "id": "5060292302201" - } - ], - "packaging_recycling_tags": [], - "packaging_shapes_tags": [ - { - "0": "en:packet", - "id": "5060292302201" - } - ], - "packaging_tags": [ - { - "0": "en:plastic", - "1": "en:mixed-plastic-film-packet", - "id": "5060292302201" - } - ], - "product_packagings": [ - { - "product_id": "5060292302201", - "packagings2_id": 18 - }, - { - "product_id": "5060292302201", - "packagings2_id": 19 - } - ], - "packagings2": [ - { - "material": "en:plastic", - "shape": "en:packet", - "id": 18 - }, - { - "material": "en:plastic", - "shape": "en:packet", - "id": 19 - } - ], - "all": [], - "en:plastic": [], - "packagings_materials": [], - "photographers_tags": [ - { - "0": "kyzh", - "1": "kiliweb", - "id": "5060292302201" - } - ], - "pnns_groups_1_tags": [ - { - "0": "salty-snacks", - "1": "known", - "id": "5060292302201" - } - ], - "pnns_groups_2_tags": [ - { - "0": "appetizers", - "1": "known", - "id": "5060292302201" - } - ], - "popularity_tags": [ - { - "0": "bottom-25-percent-scans-2019", - "1": "bottom-20-percent-scans-2019", - "2": "top-100000-hk-scans-2022", - "3": "top-10000-us-scans-2022", - "4": "top-50000-us-scans-2022", - "5": "top-100000-us-scans-2022", - "id": "5060292302201" - } - ], - "product_name_fr_debug_tags": [], - "purchase_places_tags": [], - "removed_countries_tags": [], - "display": [ - { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", - "id": "5060292302201" - }, - { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg", - "id": "5060292302201" - }, - { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg", - "id": "5060292302201" - } - ], - "small": [ - { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", - "id": "5060292302201" - }, - { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg", - "id": "5060292302201" - }, - { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg", - "id": "5060292302201" - } - ], - "thumb": [ - { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", - "id": "5060292302201" - }, - { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg", - "id": "5060292302201" - }, - { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg", - "id": "5060292302201" - } - ], - "ingredients-1": [], - "selected_images": [], - "states_hierarchy": [ - { - "0": "en:to-be-completed", - "1": "en:nutrition-facts-completed", - "2": "en:ingredients-completed", - "3": "en:ingredients-photo-selected", - "4": "en:front-photo-selected", - "5": "en:photos-uploaded", - "id": "5060292302201" - } - ], - "states_tags": [ - { - "0": "en:to-be-completed", - "1": "en:nutrition-facts-completed", - "2": "en:ingredients-completed", - "3": "en:ingredients-photo-selected", - "4": "en:front-photo-selected", - "5": "en:photos-uploaded", - "id": "5060292302201" - } - ], - "stores_tags": [], - "teams_tags": [ - { - "0": "swipe-studio", - "id": "5060292302201" - } - ], - "traces_hierarchy": [], - "traces_tags": [], - "unknown_nutrients_tags": [], - "vitamins_prev_tags": [], - "vitamins_tags": [], - "weighers_tags": [], - "product": [ - { - "_id": "5060292302201", - "additives_n": 2, - "additives_old_n": 2, - "allergens": "en:milk", - "allergens_from_ingredients": "en:milk, milk", - "allergens_from_user": "(en) en:milk", - "allergens_lc": "en", - "brands": "Popchips", - "carbon_footprint_from_known_ingredients_debug": "en:potato 54% x 0.6 = 32.4 g - ", - "carbon_footprint_percent_of_known_ingredients": 54, - "categories": "Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil", - "categories_lc": "en", - "categories_old": "Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil", - "code": "5060292302201", - "compared_to_category": "en:potato-crisps-in-sunflower-oil", - "complete": 0, - "completeness": 0.8875, - "countries": "France,United Kingdom", - "countries_lc": "en", - "created_t": 1433338177, - "creator": "kyzh", - "data_sources": "App - yuka, Apps, App - Horizon", - "ecoscore_extended_data_version": "4", - "ecoscore_grade": "b", - "ecoscore_score": 67, - "emb_codes": "", - "emb_codes_20141016": "", - "emb_codes_orig": "", - "expiration_date": "11/05/2016", - "food_groups": "en:appetizers", - "fruits-vegetables-nuts_100g_estimate": 0, - "generic_name": "", - "generic_name_en": "", - "generic_name_fr": "", - "id": "5060292302201", - "image_front_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", - "image_front_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", - "image_front_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", - "image_ingredients_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg", - "image_ingredients_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg", - "image_ingredients_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg", - "image_nutrition_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg", - "image_nutrition_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg", - "image_nutrition_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg", - "image_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", - "image_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", - "image_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", - "ingredients_from_or_that_may_be_from_palm_oil_n": 0, - "ingredients_from_palm_oil_n": 0, - "ingredients_n": 20, - "ingredients_percent_analysis": 1, - "ingredients_text": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", - "ingredients_text_debug": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", - "ingredients_text_en": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", - "ingredients_text_fr": "", - "ingredients_text_with_allergens": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", - "ingredients_text_with_allergens_en": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", - "ingredients_that_may_be_from_palm_oil_n": 0, - "ingredients_with_specified_percent_n": 1, - "ingredients_with_specified_percent_sum": 54, - "ingredients_with_unspecified_percent_n": 15, - "ingredients_with_unspecified_percent_sum": 46, - "ingredients_without_ciqual_codes_n": 9, - "interface_version_created": "20120622", - "interface_version_modified": "20190830", - "known_ingredients_n": 36, - "labels": "Vegetarian, No preservatives, No artificial anything", - "labels_lc": "en", - "labels_old": "Vegetarian,No preservatives,No artificial anything", - "lang": "en", - "last_editor": "aleene", - "last_image_t": 1656075071, - "last_modified_by": "aleene", - "last_modified_t": 1679645675, - "lc": "en", - "link": "", - "manufacturing_places": "European Union", - "max_imgid": "9", - "no_nutrition_data": "", - "nova_group": 4, - "nova_group_debug": "", - "nova_groups": "4", - "nutriscore_grade": "d", - "nutriscore_score": 12, - "nutriscore_score_opposite": -12, - "nutriscore_version": "2021", - "nutrition_data": "on", - "nutrition_data_per": "100g", - "nutrition_data_prepared": "", - "nutrition_data_prepared_per": "100g", - "nutrition_grade_fr": "d", - "nutrition_grades": "d", - "nutrition_score_beverage": 0, - "nutrition_score_debug": "", - "obsolete": "", - "obsolete_since_date": "", - "origin": "", - "origin_en": "", - "origins": "", - "origins_lc": "en", - "origins_old": "", - "packaging": "Plastic,Mixed plastic film-packet", - "packaging_lc": "en", - "packaging_old": "Plastic, Mixed plastic-packet", - "packaging_old_before_taxonomization": "Plastic, en:mixed plastic-packet", - "packaging_text": "", - "packaging_text_en": "", - "packagings_complete": 0, - "packagings_n": 2, - "pnns_groups_1": "Salty snacks", - "pnns_groups_2": "Appetizers", - "popularity_key": 21900000007, - "product_name": "Barbeque Potato Chips", - "product_name_en": "Barbeque Potato Chips", - "product_name_fr": "", - "product_quantity": "23", - "purchase_places": "", - "quantity": "23 g", - "rev": 33, - "scans_n": 6, - "serving_quantity": "23", - "serving_size": "23 g", - "sortkey": 1535456524, - "states": "en:to-be-completed, en:nutrition-facts-completed, en:ingredients-completed, en:expiration-date-completed, en:packaging-code-to-be-completed, en:characteristics-to-be-completed, en:origins-to-be-completed, en:categories-completed, en:brands-completed, en:packaging-completed, en:quantity-completed, en:product-name-completed, en:photos-to-be-validated, en:packaging-photo-to-be-selected, en:nutrition-photo-selected, en:ingredients-photo-selected, en:front-photo-selected, en:photos-uploaded", - "stores": "", - "teams": "swipe-studio", - "traces": "", - "traces_from_ingredients": "", - "traces_from_user": "(en) ", - "traces_lc": "en", - "unique_scans_n": 4, - "unknown_ingredients_n": 1, - "update_key": "eco20231129" - } - ], - "food_product": [ - { - "code": "5060292302201", - "status": 1, - "status_verbose": "product found" - } - ] -} - - --- Generated by json2qsql.js development 1/30/2024, 11:19:56 AM - - - -{ - "code": "5060292302201", - "product": { - "_id": "5060292302201", - "_keywords": [ - "and", - "anything", - "appetizer", - "artificial", - "barbeque", - "beverage", - "potatoe", - "preservative", - "salty", - "snack", - "sunflower", - "vegetarian" - ], - "added_countries_tags": [], - "additives_debug_tags": [], - "additives_n": 2, - "additives_old_n": 2, - "additives_old_tags": [ - "en:e330", - "en:e160c" - ], - "additives_original_tags": [ - "en:e330", - "en:e160c" - ], - "additives_prev_original_tags": [ - "en:e330", - "en:e160c" - ], - "additives_tags": [ - "en:e160c", - "en:e330" - ], - "allergens": "en:milk", - "allergens_from_ingredients": "en:milk, milk", - "allergens_from_user": "(en) en:milk", - "allergens_hierarchy": [ - "en:milk" - ], - "allergens_lc": "en", - "allergens_tags": [ - "en:milk" - ], - "amino_acids_prev_tags": [], - "amino_acids_tags": [], - "brands": "Popchips", - "brands_tags": [ - "popchips" - ], - "carbon_footprint_from_known_ingredients_debug": "en:potato 54% x 0.6 = 32.4 g - ", - "carbon_footprint_percent_of_known_ingredients": 54, - "categories": "Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil", - "categories_hierarchy": [ - "en:plant-based-foods-and-beverages", - "en:plant-based-foods", - "en:snacks", - "en:cereals-and-potatoes", - "en:salty-snacks", - "en:appetizers", - "en:chips-and-fries", - "en:crisps", - "en:potato-crisps", - "en:potato-crisps-in-sunflower-oil" - ], - "categories_lc": "en", - "categories_old": "Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil", - "categories_properties": { - "agribalyse_food_code:en": "4004", - "ciqual_food_code:en": "4004" - }, - "categories_properties_tags": [ - "all-products", - "categories-known", - "agribalyse-food-code-4004", - "agribalyse-food-code-known", - "agribalyse-proxy-food-code-unknown", - "ciqual-food-code-4004", - "ciqual-food-code-known", - "agribalyse-known", - "agribalyse-4004" - ], - "categories_tags": [ - "en:plant-based-foods-and-beverages", - "en:plant-based-foods", - "en:snacks", - "en:cereals-and-potatoes", - "en:salty-snacks", - "en:appetizers", - "en:chips-and-fries", - "en:crisps", - "en:potato-crisps", - "en:potato-crisps-in-sunflower-oil" - ], - "category_properties": { - "ciqual_food_name:en": "Potato crisps", - "ciqual_food_name:fr": "Chips de pommes de terre, standard" - }, - "checkers_tags": [], - "ciqual_food_name_tags": [ - "potato-crisps" - ], - "cities_tags": [], - "code": "5060292302201", - "codes_tags": [ - "code-13", - "5060292302xxx", - "506029230xxxx", - "50602923xxxxx", - "5060292xxxxxx", - "506029xxxxxxx", - "50602xxxxxxxx", - "5060xxxxxxxxx", - "506xxxxxxxxxx", - "50xxxxxxxxxxx", - "5xxxxxxxxxxxx" - ], - "compared_to_category": "en:potato-crisps-in-sunflower-oil", - "complete": 0, - "completeness": 0.8875, - "correctors_tags": [ - "tacite", - "tacite-mass-editor", - "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", - "openfoodfacts-contributors", - "swipe-studio", - "yuka.sY2b0xO6T85zoF3NwEKvllZnctbb-gn-LDr4mHzUyem0FYPXMO5by7b5NKg", - "kiliweb", - "packbot", - "foodless", - "yuka.sY2b0xO6T85zoF3NwEKvlmBZVPXu-gnlBU3miFTQ-NeSIbDaMdUtu4fLGas", - "aleene" - ], - "countries": "France,United Kingdom", - "countries_hierarchy": [ - "en:france", - "en:united-kingdom" - ], - "countries_lc": "en", - "countries_tags": [ - "en:france", - "en:united-kingdom" - ], - "created_t": 1433338177, - "creator": "kyzh", - "data_quality_bugs_tags": [], - "data_quality_errors_tags": [], - "data_quality_info_tags": [ - "en:packaging-data-incomplete", - "en:ingredients-percent-analysis-ok", - "en:carbon-footprint-from-known-ingredients-but-not-from-meat-or-fish", - "en:ecoscore-extended-data-computed", - "en:ecoscore-extended-data-less-precise-than-agribalyse", - "en:food-groups-1-known", - "en:food-groups-2-known", - "en:food-groups-3-unknown" - ], - "data_quality_tags": [ - "en:packaging-data-incomplete", - "en:ingredients-percent-analysis-ok", - "en:carbon-footprint-from-known-ingredients-but-not-from-meat-or-fish", - "en:ecoscore-extended-data-computed", - "en:ecoscore-extended-data-less-precise-than-agribalyse", - "en:food-groups-1-known", - "en:food-groups-2-known", - "en:food-groups-3-unknown", - "en:nutrition-value-very-low-for-category-energy", - "en:nutrition-value-very-low-for-category-fat", - "en:nutrition-value-very-high-for-category-sugars", - "en:vegetarian-label-but-could-not-confirm-for-all-ingredients", - "en:ecoscore-origins-of-ingredients-origins-are-100-percent-unknown", - "en:ecoscore-production-system-no-label" - ], - "data_quality_warnings_tags": [ - "en:nutrition-value-very-low-for-category-energy", - "en:nutrition-value-very-low-for-category-fat", - "en:nutrition-value-very-high-for-category-sugars", - "en:vegetarian-label-but-could-not-confirm-for-all-ingredients", - "en:ecoscore-origins-of-ingredients-origins-are-100-percent-unknown", - "en:ecoscore-production-system-no-label" - ], - "data_sources": "App - yuka, Apps, App - Horizon", - "data_sources_tags": [ - "app-yuka", - "apps", - "app-horizon" - ], - "debug_param_sorted_langs": [ - "en" - ], - "ecoscore_data": { - "adjustments": { - "origins_of_ingredients": { - "aggregated_origins": [ - { - "epi_score": "0", - "origin": "en:unknown", - "percent": 100, - "transportation_score": null - } - ], - "epi_score": 0, - "epi_value": -5, - "origins_from_categories": [ - "en:unknown" - ], - "origins_from_origins_field": [ - "en:unknown" - ], - "transportation_score": 0, - "transportation_scores": { - "ad": 0, - "al": 0, - "va": 0, - "world": 0, - "xk": 0 - }, - "transportation_value": 0, - "transportation_values": { - "ad": 0, - "ua": 0, - "uk": 0, - "us": 0, - "va": 0, - "world": 0, - "xk": 0 - }, - "value": -5, - "values": { - "ad": -5, - "al": -5, - "at": -5, - "uk": -5, - "us": -5, - "va": -5, - "world": -5, - "xk": -5 - }, - "warning": "origins_are_100_percent_unknown" - }, - "packaging": { - "non_recyclable_and_non_biodegradable_materials": 2, - "packagings": [ - { - "ecoscore_material_score": 0, - "ecoscore_shape_ratio": 1, - "material": "en:plastic", - "non_recyclable_and_non_biodegradable": "maybe", - "shape": "en:packet" - }, - { - "ecoscore_material_score": 0, - "ecoscore_shape_ratio": 1, - "material": "en:plastic", - "non_recyclable_and_non_biodegradable": "maybe", - "shape": "en:packet" - } - ], - "score": -100, - "value": -15 - }, - "production_system": { - "labels": [], - "value": 0, - "warning": "no_label" - }, - "threatened_species": {} - }, - "agribalyse": { - "agribalyse_food_code": "4004", - "co2_agriculture": 0.82655583, - "co2_consumption": 0, - "co2_distribution": 0.019537154, - "co2_packaging": 0.28154442, - "co2_processing": 0.23156851, - "co2_total": 1.543669164, - "co2_transportation": 0.18446325, - "code": "4004", - "dqr": "2.45", - "ef_agriculture": 0.14029442, - "ef_consumption": 0, - "ef_distribution": 0.004831936, - "ef_packaging": 0.02370999, - "ef_processing": 0.038707917, - "ef_total": 0.223317319, - "ef_transportation": 0.015773056, - "is_beverage": 0, - "name_en": "Potato crisps", - "name_fr": "Chips de pommes de terre, standard", - "score": 87, - "version": "3.1" - }, - "grade": "b", - "grades": { - "ad": "b", - "al": "b", - "tr": "b", - "ua": "b", - "uk": "b", - "us": "b", - "va": "b", - "world": "b", - "xk": "b" - }, - "missing": { - "labels": 1, - "origins": 1 - }, - "missing_data_warning": 1, - "previous_data": { - "agribalyse": { - "agribalyse_food_code": "4004", - "co2_agriculture": 1.2992636, - "co2_consumption": 0, - "co2_distribution": 0.029120657, - "co2_packaging": 0.28581962, - "co2_processing": 0.39294234, - "co2_total": 2.2443641, - "co2_transportation": 0.23728203, - "code": "4004", - "dqr": "2.45", - "ef_agriculture": 0.18214682, - "ef_consumption": 0, - "ef_distribution": 0.0098990521, - "ef_packaging": 0.021558384, - "ef_processing": 0.057508389, - "ef_total": 0.29200269, - "ef_transportation": 0.020894187, - "is_beverage": 0, - "name_en": "Potato crisps", - "name_fr": "Chips de pommes de terre, standard", - "score": 78 - }, - "grade": "b", - "score": 63 - }, - "score": 67, - "scores": { - "ad": 67, - "al": 67, - "at": 67, - "va": 67, - "world": 67, - "xk": 67 - }, - "status": "known" - }, - "ecoscore_extended_data": { - "impact": { - "ef_single_score_log_stddev": 0.0664290643574977, - "likeliest_impacts": { - "Climate_change": 0.0835225930657116, - "EF_single_score": 0.0132996566234689 - }, - "likeliest_recipe": { - "en:Oak_smoked_sea_salti_yeast_extract": 0.103505496656251, - "en:e160c": 0.10350549665625, - "en:e330": 0.10350549665625, - "en:flavouring": 0.10350549665625, - "en:garlic_powder": 0.103505496656251, - "en:milk": 1.55847864453775, - "en:onion": 0.15510736429208, - "en:potato": 69.2208020730349, - "en:potato_starch": 10.5320407294931, - "en:rice_flour": 13.8595510001351, - "en:salt": 1.3345917157533, - "en:spice": 0.10350549665625, - "en:sugar": 10.2883618334396, - "en:sunflower_oil": 14.1645835312727, - "en:tomato_powder": 0.10350549665625, - "en:water": 6.24510964041154, - "en:yeast_powder": 0.103505496656251 - }, - "mass_ratio_uncharacterized": 0.0244618467395455, - "uncharacterized_ingredients": { - "impact": [ - "en:yeast-powder", - "en:flavouring", - "en:Oak smoked sea salti yeast extract", - "en:e160c", - "en:e330" - ], - "nutrition": [ - "en:flavouring", - "en:Oak smoked sea salti yeast extract" - ] - }, - "uncharacterized_ingredients_mass_proportion": { - "impact": 0.0244618467395455, - "nutrition": 0.0106506947223728 - }, - "uncharacterized_ingredients_ratio": { - "impact": 0.3125, - "nutrition": 0.125 - }, - "warnings": [ - "Fermentation agents are present in the product (en:yeast-powder). Carbohydrates and sugars mass balance will not be considered to estimate potential recipes", - "The product has a high number of impact uncharacterized ingredients: 31%" - ] - } - }, - "ecoscore_extended_data_version": "4", - "ecoscore_grade": "b", - "ecoscore_score": 67, - "ecoscore_tags": [ - "b" - ], - "editors": [ - "kyzh", - "tacite" - ], - "editors_tags": [ - "kiliweb", - "openfoodfacts-contributors", - "aleene", - "tacite-mass-editor", - "yuka.sY2b0xO6T85zoF3NwEKvlmBZVPXu-gnlBU3miFTQ-NeSIbDaMdUtu4fLGas", - "kyzh", - "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", - "ecoscore-impact-estimator", - "tacite", - "foodless", - "yuka.sY2b0xO6T85zoF3NwEKvllZnctbb-gn-LDr4mHzUyem0FYPXMO5by7b5NKg", - "swipe-studio", - "packbot" - ], - "emb_codes": "", - "emb_codes_20141016": "", - "emb_codes_orig": "", - "emb_codes_tags": [], - "entry_dates_tags": [ - "2015-06-03", - "2015-06", - "2015" - ], - "expiration_date": "11/05/2016", - "food_groups": "en:appetizers", - "food_groups_tags": [ - "en:salty-snacks", - "en:appetizers" - ], - "fruits-vegetables-nuts_100g_estimate": 0, - "generic_name": "", - "generic_name_en": "", - "generic_name_fr": "", - "generic_name_fr_debug_tags": [], - "id": "5060292302201", - "image_front_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", - "image_front_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", - "image_front_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", - "image_ingredients_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg", - "image_ingredients_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg", - "image_ingredients_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg", - "image_nutrition_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg", - "image_nutrition_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg", - "image_nutrition_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg", - "image_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", - "image_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", - "image_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", - "images": { - "1": { - "sizes": { - "100": { - "h": 74, - "w": 100 - }, - "400": { - "h": 296, - "w": 400 - }, - "full": { - "h": 1482, - "w": 2000 - } - }, - "uploaded_t": 1433338177, - "uploader": "kyzh" - }, - "2": { - "sizes": { - "100": { - "h": 74, - "w": 100 - }, - "400": { - "h": 296, - "w": 400 - }, - "full": { - "h": 1482, - "w": 2000 - } - }, - "uploaded_t": 1433338194, - "uploader": "kyzh" - }, - "3": { - "sizes": { - "100": { - "h": 74, - "w": 100 - }, - "400": { - "h": 296, - "w": 400 - }, - "full": { - "h": 1482, - "w": 2000 - } - }, - "uploaded_t": 1433338203, - "uploader": "kyzh" - }, - "4": { - "sizes": { - "100": { - "h": 74, - "w": 100 - }, - "400": { - "h": 296, - "w": 400 - }, - "full": { - "h": 1482, - "w": 2000 - } - }, - "uploaded_t": 1433338215, - "uploader": "kyzh" - }, - "5": { - "sizes": { - "100": { - "h": 74, - "w": 100 - }, - "400": { - "h": 296, - "w": 400 - }, - "full": { - "h": 1482, - "w": 2000 - } - }, - "uploaded_t": 1433338229, - "uploader": "kyzh" - }, - "6": { - "sizes": { - "100": { - "h": 74, - "w": 100 - }, - "400": { - "h": 296, - "w": 400 - }, - "full": { - "h": 1482, - "w": 2000 - } - }, - "uploaded_t": 1433338245, - "uploader": "kyzh" - }, - "7": { - "sizes": { - "100": { - "h": 43, - "w": 100 - }, - "400": { - "h": 171, - "w": 400 - }, - "full": { - "h": 846, - "w": 1974 - } - }, - "uploaded_t": "1508236270", - "uploader": "kiliweb" - }, - "8": { - "sizes": { - "100": { - "h": 100, - "w": 82 - }, - "400": { - "h": 400, - "w": 326 - }, - "full": { - "h": 1140, - "w": 930 - } - }, - "uploaded_t": 1620505759, - "uploader": "kiliweb" - }, - "9": { - "sizes": { - "100": { - "h": 56, - "w": 100 - }, - "400": { - "h": 225, - "w": 400 - }, - "full": { - "h": 569, - "w": 1011 - } - }, - "uploaded_t": 1656075071, - "uploader": "kiliweb" - }, - "front": { - "geometry": "1421x1825-0-95", - "imgid": "1", - "normalize": "false", - "rev": "9", - "sizes": { - "100": { - "h": 100, - "w": 78 - }, - "200": { - "h": 200, - "w": 156 - }, - "400": { - "h": 400, - "w": 311 - }, - "full": { - "h": 1825, - "w": 1421 - } - }, - "white_magic": "true" - }, - "front_en": { - "angle": 0, - "coordinates_image_size": "full", - "geometry": "0x0--1--1", - "imgid": "8", - "normalize": null, - "rev": "23", - "sizes": { - "100": { - "h": 100, - "w": 82 - }, - "200": { - "h": 200, - "w": 163 - }, - "400": { - "h": 400, - "w": 326 - }, - "full": { - "h": 1140, - "w": 930 - } - }, - "white_magic": null, - "x1": "-1", - "x2": "-1", - "y1": "-1", - "y2": "-1" - }, - "ingredients": { - "geometry": "1730x526-125-304", - "imgid": "5", - "normalize": "false", - "ocr": 1, - "orientation": "0", - "rev": "11", - "sizes": { - "100": { - "h": 30, - "w": 100 - }, - "200": { - "h": 61, - "w": 200 - }, - "400": { - "h": 122, - "w": 400 - }, - "full": { - "h": 526, - "w": 1730 - } - }, - "white_magic": "false" - }, - "ingredients_en": { - "geometry": "1730x526-125-304", - "imgid": "5", - "normalize": "false", - "ocr": 1, - "orientation": "0", - "rev": "11", - "sizes": { - "100": { - "h": 30, - "w": 100 - }, - "200": { - "h": 61, - "w": 200 - }, - "400": { - "h": 122, - "w": 400 - }, - "full": { - "h": 526, - "w": 1730 - } - }, - "white_magic": "false" - }, - "nutrition": { - "geometry": "1131x920-150-794", - "imgid": "3", - "normalize": "false", - "ocr": 1, - "orientation": "0", - "rev": "10", - "sizes": { - "100": { - "h": 81, - "w": 100 - }, - "200": { - "h": 163, - "w": 200 - }, - "400": { - "h": 325, - "w": 400 - }, - "full": { - "h": 920, - "w": 1131 - } - }, - "white_magic": "false" - }, - "nutrition_en": { - "angle": 0, - "coordinates_image_size": "full", - "geometry": "0x0--1--1", - "imgid": "9", - "normalize": null, - "rev": "32", - "sizes": { - "100": { - "h": 56, - "w": 100 - }, - "200": { - "h": 113, - "w": 200 - }, - "400": { - "h": 225, - "w": 400 - }, - "full": { - "h": 569, - "w": 1011 - } - }, - "white_magic": null, - "x1": "-1", - "x2": "-1", - "y1": "-1", - "y2": "-1" - } - }, - "informers_tags": [ - "kyzh", - "tacite", - "tacite-mass-editor", - "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", - "openfoodfacts-contributors", - "aleene" - ], - "ingredients": [ - { - "ciqual_food_code": "4003", - "id": "en:potato", - "percent": 54, - "percent_estimate": 54, - "percent_max": 54, - "percent_min": 54, - "processing": "en:dried", - "rank": 1, - "text": "potatoes", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "ciqual_food_code": "17440", - "from_palm_oil": "no", - "id": "en:sunflower-oil", - "percent_estimate": 28.75, - "percent_max": 46, - "percent_min": 11.5, - "rank": 2, - "text": "sunflower oil", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "has_sub_ingredients": "yes", - "id": "en:coating", - "percent_estimate": 8.625, - "percent_max": 33.3333333333333, - "percent_min": 0, - "rank": 3, - "text": "seasoning", - "vegan": "maybe", - "vegetarian": "maybe" - }, - { - "ciqual_food_code": "9520", - "id": "en:rice-flour", - "percent_estimate": 4.3125, - "percent_max": 17.25, - "percent_min": 0, - "rank": 4, - "text": "rice flour", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "id": "en:potato-starch", - "percent_estimate": 4.3125, - "percent_max": 11.5, - "percent_min": 0, - "rank": 5, - "text": "potato starch", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "id": "en:sugar", - "percent_estimate": 4.3125, - "percent_max": 8.7, - "percent_min": 0, - "text": "sugar", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "has_sub_ingredients": "yes", - "id": "en:whey-powder", - "percent_estimate": 2.15625, - "percent_max": 8.7, - "percent_min": 0, - "text": "whey powder", - "vegan": "no", - "vegetarian": "maybe" - }, - { - "ciqual_food_code": "11058", - "id": "en:salt", - "percent_estimate": 1.05, - "percent_max": 2.1, - "percent_min": 0, - "text": "salt", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "ciqual_food_code": "20034", - "id": "en:onion", - "percent_estimate": 0.553125, - "percent_max": 2.1, - "percent_min": 0, - "processing": "en:powder", - "text": "onion", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "id": "en:yeast-powder", - "percent_estimate": 0.2765625, - "percent_max": 2.1, - "percent_min": 0, - "text": "yeast powder", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "ciqual_food_code": "11000", - "id": "en:garlic", - "percent_estimate": 0.13828125, - "percent_max": 2.1, - "percent_min": 0, - "processing": "en:powder", - "text": "garlic", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "ciqual_food_code": "20047", - "id": "en:tomato", - "percent_estimate": 0.0691406250000002, - "percent_max": 2.1, - "percent_min": 0, - "processing": "en:powder", - "text": "tomato", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "id": "en:oak-smoked-sea-salti-yeast-extract", - "percent_estimate": 0.0345703124999996, - "percent_max": 2.1, - "percent_min": 0, - "text": "Oak smoked sea salti yeast extract" - }, - { - "id": "en:flavouring", - "percent_estimate": 0.0172851562499998, - "percent_max": 2.1, - "percent_min": 0, - "text": "flavourings", - "vegan": "maybe", - "vegetarian": "maybe" - }, - { - "id": "en:spice", - "percent_estimate": 0.00864257812500036, - "percent_max": 2.1, - "percent_min": 0, - "text": "spices", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "has_sub_ingredients": "yes", - "id": "en:acid", - "percent_estimate": 0.00432128906250018, - "percent_max": 2.1, - "percent_min": 0, - "text": "acid" - }, - { - "has_sub_ingredients": "yes", - "id": "en:colour", - "percent_estimate": 0.00432128906249929, - "percent_max": 2.1, - "percent_min": 0, - "text": "colour" - }, - { - "id": "en:milk", - "percent_estimate": 2.15625, - "percent_max": 8.7, - "percent_min": 0, - "text": "milk", - "vegan": "no", - "vegetarian": "yes" - }, - { - "id": "en:e330", - "percent_estimate": 0.00432128906250018, - "percent_max": 2.1, - "percent_min": 0, - "text": "citric acid", - "vegan": "yes", - "vegetarian": "yes" - }, - { - "id": "en:e160c", - "percent_estimate": 0.00432128906249929, - "percent_max": 2.1, - "percent_min": 0, - "text": "paprika extract", - "vegan": "yes", - "vegetarian": "yes" - } - ], - "ingredients_analysis": { - "en:non-vegan": [ - "en:whey-powder", - "en:milk" - ], - "en:palm-oil-content-unknown": [ - "en:oak-smoked-sea-salti-yeast-extract" - ], - "en:vegan-status-unknown": [ - "en:oak-smoked-sea-salti-yeast-extract" - ], - "en:vegetarian-status-unknown": [ - "en:oak-smoked-sea-salti-yeast-extract" - ] - }, - "ingredients_analysis_tags": [ - "en:palm-oil-free", - "en:non-vegan", - "en:vegetarian" - ], - "ingredients_debug": [ - "54% dried potatoes", - ",", - null, - null, - null, - " sunflower oil", - ",", - null, - null, - null, - " seasoning ", - "(", - "(", - null, - null, - "sugar", - ",", - null, - null, - null, - " whey powder ", - "[", - "[", - null, - null, - "milk]", - ",", - null, - null, - null, - " salt", - ",", - null, - null, - null, - " onion powder", - ",", - null, - null, - null, - " yeast powder", - ",", - null, - null, - null, - " garlic powder", - ",", - null, - null, - null, - " tomato powder", - ",", - null, - null, - null, - " Oak smoked sea salti yeast extract", - ",", - null, - null, - null, - " flavourings", - ",", - null, - null, - null, - " spices", - ",", - null, - null, - null, - " acid", - ":", - ":", - null, - null, - " citric acid", - ",", - null, - null, - null, - " colour", - ":", - ":", - null, - null, - " paprika extract)", - ",", - null, - null, - null, - " rice flour", - ",", - null, - null, - null, - " potato starch." - ], - "ingredients_from_or_that_may_be_from_palm_oil_n": 0, - "ingredients_from_palm_oil_n": 0, - "ingredients_from_palm_oil_tags": [], - "ingredients_hierarchy": [ - "en:potato", - "en:vegetable", - "en:root-vegetable", - "en:tuber", - "en:sunflower-oil", - "en:oil-and-fat", - "en:spice", - "en:condiment", - "en:acid", - "en:colour", - "en:milk", - "en:e330", - "en:e160c" - ], - "ingredients_ids_debug": [ - "54-dried-potatoes", - "sunflower-oil", - "seasoning", - "sugar", - "colour", - "paprika-extract", - "rice-flour", - "potato-starch" - ], - "ingredients_n": 20, - "ingredients_n_tags": [ - "20", - "11-20" - ], - "ingredients_original_tags": [ - "en:potato", - "en:sunflower-oil", - "en:coating", - "en:rice-flour", - "en:potato-starch", - "en:sugar", - "en:whey-powder", - "en:salt", - "en:onion", - "en:yeast-powder", - "en:garlic", - "en:tomato", - "en:oak-smoked-sea-salti-yeast-extract", - "en:flavouring", - "en:spice", - "en:acid", - "en:colour", - "en:milk", - "en:e330", - "en:e160c" - ], - "ingredients_percent_analysis": 1, - "ingredients_tags": [ - "en:potato", - "en:vegetable", - "en:root-vegetable", - "en:milk", - "en:e330", - "en:e160c" - ], - "ingredients_text": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", - "ingredients_text_debug": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", - "ingredients_text_debug_tags": [], - "ingredients_text_en": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", - "ingredients_text_fr": "", - "ingredients_text_fr_debug_tags": [], - "ingredients_text_with_allergens": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", - "ingredients_text_with_allergens_en": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", - "ingredients_that_may_be_from_palm_oil_n": 0, - "ingredients_that_may_be_from_palm_oil_tags": [], - "ingredients_with_specified_percent_n": 1, - "ingredients_with_specified_percent_sum": 54, - "ingredients_with_unspecified_percent_n": 15, - "ingredients_with_unspecified_percent_sum": 46, - "ingredients_without_ciqual_codes": [ - "en:e160c", - "en:e330", - "en:flavouring", - "en:milk", - "en:oak-smoked-sea-salti-yeast-extract", - "en:potato-starch", - "en:spice", - "en:sugar", - "en:yeast-powder" - ], - "ingredients_without_ciqual_codes_n": 9, - "interface_version_created": "20120622", - "interface_version_modified": "20190830", - "known_ingredients_n": 36, - "labels": "Vegetarian, No preservatives, No artificial anything", - "labels_hierarchy": [ - "en:vegetarian", - "en:no-preservatives", - "en:No artificial anything" - ], - "labels_lc": "en", - "labels_old": "Vegetarian,No preservatives,No artificial anything", - "labels_tags": [ - "en:vegetarian", - "en:no-preservatives", - "en:no-artificial-anything" - ], - "lang": "en", - "languages": { - "en:english": 5 - }, - "languages_codes": { - "en": 5 - }, - "languages_hierarchy": [ - "en:english" - ], - "languages_tags": [ - "en:english", - "en:1" - ], - "last_edit_dates_tags": [ - "2023-03-24", - "2023-03", - "2023" - ], - "last_editor": "aleene", - "last_image_dates_tags": [ - "2022-06-24", - "2022-06", - "2022" - ], - "last_image_t": 1656075071, - "last_modified_by": "aleene", - "last_modified_t": 1679645675, - "lc": "en", - "link": "", - "main_countries_tags": [], - "manufacturing_places": "European Union", - "manufacturing_places_tags": [ - "european-union" - ], - "max_imgid": "9", - "minerals_prev_tags": [], - "minerals_tags": [], - "misc_tags": [ - "en:nutriscore-computed", - "en:nutrition-fruits-vegetables-nuts-from-category", - "en:nutrition-fruits-vegetables-nuts-from-category-en-potato-crisps-in-sunflower-oil", - "en:nutrition-fruits-vegetables-legumes-from-category", - "en:nutrition-fruits-vegetables-legumes-from-category-en-potato-crisps-in-sunflower-oil", - "en:nutriscore-2021-same-as-2023", - "en:nutriscore-2021-d-2023-d", - "en:packagings-number-of-components-2", - "en:packagings-not-complete", - "en:packagings-not-empty-but-not-complete", - "en:packagings-not-empty", - "en:ecoscore-extended-data-computed", - "en:ecoscore-extended-data-version-4", - "en:ecoscore-missing-data-warning", - "en:ecoscore-missing-data-labels", - "en:ecoscore-missing-data-origins", - "en:ecoscore-computed", - "en:ecoscore-changed" - ], - "no_nutrition_data": "", - "nova_group": 4, - "nova_group_debug": "", - "nova_groups": "4", - "nova_groups_markers": { - "3": [ - [ - "categories", - "en:salty-snacks" - ], - [ - "ingredients", - "en:salt" - ], - [ - "ingredients", - "en:starch" - ], - [ - "ingredients", - "en:sugar" - ], - [ - "ingredients", - "en:vegetable-oil" - ] - ], - "4": [ - [ - "additives", - "en:e160c" - ], - [ - "ingredients", - "en:colour" - ], - [ - "ingredients", - "en:flavouring" - ], - [ - "ingredients", - "en:whey" - ] - ] - }, - "nova_groups_tags": [ - "en:4-ultra-processed-food-and-drink-products" - ], - "nucleotides_prev_tags": [], - "nucleotides_tags": [], - "nutrient_levels": { - "fat": "moderate", - "salt": "high", - "saturated-fat": "low", - "sugars": "moderate" - }, - "nutrient_levels_tags": [ - "en:fat-in-moderate-quantity", - "en:saturated-fat-in-low-quantity", - "en:sugars-in-moderate-quantity", - "en:salt-in-high-quantity" - ], - "nutriments": { - "carbohydrates": 62, - "carbohydrates_100g": 62, - "carbohydrates_serving": 14.3, - "carbohydrates_unit": "g", - "carbohydrates_value": 62, - "carbon-footprint-from-known-ingredients_100g": 32.4, - "carbon-footprint-from-known-ingredients_product": 7.45, - "salt": 2.1, - "salt_100g": 2.1, - "salt_serving": 0.483, - "salt_unit": "g", - "salt_value": 2.1, - "saturated-fat": 1.4, - "saturated-fat_100g": 1.4, - "saturated-fat_serving": 0.322, - "saturated-fat_unit": "g", - "saturated-fat_value": 1.4, - "sodium": 0.84, - "sodium_100g": 0.84, - "sodium_serving": 0.193, - "sodium_unit": "g", - "sodium_value": 0.84, - "sugars": 8.7, - "sugars_100g": 8.7, - "sugars_serving": 2, - "sugars_unit": "g", - "sugars_value": 8.7 - }, - "nutriscore": { - "2021": { - "category_available": 1, - "data": { - "energy": 1759, - "energy_points": 5, - "energy_value": 1759, - "fiber": 3.9, - "fiber_points": 4, - "sugars": 8.7, - "sugars_points": 1, - "sugars_value": 8.7 - }, - "grade": "d", - "nutrients_available": 1, - "nutriscore_applicable": 1, - "nutriscore_computed": 1, - "score": 12 - }, - "2023": { - "category_available": 1, - "data": { - "count_proteins": 0, - "count_proteins_reason": "negative_points_more_than_11", - "energy": 1759, - "is_red_meat_product": 0, - "is_water": 0, - "negative_nutrients": [ - "energy", - "sugars", - "saturated_fat", - "salt", - "non_nutritive_sweeteners" - ], - "negative_points": 18, - "positive_nutrients": [ - "fruits_vegetables_legumes", - "fiber" - ], - "positive_points": 1, - "proteins": 5.7, - "proteins_points": 2, - "salt": 2.1, - "salt_points": 10, - "saturated_fat": 1.4, - "saturated_fat_points": 1, - "sugars": 8.7, - "sugars_points": 2 - }, - "grade": "d", - "nutrients_available": 1, - "nutriscore_applicable": 1, - "nutriscore_computed": 1, - "score": 17 - } - }, - "nutriscore_2021_tags": [ - "d" - ], - "nutriscore_2023_tags": [ - "d" - ], - "nutriscore_data": { - "energy": 1759, - "energy_points": 5, - "energy_value": 1759, - "fiber": 3.9, - "fiber_points": 4, - "fiber_value": 3.9, - "fruits_vegetables_nuts_colza_walnut_olive_oils": "0", - "fruits_vegetables_nuts_colza_walnut_olive_oils_points": 0, - "fruits_vegetables_nuts_colza_walnut_olive_oils_value": 0, - "grade": "d", - "is_beverage": 0, - "is_cheese": 0, - "is_fat": 0, - "is_water": 0, - "negative_points": 16, - "positive_points": 4, - "proteins": 5.7, - "proteins_points": 3, - "proteins_value": 5.7, - "saturated_fat": 1.4, - "saturated_fat_points": 1, - "saturated_fat_value": 1.4, - "score": 12, - "sodium": 840, - "sodium_points": 9, - "sodium_value": 840, - "sugars": 8.7, - "sugars_points": 1, - "sugars_value": 8.7 - }, - "nutriscore_grade": "d", - "nutriscore_score": 12, - "nutriscore_score_opposite": -12, - "nutriscore_tags": [ - "d" - ], - "nutriscore_version": "2021", - "nutrition_data": "on", - "nutrition_data_per": "100g", - "nutrition_data_prepared": "", - "nutrition_data_prepared_per": "100g", - "nutrition_grade_fr": "d", - "nutrition_grades": "d", - "nutrition_grades_tags": [ - "d" - ], - "nutrition_score_beverage": 0, - "nutrition_score_debug": "", - "obsolete": "", - "obsolete_since_date": "", - "origin": "", - "origin_en": "", - "origins": "", - "origins_hierarchy": [], - "origins_lc": "en", - "origins_old": "", - "origins_tags": [], - "other_nutritional_substances_tags": [], - "packaging": "Plastic,Mixed plastic film-packet", - "packaging_hierarchy": [ - "en:plastic", - "en:Mixed plastic film-packet" - ], - "packaging_lc": "en", - "packaging_materials_tags": [ - "en:plastic" - ], - "packaging_old": "Plastic, Mixed plastic-packet", - "packaging_old_before_taxonomization": "Plastic, en:mixed plastic-packet", - "packaging_recycling_tags": [], - "packaging_shapes_tags": [ - "en:packet" - ], - "packaging_tags": [ - "en:plastic", - "en:mixed-plastic-film-packet" - ], - "packaging_text": "", - "packaging_text_en": "", - "packagings": [ - { - "material": "en:plastic", - "shape": "en:packet" - }, - { - "material": "en:plastic", - "shape": "en:packet" - } - ], - "packagings_complete": 0, - "packagings_materials": { - "all": {}, - "en:plastic": {} - }, - "packagings_n": 2, - "photographers_tags": [ - "kyzh", - "kiliweb" - ], - "pnns_groups_1": "Salty snacks", - "pnns_groups_1_tags": [ - "salty-snacks", - "known" - ], - "pnns_groups_2": "Appetizers", - "pnns_groups_2_tags": [ - "appetizers", - "known" - ], - "popularity_key": 21900000007, - "popularity_tags": [ - "bottom-25-percent-scans-2019", - "bottom-20-percent-scans-2019", - "top-100000-hk-scans-2022", - "top-10000-us-scans-2022", - "top-50000-us-scans-2022", - "top-100000-us-scans-2022" - ], - "product_name": "Barbeque Potato Chips", - "product_name_en": "Barbeque Potato Chips", - "product_name_fr": "", - "product_name_fr_debug_tags": [], - "product_quantity": "23", - "purchase_places": "", - "purchase_places_tags": [], - "quantity": "23 g", - "removed_countries_tags": [], - "rev": 33, - "scans_n": 6, - "selected_images": { - "front": { - "display": { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg" - }, - "small": { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg" - }, - "thumb": { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg" - } - }, - "ingredients": { - "display": { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg" - }, - "small": { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg" - }, - "thumb": { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg" - } - }, - "nutrition": { - "display": { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg" - }, - "small": { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg" - }, - "thumb": { - "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg" - } - } - }, - "serving_quantity": "23", - "serving_size": "23 g", - "sortkey": 1535456524, - "states": "en:to-be-completed, en:nutrition-facts-completed, en:ingredients-completed, en:expiration-date-completed, en:packaging-code-to-be-completed, en:characteristics-to-be-completed, en:origins-to-be-completed, en:categories-completed, en:brands-completed, en:packaging-completed, en:quantity-completed, en:product-name-completed, en:photos-to-be-validated, en:packaging-photo-to-be-selected, en:nutrition-photo-selected, en:ingredients-photo-selected, en:front-photo-selected, en:photos-uploaded", - "states_hierarchy": [ - "en:to-be-completed", - "en:nutrition-facts-completed", - "en:ingredients-completed", - "en:ingredients-photo-selected", - "en:front-photo-selected", - "en:photos-uploaded" - ], - "states_tags": [ - "en:to-be-completed", - "en:nutrition-facts-completed", - "en:ingredients-completed", - "en:ingredients-photo-selected", - "en:front-photo-selected", - "en:photos-uploaded" - ], - "stores": "", - "stores_tags": [], - "teams": "swipe-studio", - "teams_tags": [ - "swipe-studio" - ], - "traces": "", - "traces_from_ingredients": "", - "traces_from_user": "(en) ", - "traces_hierarchy": [], - "traces_lc": "en", - "traces_tags": [], - "unique_scans_n": 4, - "unknown_ingredients_n": 1, - "unknown_nutrients_tags": [], - "update_key": "eco20231129", - "vitamins_prev_tags": [], - "vitamins_tags": [], - "weighers_tags": [] - }, - "status": 1, - "status_verbose": "product found" -} - - - Non-default options: -# settings = {"genpk":false,"drop":true} - -*/ \ No newline at end of file From 5df18d0189dfeb51d553d586c4a6622c7fc196a6 Mon Sep 17 00:00:00 2001 From: Vadim Tropashko Date: Mon, 5 Feb 2024 10:04:50 -0800 Subject: [PATCH 17/22] issue 48 --- dist/quick-sql.js | 262 +- dist/quick-sql.umd.cjs | 90 +- src/tree.js | 12 +- test/experimental/food_product.qsql | 4151 +++++++++++++++++++++++++++ test/small_tests.js | 10 +- 5 files changed, 4349 insertions(+), 176 deletions(-) create mode 100644 test/experimental/food_product.qsql diff --git a/dist/quick-sql.js b/dist/quick-sql.js index 19de5f5..7c355bb 100644 --- a/dist/quick-sql.js +++ b/dist/quick-sql.js @@ -200,11 +200,11 @@ var ie = { exports: {} }; return this.integer(e); }, i.prototype.prime = function(e) { e = o(e, { min: 0, max: 1e4 }), t(e.min < 0, "Chance: Min cannot be less than zero."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); - var a = E.primes[E.primes.length - 1]; + var a = L.primes[L.primes.length - 1]; if (e.max > a) for (var n = a + 2; n <= e.max; ++n) - this.is_prime(n) && E.primes.push(n); - var c = E.primes.filter(function(m) { + this.is_prime(n) && L.primes.push(n); + var c = L.primes.filter(function(m) { return m >= e.min && m <= e.max; }); return this.pick(c); @@ -670,12 +670,12 @@ var ie = { exports: {} }; return [U, U, U].join(Q || ""); } function n(U) { - var Q = U ? "rgba" : "rgb", ee = U ? "," + this.floating({ min: z, max: J }) : "", ae = m ? a(this.natural({ min: C, max: P }), ",") : this.natural({ min: v, max: y }) + "," + this.natural({ min: _, max: O }) + "," + this.natural({ max: 255 }); + var Q = U ? "rgba" : "rgb", ee = U ? "," + this.floating({ min: z, max: J }) : "", ae = m ? a(this.natural({ min: C, max: P }), ",") : this.natural({ min: v, max: y }) + "," + this.natural({ min: _, max: F }) + "," + this.natural({ max: 255 }); return Q + "(" + ae + ee + ")"; } function c(U, Q, ee) { var ae = ee ? "#" : "", q = ""; - return m ? (q = a(this.pad(this.hex({ min: C, max: P }), 2)), e.format === "shorthex" && (q = a(this.hex({ min: 0, max: 15 })))) : e.format === "shorthex" ? q = this.pad(this.hex({ min: Math.floor(f / 16), max: Math.floor(A / 16) }), 1) + this.pad(this.hex({ min: Math.floor(v / 16), max: Math.floor(y / 16) }), 1) + this.pad(this.hex({ min: Math.floor(_ / 16), max: Math.floor(O / 16) }), 1) : f !== void 0 || A !== void 0 || v !== void 0 || y !== void 0 || _ !== void 0 || O !== void 0 ? q = this.pad(this.hex({ min: f, max: A }), 2) + this.pad(this.hex({ min: v, max: y }), 2) + this.pad(this.hex({ min: _, max: O }), 2) : q = this.pad(this.hex({ min: C, max: P }), 2) + this.pad(this.hex({ min: C, max: P }), 2) + this.pad(this.hex({ min: C, max: P }), 2), ae + q; + return m ? (q = a(this.pad(this.hex({ min: C, max: P }), 2)), e.format === "shorthex" && (q = a(this.hex({ min: 0, max: 15 })))) : e.format === "shorthex" ? q = this.pad(this.hex({ min: Math.floor(f / 16), max: Math.floor(A / 16) }), 1) + this.pad(this.hex({ min: Math.floor(v / 16), max: Math.floor(y / 16) }), 1) + this.pad(this.hex({ min: Math.floor(_ / 16), max: Math.floor(F / 16) }), 1) : f !== void 0 || A !== void 0 || v !== void 0 || y !== void 0 || _ !== void 0 || F !== void 0 ? q = this.pad(this.hex({ min: f, max: A }), 2) + this.pad(this.hex({ min: v, max: y }), 2) + this.pad(this.hex({ min: _, max: F }), 2) : q = this.pad(this.hex({ min: C, max: P }), 2) + this.pad(this.hex({ min: C, max: P }), 2) + this.pad(this.hex({ min: C, max: P }), 2), ae + q; } e = o(e, { format: this.pick(["hex", "shorthex", "rgb", "rgba", "0x", "name"]), @@ -692,8 +692,8 @@ var ie = { exports: {} }; min_alpha: 0, max_alpha: 1 }); - var m = e.grayscale, C = e.min, P = e.max, f = e.min_red, A = e.max_red, v = e.min_green, y = e.max_green, _ = e.min_blue, O = e.max_blue, z = e.min_alpha, J = e.max_alpha; - e.min_red === void 0 && (f = C), e.max_red === void 0 && (A = P), e.min_green === void 0 && (v = C), e.max_green === void 0 && (y = P), e.min_blue === void 0 && (_ = C), e.max_blue === void 0 && (O = P), e.min_alpha === void 0 && (z = 0), e.max_alpha === void 0 && (J = 1), m && C === 0 && P === 255 && f !== void 0 && A !== void 0 && (C = (f + v + _) / 3, P = (A + y + O) / 3); + var m = e.grayscale, C = e.min, P = e.max, f = e.min_red, A = e.max_red, v = e.min_green, y = e.max_green, _ = e.min_blue, F = e.max_blue, z = e.min_alpha, J = e.max_alpha; + e.min_red === void 0 && (f = C), e.max_red === void 0 && (A = P), e.min_green === void 0 && (v = C), e.max_green === void 0 && (y = P), e.min_blue === void 0 && (_ = C), e.max_blue === void 0 && (F = P), e.min_alpha === void 0 && (z = 0), e.max_alpha === void 0 && (J = 1), m && C === 0 && P === 255 && f !== void 0 && A !== void 0 && (C = (f + v + _) / 3, P = (A + y + F) / 3); var V; if (e.format === "hex") V = c.call(this, 2, 6, !0); @@ -823,10 +823,10 @@ var ie = { exports: {} }; } }, i.prototype.phone = function(e) { var a = this, n, c = function(_) { - var O = []; + var F = []; return _.sections.forEach(function(z) { - O.push(a.string({ pool: "0123456789", length: z })); - }), _.area + O.join(" "); + F.push(a.string({ pool: "0123456789", length: z })); + }), _.area + F.join(" "); }; e = o(e, { formatted: !0, @@ -1077,18 +1077,18 @@ var ie = { exports: {} }; }, i.prototype.cf = function(e) { e = e || {}; var a = e.gender ? e.gender : this.gender(), n = e.first ? e.first : this.first({ gender: a, nationality: "it" }), c = e.last ? e.last : this.last({ nationality: "it" }), m = e.birthday ? e.birthday : this.birthday(), C = e.city ? e.city : this.pickone(["A", "B", "C", "D", "E", "F", "G", "H", "I", "L", "M", "Z"]) + this.pad(this.natural({ max: 999 }), 3), P = [], f = function(y, _) { - var O, z = []; - return y.length < 3 ? z = y.split("").concat("XXX".split("")).splice(0, 3) : (O = y.toUpperCase().split("").map(function(J) { + var F, z = []; + return y.length < 3 ? z = y.split("").concat("XXX".split("")).splice(0, 3) : (F = y.toUpperCase().split("").map(function(J) { return "BCDFGHJKLMNPRSTVWZ".indexOf(J) !== -1 ? J : void 0; - }).join(""), O.length > 3 && (_ ? O = O.substr(0, 3) : O = O[0] + O.substr(2, 2)), O.length < 3 && (z = O, O = y.toUpperCase().split("").map(function(J) { + }).join(""), F.length > 3 && (_ ? F = F.substr(0, 3) : F = F[0] + F.substr(2, 2)), F.length < 3 && (z = F, F = y.toUpperCase().split("").map(function(J) { return "AEIOU".indexOf(J) !== -1 ? J : void 0; - }).join("").substr(0, 3 - z.length)), z = z + O), z; - }, A = function(y, _, O) { + }).join("").substr(0, 3 - z.length)), z = z + F), z; + }, A = function(y, _, F) { var z = ["A", "B", "C", "D", "E", "H", "L", "M", "P", "R", "S", "T"]; - return y.getFullYear().toString().substr(2) + z[y.getMonth()] + O.pad(y.getDate() + (_.toLowerCase() === "female" ? 40 : 0), 2); + return y.getFullYear().toString().substr(2) + z[y.getMonth()] + F.pad(y.getDate() + (_.toLowerCase() === "female" ? 40 : 0), 2); }, v = function(y) { - for (var _ = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ", O = "ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ", z = "ABCDEFGHIJKLMNOPQRSTUVWXYZ", J = "BAKPLCQDREVOSFTGUHMINJWZYX", V = 0, U = 0; U < 15; U++) - U % 2 !== 0 ? V += z.indexOf(O[_.indexOf(y[U])]) : V += J.indexOf(O[_.indexOf(y[U])]); + for (var _ = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ", F = "ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ", z = "ABCDEFGHIJKLMNOPQRSTUVWXYZ", J = "BAKPLCQDREVOSFTGUHMINJWZYX", V = 0, U = 0; U < 15; U++) + U % 2 !== 0 ? V += z.indexOf(F[_.indexOf(y[U])]) : V += J.indexOf(F[_.indexOf(y[U])]); return z[V % 26]; }; return P = P.concat(f(c, !0), f(n), A(m, a, this), C.toUpperCase().split("")).join(""), P += v(P.toUpperCase()), P.toUpperCase(); @@ -1216,7 +1216,7 @@ var ie = { exports: {} }; }; return c; }; - var E = { + var L = { firstNames: { male: { en: ["James", "John", "Robert", "Michael", "William", "David", "Richard", "Joseph", "Charles", "Thomas", "Christopher", "Daniel", "Matthew", "George", "Donald", "Anthony", "Paul", "Mark", "Edward", "Steven", "Kenneth", "Andrew", "Brian", "Joshua", "Kevin", "Ronald", "Timothy", "Jason", "Jeffrey", "Frank", "Gary", "Ryan", "Nicholas", "Eric", "Stephen", "Jacob", "Larry", "Jonathan", "Scott", "Raymond", "Justin", "Brandon", "Gregory", "Samuel", "Benjamin", "Patrick", "Jack", "Henry", "Walter", "Dennis", "Jerry", "Alexander", "Peter", "Tyler", "Douglas", "Harold", "Aaron", "Jose", "Adam", "Arthur", "Zachary", "Carl", "Nathan", "Albert", "Kyle", "Lawrence", "Joe", "Willie", "Gerald", "Roger", "Keith", "Jeremy", "Terry", "Harry", "Ralph", "Sean", "Jesse", "Roy", "Louis", "Billy", "Austin", "Bruce", "Eugene", "Christian", "Bryan", "Wayne", "Russell", "Howard", "Fred", "Ethan", "Jordan", "Philip", "Alan", "Juan", "Randy", "Vincent", "Bobby", "Dylan", "Johnny", "Phillip", "Victor", "Clarence", "Ernest", "Martin", "Craig", "Stanley", "Shawn", "Travis", "Bradley", "Leonard", "Earl", "Gabriel", "Jimmy", "Francis", "Todd", "Noah", "Danny", "Dale", "Cody", "Carlos", "Allen", "Frederick", "Logan", "Curtis", "Alex", "Joel", "Luis", "Norman", "Marvin", "Glenn", "Tony", "Nathaniel", "Rodney", "Melvin", "Alfred", "Steve", "Cameron", "Chad", "Edwin", "Caleb", "Evan", "Antonio", "Lee", "Herbert", "Jeffery", "Isaac", "Derek", "Ricky", "Marcus", "Theodore", "Elijah", "Luke", "Jesus", "Eddie", "Troy", "Mike", "Dustin", "Ray", "Adrian", "Bernard", "Leroy", "Angel", "Randall", "Wesley", "Ian", "Jared", "Mason", "Hunter", "Calvin", "Oscar", "Clifford", "Jay", "Shane", "Ronnie", "Barry", "Lucas", "Corey", "Manuel", "Leo", "Tommy", "Warren", "Jackson", "Isaiah", "Connor", "Don", "Dean", "Jon", "Julian", "Miguel", "Bill", "Lloyd", "Charlie", "Mitchell", "Leon", "Jerome", "Darrell", "Jeremiah", "Alvin", "Brett", "Seth", "Floyd", "Jim", "Blake", "Micheal", "Gordon", "Trevor", "Lewis", "Erik", "Edgar", "Vernon", "Devin", "Gavin", "Jayden", "Chris", "Clyde", "Tom", "Derrick", "Mario", "Brent", "Marc", "Herman", "Chase", "Dominic", "Ricardo", "Franklin", "Maurice", "Max", "Aiden", "Owen", "Lester", "Gilbert", "Elmer", "Gene", "Francisco", "Glen", "Cory", "Garrett", "Clayton", "Sam", "Jorge", "Chester", "Alejandro", "Jeff", "Harvey", "Milton", "Cole", "Ivan", "Andre", "Duane", "Landon"], @@ -7027,26 +7027,26 @@ var ie = { exports: {} }; "sadness", "fear" ] - }, D = Object.prototype.hasOwnProperty, L = Object.keys || function(e) { + }, D = Object.prototype.hasOwnProperty, E = Object.keys || function(e) { var a = []; for (var n in e) D.call(e, n) && a.push(n); return a; }; function k(e, a) { - for (var n = L(e), c, m = 0, C = n.length; m < C; m++) + for (var n = E(e), c, m = 0, C = n.length; m < C; m++) c = n[m], a[c] = e[c] || a[c]; } - function F(e, a) { + function O(e, a) { for (var n = 0, c = e.length; n < c; n++) a[n] = e[n]; } function R(e, a) { var n = Array.isArray(e), c = a || (n ? new Array(e.length) : {}); - return n ? F(e, c) : k(e, c), c; + return n ? O(e, c) : k(e, c), c; } i.prototype.get = function(e) { - return R(E[e]); + return R(L[e]); }, i.prototype.mac_address = function(e) { e = o(e), e.separator || (e.separator = e.networkVersion ? "." : ":"); var a = "ABCDEF1234567890", n = ""; @@ -7095,7 +7095,7 @@ var ie = { exports: {} }; } return a + this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }); }, i.prototype.set = function(e, a) { - typeof e == "string" ? E[e] = a : E = R(e, E); + typeof e == "string" ? L[e] = a : L = R(e, L); }, i.prototype.tv = function(e) { return this.radio(e); }, i.prototype.cnpj = function() { @@ -7645,16 +7645,16 @@ let ce = function() { var p = r.indexOf("/"); 0 < p && (r = r.substring(0, p)), r = r.trim(), r = b(r, " integer"), r = b(r, " number"), r = b(r, " int"), r = b(r, " num"), r = b(r, " clob"), r = b(r, " blob"), r = b(r, " json"), r = b(r, " file"), r = b(r, " date"), r = b(r, " tstz"), r = b(r, " tswtz"), r = b(r, " tswltz"), r = b(r, " ts"), r = r.replace(/ vc\d+k/g, ""), r = r.replace(/ vc\(\d+\)/g, ""), r = r.replace(/ vc\d+/g, ""); for (let S in x) { - let E = l.indexOf(" " + x[S]); - if (0 < E) { - r = r.substring(0, E) + r.substring(E + x[S].length + 1); + let L = l.indexOf(" " + x[S]); + if (0 < L) { + r = r.substring(0, L) + r.substring(L + x[S].length + 1); break; } } for (let S in w) { - let E = l.indexOf(" " + w[S]); - if (0 < E) { - r = r.substring(0, E) + r.substring(E + w[S].length + 1); + let L = l.indexOf(" " + w[S]); + if (0 < L) { + r = r.substring(0, L) + r.substring(L + w[S].length + 1); break; } } @@ -7676,16 +7676,16 @@ let ce = function() { const u = this.indexOf("vc", !0); if (0 < u) { t[u].begin, t[u].end; - let L = t[u].value.substring(2); - L == "" && this.indexOf("(") == u + 1 && (L = t[u + 2].value), L != "" && (l = parseInt(L)), t[u].value.endsWith("k") && (l < 32 ? l = l * 1024 : l = l * 1024 - 1); + let E = t[u].value.substring(2); + E == "" && this.indexOf("(") == u + 1 && (E = t[u + 2].value), E != "" && (l = parseInt(E)), t[u].value.endsWith("k") && (l < 32 ? l = l * 1024 : l = l * 1024 - 1); } var p = "varchar2(" + l + s + ")"; r == "plsql" && (p = "varchar2"), t[0].value.endsWith("_id") && u < 0 && this.indexOf("date") < 0 && (p = "number"), t[1] && t[1].value == "id" && (p = "number"), t[0].value == "quantity" && (p = "number"), t[0].value.endsWith("_number") && (p = "number"), t[0].value.endsWith("id") && u < 0 && this.indexOf("/") + 1 == this.indexOf("pk") && (p = "number"), 0 < this.indexOf("int", !0) && (p = "integer"), 0 < u && (p = "varchar2(" + l + s + ")", r == "plsql" && (p = "varchar2")); const T = K(i.parseName(), "_", this.parseName()); (t[0].value.endsWith("_yn") || t[0].value.startsWith("is_")) && (p = "varchar2(1 char) constraint " + K(d.objPrefix(), T) + ` `, p += h + h + " ".repeat(i.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"); - for (let L in w) - if (0 < this.indexOf(w[L])) { + for (let E in w) + if (0 < this.indexOf(w[E])) { p = "varchar2(1 char) constraint " + K(d.objPrefix(), T) + ` `, p += h + h + " ".repeat(i.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"; break; @@ -7693,14 +7693,14 @@ let ce = function() { this.indexOf("phone_number") == 0 && (p = "number"); let S = this.indexOf("num", !0); 0 < S && (p = "number"); - let E = this.indexOf(")"); - if (0 < S && 0 < E && (p += this.content.toLowerCase().substring(t[S + 1].begin, t[E].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value.startsWith("created") || t[0].value.startsWith("updated")) && (p = d.getOptionValue("Date Data Type").toLowerCase()), u < 0 && (0 < this.indexOf("clob") && (p = "clob"), (0 < this.indexOf("blob") || 0 < this.indexOf("file")) && (p = "blob"), 0 < this.indexOf("json") && (p = "clob check (" + this.parseName() + " is json)")), 0 < this.indexOf("tswltz") ? p = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : 0 < this.indexOf("tswtz") || 0 < this.indexOf("tstz") ? p = "TIMESTAMP WITH TIME ZONE".toLowerCase() : 0 < this.indexOf("ts") && (p = "TIMESTAMP".toLowerCase()), r) { + let L = this.indexOf(")"); + if (0 < S && 0 < L && (p += this.content.toLowerCase().substring(t[S + 1].begin, t[L].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value.startsWith("created") || t[0].value.startsWith("updated")) && (p = d.getOptionValue("Date Data Type").toLowerCase()), u < 0 && (0 < this.indexOf("clob") && (p = "clob"), (0 < this.indexOf("blob") || 0 < this.indexOf("file")) && (p = "blob"), 0 < this.indexOf("json") && (p = "clob check (" + this.parseName() + " is json)")), 0 < this.indexOf("tswltz") ? p = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : 0 < this.indexOf("tswtz") || 0 < this.indexOf("tstz") ? p = "TIMESTAMP WITH TIME ZONE".toLowerCase() : 0 < this.indexOf("ts") && (p = "TIMESTAMP".toLowerCase()), r) { if (0 < this.indexOf("fk") || 0 < this.indexOf("reference", !0)) { - const L = this.refId(); + const E = this.refId(); let k = "number"; p == "integer" && (k = p); - let F = d.find(L); - return F != null && F.getExplicitPkNode() != null && (k = F.getExplicitPkNode().parseType((R) => !0)), k; + let O = d.find(E); + return O != null && O.getExplicitPkNode() != null && (k = O.getExplicitPkNode().parseType((R) => !0)), k; } return p; } @@ -7708,17 +7708,23 @@ let ce = function() { `, p += h + h + " ".repeat(i.maxChildNameLen()) + "constraint " + T + "_unq unique"); var D = "'"; if ((p.startsWith("integer") || p.startsWith("number") || p.startsWith("date")) && (D = ""), 0 < this.indexOf("default")) { - const L = t[this.indexOf("default") + 1].value; - p += " default on null " + D + L + D; + let E = ""; + for (let k = this.indexOf("default") + 1; k < t.length; k++) { + const O = t[k].value; + if (O == "/" || O == "-" || O == "[") + break; + E += t[k].value; + } + p += " default on null " + D + E + D; } if ((0 < this.indexOf("nn") || this.indexOf("not") + 1 == this.indexOf("null")) && this.indexOf("pk") < 0 && (p += " not null"), (0 < this.indexOf("hidden") || 0 < this.indexOf("invincible")) && (p += " invisible"), p += this.genConstraint(D), 0 < this.indexOf("between")) { - const L = this.indexOf("between"), k = t[L + 1].value + " and " + t[L + 3].value; + const E = this.indexOf("between"), k = t[E + 1].value + " and " + t[E + 3].value; p += " constraint " + K(T, "_bet") + ` `, p += " check (" + this.parseName() + " between " + k + ")"; } if (0 < this.indexOf("pk")) { - let L = " not null"; - p.startsWith("number") && d.optionEQvalue("pk", "identityDataType") && (L = " GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), p.startsWith("number") && d.optionEQvalue("pk", "seq") && (L = " default on null " + (d.objPrefix() + this.parent.parseName()) + "_seq.NEXTVAL ".toLowerCase()), p.startsWith("number") && d.optionEQvalue("pk", "guid") && (L = " default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), p += L + ` + let E = " not null"; + p.startsWith("number") && d.optionEQvalue("pk", "identityDataType") && (E = " GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), p.startsWith("number") && d.optionEQvalue("pk", "seq") && (E = " default on null " + (d.objPrefix() + this.parent.parseName()) + "_seq.NEXTVAL ".toLowerCase()), p.startsWith("number") && d.optionEQvalue("pk", "guid") && (E = " default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), p += E + ` `, p += h + h + " ".repeat(i.maxChildNameLen()) + "constraint " + K(d.objPrefix(), T, "_pk") + " primary key"; } return p; @@ -7731,10 +7737,10 @@ let ce = function() { let T = u.lastIndexOf("/"); T == p && (T = u.length); let S = this.trimmedContent().substr(p + 6, T - p - 6).trim(); - const E = Z(S, !1, !0, ""); + const L = Z(S, !1, !0, ""); let D = h; - i != null && (D = " ".repeat(i.maxChildNameLen())), this.children != null && 0 < this.children.length ? (E[0].value != "(" && (S = "( " + S + ")"), t += h + "constraint " + K(d.objPrefix(), l, "_ck"), t += " check " + S + `, -`) : E[0].value == "(" && E[E.length - 1].value == ")" ? (t += " constraint " + K(d.objPrefix(), l, "_ck") + ` + i != null && (D = " ".repeat(i.maxChildNameLen())), this.children != null && 0 < this.children.length ? (L[0].value != "(" && (S = "( " + S + ")"), t += h + "constraint " + K(d.objPrefix(), l, "_ck"), t += " check " + S + `, +`) : L[0].value == "(" && L[L.length - 1].value == ")" ? (t += " constraint " + K(d.objPrefix(), l, "_ck") + ` `, t += h + h + D + "check " + S) : (0 < S.indexOf(", ") ? S = S.replace(/, /g, r + "," + r) : 0 < S.indexOf(",") ? S = S.replace(/,/g, r + "," + r) : S = S.replace(/ /g, r + "," + r), t += " constraint " + K(d.objPrefix(), l, "_ck") + ` `, t += h + h + D + "check (" + this.parseName() + " in (" + r + S + r + "))", t = t.replace(/''/gm, "'")); } @@ -7920,14 +7926,14 @@ let ce = function() { `), s += ")" + (d.optionEQvalue("compress", "yes") || 0 < r.indexOf("/COMPRESS") ? " compress" : "") + `; `; - const E = r.indexOf("/AUDIT"), D = r.indexOf("/AUDITCOLS"), L = r.indexOf("/AUDIT COL"); - 0 < E && D < 0 && L < 0 && (s += "audit all on " + l + `; + const L = r.indexOf("/AUDIT"), D = r.indexOf("/AUDITCOLS"), E = r.indexOf("/AUDIT COL"); + 0 < L && D < 0 && E < 0 && (s += "audit all on " + l + `; `); let k = 1; for (let a in this.fks) if (!this.isMany2One()) { - var F = this.fks[a], R = F, H = a; + var O = this.fks[a], R = O, H = a; H == null && (H = W(R) + "_id"), k == 1 && (s += `-- table index `), s += "create index " + l + "_i" + k++ + " on " + l + " (" + H + `); @@ -8006,8 +8012,8 @@ let ce = function() { var T = (s[p] + ".id").length; u < T && (u = T); for (var S = 0; S < m.children.length; S++) { - var E = m.children[S]; - T = (s[p] + "." + E.parseName()).length, u < T && (u = T); + var L = m.children[S]; + T = (s[p] + "." + L.parseName()).length, u < T && (u = T); } } var D = {}; @@ -8015,8 +8021,8 @@ let ce = function() { let C = d.find(s[m]); if (C != null) for (let P = 0; P < C.children.length; P++) { - var L = C.children[P].parseName(), k = D[L]; - k == null && (k = 0), D[L] = k + 1; + var E = C.children[P].parseName(), k = D[E]; + k == null && (k = 0), D[E] = k + 1; } } for (let m = 2; m < s.length; m++) { @@ -8030,8 +8036,8 @@ let ce = function() { let v = C.children[A]; if (v.children.length == 0) { P = " ".repeat(u - (s[m] + "." + v.parseName()).length); - var F = ""; - 1 < D[v.parseName()] && (F = W(s[m]) + "_"), l += h + s[m] + "." + v.parseName() + h + P + F + v.parseName() + `, + var O = ""; + 1 < D[v.parseName()] && (O = W(s[m]) + "_"), l += h + s[m] + "." + v.parseName() + h + P + O + v.parseName() + `, `; } } @@ -8056,8 +8062,8 @@ let ce = function() { let _ = d.getOptionValue("updatedcol"); v = h + " ".repeat(C.maxChildNameLen() - _.length), l += h + s[m] + "." + _ + W(v + s[m]) + "_" + _ + `, `; - let O = d.getOptionValue("updatedbycol"); - v = h + " ".repeat(C.maxChildNameLen() - O.length), l += h + s[m] + "." + O + W(v + s[m]) + "_" + O + `, + let F = d.getOptionValue("updatedbycol"); + v = h + " ".repeat(C.maxChildNameLen() - F.length), l += h + s[m] + "." + F + W(v + s[m]) + "_" + F + `, `; } } @@ -8165,11 +8171,11 @@ end; `, s += " :new." + d.getOptionValue("updatedcol") + ` := SYSDATE; `.toLowerCase(), s += " :new." + d.getOptionValue("updatedbycol") + " := " + p + `; `.toLowerCase(), u = !0); - var E = d.additionalColumns(); - for (var D in E) { - var L = E[D]; + var L = d.additionalColumns(); + for (var D in L) { + var E = L[D]; s += " if :new." + D + ` is null then -`, L.startsWith("INT") ? s += " " + D + ` := 0; +`, E.startsWith("INT") ? s += " " + D + ` := 0; ` : s += " " + D + ` := 'N/A'; `, s += ` end if; `, u = !0; @@ -8187,8 +8193,8 @@ end; `; l += h + h + "p_id in number" + t; for (var u in this.fks) { - let T = this.fks[u], S = "number", E = d.find(T); - E != null && E.getExplicitPkNode() != null && (S = E.getExplicitPkNode().parseType((D) => !0)), l += `, + let T = this.fks[u], S = "number", L = d.find(T); + L != null && L.getExplicitPkNode() != null && (S = L.getExplicitPkNode().parseType((D) => !0)), l += `, `, l += h + h + "P_" + u + " " + s + " " + S + t; } for (let T = 0; T < this.children.length; T++) { @@ -8209,13 +8215,13 @@ end; `, l += h + h + h + "id"), r == "update" && (l = h + h + "update " + t + ` set `, l += h + h + h + "id = p_id"), s += l; for (let S in this.fks) { - let E = this.fks[S], D = d.find(E); + let L = this.fks[S], D = d.find(L); D != null && D.getExplicitPkNode() != null && D.getExplicitPkNode().parseType((k) => !0), (r == "insert" || r == "update") && (s += `, `); - let L = h + h + h + "P_" + S + " := c1." + S + `; + let E = h + h + h + "P_" + S + " := c1." + S + `; `; - r == "insert" && (L = h + h + h + S), r == "update" && (L = h + h + h + S + " = P_" + S + ` -`), s += L; + r == "insert" && (E = h + h + h + S), r == "update" && (E = h + h + h + S + " = P_" + S + ` +`), s += E; } for (var u = 0; u < this.children.length; u++) { var p = this.children[u]; @@ -8236,9 +8242,9 @@ end; s += `, `, s += h + h + h + "p_" + S; for (let S = 0; S < this.children.length; S++) { - let E = this.children[S]; - E.refId() == null && E.children.length == 0 && (s += `, -`, s += h + h + h + "p_" + E.parseName()); + let L = this.children[S]; + L.refId() == null && L.children.length == 0 && (s += `, +`, s += h + h + h + "p_" + L.parseName()); } } let T = ` @@ -8310,10 +8316,10 @@ is return ""; let s = d.objPrefix() + this.parseName(), l = "", u = null, p = null; for (let S = 0; S < this.cardinality(); S++) { - let E = null; + let L = null; if (r != null) { - const L = r[s]; - L != null && Array.isArray(L) && (E = L[S]); + const E = r[s]; + E != null && Array.isArray(E) && (L = E[S]); } l += "insert into " + s + ` ( `; @@ -8322,17 +8328,17 @@ is u = D, l += h + u + `, `; else { - let L = this.getExplicitPkNode(); - L != null && (u = L.parseName(), l += h + u + `, + let E = this.getExplicitPkNode(); + E != null && (u = E.parseName(), l += h + u + `, `); } - for (let L in this.fks) { - let k = this.fks[L], F = d.find(k), R = ""; - F == null && (F = d.find(L), F.isMany2One() & !L.endsWith("_id") && (k = L, L = W(L), R = "_id")), l += h + L + R + `, + for (let E in this.fks) { + let k = this.fks[E], O = d.find(k), R = ""; + O == null && (O = d.find(E), O.isMany2One() & !E.endsWith("_id") && (k = E, E = W(E), R = "_id")), l += h + E + R + `, `; } - for (let L = 0; L < this.children.length; L++) { - let k = this.children[L]; + for (let E = 0; E < this.children.length; E++) { + let k = this.children[E]; if (!(D != null && k.parseName() == "id") && k.refId() == null) { if (k == this.getExplicitPkNode()) continue; @@ -8347,20 +8353,20 @@ is p = S + 1, l += h + p + `, `; else { - let L = this.getExplicitPkNode(); - if (L != null) { - const k = L.parseName(); - let F = g(d.data, null, k, this.parseName()), R = -1; - E != null && (R = E[k]), F != null && F[S] != null && (R = F[S]), R.replaceAll && (R = "'" + R + "'"), p = R != -1 ? R : S + 1, l += h + p + `, + let E = this.getExplicitPkNode(); + if (E != null) { + const k = E.parseName(); + let O = g(d.data, null, k, this.parseName()), R = -1; + L != null && (R = L[k]), O != null && O[S] != null && (R = O[S]), R.replaceAll && (R = "'" + R + "'"), p = R != -1 ? R : S + 1, l += h + p + `, `; } } - for (let L in this.fks) { - let k = this.fks[L], F = d.find(k), R = [], H = "INTEGER"; - for (let G = 1; G <= F.cardinality(); G++) + for (let E in this.fks) { + let k = this.fks[E], O = d.find(k), R = [], H = "INTEGER"; + for (let G = 1; G <= O.cardinality(); G++) R.push(G); - if (E != null) { - let G = E[L]; + if (L != null) { + let G = L[E]; if (G != null) typeof G == "string" && (H = "STRING"), R = [], R[0] = G; else { @@ -8368,12 +8374,12 @@ is if (a != null) { for (const n in a) if (a[n][s + "_id"] == p) { - const c = a[n][L]; + const c = a[n][E]; c != null && (typeof c == "string" && (H = "STRING"), R = [], R[0] = c); break; } } else { - let n = F.getPkName(), c = E[n]; + let n = O.getPkName(), c = L[n]; c != null && (typeof c == "string" && (H = "STRING"), R = [], R[0] = c); } } @@ -8381,18 +8387,18 @@ is l += h + le(d.getOptionValue("Data Language"), se(s, W(k) + "_id", H, R)) + `, `; } - for (let L = 0; L < this.children.length; L++) { - let k = this.children[L]; + for (let E = 0; E < this.children.length; E++) { + let k = this.children[E]; if (!(D != null && k.parseName() == "id") && k.refId() == null) { if (k == this.getExplicitPkNode()) continue; if (k.children.length == 0) { - let F = k.parseValues(), R = k.parseName(); - if (E != null) { - let G = E[R]; - G != null && (F = [], F[0] = G); + let O = k.parseValues(), R = k.parseName(); + if (L != null) { + let G = L[R]; + G != null && (O = [], O[0] = G); } - let H = se(s, R, k.parseType(), F); + let H = se(s, R, k.parseType(), O); l += h + le(d.getOptionValue("Data Language"), H) + `, `; } @@ -8413,8 +8419,8 @@ modify ` + T + " generated always as identity restart start with " + (this.card `), t[s] = l; for (let S = 0; S < this.children.length; S++) { - const E = this.children[S]; - 0 < E.children.length && (t = { ...t, ...E.inserts4tbl(r) }); + const L = this.children[S]; + 0 < L.children.length && (t = { ...t, ...L.inserts4tbl(r) }); } return t; }, this.isArray = function() { @@ -8444,16 +8450,16 @@ modify ` + T + " generated always as identity restart start with " + (this.card throw new Error(this.one2many2oneUnsupoported); s += u.generateSelectJsonTopDown(r + " "), s += r + " WITH NOCHECK } from " + p + ` with INSERT UPDATE `; - let E = null; + let L = null; for (var T in u.fks) { var S = u.fks[T]; if (S == t) { - E = T; + L = T; break; } } - const D = t + "." + this.getPkName(), L = p + "." + E; - s += r + "where " + L + " = " + D + ` + const D = t + "." + this.getPkName(), E = p + "." + L; + s += r + "where " + E + " = " + D + ` `, r = r.slice(0, -2), s += r + "]"; } s += l < this.children.length - 1 ? `, @@ -8491,18 +8497,18 @@ modify ` + T + " generated always as identity restart start with " + (this.card s = "", l++; continue; } - let S = new I(l, s, null), E = !1; + let S = new I(l, s, null), L = !1; for (let D = 0; D < i.length; D++) { - let L = i[D]; - if (S.apparentDepth() <= L.apparentDepth()) + let E = i[D]; + if (S.apparentDepth() <= E.apparentDepth()) if (0 < D) { let k = i[D - 1]; - S = new I(l, s, k), i[D] = S, i = i.slice(0, D + 1), E = !0; + S = new I(l, s, k), i[D] = S, i = i.slice(0, D + 1), L = !0; break; } else - i[0] = S, i = i.slice(0, 1), o.push(S), E = !0; + i[0] = S, i = i.slice(0, 1), o.push(S), L = !0; } - if (!E) { + if (!L) { if (0 < i.length) { let D = i[i.length - 1]; S = new I(l, s, D); @@ -8512,8 +8518,8 @@ modify ` + T + " generated always as identity restart start with " + (this.card if (S.isMany2One()) { const D = S.parent; D.fks == null && (D.fks = []); - let L = S.refId(); - L == null && (L = S.parseName()), D.fks[S.parseName() + "_id"] = L; + let E = S.refId(); + E == null && (E = S.parseName()), D.fks[S.parseName() + "_id"] = E; } l++, s = ""; continue; @@ -8531,15 +8537,15 @@ modify ` + T + " generated always as identity restart start with " + (this.card M.setOptions(t), t = null, s = ""; continue; } - let S = null, E = null; + let S = null, L = null; for (let D in T) { - const L = T[D]; - if (S == null && L.value == "flattened") { + const E = T[D]; + if (S == null && E.value == "flattened") { S = ""; continue; } if (S != null) { - if (S += L.value, S == "=" || S.charAt(S.length - 1) != "}") + if (S += E.value, S == "=" || S.charAt(S.length - 1) != "}") continue; let k = S.substring(1); try { @@ -8548,14 +8554,14 @@ modify ` + T + " generated always as identity restart start with " + (this.card } catch { } } - if (E == null && L.value == "settings") { - E = ""; + if (L == null && E.value == "settings") { + L = ""; continue; } - if (E != null) { - E += L.value, E.substring(1); + if (L != null) { + L += E.value, L.substring(1); try { - M.setOptions(E), t = null, s = ""; + M.setOptions(L), t = null, s = ""; continue e; } catch { } @@ -8717,8 +8723,8 @@ var Ae = function() { for (let p in o) { const T = o[p]; if (p != null) { - const E = W(i), D = p.toLowerCase(); - if (i != null && E + "_id" == D && 0 < r && (u = p), E + "_id" == D || !isNaN(p) && !Array.isArray(o)) + const L = W(i), D = p.toLowerCase(); + if (i != null && L + "_id" == D && 0 < r && (u = p), L + "_id" == D || !isNaN(p) && !Array.isArray(o)) continue; } const S = this.output(p + b(T), T, r + 1); @@ -8753,8 +8759,8 @@ var Ae = function() { T == null && (T = []); const S = {}; S[this.refIdName(u)] = r.value; - let E = x(t); - E == null && (t.id = this.idSeq++, E = x(t)), S[this.refIdName(i)] = E.value, T.push(S), this.tableContent[p] = T; + let L = x(t); + L == null && (t.id = this.idSeq++, L = x(t)), S[this.refIdName(i)] = L.value, T.push(S), this.tableContent[p] = T; } } this.tableContent[i] = l; diff --git a/dist/quick-sql.umd.cjs b/dist/quick-sql.umd.cjs index 368d3fa..c29ac46 100644 --- a/dist/quick-sql.umd.cjs +++ b/dist/quick-sql.umd.cjs @@ -1,5 +1,5 @@ -(function(V,W){typeof exports=="object"&&typeof module<"u"?W(exports):typeof define=="function"&&define.amd?define(["exports"],W):(V=typeof globalThis<"u"?globalThis:V||self,W(V.quickSQL={}))})(this,function(V){"use strict";function W(d){return d==null?d:d.toUpperCase().endsWith("IES")?d.substring(0,d.length-3)+"y":d.toUpperCase().endsWith("ES")||d.toUpperCase().endsWith("S")?d.substring(0,d.length-1):d}function ve(d,h){let k='"';if(d==null)return null;let w=!1;const I="$#_ ";if(!d.startsWith(k)&&!w){const N=d;if(N.length>0&&"0"<=N[0]&&N[0]<="9")w=!0;else for(let b in N){const g=N[b];if(I.indexOf(g)<0&&(g<"0"||"9""u"&&(e[n]=a[n]);return e}function r(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var s=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?s=btoa:typeof Buffer=="function"&&(s=function(a){return new Buffer(a).toString("base64")})})(),i.prototype.bool=function(e){return e=o(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100c,"Chance: Max specified is out of range with fixed. Max should be, at most, "+c),e=o(e,{min:m,max:c}),a=this.integer({min:e.min*n,max:e.max*n});var C=(a/n).toFixed(e.fixed);return parseFloat(C)},i.prototype.integer=function(e){return e=o(e,{min:w,max:k}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},i.prototype.natural=function(e){if(e=o(e,{min:0,max:k}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),c=e.exclude.sort();for(var m in c){if(ne.max,"Chance: Min cannot be greater than Max.");var a=E.primes[E.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&E.primes.push(n);var c=E.primes.filter(function(m){return m>=e.min&&m<=e.max});return this.pick(c)},i.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},i.prototype.hex=function(e){e=o(e,{min:0,max:k,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},i.prototype.letter=function(e){e=o(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},i.prototype.string=function(e){e=o(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function u(e){this.c=e}u.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function p(e){this.c=e}p.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:b})},a:function(e){return e.character({pool:N})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function T(e){for(var a=[],n="identity",c=0;c"u")throw new M("Sorry, the buffer() function is not supported on your platform");e=o(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},i.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},i.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},i.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var c=function(y,_){return y.indexOf(_)!==-1};n&&(c=n.comparator||c);for(var m=[],C=0,P,f=a*50,A=B.call(arguments,2);m.lengthf)throw new RangeError("Chance: num is likely too large for sample set")}return m},i.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,c=[],m=B.call(arguments,2);for(n=Math.max(0,n),null;n--;null)c.push(e.apply(this,m));return c},i.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},i.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},i.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},i.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),c=n.length;return this.n(function(){var m=this.natural({max:--c}),C=n[m];return n[m]=n[c],C},Math.min(c,a))},i.prototype.shuffle=function(e){for(var a=[],n=0,c=Number(e.length),m=r(c),C=c-1,P,f=0;f0&&(c+=m)}if(c===0)throw new RangeError("Chance: No valid entries in array weights");var P=this.random()*c,f=0,A=-1,v;for(C=0;C0){if(P<=f){v=C;break}A=C}C===a.length-1&&(v=A)}var y=e[v];return n=typeof n>"u"?!1:n,n&&(e.splice(v,1),a.splice(v,1)),y},i.prototype.paragraph=function(e){e=o(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),c=e.linebreak===!0?` -`:" ";return n.join(c)},i.prototype.sentence=function(e){e=o(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,c,m=this.n(this.word,a);return c=m.join(" "),c=this.capitalize(c),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(c+=n),c},i.prototype.syllable=function(e){e=o(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",c="aeiou",m=n+c,C="",P,f=0;fe.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var P=e.minAge!==void 0?e.minAge:0,f=e.maxAge!==void 0?e.maxAge:100,A=new Date(c-f-1,n.getMonth(),n.getDate()),v=new Date(c-P,n.getMonth(),n.getDate());A.setDate(A.getDate()+1),v.setDate(v.getDate()+1),v.setMilliseconds(v.getMilliseconds()-1),e=o(e,{min:A,max:v})}else e=o(e,{year:c-a});return this.date(e)},i.prototype.cpf=function(e){e=o(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var c=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;c=11-c%11,c>=10&&(c=0);var m=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},i.prototype.cnpj=function(e){e=o(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var c=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;c=11-c%11,c<2&&(c=0);var m=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},i.prototype.first=function(e){return e=o(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},i.prototype.profession=function(e){return e=o(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},i.prototype.company=function(){return this.pick(this.get("company"))},i.prototype.gender=function(e){return e=o(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},i.prototype.last=function(e){if(e=o(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(c){a=a.concat(n[c])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},i.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},i.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},i.prototype.tld=function(){return this.pick(this.tlds())},i.prototype.twitter=function(){return"@"+this.word()},i.prototype.url=function(e){e=o(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},i.prototype.port=function(){return this.integer({min:0,max:65535})},i.prototype.locale=function(e){return e=o(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},i.prototype.locales=function(e){return e=o(e),e.region?this.get("locale_regions"):this.get("locale_languages")},i.prototype.loremPicsum=function(e){e=o(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},i.prototype.address=function(e){return e=o(e),this.natural({min:5,max:2e3})+" "+this.street(e)},i.prototype.altitude=function(e){return e=o(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},i.prototype.areacode=function(e){e=o(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},i.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},i.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},i.prototype.countries=function(){return this.get("countries")},i.prototype.country=function(e){e=o(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},i.prototype.depth=function(e){return e=o(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},i.prototype.geohash=function(e){return e=o(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},i.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},i.prototype.latitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=o(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},i.prototype.longitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=o(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},i.prototype.phone=function(e){var a=this,n,c=function(_){var O=[];return _.sections.forEach(function(z){O.push(a.string({pool:"0123456789",length:z}))}),_.area+O.join(" ")};e=o(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var m;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),m=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),m=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n);break;case"us":var C=this.areacode(e).toString(),P=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),f=this.natural({min:1e3,max:9999}).toString();m=e.formatted?C+" "+P+"-"+f:C+P+f;break;case"br":var A=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),v;e.mobile?v="9"+a.string({pool:"0123456789",length:4}):v=this.natural({min:2e3,max:5999}).toString();var y=a.string({pool:"0123456789",length:4});m=e.formatted?"("+A+") "+v+"-"+y:A+v+y;break}return m},i.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},i.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",c=e+a+n,m=this.natural({max:9}),C=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),P=m+C;return c+" "+P},i.prototype.counties=function(e){return e=o(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},i.prototype.county=function(e){return this.pick(this.counties(e)).name},i.prototype.provinces=function(e){return e=o(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},i.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},i.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},i.prototype.states=function(e){e=o(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),c=this.get("territories"),m=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(c)),e.armed_forces&&(a=a.concat(m));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},i.prototype.street=function(e){e=o(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},i.prototype.street_suffix=function(e){return e=o(e,{country:"us"}),this.pick(this.street_suffixes(e))},i.prototype.street_suffixes=function(e){return e=o(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},i.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},i.prototype.ampm=function(){return this.bool()?"am":"pm"},i.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=o(e,{american:!0,string:!1});var c=typeof e.min<"u"?e.min.getTime():1,m=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:c,max:m}))}else{var C=this.month({raw:!0}),P=C.days;e&&e.month&&(P=this.get("months")[(e.month%12+12)%12].days),e=o(e,{year:parseInt(this.year(),10),month:C.numeric-1,day:this.natural({min:1,max:P}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},i.prototype.hammertime=function(e){return this.date(e).getTime()},i.prototype.hour=function(e){return e=o(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},i.prototype.millisecond=function(){return this.natural({max:999})},i.prototype.minute=i.prototype.second=function(e){return e=o(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},i.prototype.month=function(e){e=o(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},i.prototype.months=function(){return this.get("months")},i.prototype.second=function(){return this.natural({max:59})},i.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},i.prototype.weekday=function(e){e=o(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},i.prototype.year=function(e){return e=o(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},i.prototype.cc=function(e){e=o(e);var a,n,c;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),c=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,c,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},i.prototype.cc_types=function(){return this.get("cc_types")},i.prototype.cc_type=function(e){e=o(e);var a=this.cc_types(),n=null;if(e.name){for(var c=0;c3&&(_?O=O.substr(0,3):O=O[0]+O.substr(2,2)),O.length<3&&(z=O,O=y.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+O),z},A=function(y,_,O){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return y.getFullYear().toString().substr(2)+z[y.getMonth()]+O.pad(y.getDate()+(_.toLowerCase()==="female"?40:0),2)},v=function(y){for(var _="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",O="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(O[_.indexOf(y[U])]):K+=j.indexOf(O[_.indexOf(y[U])]);return z[K%26]};return P=P.concat(f(c,!0),f(n),A(m,a,this),C.toUpperCase().split("")).join(""),P+=v(P.toUpperCase()),P.toUpperCase()},i.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;m--)c[m-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?c.reduce(function(C,P){return C+P}):c}else throw new RangeError("Chance: A type of die roll must be included")},i.prototype.guid=function(e){e=o(e,{version:5});var a="abcdef1234567890",n="ab89",c=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return c},i.prototype.hash=function(e){e=o(e,{length:40,casing:"lower"});var a=e.casing==="upper"?g.toUpperCase():g;return this.string({pool:a,length:e.length})},i.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},i.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,c,m=0,C=a.length;C>m;++m)c=+a[m],m%2===0&&(c*=2,c>9&&(c-=9)),n+=c;return n*9%10},i.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=o(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},i.prototype.file=function(e){var a=e||{},n="fileExtension",c=Object.keys(this.get("fileExtension")),m,C;if(m=this.word({length:a.length}),a.extension)return C=a.extension,m+"."+C;if(a.extensions){if(Array.isArray(a.extensions))return C=this.pickone(a.extensions),m+"."+C;if(a.extensions.constructor===Object){var P=a.extensions,f=Object.keys(P);return C=this.pickone(P[this.pickone(f)]),m+"."+C}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var A=a.fileType;if(c.indexOf(A)!==-1)return C=this.pickone(this.get(n)[A]),m+"."+C;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return C=this.pickone(this.get(n)[this.pickone(c)]),m+"."+C},i.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var c={fileData:this.buffer({length:a.fileSize}),fileName:n};return c};var E={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},D=Object.prototype.hasOwnProperty,L=Object.keys||function(e){var a=[];for(var n in e)D.call(e,n)&&a.push(n);return a};function x(e,a){for(var n=L(e),c,m=0,C=n.length;m0)return this.normal_pool(e);var a,n,c,m,C=e.mean,P=e.dev;do n=this.random()*2-1,c=this.random()*2-1,a=n*n+c*c;while(a>=1);return m=n*Math.sqrt(-2*Math.log(a)/a),P*m+C},i.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},i.prototype.radio=function(e){e=o(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},i.prototype.set=function(e,a){typeof e=="string"?E[e]=a:E=R(e,E)},i.prototype.tv=function(e){return this.radio(e)},i.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},i.prototype.emotion=function(){return this.pick(this.get("emotions"))},i.prototype.mersenne_twister=function(e){return new H(e)},i.prototype.blueimp_md5=function(){return new G};var H=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};H.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},H.prototype.init_by_array=function(e,a){var n=1,c=0,m,C;for(this.init_genrand(19650218),m=this.N>a?this.N:a;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1664525<<16)+(C&65535)*1664525)+e[c]+c,this.mt[n]>>>=0,n++,c++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),c>=a&&(c=0);for(m=this.N-1;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1566083941<<16)+(C&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},H.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},H.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},H.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},H.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},H.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},H.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var G=function(){};G.prototype.VERSION="1.0.1",G.prototype.safe_add=function(a,n){var c=(a&65535)+(n&65535),m=(a>>16)+(n>>16)+(c>>16);return m<<16|c&65535},G.prototype.bit_roll=function(e,a){return e<>>32-a},G.prototype.md5_cmn=function(e,a,n,c,m,C){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(c,C)),m),n)},G.prototype.md5_ff=function(e,a,n,c,m,C,P){return this.md5_cmn(a&n|~a&c,e,a,m,C,P)},G.prototype.md5_gg=function(e,a,n,c,m,C,P){return this.md5_cmn(a&c|n&~c,e,a,m,C,P)},G.prototype.md5_hh=function(e,a,n,c,m,C,P){return this.md5_cmn(a^n^c,e,a,m,C,P)},G.prototype.md5_ii=function(e,a,n,c,m,C,P){return this.md5_cmn(n^(a|~c),e,a,m,C,P)},G.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,c,m,C,P,f=1732584193,A=-271733879,v=-1732584194,y=271733878;for(n=0;n>5]>>>a%32&255);return n},G.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(c=this.binl_md5(c,e.length*8)),n=0;n<16;n+=1)m[n]=c[n]^909522486,C[n]=c[n]^1549556828;return P=this.binl_md5(m.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(C.concat(P),512+128))},G.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",c,m;for(m=0;m>>4&15)+a.charAt(c&15);return n},G.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},G.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},G.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},G.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},G.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},G.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},d.exports&&(h=d.exports=i),h.Chance=i,typeof importScripts<"u"&&(chance=new i,self.Chance=i),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=i,window.chance=new i)})()})(ne,ne.exports);var ye=ne.exports;const Se=Ae(ye);function ue(d,h,k,w){var I=new Se(ie);k==null&&console.log();let N=k.toUpperCase(),b=d.toUpperCase(),g=h.toUpperCase();if(w!=null&&0":o=="["?"]":o=="{"?"}":o=="("?")":o}}function h(I,N,b){for(var g=[],M=`(){}[]^-|!*+.><='",;:%@?/\\#~`+b,B=` +(function(V,W){typeof exports=="object"&&typeof module<"u"?W(exports):typeof define=="function"&&define.amd?define(["exports"],W):(V=typeof globalThis<"u"?globalThis:V||self,W(V.quickSQL={}))})(this,function(V){"use strict";function W(d){return d==null?d:d.toUpperCase().endsWith("IES")?d.substring(0,d.length-3)+"y":d.toUpperCase().endsWith("ES")||d.toUpperCase().endsWith("S")?d.substring(0,d.length-1):d}function ve(d,h){let N='"';if(d==null)return null;let w=!1;const I="$#_ ";if(!d.startsWith(N)&&!w){const x=d;if(x.length>0&&"0"<=x[0]&&x[0]<="9")w=!0;else for(let b in x){const g=x[b];if(I.indexOf(g)<0&&(g<"0"||"9""u"&&(e[n]=a[n]);return e}function r(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var s=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?s=btoa:typeof Buffer=="function"&&(s=function(a){return new Buffer(a).toString("base64")})})(),i.prototype.bool=function(e){return e=o(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100c,"Chance: Max specified is out of range with fixed. Max should be, at most, "+c),e=o(e,{min:m,max:c}),a=this.integer({min:e.min*n,max:e.max*n});var C=(a/n).toFixed(e.fixed);return parseFloat(C)},i.prototype.integer=function(e){return e=o(e,{min:w,max:N}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},i.prototype.natural=function(e){if(e=o(e,{min:0,max:N}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),c=e.exclude.sort();for(var m in c){if(ne.max,"Chance: Min cannot be greater than Max.");var a=L.primes[L.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&L.primes.push(n);var c=L.primes.filter(function(m){return m>=e.min&&m<=e.max});return this.pick(c)},i.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},i.prototype.hex=function(e){e=o(e,{min:0,max:N,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},i.prototype.letter=function(e){e=o(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},i.prototype.string=function(e){e=o(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function u(e){this.c=e}u.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function p(e){this.c=e}p.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:b})},a:function(e){return e.character({pool:x})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function T(e){for(var a=[],n="identity",c=0;c"u")throw new M("Sorry, the buffer() function is not supported on your platform");e=o(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},i.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},i.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},i.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var c=function(y,_){return y.indexOf(_)!==-1};n&&(c=n.comparator||c);for(var m=[],C=0,P,f=a*50,A=B.call(arguments,2);m.lengthf)throw new RangeError("Chance: num is likely too large for sample set")}return m},i.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,c=[],m=B.call(arguments,2);for(n=Math.max(0,n),null;n--;null)c.push(e.apply(this,m));return c},i.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},i.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},i.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},i.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),c=n.length;return this.n(function(){var m=this.natural({max:--c}),C=n[m];return n[m]=n[c],C},Math.min(c,a))},i.prototype.shuffle=function(e){for(var a=[],n=0,c=Number(e.length),m=r(c),C=c-1,P,f=0;f0&&(c+=m)}if(c===0)throw new RangeError("Chance: No valid entries in array weights");var P=this.random()*c,f=0,A=-1,v;for(C=0;C0){if(P<=f){v=C;break}A=C}C===a.length-1&&(v=A)}var y=e[v];return n=typeof n>"u"?!1:n,n&&(e.splice(v,1),a.splice(v,1)),y},i.prototype.paragraph=function(e){e=o(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),c=e.linebreak===!0?` +`:" ";return n.join(c)},i.prototype.sentence=function(e){e=o(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,c,m=this.n(this.word,a);return c=m.join(" "),c=this.capitalize(c),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(c+=n),c},i.prototype.syllable=function(e){e=o(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",c="aeiou",m=n+c,C="",P,f=0;fe.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var P=e.minAge!==void 0?e.minAge:0,f=e.maxAge!==void 0?e.maxAge:100,A=new Date(c-f-1,n.getMonth(),n.getDate()),v=new Date(c-P,n.getMonth(),n.getDate());A.setDate(A.getDate()+1),v.setDate(v.getDate()+1),v.setMilliseconds(v.getMilliseconds()-1),e=o(e,{min:A,max:v})}else e=o(e,{year:c-a});return this.date(e)},i.prototype.cpf=function(e){e=o(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var c=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;c=11-c%11,c>=10&&(c=0);var m=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},i.prototype.cnpj=function(e){e=o(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var c=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;c=11-c%11,c<2&&(c=0);var m=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},i.prototype.first=function(e){return e=o(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},i.prototype.profession=function(e){return e=o(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},i.prototype.company=function(){return this.pick(this.get("company"))},i.prototype.gender=function(e){return e=o(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},i.prototype.last=function(e){if(e=o(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(c){a=a.concat(n[c])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},i.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},i.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},i.prototype.tld=function(){return this.pick(this.tlds())},i.prototype.twitter=function(){return"@"+this.word()},i.prototype.url=function(e){e=o(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},i.prototype.port=function(){return this.integer({min:0,max:65535})},i.prototype.locale=function(e){return e=o(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},i.prototype.locales=function(e){return e=o(e),e.region?this.get("locale_regions"):this.get("locale_languages")},i.prototype.loremPicsum=function(e){e=o(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},i.prototype.address=function(e){return e=o(e),this.natural({min:5,max:2e3})+" "+this.street(e)},i.prototype.altitude=function(e){return e=o(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},i.prototype.areacode=function(e){e=o(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},i.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},i.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},i.prototype.countries=function(){return this.get("countries")},i.prototype.country=function(e){e=o(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},i.prototype.depth=function(e){return e=o(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},i.prototype.geohash=function(e){return e=o(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},i.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},i.prototype.latitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=o(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},i.prototype.longitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=o(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},i.prototype.phone=function(e){var a=this,n,c=function(_){var F=[];return _.sections.forEach(function(z){F.push(a.string({pool:"0123456789",length:z}))}),_.area+F.join(" ")};e=o(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var m;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),m=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),m=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n);break;case"us":var C=this.areacode(e).toString(),P=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),f=this.natural({min:1e3,max:9999}).toString();m=e.formatted?C+" "+P+"-"+f:C+P+f;break;case"br":var A=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),v;e.mobile?v="9"+a.string({pool:"0123456789",length:4}):v=this.natural({min:2e3,max:5999}).toString();var y=a.string({pool:"0123456789",length:4});m=e.formatted?"("+A+") "+v+"-"+y:A+v+y;break}return m},i.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},i.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",c=e+a+n,m=this.natural({max:9}),C=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),P=m+C;return c+" "+P},i.prototype.counties=function(e){return e=o(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},i.prototype.county=function(e){return this.pick(this.counties(e)).name},i.prototype.provinces=function(e){return e=o(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},i.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},i.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},i.prototype.states=function(e){e=o(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),c=this.get("territories"),m=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(c)),e.armed_forces&&(a=a.concat(m));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},i.prototype.street=function(e){e=o(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},i.prototype.street_suffix=function(e){return e=o(e,{country:"us"}),this.pick(this.street_suffixes(e))},i.prototype.street_suffixes=function(e){return e=o(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},i.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},i.prototype.ampm=function(){return this.bool()?"am":"pm"},i.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=o(e,{american:!0,string:!1});var c=typeof e.min<"u"?e.min.getTime():1,m=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:c,max:m}))}else{var C=this.month({raw:!0}),P=C.days;e&&e.month&&(P=this.get("months")[(e.month%12+12)%12].days),e=o(e,{year:parseInt(this.year(),10),month:C.numeric-1,day:this.natural({min:1,max:P}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},i.prototype.hammertime=function(e){return this.date(e).getTime()},i.prototype.hour=function(e){return e=o(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},i.prototype.millisecond=function(){return this.natural({max:999})},i.prototype.minute=i.prototype.second=function(e){return e=o(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},i.prototype.month=function(e){e=o(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},i.prototype.months=function(){return this.get("months")},i.prototype.second=function(){return this.natural({max:59})},i.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},i.prototype.weekday=function(e){e=o(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},i.prototype.year=function(e){return e=o(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},i.prototype.cc=function(e){e=o(e);var a,n,c;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),c=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,c,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},i.prototype.cc_types=function(){return this.get("cc_types")},i.prototype.cc_type=function(e){e=o(e);var a=this.cc_types(),n=null;if(e.name){for(var c=0;c3&&(_?F=F.substr(0,3):F=F[0]+F.substr(2,2)),F.length<3&&(z=F,F=y.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+F),z},A=function(y,_,F){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return y.getFullYear().toString().substr(2)+z[y.getMonth()]+F.pad(y.getDate()+(_.toLowerCase()==="female"?40:0),2)},v=function(y){for(var _="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",F="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(F[_.indexOf(y[U])]):K+=j.indexOf(F[_.indexOf(y[U])]);return z[K%26]};return P=P.concat(f(c,!0),f(n),A(m,a,this),C.toUpperCase().split("")).join(""),P+=v(P.toUpperCase()),P.toUpperCase()},i.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;m--)c[m-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?c.reduce(function(C,P){return C+P}):c}else throw new RangeError("Chance: A type of die roll must be included")},i.prototype.guid=function(e){e=o(e,{version:5});var a="abcdef1234567890",n="ab89",c=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return c},i.prototype.hash=function(e){e=o(e,{length:40,casing:"lower"});var a=e.casing==="upper"?g.toUpperCase():g;return this.string({pool:a,length:e.length})},i.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},i.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,c,m=0,C=a.length;C>m;++m)c=+a[m],m%2===0&&(c*=2,c>9&&(c-=9)),n+=c;return n*9%10},i.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=o(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},i.prototype.file=function(e){var a=e||{},n="fileExtension",c=Object.keys(this.get("fileExtension")),m,C;if(m=this.word({length:a.length}),a.extension)return C=a.extension,m+"."+C;if(a.extensions){if(Array.isArray(a.extensions))return C=this.pickone(a.extensions),m+"."+C;if(a.extensions.constructor===Object){var P=a.extensions,f=Object.keys(P);return C=this.pickone(P[this.pickone(f)]),m+"."+C}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var A=a.fileType;if(c.indexOf(A)!==-1)return C=this.pickone(this.get(n)[A]),m+"."+C;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return C=this.pickone(this.get(n)[this.pickone(c)]),m+"."+C},i.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var c={fileData:this.buffer({length:a.fileSize}),fileName:n};return c};var L={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},D=Object.prototype.hasOwnProperty,E=Object.keys||function(e){var a=[];for(var n in e)D.call(e,n)&&a.push(n);return a};function k(e,a){for(var n=E(e),c,m=0,C=n.length;m0)return this.normal_pool(e);var a,n,c,m,C=e.mean,P=e.dev;do n=this.random()*2-1,c=this.random()*2-1,a=n*n+c*c;while(a>=1);return m=n*Math.sqrt(-2*Math.log(a)/a),P*m+C},i.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},i.prototype.radio=function(e){e=o(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},i.prototype.set=function(e,a){typeof e=="string"?L[e]=a:L=R(e,L)},i.prototype.tv=function(e){return this.radio(e)},i.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},i.prototype.emotion=function(){return this.pick(this.get("emotions"))},i.prototype.mersenne_twister=function(e){return new H(e)},i.prototype.blueimp_md5=function(){return new G};var H=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};H.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},H.prototype.init_by_array=function(e,a){var n=1,c=0,m,C;for(this.init_genrand(19650218),m=this.N>a?this.N:a;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1664525<<16)+(C&65535)*1664525)+e[c]+c,this.mt[n]>>>=0,n++,c++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),c>=a&&(c=0);for(m=this.N-1;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1566083941<<16)+(C&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},H.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},H.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},H.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},H.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},H.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},H.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var G=function(){};G.prototype.VERSION="1.0.1",G.prototype.safe_add=function(a,n){var c=(a&65535)+(n&65535),m=(a>>16)+(n>>16)+(c>>16);return m<<16|c&65535},G.prototype.bit_roll=function(e,a){return e<>>32-a},G.prototype.md5_cmn=function(e,a,n,c,m,C){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(c,C)),m),n)},G.prototype.md5_ff=function(e,a,n,c,m,C,P){return this.md5_cmn(a&n|~a&c,e,a,m,C,P)},G.prototype.md5_gg=function(e,a,n,c,m,C,P){return this.md5_cmn(a&c|n&~c,e,a,m,C,P)},G.prototype.md5_hh=function(e,a,n,c,m,C,P){return this.md5_cmn(a^n^c,e,a,m,C,P)},G.prototype.md5_ii=function(e,a,n,c,m,C,P){return this.md5_cmn(n^(a|~c),e,a,m,C,P)},G.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,c,m,C,P,f=1732584193,A=-271733879,v=-1732584194,y=271733878;for(n=0;n>5]>>>a%32&255);return n},G.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(c=this.binl_md5(c,e.length*8)),n=0;n<16;n+=1)m[n]=c[n]^909522486,C[n]=c[n]^1549556828;return P=this.binl_md5(m.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(C.concat(P),512+128))},G.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",c,m;for(m=0;m>>4&15)+a.charAt(c&15);return n},G.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},G.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},G.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},G.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},G.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},G.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},d.exports&&(h=d.exports=i),h.Chance=i,typeof importScripts<"u"&&(chance=new i,self.Chance=i),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=i,window.chance=new i)})()})(ne,ne.exports);var ye=ne.exports;const Se=Ae(ye);function ue(d,h,N,w){var I=new Se(ie);N==null&&console.log();let x=N.toUpperCase(),b=d.toUpperCase(),g=h.toUpperCase();if(w!=null&&0":o=="["?"]":o=="{"?"}":o=="("?")":o}}function h(I,x,b){for(var g=[],M=`(){}[]^-|!*+.><='",;:%@?/\\#~`+b,B=` \r `,i=$(I,M+B),o=0,r=0,t=0,s=0;s0&&(u=g[g.length-1]),l==` `?(r++,t=0):s>0&&i[s-1]!==` `?t=t+i[s-1].length:t=0,o+=l.length,u!=null&&u.type=="comment"&&(u.value.lastIndexOf("*/")!=u.value.length-2||u.value=="/*/")){l=="*"||l=="/"?u.value=u.value+l:u.value="/* ... ",u.end=o,u!=null&&u.type=="comment"&&u.value.lastIndexOf("*/")==u.value.length-2&&u.value!="/*/"&&(u.value=I.substring(u.begin,u.end));continue}if(u!=null&&(u.type=="line-comment"||u.type=="dbtools-command")&&l!=` @@ -8,13 +8,13 @@ `||u.value=="\r")){g.push(new d(l,o-l.length,-9,"line-comment",r,t));continue}if(l.toUpperCase()=="SODA"&&(u==null||u.value==` `||u.value=="\r")){g.push(new d(l,o-l.length,-9,"dbtools-command",r,t));continue}if(u!=null&&u.type=="identifier"&&u.end==-11&&u.value.indexOf("@")==0&&!(l==` `||l=="\r")){u.value=u.value+l;continue}if(u!=null&&u.type=="identifier"&&u.end==-11&&u.value.indexOf("@")==0&&(l==` -`||l=="\r")){u.end=o-1,g.push(new d(l,o-1,o,"ws",r,t));continue}if(N&&l=="'"){u!=null&&(u.value.toUpperCase()=="Q"||u.value.toUpperCase()=="N"||u.value.toUpperCase()=="U"||u.value.toUpperCase()=="NQ")?(u.value+=l,u.type="quoted-string"):g.push(new d(l,o-1,-10,"quoted-string",r,t));continue}if(N&&l=='"'){g.push(new d(l,o-1,-11,"dquoted-string",r,t));continue}if(l=="`"&&0<=M.indexOf("`")){g.push(new d(l,o-1,-11,"bquoted-string",r,t));continue}if(l.length==1&&0<=M.indexOf(l)){g.push(new d(l,o-1,o,"operation",r,t));continue}if(l.length==1&&0<=B.indexOf(l)){g.push(new d(l,o-1,o,"ws",r,t));continue}if("0"<=l.charAt(0)&&l.charAt(0)<="9"){k(l,g,o-l.length,r)||(l.charAt(l.length-1)=="K"||l.charAt(l.length-1)=="k"||l.charAt(l.length-1)=="M"||l.charAt(l.length-1)=="m"||l.charAt(l.length-1)=="G"||l.charAt(l.length-1)=="g"||l.charAt(l.length-1)=="T"||l.charAt(l.length-1)=="t"||l.charAt(l.length-1)=="P"||l.charAt(l.length-1)=="p"||l.charAt(l.length-1)=="E"||l.charAt(l.length-1)=="e"?(g.push(new d(l.substring(0,l.length-1),o-l.length,o-1,"constant.numeric",r,t)),g.push(new d(l.substring(l.length-1),o-1,o,"constant.numeric",r,t))):g.push(new d(l,o-l.length,o,"constant.numeric",r,t)));continue}var p="identifier";s+10){var u=g[g.length-1];u.end=I.length}return g}function k(I,N,b,g){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var M=$(I,"efd"),B=0;B")==0||r.indexOf("<")==0)&&(r=r.substring(1).trim());const l=r.toLowerCase();if(l.indexOf("view ")==0){var u=r.split(" ");return u[1]}r=b(r," d");var p=r.indexOf("/");0="0"&&T<="9"&&(r="x"+r),Te(se(r))},this.parseType=function(r){if(this.children!=null&&0!0)),x}return p}00){var u=g[g.length-1];u.end=I.length}return g}function N(I,x,b,g){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var M=$(I,"efd"),B=0;B")==0||r.indexOf("<")==0)&&(r=r.substring(1).trim());const l=r.toLowerCase();if(l.indexOf("view ")==0){var u=r.split(" ");return u[1]}r=b(r," d");var p=r.indexOf("/");0="0"&&T<="9"&&(r="x"+r),Te(se(r))},this.parseType=function(r){if(this.children!=null&&0!0)),k}return p}0");return t==0},this.getExplicitPkNode=function(){for(var r=0;rr.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(d.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),d.optionEQvalue("prefixPKwithTname","yes")&&(t=W(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let r=this.getGenIdColName();if(r==null){let t=this.getExplicitPkNode();return t==null?null:t.parseName()}return r},this.singleDDL=function(){if(this.children.length==0&&0!0)),l+=`, +`;l+=h+h+"p_id in number"+t;for(var u in this.fks){let T=this.fks[u],S="number",L=d.find(T);L!=null&&L.getExplicitPkNode()!=null&&(S=L.getExplicitPkNode().parseType(D=>!0)),l+=`, `,l+=h+h+"P_"+u+" "+s+" "+S+t}for(let T=0;T!0),(r=="insert"||r=="update")&&(s+=`, -`);let L=h+h+h+"P_"+S+" := c1."+S+`; -`;r=="insert"&&(L=h+h+h+S),r=="update"&&(L=h+h+h+S+" = P_"+S+` -`),s+=L}for(var u=0;u!0),(r=="insert"||r=="update")&&(s+=`, +`);let E=h+h+h+"P_"+S+" := c1."+S+`; +`;r=="insert"&&(E=h+h+h+S),r=="update"&&(E=h+h+h+S+" = P_"+S+` +`),s+=E}for(var u=0;us.children.length>0&&s.parseName()==t&&!s.isArray())},this.generateSelectJsonBottomUp=function(r){throw new Error("generateSelectJsonBottomUp() not implemented yet")},this.one2many2oneUnsupoported="one to many to one is not supported",this.generateSelectJsonTopDown=function(r){var t=this.parseName();let s="";this.getExplicitPkNode==null&&(s+=r+"'"+this.getGenIdColName()+"' : "+t+"."+this.getGenIdColName()+`, +`),t[s]=l;for(let S=0;Ss.children.length>0&&s.parseName()==t&&!s.isArray())},this.generateSelectJsonBottomUp=function(r){throw new Error("generateSelectJsonBottomUp() not implemented yet")},this.one2many2oneUnsupoported="one to many to one is not supported",this.generateSelectJsonTopDown=function(r){var t=this.parseName();let s="";this.getExplicitPkNode==null&&(s+=r+"'"+this.getGenIdColName()+"' : "+t+"."+this.getGenIdColName()+`, `);for(var l=0;l!0)}),0!0)}),0packagings1 /insert 2 + ecoscore_material_score num + ecoscore_shape_ratio num + material + non_recyclable_and_non_biodegradable + shape + score num + value num + production_system /insert 1 + value num + warning + agribalyse1 /insert 1 + agribalyse_food_code + co2_agriculture num + co2_consumption num + co2_distribution num + co2_packaging num + co2_processing num + co2_total num + co2_transportation num + code + dqr + ef_agriculture num + ef_consumption num + ef_distribution num + ef_packaging num + ef_processing num + ef_total num + ef_transportation num + is_beverage num + name_en + name_fr + score num + version + grade + grades /insert 1 + ad + al + tr + ua + uk + us + va + world + xk + missing /insert 1 + labels num + origins num + missing_data_warning num + previous_data /insert 1 + agribalyse2 /insert 1 + agribalyse_food_code + co2_agriculture num + co2_consumption num + co2_distribution num + co2_packaging num + co2_processing num + co2_total num + co2_transportation num + code + dqr + ef_agriculture num + ef_consumption num + ef_distribution num + ef_packaging num + ef_processing num + ef_total num + ef_transportation num + is_beverage num + name_en + name_fr + score num + grade + score num + score num + scores /insert 1 + ad num + al num + at num + va num + world num + xk num + status + impact /insert 1 + ef_single_score_log_stddev num + likeliest_impacts /insert 1 + Climate_change num + EF_single_score num + likeliest_recipe /insert 1 + en:Oak_smoked_sea_salti_yeast_extract num + en:e160c num + en:e330 num + en:flavouring num + en:garlic_powder num + en:milk num + en:onion num + en:potato num + en:potato_starch num + en:rice_flour num + en:salt num + en:spice num + en:sugar num + en:sunflower_oil num + en:tomato_powder num + en:water num + en:yeast_powder num + mass_ratio_uncharacterized num + impact + nutrition + uncharacterized_ingredients_mass_proportion /insert 1 + impact num + nutrition num + uncharacterized_ingredients_ratio /insert 1 + impact num + nutrition num + warnings + ecoscore_extended_data_version + ecoscore_grade + ecoscore_score num + ecoscore_tags + editors + editors_tags + emb_codes + emb_codes_20141016 + emb_codes_orig + entry_dates_tags + expiration_date + food_groups + food_groups_tags + fruits-vegetables-nuts_100g_estimate num + generic_name + generic_name_en + generic_name_fr + id vc32 /pk + image_front_small_url + image_front_thumb_url + image_front_url + image_ingredients_small_url + image_ingredients_thumb_url + image_ingredients_url + image_nutrition_small_url + image_nutrition_thumb_url + image_nutrition_url + image_small_url + image_thumb_url + image_url + front /insert 1 + geometry + imgid + normalize + rev + >full /insert 15 + h num + w num + white_magic + front_en /insert 1 + angle num + coordinates_image_size + geometry + imgid + normalize + rev + >full /insert 15 + h num + w num + white_magic + x1 + x2 + y1 + y2 + ingredients1 /insert 1 + geometry + imgid + normalize + ocr num + orientation + rev + >full /insert 15 + h num + w num + white_magic + ingredients_en /insert 1 + geometry + imgid + normalize + ocr num + orientation + rev + >full /insert 15 + h num + w num + white_magic + nutrition /insert 1 + geometry + imgid + normalize + ocr num + orientation + rev + >full /insert 15 + h num + w num + white_magic + nutrition_en /insert 1 + angle num + coordinates_image_size + geometry + imgid + normalize + rev + >full /insert 15 + h num + w num + white_magic + x1 + x2 + y1 + y2 + informers_tags + ingredients2 /insert 20 + ciqual_food_code + id vc32 /pk + percent num + percent_estimate num + percent_max num + percent_min num + processing + rank num + text + vegan + vegetarian + en:non-vegan + en:palm-oil-content-unknown + en:vegan-status-unknown + en:vegetarian-status-unknown + ingredients_analysis_tags + ingredients_debug + ingredients_from_or_that_may_be_from_palm_oil_n num + ingredients_from_palm_oil_n num + ingredients_hierarchy + ingredients_ids_debug + ingredients_n num + ingredients_n_tags + ingredients_original_tags + ingredients_percent_analysis num + ingredients_tags + ingredients_text + ingredients_text_debug + ingredients_text_en + ingredients_text_fr + ingredients_text_with_allergens + ingredients_text_with_allergens_en + ingredients_that_may_be_from_palm_oil_n num + ingredients_with_specified_percent_n num + ingredients_with_specified_percent_sum num + ingredients_with_unspecified_percent_n num + ingredients_with_unspecified_percent_sum num + ingredients_without_ciqual_codes + ingredients_without_ciqual_codes_n num + interface_version_created + interface_version_modified + known_ingredients_n num + labels + labels_hierarchy + labels_lc + labels_old + labels_tags + lang + languages /insert 1 + en:english num + languages_codes /insert 1 + en num + languages_hierarchy + languages_tags + last_edit_dates_tags + last_editor + last_image_dates_tags + last_image_t num + last_modified_by + last_modified_t num + lc + link + manufacturing_places + manufacturing_places_tags + max_imgid + misc_tags + no_nutrition_data + nova_group num + nova_group_debug + nova_groups + nova_groups_tags + nutrient_levels /insert 1 + fat + salt + saturated-fat + sugars + nutrient_levels_tags + nutriments /insert 1 + carbohydrates num + carbohydrates_100g num + carbohydrates_serving num + carbohydrates_unit + carbohydrates_value num + carbon-footprint-from-known-ingredients_100g num + carbon-footprint-from-known-ingredients_product num + salt num + salt_100g num + salt_serving num + salt_unit + salt_value num + saturated-fat num + saturated-fat_100g num + saturated-fat_serving num + saturated-fat_unit + saturated-fat_value num + sodium num + sodium_100g num + sodium_serving num + sodium_unit + sodium_value num + sugars num + sugars_100g num + sugars_serving num + sugars_unit + sugars_value num + nutriscore_2021_tags + nutriscore_2023_tags + nutriscore_data /insert 1 + energy num + energy_points num + energy_value num + fiber num + fiber_points num + fiber_value num + fruits_vegetables_nuts_colza_walnut_olive_oils + fruits_vegetables_nuts_colza_walnut_olive_oils_points num + fruits_vegetables_nuts_colza_walnut_olive_oils_value num + grade + is_beverage num + is_cheese num + is_fat num + is_water num + negative_points num + positive_points num + proteins num + proteins_points num + proteins_value num + saturated_fat num + saturated_fat_points num + saturated_fat_value num + score num + sodium num + sodium_points num + sodium_value num + sugars num + sugars_points num + sugars_value num + nutriscore_grade + nutriscore_score num + nutriscore_score_opposite num + nutriscore_tags + nutriscore_version + nutrition_data + nutrition_data_per + nutrition_data_prepared + nutrition_data_prepared_per + nutrition_grade_fr + nutrition_grades + nutrition_grades_tags + nutrition_score_beverage num + nutrition_score_debug + obsolete + obsolete_since_date + origin + origin_en + origins + origins_lc + origins_old + packaging + packaging_hierarchy + packaging_lc + packaging_materials_tags + packaging_old + packaging_old_before_taxonomization + packaging_shapes_tags + packaging_tags + packaging_text + packaging_text_en + >packagings2 /insert 2 + material + shape + packagings_complete num + packagings_n num + photographers_tags + pnns_groups_1 + pnns_groups_1_tags + pnns_groups_2 + pnns_groups_2_tags + popularity_key num + popularity_tags + product_name + product_name_en + product_name_fr + product_quantity + purchase_places + quantity + rev num + scans_n num + display /insert 3 + en + small /insert 3 + en + thumb /insert 3 + en + display /insert 3 + en + small /insert 3 + en + thumb /insert 3 + en + display /insert 3 + en + small /insert 3 + en + thumb /insert 3 + en + serving_quantity + serving_size + sortkey num + states + states_hierarchy + states_tags + stores + teams + teams_tags + traces + traces_from_ingredients + traces_from_user + traces_lc + unique_scans_n num + unknown_ingredients_n num + update_key + status num + status_verbose + +#settings = { genpk: false, drop: true } + +#flattened = +{ + "_keywords": [ + { + "0": "and", + "1": "anything", + "2": "appetizer", + "3": "artificial", + "4": "barbeque", + "5": "beverage", + "6": "potatoe", + "7": "preservative", + "8": "salty", + "9": "snack", + "10": "sunflower", + "11": "vegetarian", + "_id": "5060292302201" + } + ], + "added_countries_tags": [], + "additives_debug_tags": [], + "additives_old_tags": [ + { + "0": "en:e330", + "1": "en:e160c", + "_id": "5060292302201" + } + ], + "additives_original_tags": [ + { + "0": "en:e330", + "1": "en:e160c", + "_id": "5060292302201" + } + ], + "additives_prev_original_tags": [ + { + "0": "en:e330", + "1": "en:e160c", + "_id": "5060292302201" + } + ], + "additives_tags": [ + { + "0": "en:e160c", + "1": "en:e330", + "_id": "5060292302201" + } + ], + "allergens_hierarchy": [ + { + "0": "en:milk", + "_id": "5060292302201" + } + ], + "allergens_tags": [ + { + "0": "en:milk", + "_id": "5060292302201" + } + ], + "amino_acids_prev_tags": [], + "amino_acids_tags": [], + "brands_tags": [ + { + "0": "popchips", + "_id": "5060292302201" + } + ], + "categories_hierarchy": [ + { + "0": "en:plant-based-foods-and-beverages", + "1": "en:plant-based-foods", + "2": "en:snacks", + "3": "en:cereals-and-potatoes", + "4": "en:salty-snacks", + "5": "en:appetizers", + "6": "en:chips-and-fries", + "7": "en:crisps", + "8": "en:potato-crisps", + "9": "en:potato-crisps-in-sunflower-oil", + "_id": "5060292302201" + } + ], + "categories_properties": [ + { + "agribalyse_food_code:en": "4004", + "ciqual_food_code:en": "4004", + "_id": "5060292302201" + } + ], + "categories_properties_tags": [ + { + "0": "all-products", + "1": "categories-known", + "2": "agribalyse-food-code-4004", + "3": "agribalyse-food-code-known", + "4": "agribalyse-proxy-food-code-unknown", + "5": "ciqual-food-code-4004", + "6": "ciqual-food-code-known", + "7": "agribalyse-known", + "8": "agribalyse-4004", + "_id": "5060292302201" + } + ], + "categories_tags": [ + { + "0": "en:plant-based-foods-and-beverages", + "1": "en:plant-based-foods", + "2": "en:snacks", + "3": "en:cereals-and-potatoes", + "4": "en:salty-snacks", + "5": "en:appetizers", + "6": "en:chips-and-fries", + "7": "en:crisps", + "8": "en:potato-crisps", + "9": "en:potato-crisps-in-sunflower-oil", + "_id": "5060292302201" + } + ], + "category_properties": [ + { + "ciqual_food_name:en": "Potato crisps", + "ciqual_food_name:fr": "Chips de pommes de terre, standard", + "_id": "5060292302201" + } + ], + "checkers_tags": [], + "ciqual_food_name_tags": [ + { + "0": "potato-crisps", + "_id": "5060292302201" + } + ], + "cities_tags": [], + "codes_tags": [ + { + "0": "code-13", + "1": "5060292302xxx", + "2": "506029230xxxx", + "3": "50602923xxxxx", + "4": "5060292xxxxxx", + "5": "506029xxxxxxx", + "6": "50602xxxxxxxx", + "7": "5060xxxxxxxxx", + "8": "506xxxxxxxxxx", + "9": "50xxxxxxxxxxx", + "10": "5xxxxxxxxxxxx", + "_id": "5060292302201" + } + ], + "correctors_tags": [ + { + "0": "tacite", + "1": "tacite-mass-editor", + "2": "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", + "3": "openfoodfacts-contributors", + "4": "swipe-studio", + "5": "yuka.sY2b0xO6T85zoF3NwEKvllZnctbb-gn-LDr4mHzUyem0FYPXMO5by7b5NKg", + "6": "kiliweb", + "7": "packbot", + "8": "foodless", + "9": "yuka.sY2b0xO6T85zoF3NwEKvlmBZVPXu-gnlBU3miFTQ-NeSIbDaMdUtu4fLGas", + "10": "aleene", + "_id": "5060292302201" + } + ], + "countries_hierarchy": [ + { + "0": "en:france", + "1": "en:united-kingdom", + "_id": "5060292302201" + } + ], + "countries_tags": [ + { + "0": "en:france", + "1": "en:united-kingdom", + "_id": "5060292302201" + } + ], + "data_quality_bugs_tags": [], + "data_quality_errors_tags": [], + "data_quality_info_tags": [ + { + "0": "en:packaging-data-incomplete", + "1": "en:ingredients-percent-analysis-ok", + "2": "en:carbon-footprint-from-known-ingredients-but-not-from-meat-or-fish", + "3": "en:ecoscore-extended-data-computed", + "4": "en:ecoscore-extended-data-less-precise-than-agribalyse", + "5": "en:food-groups-1-known", + "6": "en:food-groups-2-known", + "7": "en:food-groups-3-unknown", + "_id": "5060292302201" + } + ], + "data_quality_tags": [ + { + "0": "en:packaging-data-incomplete", + "1": "en:ingredients-percent-analysis-ok", + "2": "en:carbon-footprint-from-known-ingredients-but-not-from-meat-or-fish", + "3": "en:ecoscore-extended-data-computed", + "4": "en:ecoscore-extended-data-less-precise-than-agribalyse", + "5": "en:food-groups-1-known", + "6": "en:food-groups-2-known", + "7": "en:food-groups-3-unknown", + "8": "en:nutrition-value-very-low-for-category-energy", + "9": "en:nutrition-value-very-low-for-category-fat", + "10": "en:nutrition-value-very-high-for-category-sugars", + "11": "en:vegetarian-label-but-could-not-confirm-for-all-ingredients", + "12": "en:ecoscore-origins-of-ingredients-origins-are-100-percent-unknown", + "13": "en:ecoscore-production-system-no-label", + "_id": "5060292302201" + } + ], + "data_quality_warnings_tags": [ + { + "0": "en:nutrition-value-very-low-for-category-energy", + "1": "en:nutrition-value-very-low-for-category-fat", + "2": "en:nutrition-value-very-high-for-category-sugars", + "3": "en:vegetarian-label-but-could-not-confirm-for-all-ingredients", + "4": "en:ecoscore-origins-of-ingredients-origins-are-100-percent-unknown", + "5": "en:ecoscore-production-system-no-label", + "_id": "5060292302201" + } + ], + "data_sources_tags": [ + { + "0": "app-yuka", + "1": "apps", + "2": "app-horizon", + "_id": "5060292302201" + } + ], + "debug_param_sorted_langs": [ + { + "0": "en", + "_id": "5060292302201" + } + ], + "aggregated_origins": [ + { + "epi_score": "0", + "origin": "en:unknown", + "percent": 100, + "transportation_score": null, + "_id": "5060292302201" + } + ], + "origins_from_categories": [ + { + "0": "en:unknown", + "_id": "5060292302201" + } + ], + "origins_from_origins_field": [ + { + "0": "en:unknown", + "_id": "5060292302201" + } + ], + "transportation_scores": [ + { + "ad": 0, + "al": 0, + "va": 0, + "world": 0, + "xk": 0, + "_id": "5060292302201" + } + ], + "transportation_values": [ + { + "ad": 0, + "ua": 0, + "uk": 0, + "us": 0, + "va": 0, + "world": 0, + "xk": 0, + "_id": "5060292302201" + } + ], + "values": [ + { + "ad": -5, + "al": -5, + "at": -5, + "uk": -5, + "us": -5, + "va": -5, + "world": -5, + "xk": -5, + "_id": "5060292302201" + } + ], + "origins_of_ingredients": [ + { + "epi_score": 0, + "epi_value": -5, + "transportation_score": 0, + "transportation_value": 0, + "value": -5, + "warning": "origins_are_100_percent_unknown", + "_id": "5060292302201" + } + ], + "packaging_packagings": [ + { + "packaging_id": "5060292302201", + "packagings1_id": 1 + }, + { + "packaging_id": "5060292302201", + "packagings1_id": 2 + } + ], + "packagings1": [ + { + "ecoscore_material_score": 0, + "ecoscore_shape_ratio": 1, + "material": "en:plastic", + "non_recyclable_and_non_biodegradable": "maybe", + "shape": "en:packet", + "id": 1 + }, + { + "ecoscore_material_score": 0, + "ecoscore_shape_ratio": 1, + "material": "en:plastic", + "non_recyclable_and_non_biodegradable": "maybe", + "shape": "en:packet", + "id": 2 + } + ], + "packaging": [ + { + "non_recyclable_and_non_biodegradable_materials": 2, + "score": -100, + "value": -15, + "_id": "5060292302201" + } + ], + "labels": [], + "production_system": [ + { + "value": 0, + "warning": "no_label", + "_id": "5060292302201" + } + ], + "threatened_species": [], + "adjustments": [], + "agribalyse1": [ + { + "agribalyse_food_code": "4004", + "co2_agriculture": 0.82655583, + "co2_consumption": 0, + "co2_distribution": 0.019537154, + "co2_packaging": 0.28154442, + "co2_processing": 0.23156851, + "co2_total": 1.543669164, + "co2_transportation": 0.18446325, + "code": "4004", + "dqr": "2.45", + "ef_agriculture": 0.14029442, + "ef_consumption": 0, + "ef_distribution": 0.004831936, + "ef_packaging": 0.02370999, + "ef_processing": 0.038707917, + "ef_total": 0.223317319, + "ef_transportation": 0.015773056, + "is_beverage": 0, + "name_en": "Potato crisps", + "name_fr": "Chips de pommes de terre, standard", + "score": 87, + "version": "3.1", + "_id": "5060292302201" + } + ], + "grades": [ + { + "ad": "b", + "al": "b", + "tr": "b", + "ua": "b", + "uk": "b", + "us": "b", + "va": "b", + "world": "b", + "xk": "b", + "_id": "5060292302201" + } + ], + "missing": [ + { + "labels": 1, + "origins": 1, + "_id": "5060292302201" + } + ], + "agribalyse2": [ + { + "agribalyse_food_code": "4004", + "co2_agriculture": 1.2992636, + "co2_consumption": 0, + "co2_distribution": 0.029120657, + "co2_packaging": 0.28581962, + "co2_processing": 0.39294234, + "co2_total": 2.2443641, + "co2_transportation": 0.23728203, + "code": "4004", + "dqr": "2.45", + "ef_agriculture": 0.18214682, + "ef_consumption": 0, + "ef_distribution": 0.0098990521, + "ef_packaging": 0.021558384, + "ef_processing": 0.057508389, + "ef_total": 0.29200269, + "ef_transportation": 0.020894187, + "is_beverage": 0, + "name_en": "Potato crisps", + "name_fr": "Chips de pommes de terre, standard", + "score": 78, + "_id": "5060292302201" + } + ], + "previous_data": [ + { + "grade": "b", + "score": 63, + "_id": "5060292302201" + } + ], + "scores": [ + { + "ad": 67, + "al": 67, + "at": 67, + "va": 67, + "world": 67, + "xk": 67, + "_id": "5060292302201" + } + ], + "ecoscore_data": [ + { + "grade": "b", + "missing_data_warning": 1, + "score": 67, + "status": "known", + "_id": "5060292302201" + } + ], + "likeliest_impacts": [ + { + "Climate_change": 0.0835225930657116, + "EF_single_score": 0.0132996566234689, + "_id": "5060292302201" + } + ], + "likeliest_recipe": [ + { + "en:Oak_smoked_sea_salti_yeast_extract": 0.103505496656251, + "en:e160c": 0.10350549665625, + "en:e330": 0.10350549665625, + "en:flavouring": 0.10350549665625, + "en:garlic_powder": 0.103505496656251, + "en:milk": 1.55847864453775, + "en:onion": 0.15510736429208, + "en:potato": 69.2208020730349, + "en:potato_starch": 10.5320407294931, + "en:rice_flour": 13.8595510001351, + "en:salt": 1.3345917157533, + "en:spice": 0.10350549665625, + "en:sugar": 10.2883618334396, + "en:sunflower_oil": 14.1645835312727, + "en:tomato_powder": 0.10350549665625, + "en:water": 6.24510964041154, + "en:yeast_powder": 0.103505496656251, + "_id": "5060292302201" + } + ], + "impact": [ + { + "ef_single_score_log_stddev": 0.0664290643574977, + "mass_ratio_uncharacterized": 0.0244618467395455, + "_id": "5060292302201" + } + ], + "nutrition": [], + "uncharacterized_ingredients": [], + "uncharacterized_ingredients_mass_proportion": [ + { + "impact": 0.0244618467395455, + "nutrition": 0.0106506947223728, + "_id": "5060292302201" + } + ], + "uncharacterized_ingredients_ratio": [ + { + "impact": 0.3125, + "nutrition": 0.125, + "_id": "5060292302201" + } + ], + "warnings": [ + { + "0": "Fermentation agents are present in the product (en:yeast-powder). Carbohydrates and sugars mass balance will not be considered to estimate potential recipes", + "1": "The product has a high number of impact uncharacterized ingredients: 31%", + "_id": "5060292302201" + } + ], + "ecoscore_extended_data": [], + "ecoscore_tags": [ + { + "0": "b", + "_id": "5060292302201" + } + ], + "editors": [ + { + "0": "kyzh", + "1": "tacite", + "_id": "5060292302201" + } + ], + "editors_tags": [ + { + "0": "kiliweb", + "1": "openfoodfacts-contributors", + "2": "aleene", + "3": "tacite-mass-editor", + "4": "yuka.sY2b0xO6T85zoF3NwEKvlmBZVPXu-gnlBU3miFTQ-NeSIbDaMdUtu4fLGas", + "5": "kyzh", + "6": "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", + "7": "ecoscore-impact-estimator", + "8": "tacite", + "9": "foodless", + "10": "yuka.sY2b0xO6T85zoF3NwEKvllZnctbb-gn-LDr4mHzUyem0FYPXMO5by7b5NKg", + "11": "swipe-studio", + "12": "packbot", + "_id": "5060292302201" + } + ], + "emb_codes_tags": [], + "entry_dates_tags": [ + { + "0": "2015-06-03", + "1": "2015-06", + "2": "2015", + "_id": "5060292302201" + } + ], + "food_groups_tags": [ + { + "0": "en:salty-snacks", + "1": "en:appetizers", + "_id": "5060292302201" + } + ], + "generic_name_fr_debug_tags": [], + "sizes": [ + { + "h": 74, + "w": 100, + "id": "5060292302201" + }, + { + "h": 296, + "w": 400, + "id": "5060292302201" + }, + { + "h": 43, + "w": 100, + "id": "5060292302201" + }, + { + "h": 171, + "w": 400, + "id": "5060292302201" + }, + { + "h": 100, + "w": 82, + "id": "5060292302201" + }, + { + "h": 400, + "w": 326, + "id": "5060292302201" + }, + { + "h": 56, + "w": 100, + "id": "5060292302201" + }, + { + "h": 225, + "w": 400, + "id": "5060292302201" + }, + { + "h": 100, + "w": 78, + "id": "5060292302201" + }, + { + "h": 200, + "w": 156, + "id": "5060292302201" + }, + { + "h": 400, + "w": 311, + "id": "5060292302201" + }, + { + "h": 200, + "w": 163, + "id": "5060292302201" + }, + { + "h": 30, + "w": 100, + "id": "5060292302201" + }, + { + "h": 61, + "w": 200, + "id": "5060292302201" + }, + { + "h": 122, + "w": 400, + "id": "5060292302201" + }, + { + "h": 81, + "w": 100, + "id": "5060292302201" + }, + { + "h": 163, + "w": 200, + "id": "5060292302201" + }, + { + "h": 325, + "w": 400, + "id": "5060292302201" + }, + { + "h": 113, + "w": 200, + "id": "5060292302201" + } + ], + "nutrition_en_full": [ + { + "nutrition_en_id": "5060292302201", + "full_id": 3 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 4 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 5 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 6 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 7 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 8 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 9 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 10 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 11 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 12 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 13 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 14 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 15 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 16 + }, + { + "nutrition_en_id": "5060292302201", + "full_id": 17 + } + ], + "full": [ + { + "h": 1482, + "w": 2000, + "id": 3 + }, + { + "h": 1482, + "w": 2000, + "id": 4 + }, + { + "h": 1482, + "w": 2000, + "id": 5 + }, + { + "h": 1482, + "w": 2000, + "id": 6 + }, + { + "h": 1482, + "w": 2000, + "id": 7 + }, + { + "h": 1482, + "w": 2000, + "id": 8 + }, + { + "h": 846, + "w": 1974, + "id": 9 + }, + { + "h": 1140, + "w": 930, + "id": 10 + }, + { + "h": 569, + "w": 1011, + "id": 11 + }, + { + "h": 1825, + "w": 1421, + "id": 12 + }, + { + "h": 1140, + "w": 930, + "id": 13 + }, + { + "h": 526, + "w": 1730, + "id": 14 + }, + { + "h": 526, + "w": 1730, + "id": 15 + }, + { + "h": 920, + "w": 1131, + "id": 16 + }, + { + "h": 569, + "w": 1011, + "id": 17 + } + ], + "images": [ + { + "uploaded_t": 1433338177, + "uploader": "kyzh", + "id": "5060292302201" + }, + { + "uploaded_t": 1433338194, + "uploader": "kyzh", + "id": "5060292302201" + }, + { + "uploaded_t": 1433338203, + "uploader": "kyzh", + "id": "5060292302201" + }, + { + "uploaded_t": 1433338215, + "uploader": "kyzh", + "id": "5060292302201" + }, + { + "uploaded_t": 1433338229, + "uploader": "kyzh", + "id": "5060292302201" + }, + { + "uploaded_t": 1433338245, + "uploader": "kyzh", + "id": "5060292302201" + }, + { + "uploaded_t": "1508236270", + "uploader": "kiliweb", + "id": "5060292302201" + }, + { + "uploaded_t": 1620505759, + "uploader": "kiliweb", + "id": "5060292302201" + }, + { + "uploaded_t": 1656075071, + "uploader": "kiliweb", + "id": "5060292302201" + } + ], + "front": [], + "front_en": [ + { + "angle": 0, + "coordinates_image_size": "full", + "geometry": "0x0--1--1", + "imgid": "8", + "normalize": null, + "rev": "23", + "white_magic": null, + "x1": "-1", + "x2": "-1", + "y1": "-1", + "y2": "-1", + "id": "5060292302201" + } + ], + "ingredients1": [ + { + "geometry": "1730x526-125-304", + "imgid": "5", + "normalize": "false", + "ocr": 1, + "orientation": "0", + "rev": "11", + "white_magic": "false", + "id": "5060292302201" + } + ], + "ingredients_en": [ + { + "geometry": "1730x526-125-304", + "imgid": "5", + "normalize": "false", + "ocr": 1, + "orientation": "0", + "rev": "11", + "white_magic": "false", + "id": "5060292302201" + } + ], + "nutrition_en": [ + { + "angle": 0, + "coordinates_image_size": "full", + "geometry": "0x0--1--1", + "imgid": "9", + "normalize": null, + "rev": "32", + "white_magic": null, + "x1": "-1", + "x2": "-1", + "y1": "-1", + "y2": "-1", + "id": "5060292302201" + } + ], + "informers_tags": [ + { + "0": "kyzh", + "1": "tacite", + "2": "tacite-mass-editor", + "3": "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", + "4": "openfoodfacts-contributors", + "5": "aleene", + "id": "5060292302201" + } + ], + "ingredients2": [ + { + "ciqual_food_code": "4003", + "id": "5060292302201", + "percent": 54, + "percent_estimate": 54, + "percent_max": 54, + "percent_min": 54, + "processing": "en:dried", + "rank": 1, + "text": "potatoes", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "17440", + "from_palm_oil": "no", + "id": "5060292302201", + "percent_estimate": 28.75, + "percent_max": 46, + "percent_min": 11.5, + "rank": 2, + "text": "sunflower oil", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "has_sub_ingredients": "yes", + "id": "5060292302201", + "percent_estimate": 8.625, + "percent_max": 33.3333333333333, + "percent_min": 0, + "rank": 3, + "text": "seasoning", + "vegan": "maybe", + "vegetarian": "maybe" + }, + { + "ciqual_food_code": "9520", + "id": "5060292302201", + "percent_estimate": 4.3125, + "percent_max": 17.25, + "percent_min": 0, + "rank": 4, + "text": "rice flour", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "5060292302201", + "percent_estimate": 4.3125, + "percent_max": 11.5, + "percent_min": 0, + "rank": 5, + "text": "potato starch", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "5060292302201", + "percent_estimate": 4.3125, + "percent_max": 8.7, + "percent_min": 0, + "text": "sugar", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "has_sub_ingredients": "yes", + "id": "5060292302201", + "percent_estimate": 2.15625, + "percent_max": 8.7, + "percent_min": 0, + "text": "whey powder", + "vegan": "no", + "vegetarian": "maybe" + }, + { + "ciqual_food_code": "11058", + "id": "5060292302201", + "percent_estimate": 1.05, + "percent_max": 2.1, + "percent_min": 0, + "text": "salt", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "20034", + "id": "5060292302201", + "percent_estimate": 0.553125, + "percent_max": 2.1, + "percent_min": 0, + "processing": "en:powder", + "text": "onion", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "5060292302201", + "percent_estimate": 0.2765625, + "percent_max": 2.1, + "percent_min": 0, + "text": "yeast powder", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "11000", + "id": "5060292302201", + "percent_estimate": 0.13828125, + "percent_max": 2.1, + "percent_min": 0, + "processing": "en:powder", + "text": "garlic", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "20047", + "id": "5060292302201", + "percent_estimate": 0.0691406250000002, + "percent_max": 2.1, + "percent_min": 0, + "processing": "en:powder", + "text": "tomato", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "5060292302201", + "percent_estimate": 0.0345703124999996, + "percent_max": 2.1, + "percent_min": 0, + "text": "Oak smoked sea salti yeast extract" + }, + { + "id": "5060292302201", + "percent_estimate": 0.0172851562499998, + "percent_max": 2.1, + "percent_min": 0, + "text": "flavourings", + "vegan": "maybe", + "vegetarian": "maybe" + }, + { + "id": "5060292302201", + "percent_estimate": 0.00864257812500036, + "percent_max": 2.1, + "percent_min": 0, + "text": "spices", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "has_sub_ingredients": "yes", + "id": "5060292302201", + "percent_estimate": 0.00432128906250018, + "percent_max": 2.1, + "percent_min": 0, + "text": "acid" + }, + { + "has_sub_ingredients": "yes", + "id": "5060292302201", + "percent_estimate": 0.00432128906249929, + "percent_max": 2.1, + "percent_min": 0, + "text": "colour" + }, + { + "id": "5060292302201", + "percent_estimate": 2.15625, + "percent_max": 8.7, + "percent_min": 0, + "text": "milk", + "vegan": "no", + "vegetarian": "yes" + }, + { + "id": "5060292302201", + "percent_estimate": 0.00432128906250018, + "percent_max": 2.1, + "percent_min": 0, + "text": "citric acid", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "5060292302201", + "percent_estimate": 0.00432128906249929, + "percent_max": 2.1, + "percent_min": 0, + "text": "paprika extract", + "vegan": "yes", + "vegetarian": "yes" + } + ], + "en:non-vegan": [ + { + "0": "en:whey-powder", + "1": "en:milk", + "id": "5060292302201" + } + ], + "en:palm-oil-content-unknown": [ + { + "0": "en:oak-smoked-sea-salti-yeast-extract", + "id": "5060292302201" + } + ], + "en:vegan-status-unknown": [ + { + "0": "en:oak-smoked-sea-salti-yeast-extract", + "id": "5060292302201" + } + ], + "en:vegetarian-status-unknown": [ + { + "0": "en:oak-smoked-sea-salti-yeast-extract", + "id": "5060292302201" + } + ], + "ingredients_analysis": [], + "ingredients_analysis_tags": [ + { + "0": "en:palm-oil-free", + "1": "en:non-vegan", + "2": "en:vegetarian", + "id": "5060292302201" + } + ], + "ingredients_debug": [ + { + "0": "54% dried potatoes", + "1": ",", + "2": null, + "3": null, + "4": null, + "5": " sunflower oil", + "6": ",", + "7": null, + "8": null, + "9": null, + "10": " seasoning ", + "11": "(", + "12": "(", + "13": null, + "14": null, + "15": "sugar", + "16": ",", + "17": null, + "18": null, + "19": null, + "20": " whey powder ", + "21": "[", + "22": "[", + "23": null, + "24": null, + "25": "milk]", + "26": ",", + "27": null, + "28": null, + "29": null, + "30": " salt", + "31": ",", + "32": null, + "33": null, + "34": null, + "35": " onion powder", + "36": ",", + "37": null, + "38": null, + "39": null, + "40": " yeast powder", + "41": ",", + "42": null, + "43": null, + "44": null, + "45": " garlic powder", + "46": ",", + "47": null, + "48": null, + "49": null, + "50": " tomato powder", + "51": ",", + "52": null, + "53": null, + "54": null, + "55": " Oak smoked sea salti yeast extract", + "56": ",", + "57": null, + "58": null, + "59": null, + "60": " flavourings", + "61": ",", + "62": null, + "63": null, + "64": null, + "65": " spices", + "66": ",", + "67": null, + "68": null, + "69": null, + "70": " acid", + "71": ":", + "72": ":", + "73": null, + "74": null, + "75": " citric acid", + "76": ",", + "77": null, + "78": null, + "79": null, + "80": " colour", + "81": ":", + "82": ":", + "83": null, + "84": null, + "85": " paprika extract)", + "86": ",", + "87": null, + "88": null, + "89": null, + "90": " rice flour", + "91": ",", + "92": null, + "93": null, + "94": null, + "95": " potato starch.", + "id": "5060292302201" + } + ], + "ingredients_from_palm_oil_tags": [], + "ingredients_hierarchy": [ + { + "0": "en:potato", + "1": "en:vegetable", + "2": "en:root-vegetable", + "3": "en:tuber", + "4": "en:sunflower-oil", + "5": "en:oil-and-fat", + "6": "en:spice", + "7": "en:condiment", + "8": "en:acid", + "9": "en:colour", + "10": "en:milk", + "11": "en:e330", + "12": "en:e160c", + "id": "5060292302201" + } + ], + "ingredients_ids_debug": [ + { + "0": "54-dried-potatoes", + "1": "sunflower-oil", + "2": "seasoning", + "3": "sugar", + "4": "colour", + "5": "paprika-extract", + "6": "rice-flour", + "7": "potato-starch", + "id": "5060292302201" + } + ], + "ingredients_n_tags": [ + { + "0": "20", + "1": "11-20", + "id": "5060292302201" + } + ], + "ingredients_original_tags": [ + { + "0": "en:potato", + "1": "en:sunflower-oil", + "2": "en:coating", + "3": "en:rice-flour", + "4": "en:potato-starch", + "5": "en:sugar", + "6": "en:whey-powder", + "7": "en:salt", + "8": "en:onion", + "9": "en:yeast-powder", + "10": "en:garlic", + "11": "en:tomato", + "12": "en:oak-smoked-sea-salti-yeast-extract", + "13": "en:flavouring", + "14": "en:spice", + "15": "en:acid", + "16": "en:colour", + "17": "en:milk", + "18": "en:e330", + "19": "en:e160c", + "id": "5060292302201" + } + ], + "ingredients_tags": [ + { + "0": "en:potato", + "1": "en:vegetable", + "2": "en:root-vegetable", + "3": "en:milk", + "4": "en:e330", + "5": "en:e160c", + "id": "5060292302201" + } + ], + "ingredients_text_debug_tags": [], + "ingredients_text_fr_debug_tags": [], + "ingredients_that_may_be_from_palm_oil_tags": [], + "ingredients_without_ciqual_codes": [ + { + "0": "en:e160c", + "1": "en:e330", + "2": "en:flavouring", + "3": "en:milk", + "4": "en:oak-smoked-sea-salti-yeast-extract", + "5": "en:potato-starch", + "6": "en:spice", + "7": "en:sugar", + "8": "en:yeast-powder", + "id": "5060292302201" + } + ], + "labels_hierarchy": [ + { + "0": "en:vegetarian", + "1": "en:no-preservatives", + "2": "en:No artificial anything", + "id": "5060292302201" + } + ], + "labels_tags": [ + { + "0": "en:vegetarian", + "1": "en:no-preservatives", + "2": "en:no-artificial-anything", + "id": "5060292302201" + } + ], + "languages": [ + { + "en:english": 5, + "id": "5060292302201" + } + ], + "languages_codes": [ + { + "en": 5, + "id": "5060292302201" + } + ], + "languages_hierarchy": [ + { + "0": "en:english", + "id": "5060292302201" + } + ], + "languages_tags": [ + { + "0": "en:english", + "1": "en:1", + "id": "5060292302201" + } + ], + "last_edit_dates_tags": [ + { + "0": "2023-03-24", + "1": "2023-03", + "2": "2023", + "id": "5060292302201" + } + ], + "last_image_dates_tags": [ + { + "0": "2022-06-24", + "1": "2022-06", + "2": "2022", + "id": "5060292302201" + } + ], + "main_countries_tags": [], + "manufacturing_places_tags": [ + { + "0": "european-union", + "id": "5060292302201" + } + ], + "minerals_prev_tags": [], + "minerals_tags": [], + "misc_tags": [ + { + "0": "en:nutriscore-computed", + "1": "en:nutrition-fruits-vegetables-nuts-from-category", + "2": "en:nutrition-fruits-vegetables-nuts-from-category-en-potato-crisps-in-sunflower-oil", + "3": "en:nutrition-fruits-vegetables-legumes-from-category", + "4": "en:nutrition-fruits-vegetables-legumes-from-category-en-potato-crisps-in-sunflower-oil", + "5": "en:nutriscore-2021-same-as-2023", + "6": "en:nutriscore-2021-d-2023-d", + "7": "en:packagings-number-of-components-2", + "8": "en:packagings-not-complete", + "9": "en:packagings-not-empty-but-not-complete", + "10": "en:packagings-not-empty", + "11": "en:ecoscore-extended-data-computed", + "12": "en:ecoscore-extended-data-version-4", + "13": "en:ecoscore-missing-data-warning", + "14": "en:ecoscore-missing-data-labels", + "15": "en:ecoscore-missing-data-origins", + "16": "en:ecoscore-computed", + "17": "en:ecoscore-changed", + "id": "5060292302201" + } + ], + "nova_groups_markers": [ + { + "0": "categories", + "1": "en:salty-snacks", + "id": "5060292302201" + }, + { + "0": "ingredients", + "1": "en:salt", + "id": "5060292302201" + }, + { + "0": "ingredients", + "1": "en:starch", + "id": "5060292302201" + }, + { + "0": "ingredients", + "1": "en:sugar", + "id": "5060292302201" + }, + { + "0": "ingredients", + "1": "en:vegetable-oil", + "id": "5060292302201" + }, + { + "0": "additives", + "1": "en:e160c", + "id": "5060292302201" + }, + { + "0": "ingredients", + "1": "en:colour", + "id": "5060292302201" + }, + { + "0": "ingredients", + "1": "en:flavouring", + "id": "5060292302201" + }, + { + "0": "ingredients", + "1": "en:whey", + "id": "5060292302201" + } + ], + "nova_groups_tags": [ + { + "0": "en:4-ultra-processed-food-and-drink-products", + "id": "5060292302201" + } + ], + "nucleotides_prev_tags": [], + "nucleotides_tags": [], + "nutrient_levels": [ + { + "fat": "moderate", + "salt": "high", + "saturated-fat": "low", + "sugars": "moderate", + "id": "5060292302201" + } + ], + "nutrient_levels_tags": [ + { + "0": "en:fat-in-moderate-quantity", + "1": "en:saturated-fat-in-low-quantity", + "2": "en:sugars-in-moderate-quantity", + "3": "en:salt-in-high-quantity", + "id": "5060292302201" + } + ], + "nutriments": [ + { + "carbohydrates": 62, + "carbohydrates_100g": 62, + "carbohydrates_serving": 14.3, + "carbohydrates_unit": "g", + "carbohydrates_value": 62, + "carbon-footprint-from-known-ingredients_100g": 32.4, + "carbon-footprint-from-known-ingredients_product": 7.45, + "salt": 2.1, + "salt_100g": 2.1, + "salt_serving": 0.483, + "salt_unit": "g", + "salt_value": 2.1, + "saturated-fat": 1.4, + "saturated-fat_100g": 1.4, + "saturated-fat_serving": 0.322, + "saturated-fat_unit": "g", + "saturated-fat_value": 1.4, + "sodium": 0.84, + "sodium_100g": 0.84, + "sodium_serving": 0.193, + "sodium_unit": "g", + "sodium_value": 0.84, + "sugars": 8.7, + "sugars_100g": 8.7, + "sugars_serving": 2, + "sugars_unit": "g", + "sugars_value": 8.7, + "id": "5060292302201" + } + ], + "data": [ + { + "count_proteins": 0, + "count_proteins_reason": "negative_points_more_than_11", + "energy": 1759, + "is_red_meat_product": 0, + "is_water": 0, + "negative_points": 18, + "positive_points": 1, + "proteins": 5.7, + "proteins_points": 2, + "salt": 2.1, + "salt_points": 10, + "saturated_fat": 1.4, + "saturated_fat_points": 1, + "sugars": 8.7, + "sugars_points": 2, + "id": "5060292302201" + } + ], + "nutriscore": [ + { + "category_available": 1, + "grade": "d", + "nutrients_available": 1, + "nutriscore_applicable": 1, + "nutriscore_computed": 1, + "score": 12, + "id": "5060292302201" + }, + { + "category_available": 1, + "grade": "d", + "nutrients_available": 1, + "nutriscore_applicable": 1, + "nutriscore_computed": 1, + "score": 17, + "id": "5060292302201" + } + ], + "negative_nutrients": [ + { + "0": "energy", + "1": "sugars", + "2": "saturated_fat", + "3": "salt", + "4": "non_nutritive_sweeteners", + "id": "5060292302201" + } + ], + "positive_nutrients": [ + { + "0": "fruits_vegetables_legumes", + "1": "fiber", + "id": "5060292302201" + } + ], + "nutriscore_2021_tags": [ + { + "0": "d", + "id": "5060292302201" + } + ], + "nutriscore_2023_tags": [ + { + "0": "d", + "id": "5060292302201" + } + ], + "nutriscore_data": [ + { + "energy": 1759, + "energy_points": 5, + "energy_value": 1759, + "fiber": 3.9, + "fiber_points": 4, + "fiber_value": 3.9, + "fruits_vegetables_nuts_colza_walnut_olive_oils": "0", + "fruits_vegetables_nuts_colza_walnut_olive_oils_points": 0, + "fruits_vegetables_nuts_colza_walnut_olive_oils_value": 0, + "grade": "d", + "is_beverage": 0, + "is_cheese": 0, + "is_fat": 0, + "is_water": 0, + "negative_points": 16, + "positive_points": 4, + "proteins": 5.7, + "proteins_points": 3, + "proteins_value": 5.7, + "saturated_fat": 1.4, + "saturated_fat_points": 1, + "saturated_fat_value": 1.4, + "score": 12, + "sodium": 840, + "sodium_points": 9, + "sodium_value": 840, + "sugars": 8.7, + "sugars_points": 1, + "sugars_value": 8.7, + "id": "5060292302201" + } + ], + "nutriscore_tags": [ + { + "0": "d", + "id": "5060292302201" + } + ], + "nutrition_grades_tags": [ + { + "0": "d", + "id": "5060292302201" + } + ], + "origins_hierarchy": [], + "origins_tags": [], + "other_nutritional_substances_tags": [], + "packaging_hierarchy": [ + { + "0": "en:plastic", + "1": "en:Mixed plastic film-packet", + "id": "5060292302201" + } + ], + "packaging_materials_tags": [ + { + "0": "en:plastic", + "id": "5060292302201" + } + ], + "packaging_recycling_tags": [], + "packaging_shapes_tags": [ + { + "0": "en:packet", + "id": "5060292302201" + } + ], + "packaging_tags": [ + { + "0": "en:plastic", + "1": "en:mixed-plastic-film-packet", + "id": "5060292302201" + } + ], + "product_packagings": [ + { + "product_id": "5060292302201", + "packagings2_id": 18 + }, + { + "product_id": "5060292302201", + "packagings2_id": 19 + } + ], + "packagings2": [ + { + "material": "en:plastic", + "shape": "en:packet", + "id": 18 + }, + { + "material": "en:plastic", + "shape": "en:packet", + "id": 19 + } + ], + "all": [], + "en:plastic": [], + "packagings_materials": [], + "photographers_tags": [ + { + "0": "kyzh", + "1": "kiliweb", + "id": "5060292302201" + } + ], + "pnns_groups_1_tags": [ + { + "0": "salty-snacks", + "1": "known", + "id": "5060292302201" + } + ], + "pnns_groups_2_tags": [ + { + "0": "appetizers", + "1": "known", + "id": "5060292302201" + } + ], + "popularity_tags": [ + { + "0": "bottom-25-percent-scans-2019", + "1": "bottom-20-percent-scans-2019", + "2": "top-100000-hk-scans-2022", + "3": "top-10000-us-scans-2022", + "4": "top-50000-us-scans-2022", + "5": "top-100000-us-scans-2022", + "id": "5060292302201" + } + ], + "product_name_fr_debug_tags": [], + "purchase_places_tags": [], + "removed_countries_tags": [], + "display": [ + { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", + "id": "5060292302201" + }, + { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg", + "id": "5060292302201" + }, + { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg", + "id": "5060292302201" + } + ], + "small": [ + { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", + "id": "5060292302201" + }, + { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg", + "id": "5060292302201" + }, + { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg", + "id": "5060292302201" + } + ], + "thumb": [ + { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", + "id": "5060292302201" + }, + { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg", + "id": "5060292302201" + }, + { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg", + "id": "5060292302201" + } + ], + "ingredients-1": [], + "selected_images": [], + "states_hierarchy": [ + { + "0": "en:to-be-completed", + "1": "en:nutrition-facts-completed", + "2": "en:ingredients-completed", + "3": "en:ingredients-photo-selected", + "4": "en:front-photo-selected", + "5": "en:photos-uploaded", + "id": "5060292302201" + } + ], + "states_tags": [ + { + "0": "en:to-be-completed", + "1": "en:nutrition-facts-completed", + "2": "en:ingredients-completed", + "3": "en:ingredients-photo-selected", + "4": "en:front-photo-selected", + "5": "en:photos-uploaded", + "id": "5060292302201" + } + ], + "stores_tags": [], + "teams_tags": [ + { + "0": "swipe-studio", + "id": "5060292302201" + } + ], + "traces_hierarchy": [], + "traces_tags": [], + "unknown_nutrients_tags": [], + "vitamins_prev_tags": [], + "vitamins_tags": [], + "weighers_tags": [], + "product": [ + { + "_id": "5060292302201", + "additives_n": 2, + "additives_old_n": 2, + "allergens": "en:milk", + "allergens_from_ingredients": "en:milk, milk", + "allergens_from_user": "(en) en:milk", + "allergens_lc": "en", + "brands": "Popchips", + "carbon_footprint_from_known_ingredients_debug": "en:potato 54% x 0.6 = 32.4 g - ", + "carbon_footprint_percent_of_known_ingredients": 54, + "categories": "Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil", + "categories_lc": "en", + "categories_old": "Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil", + "code": "5060292302201", + "compared_to_category": "en:potato-crisps-in-sunflower-oil", + "complete": 0, + "completeness": 0.8875, + "countries": "France,United Kingdom", + "countries_lc": "en", + "created_t": 1433338177, + "creator": "kyzh", + "data_sources": "App - yuka, Apps, App - Horizon", + "ecoscore_extended_data_version": "4", + "ecoscore_grade": "b", + "ecoscore_score": 67, + "emb_codes": "", + "emb_codes_20141016": "", + "emb_codes_orig": "", + "expiration_date": "11/05/2016", + "food_groups": "en:appetizers", + "fruits-vegetables-nuts_100g_estimate": 0, + "generic_name": "", + "generic_name_en": "", + "generic_name_fr": "", + "id": "5060292302201", + "image_front_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", + "image_front_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", + "image_front_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", + "image_ingredients_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg", + "image_ingredients_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg", + "image_ingredients_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg", + "image_nutrition_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg", + "image_nutrition_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg", + "image_nutrition_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg", + "image_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", + "image_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", + "image_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", + "ingredients_from_or_that_may_be_from_palm_oil_n": 0, + "ingredients_from_palm_oil_n": 0, + "ingredients_n": 20, + "ingredients_percent_analysis": 1, + "ingredients_text": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_debug": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_en": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_fr": "", + "ingredients_text_with_allergens": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_with_allergens_en": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_that_may_be_from_palm_oil_n": 0, + "ingredients_with_specified_percent_n": 1, + "ingredients_with_specified_percent_sum": 54, + "ingredients_with_unspecified_percent_n": 15, + "ingredients_with_unspecified_percent_sum": 46, + "ingredients_without_ciqual_codes_n": 9, + "interface_version_created": "20120622", + "interface_version_modified": "20190830", + "known_ingredients_n": 36, + "labels": "Vegetarian, No preservatives, No artificial anything", + "labels_lc": "en", + "labels_old": "Vegetarian,No preservatives,No artificial anything", + "lang": "en", + "last_editor": "aleene", + "last_image_t": 1656075071, + "last_modified_by": "aleene", + "last_modified_t": 1679645675, + "lc": "en", + "link": "", + "manufacturing_places": "European Union", + "max_imgid": "9", + "no_nutrition_data": "", + "nova_group": 4, + "nova_group_debug": "", + "nova_groups": "4", + "nutriscore_grade": "d", + "nutriscore_score": 12, + "nutriscore_score_opposite": -12, + "nutriscore_version": "2021", + "nutrition_data": "on", + "nutrition_data_per": "100g", + "nutrition_data_prepared": "", + "nutrition_data_prepared_per": "100g", + "nutrition_grade_fr": "d", + "nutrition_grades": "d", + "nutrition_score_beverage": 0, + "nutrition_score_debug": "", + "obsolete": "", + "obsolete_since_date": "", + "origin": "", + "origin_en": "", + "origins": "", + "origins_lc": "en", + "origins_old": "", + "packaging": "Plastic,Mixed plastic film-packet", + "packaging_lc": "en", + "packaging_old": "Plastic, Mixed plastic-packet", + "packaging_old_before_taxonomization": "Plastic, en:mixed plastic-packet", + "packaging_text": "", + "packaging_text_en": "", + "packagings_complete": 0, + "packagings_n": 2, + "pnns_groups_1": "Salty snacks", + "pnns_groups_2": "Appetizers", + "popularity_key": 21900000007, + "product_name": "Barbeque Potato Chips", + "product_name_en": "Barbeque Potato Chips", + "product_name_fr": "", + "product_quantity": "23", + "purchase_places": "", + "quantity": "23 g", + "rev": 33, + "scans_n": 6, + "serving_quantity": "23", + "serving_size": "23 g", + "sortkey": 1535456524, + "states": "en:to-be-completed, en:nutrition-facts-completed, en:ingredients-completed, en:expiration-date-completed, en:packaging-code-to-be-completed, en:characteristics-to-be-completed, en:origins-to-be-completed, en:categories-completed, en:brands-completed, en:packaging-completed, en:quantity-completed, en:product-name-completed, en:photos-to-be-validated, en:packaging-photo-to-be-selected, en:nutrition-photo-selected, en:ingredients-photo-selected, en:front-photo-selected, en:photos-uploaded", + "stores": "", + "teams": "swipe-studio", + "traces": "", + "traces_from_ingredients": "", + "traces_from_user": "(en) ", + "traces_lc": "en", + "unique_scans_n": 4, + "unknown_ingredients_n": 1, + "update_key": "eco20231129" + } + ], + "food_product": [ + { + "code": "5060292302201", + "status": 1, + "status_verbose": "product found" + } + ] +} + + +-- Generated by json2qsql.js development 2/5/2024, 10:03:20 AM + +#document = +{ + "code": "5060292302201", + "product": { + "_id": "5060292302201", + "_keywords": [ + "and", + "anything", + "appetizer", + "artificial", + "barbeque", + "beverage", + "potatoe", + "preservative", + "salty", + "snack", + "sunflower", + "vegetarian" + ], + "added_countries_tags": [], + "additives_debug_tags": [], + "additives_n": 2, + "additives_old_n": 2, + "additives_old_tags": [ + "en:e330", + "en:e160c" + ], + "additives_original_tags": [ + "en:e330", + "en:e160c" + ], + "additives_prev_original_tags": [ + "en:e330", + "en:e160c" + ], + "additives_tags": [ + "en:e160c", + "en:e330" + ], + "allergens": "en:milk", + "allergens_from_ingredients": "en:milk, milk", + "allergens_from_user": "(en) en:milk", + "allergens_hierarchy": [ + "en:milk" + ], + "allergens_lc": "en", + "allergens_tags": [ + "en:milk" + ], + "amino_acids_prev_tags": [], + "amino_acids_tags": [], + "brands": "Popchips", + "brands_tags": [ + "popchips" + ], + "carbon_footprint_from_known_ingredients_debug": "en:potato 54% x 0.6 = 32.4 g - ", + "carbon_footprint_percent_of_known_ingredients": 54, + "categories": "Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil", + "categories_hierarchy": [ + "en:plant-based-foods-and-beverages", + "en:plant-based-foods", + "en:snacks", + "en:cereals-and-potatoes", + "en:salty-snacks", + "en:appetizers", + "en:chips-and-fries", + "en:crisps", + "en:potato-crisps", + "en:potato-crisps-in-sunflower-oil" + ], + "categories_lc": "en", + "categories_old": "Plant-based foods and beverages, Plant-based foods, Snacks, Cereals and potatoes, Salty snacks, Appetizers, Chips and fries, Crisps, Potato crisps, Potato crisps in sunflower oil", + "categories_properties": { + "agribalyse_food_code:en": "4004", + "ciqual_food_code:en": "4004" + }, + "categories_properties_tags": [ + "all-products", + "categories-known", + "agribalyse-food-code-4004", + "agribalyse-food-code-known", + "agribalyse-proxy-food-code-unknown", + "ciqual-food-code-4004", + "ciqual-food-code-known", + "agribalyse-known", + "agribalyse-4004" + ], + "categories_tags": [ + "en:plant-based-foods-and-beverages", + "en:plant-based-foods", + "en:snacks", + "en:cereals-and-potatoes", + "en:salty-snacks", + "en:appetizers", + "en:chips-and-fries", + "en:crisps", + "en:potato-crisps", + "en:potato-crisps-in-sunflower-oil" + ], + "category_properties": { + "ciqual_food_name:en": "Potato crisps", + "ciqual_food_name:fr": "Chips de pommes de terre, standard" + }, + "checkers_tags": [], + "ciqual_food_name_tags": [ + "potato-crisps" + ], + "cities_tags": [], + "code": "5060292302201", + "codes_tags": [ + "code-13", + "5060292302xxx", + "506029230xxxx", + "50602923xxxxx", + "5060292xxxxxx", + "506029xxxxxxx", + "50602xxxxxxxx", + "5060xxxxxxxxx", + "506xxxxxxxxxx", + "50xxxxxxxxxxx", + "5xxxxxxxxxxxx" + ], + "compared_to_category": "en:potato-crisps-in-sunflower-oil", + "complete": 0, + "completeness": 0.8875, + "correctors_tags": [ + "tacite", + "tacite-mass-editor", + "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", + "openfoodfacts-contributors", + "swipe-studio", + "yuka.sY2b0xO6T85zoF3NwEKvllZnctbb-gn-LDr4mHzUyem0FYPXMO5by7b5NKg", + "kiliweb", + "packbot", + "foodless", + "yuka.sY2b0xO6T85zoF3NwEKvlmBZVPXu-gnlBU3miFTQ-NeSIbDaMdUtu4fLGas", + "aleene" + ], + "countries": "France,United Kingdom", + "countries_hierarchy": [ + "en:france", + "en:united-kingdom" + ], + "countries_lc": "en", + "countries_tags": [ + "en:france", + "en:united-kingdom" + ], + "created_t": 1433338177, + "creator": "kyzh", + "data_quality_bugs_tags": [], + "data_quality_errors_tags": [], + "data_quality_info_tags": [ + "en:packaging-data-incomplete", + "en:ingredients-percent-analysis-ok", + "en:carbon-footprint-from-known-ingredients-but-not-from-meat-or-fish", + "en:ecoscore-extended-data-computed", + "en:ecoscore-extended-data-less-precise-than-agribalyse", + "en:food-groups-1-known", + "en:food-groups-2-known", + "en:food-groups-3-unknown" + ], + "data_quality_tags": [ + "en:packaging-data-incomplete", + "en:ingredients-percent-analysis-ok", + "en:carbon-footprint-from-known-ingredients-but-not-from-meat-or-fish", + "en:ecoscore-extended-data-computed", + "en:ecoscore-extended-data-less-precise-than-agribalyse", + "en:food-groups-1-known", + "en:food-groups-2-known", + "en:food-groups-3-unknown", + "en:nutrition-value-very-low-for-category-energy", + "en:nutrition-value-very-low-for-category-fat", + "en:nutrition-value-very-high-for-category-sugars", + "en:vegetarian-label-but-could-not-confirm-for-all-ingredients", + "en:ecoscore-origins-of-ingredients-origins-are-100-percent-unknown", + "en:ecoscore-production-system-no-label" + ], + "data_quality_warnings_tags": [ + "en:nutrition-value-very-low-for-category-energy", + "en:nutrition-value-very-low-for-category-fat", + "en:nutrition-value-very-high-for-category-sugars", + "en:vegetarian-label-but-could-not-confirm-for-all-ingredients", + "en:ecoscore-origins-of-ingredients-origins-are-100-percent-unknown", + "en:ecoscore-production-system-no-label" + ], + "data_sources": "App - yuka, Apps, App - Horizon", + "data_sources_tags": [ + "app-yuka", + "apps", + "app-horizon" + ], + "debug_param_sorted_langs": [ + "en" + ], + "ecoscore_data": { + "adjustments": { + "origins_of_ingredients": { + "aggregated_origins": [ + { + "epi_score": "0", + "origin": "en:unknown", + "percent": 100, + "transportation_score": null + } + ], + "epi_score": 0, + "epi_value": -5, + "origins_from_categories": [ + "en:unknown" + ], + "origins_from_origins_field": [ + "en:unknown" + ], + "transportation_score": 0, + "transportation_scores": { + "ad": 0, + "al": 0, + "va": 0, + "world": 0, + "xk": 0 + }, + "transportation_value": 0, + "transportation_values": { + "ad": 0, + "ua": 0, + "uk": 0, + "us": 0, + "va": 0, + "world": 0, + "xk": 0 + }, + "value": -5, + "values": { + "ad": -5, + "al": -5, + "at": -5, + "uk": -5, + "us": -5, + "va": -5, + "world": -5, + "xk": -5 + }, + "warning": "origins_are_100_percent_unknown" + }, + "packaging": { + "non_recyclable_and_non_biodegradable_materials": 2, + "packagings": [ + { + "ecoscore_material_score": 0, + "ecoscore_shape_ratio": 1, + "material": "en:plastic", + "non_recyclable_and_non_biodegradable": "maybe", + "shape": "en:packet" + }, + { + "ecoscore_material_score": 0, + "ecoscore_shape_ratio": 1, + "material": "en:plastic", + "non_recyclable_and_non_biodegradable": "maybe", + "shape": "en:packet" + } + ], + "score": -100, + "value": -15 + }, + "production_system": { + "labels": [], + "value": 0, + "warning": "no_label" + }, + "threatened_species": {} + }, + "agribalyse": { + "agribalyse_food_code": "4004", + "co2_agriculture": 0.82655583, + "co2_consumption": 0, + "co2_distribution": 0.019537154, + "co2_packaging": 0.28154442, + "co2_processing": 0.23156851, + "co2_total": 1.543669164, + "co2_transportation": 0.18446325, + "code": "4004", + "dqr": "2.45", + "ef_agriculture": 0.14029442, + "ef_consumption": 0, + "ef_distribution": 0.004831936, + "ef_packaging": 0.02370999, + "ef_processing": 0.038707917, + "ef_total": 0.223317319, + "ef_transportation": 0.015773056, + "is_beverage": 0, + "name_en": "Potato crisps", + "name_fr": "Chips de pommes de terre, standard", + "score": 87, + "version": "3.1" + }, + "grade": "b", + "grades": { + "ad": "b", + "al": "b", + "tr": "b", + "ua": "b", + "uk": "b", + "us": "b", + "va": "b", + "world": "b", + "xk": "b" + }, + "missing": { + "labels": 1, + "origins": 1 + }, + "missing_data_warning": 1, + "previous_data": { + "agribalyse": { + "agribalyse_food_code": "4004", + "co2_agriculture": 1.2992636, + "co2_consumption": 0, + "co2_distribution": 0.029120657, + "co2_packaging": 0.28581962, + "co2_processing": 0.39294234, + "co2_total": 2.2443641, + "co2_transportation": 0.23728203, + "code": "4004", + "dqr": "2.45", + "ef_agriculture": 0.18214682, + "ef_consumption": 0, + "ef_distribution": 0.0098990521, + "ef_packaging": 0.021558384, + "ef_processing": 0.057508389, + "ef_total": 0.29200269, + "ef_transportation": 0.020894187, + "is_beverage": 0, + "name_en": "Potato crisps", + "name_fr": "Chips de pommes de terre, standard", + "score": 78 + }, + "grade": "b", + "score": 63 + }, + "score": 67, + "scores": { + "ad": 67, + "al": 67, + "at": 67, + "va": 67, + "world": 67, + "xk": 67 + }, + "status": "known" + }, + "ecoscore_extended_data": { + "impact": { + "ef_single_score_log_stddev": 0.0664290643574977, + "likeliest_impacts": { + "Climate_change": 0.0835225930657116, + "EF_single_score": 0.0132996566234689 + }, + "likeliest_recipe": { + "en:Oak_smoked_sea_salti_yeast_extract": 0.103505496656251, + "en:e160c": 0.10350549665625, + "en:e330": 0.10350549665625, + "en:flavouring": 0.10350549665625, + "en:garlic_powder": 0.103505496656251, + "en:milk": 1.55847864453775, + "en:onion": 0.15510736429208, + "en:potato": 69.2208020730349, + "en:potato_starch": 10.5320407294931, + "en:rice_flour": 13.8595510001351, + "en:salt": 1.3345917157533, + "en:spice": 0.10350549665625, + "en:sugar": 10.2883618334396, + "en:sunflower_oil": 14.1645835312727, + "en:tomato_powder": 0.10350549665625, + "en:water": 6.24510964041154, + "en:yeast_powder": 0.103505496656251 + }, + "mass_ratio_uncharacterized": 0.0244618467395455, + "uncharacterized_ingredients": { + "impact": [ + "en:yeast-powder", + "en:flavouring", + "en:Oak smoked sea salti yeast extract", + "en:e160c", + "en:e330" + ], + "nutrition": [ + "en:flavouring", + "en:Oak smoked sea salti yeast extract" + ] + }, + "uncharacterized_ingredients_mass_proportion": { + "impact": 0.0244618467395455, + "nutrition": 0.0106506947223728 + }, + "uncharacterized_ingredients_ratio": { + "impact": 0.3125, + "nutrition": 0.125 + }, + "warnings": [ + "Fermentation agents are present in the product (en:yeast-powder). Carbohydrates and sugars mass balance will not be considered to estimate potential recipes", + "The product has a high number of impact uncharacterized ingredients: 31%" + ] + } + }, + "ecoscore_extended_data_version": "4", + "ecoscore_grade": "b", + "ecoscore_score": 67, + "ecoscore_tags": [ + "b" + ], + "editors": [ + "kyzh", + "tacite" + ], + "editors_tags": [ + "kiliweb", + "openfoodfacts-contributors", + "aleene", + "tacite-mass-editor", + "yuka.sY2b0xO6T85zoF3NwEKvlmBZVPXu-gnlBU3miFTQ-NeSIbDaMdUtu4fLGas", + "kyzh", + "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", + "ecoscore-impact-estimator", + "tacite", + "foodless", + "yuka.sY2b0xO6T85zoF3NwEKvllZnctbb-gn-LDr4mHzUyem0FYPXMO5by7b5NKg", + "swipe-studio", + "packbot" + ], + "emb_codes": "", + "emb_codes_20141016": "", + "emb_codes_orig": "", + "emb_codes_tags": [], + "entry_dates_tags": [ + "2015-06-03", + "2015-06", + "2015" + ], + "expiration_date": "11/05/2016", + "food_groups": "en:appetizers", + "food_groups_tags": [ + "en:salty-snacks", + "en:appetizers" + ], + "fruits-vegetables-nuts_100g_estimate": 0, + "generic_name": "", + "generic_name_en": "", + "generic_name_fr": "", + "generic_name_fr_debug_tags": [], + "id": "5060292302201", + "image_front_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", + "image_front_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", + "image_front_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", + "image_ingredients_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg", + "image_ingredients_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg", + "image_ingredients_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg", + "image_nutrition_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg", + "image_nutrition_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg", + "image_nutrition_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg", + "image_small_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg", + "image_thumb_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg", + "image_url": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg", + "images": { + "1": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338177, + "uploader": "kyzh" + }, + "2": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338194, + "uploader": "kyzh" + }, + "3": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338203, + "uploader": "kyzh" + }, + "4": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338215, + "uploader": "kyzh" + }, + "5": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338229, + "uploader": "kyzh" + }, + "6": { + "sizes": { + "100": { + "h": 74, + "w": 100 + }, + "400": { + "h": 296, + "w": 400 + }, + "full": { + "h": 1482, + "w": 2000 + } + }, + "uploaded_t": 1433338245, + "uploader": "kyzh" + }, + "7": { + "sizes": { + "100": { + "h": 43, + "w": 100 + }, + "400": { + "h": 171, + "w": 400 + }, + "full": { + "h": 846, + "w": 1974 + } + }, + "uploaded_t": "1508236270", + "uploader": "kiliweb" + }, + "8": { + "sizes": { + "100": { + "h": 100, + "w": 82 + }, + "400": { + "h": 400, + "w": 326 + }, + "full": { + "h": 1140, + "w": 930 + } + }, + "uploaded_t": 1620505759, + "uploader": "kiliweb" + }, + "9": { + "sizes": { + "100": { + "h": 56, + "w": 100 + }, + "400": { + "h": 225, + "w": 400 + }, + "full": { + "h": 569, + "w": 1011 + } + }, + "uploaded_t": 1656075071, + "uploader": "kiliweb" + }, + "front": { + "geometry": "1421x1825-0-95", + "imgid": "1", + "normalize": "false", + "rev": "9", + "sizes": { + "100": { + "h": 100, + "w": 78 + }, + "200": { + "h": 200, + "w": 156 + }, + "400": { + "h": 400, + "w": 311 + }, + "full": { + "h": 1825, + "w": 1421 + } + }, + "white_magic": "true" + }, + "front_en": { + "angle": 0, + "coordinates_image_size": "full", + "geometry": "0x0--1--1", + "imgid": "8", + "normalize": null, + "rev": "23", + "sizes": { + "100": { + "h": 100, + "w": 82 + }, + "200": { + "h": 200, + "w": 163 + }, + "400": { + "h": 400, + "w": 326 + }, + "full": { + "h": 1140, + "w": 930 + } + }, + "white_magic": null, + "x1": "-1", + "x2": "-1", + "y1": "-1", + "y2": "-1" + }, + "ingredients": { + "geometry": "1730x526-125-304", + "imgid": "5", + "normalize": "false", + "ocr": 1, + "orientation": "0", + "rev": "11", + "sizes": { + "100": { + "h": 30, + "w": 100 + }, + "200": { + "h": 61, + "w": 200 + }, + "400": { + "h": 122, + "w": 400 + }, + "full": { + "h": 526, + "w": 1730 + } + }, + "white_magic": "false" + }, + "ingredients_en": { + "geometry": "1730x526-125-304", + "imgid": "5", + "normalize": "false", + "ocr": 1, + "orientation": "0", + "rev": "11", + "sizes": { + "100": { + "h": 30, + "w": 100 + }, + "200": { + "h": 61, + "w": 200 + }, + "400": { + "h": 122, + "w": 400 + }, + "full": { + "h": 526, + "w": 1730 + } + }, + "white_magic": "false" + }, + "nutrition": { + "geometry": "1131x920-150-794", + "imgid": "3", + "normalize": "false", + "ocr": 1, + "orientation": "0", + "rev": "10", + "sizes": { + "100": { + "h": 81, + "w": 100 + }, + "200": { + "h": 163, + "w": 200 + }, + "400": { + "h": 325, + "w": 400 + }, + "full": { + "h": 920, + "w": 1131 + } + }, + "white_magic": "false" + }, + "nutrition_en": { + "angle": 0, + "coordinates_image_size": "full", + "geometry": "0x0--1--1", + "imgid": "9", + "normalize": null, + "rev": "32", + "sizes": { + "100": { + "h": 56, + "w": 100 + }, + "200": { + "h": 113, + "w": 200 + }, + "400": { + "h": 225, + "w": 400 + }, + "full": { + "h": 569, + "w": 1011 + } + }, + "white_magic": null, + "x1": "-1", + "x2": "-1", + "y1": "-1", + "y2": "-1" + } + }, + "informers_tags": [ + "kyzh", + "tacite", + "tacite-mass-editor", + "yuka.VjQwdU5yUUlpdmxUbjhWa3BFenc4ZGt1NDVLUFZtNm9NdWdOSWc9PQ", + "openfoodfacts-contributors", + "aleene" + ], + "ingredients": [ + { + "ciqual_food_code": "4003", + "id": "en:potato", + "percent": 54, + "percent_estimate": 54, + "percent_max": 54, + "percent_min": 54, + "processing": "en:dried", + "rank": 1, + "text": "potatoes", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "17440", + "from_palm_oil": "no", + "id": "en:sunflower-oil", + "percent_estimate": 28.75, + "percent_max": 46, + "percent_min": 11.5, + "rank": 2, + "text": "sunflower oil", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "has_sub_ingredients": "yes", + "id": "en:coating", + "percent_estimate": 8.625, + "percent_max": 33.3333333333333, + "percent_min": 0, + "rank": 3, + "text": "seasoning", + "vegan": "maybe", + "vegetarian": "maybe" + }, + { + "ciqual_food_code": "9520", + "id": "en:rice-flour", + "percent_estimate": 4.3125, + "percent_max": 17.25, + "percent_min": 0, + "rank": 4, + "text": "rice flour", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "en:potato-starch", + "percent_estimate": 4.3125, + "percent_max": 11.5, + "percent_min": 0, + "rank": 5, + "text": "potato starch", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "en:sugar", + "percent_estimate": 4.3125, + "percent_max": 8.7, + "percent_min": 0, + "text": "sugar", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "has_sub_ingredients": "yes", + "id": "en:whey-powder", + "percent_estimate": 2.15625, + "percent_max": 8.7, + "percent_min": 0, + "text": "whey powder", + "vegan": "no", + "vegetarian": "maybe" + }, + { + "ciqual_food_code": "11058", + "id": "en:salt", + "percent_estimate": 1.05, + "percent_max": 2.1, + "percent_min": 0, + "text": "salt", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "20034", + "id": "en:onion", + "percent_estimate": 0.553125, + "percent_max": 2.1, + "percent_min": 0, + "processing": "en:powder", + "text": "onion", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "en:yeast-powder", + "percent_estimate": 0.2765625, + "percent_max": 2.1, + "percent_min": 0, + "text": "yeast powder", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "11000", + "id": "en:garlic", + "percent_estimate": 0.13828125, + "percent_max": 2.1, + "percent_min": 0, + "processing": "en:powder", + "text": "garlic", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "ciqual_food_code": "20047", + "id": "en:tomato", + "percent_estimate": 0.0691406250000002, + "percent_max": 2.1, + "percent_min": 0, + "processing": "en:powder", + "text": "tomato", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "en:oak-smoked-sea-salti-yeast-extract", + "percent_estimate": 0.0345703124999996, + "percent_max": 2.1, + "percent_min": 0, + "text": "Oak smoked sea salti yeast extract" + }, + { + "id": "en:flavouring", + "percent_estimate": 0.0172851562499998, + "percent_max": 2.1, + "percent_min": 0, + "text": "flavourings", + "vegan": "maybe", + "vegetarian": "maybe" + }, + { + "id": "en:spice", + "percent_estimate": 0.00864257812500036, + "percent_max": 2.1, + "percent_min": 0, + "text": "spices", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "has_sub_ingredients": "yes", + "id": "en:acid", + "percent_estimate": 0.00432128906250018, + "percent_max": 2.1, + "percent_min": 0, + "text": "acid" + }, + { + "has_sub_ingredients": "yes", + "id": "en:colour", + "percent_estimate": 0.00432128906249929, + "percent_max": 2.1, + "percent_min": 0, + "text": "colour" + }, + { + "id": "en:milk", + "percent_estimate": 2.15625, + "percent_max": 8.7, + "percent_min": 0, + "text": "milk", + "vegan": "no", + "vegetarian": "yes" + }, + { + "id": "en:e330", + "percent_estimate": 0.00432128906250018, + "percent_max": 2.1, + "percent_min": 0, + "text": "citric acid", + "vegan": "yes", + "vegetarian": "yes" + }, + { + "id": "en:e160c", + "percent_estimate": 0.00432128906249929, + "percent_max": 2.1, + "percent_min": 0, + "text": "paprika extract", + "vegan": "yes", + "vegetarian": "yes" + } + ], + "ingredients_analysis": { + "en:non-vegan": [ + "en:whey-powder", + "en:milk" + ], + "en:palm-oil-content-unknown": [ + "en:oak-smoked-sea-salti-yeast-extract" + ], + "en:vegan-status-unknown": [ + "en:oak-smoked-sea-salti-yeast-extract" + ], + "en:vegetarian-status-unknown": [ + "en:oak-smoked-sea-salti-yeast-extract" + ] + }, + "ingredients_analysis_tags": [ + "en:palm-oil-free", + "en:non-vegan", + "en:vegetarian" + ], + "ingredients_debug": [ + "54% dried potatoes", + ",", + null, + null, + null, + " sunflower oil", + ",", + null, + null, + null, + " seasoning ", + "(", + "(", + null, + null, + "sugar", + ",", + null, + null, + null, + " whey powder ", + "[", + "[", + null, + null, + "milk]", + ",", + null, + null, + null, + " salt", + ",", + null, + null, + null, + " onion powder", + ",", + null, + null, + null, + " yeast powder", + ",", + null, + null, + null, + " garlic powder", + ",", + null, + null, + null, + " tomato powder", + ",", + null, + null, + null, + " Oak smoked sea salti yeast extract", + ",", + null, + null, + null, + " flavourings", + ",", + null, + null, + null, + " spices", + ",", + null, + null, + null, + " acid", + ":", + ":", + null, + null, + " citric acid", + ",", + null, + null, + null, + " colour", + ":", + ":", + null, + null, + " paprika extract)", + ",", + null, + null, + null, + " rice flour", + ",", + null, + null, + null, + " potato starch." + ], + "ingredients_from_or_that_may_be_from_palm_oil_n": 0, + "ingredients_from_palm_oil_n": 0, + "ingredients_from_palm_oil_tags": [], + "ingredients_hierarchy": [ + "en:potato", + "en:vegetable", + "en:root-vegetable", + "en:tuber", + "en:sunflower-oil", + "en:oil-and-fat", + "en:spice", + "en:condiment", + "en:acid", + "en:colour", + "en:milk", + "en:e330", + "en:e160c" + ], + "ingredients_ids_debug": [ + "54-dried-potatoes", + "sunflower-oil", + "seasoning", + "sugar", + "colour", + "paprika-extract", + "rice-flour", + "potato-starch" + ], + "ingredients_n": 20, + "ingredients_n_tags": [ + "20", + "11-20" + ], + "ingredients_original_tags": [ + "en:potato", + "en:sunflower-oil", + "en:coating", + "en:rice-flour", + "en:potato-starch", + "en:sugar", + "en:whey-powder", + "en:salt", + "en:onion", + "en:yeast-powder", + "en:garlic", + "en:tomato", + "en:oak-smoked-sea-salti-yeast-extract", + "en:flavouring", + "en:spice", + "en:acid", + "en:colour", + "en:milk", + "en:e330", + "en:e160c" + ], + "ingredients_percent_analysis": 1, + "ingredients_tags": [ + "en:potato", + "en:vegetable", + "en:root-vegetable", + "en:milk", + "en:e330", + "en:e160c" + ], + "ingredients_text": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_debug": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_debug_tags": [], + "ingredients_text_en": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_fr": "", + "ingredients_text_fr_debug_tags": [], + "ingredients_text_with_allergens": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_text_with_allergens_en": "54% dried potatoes, sunflower oil, seasoning (sugar, whey powder [milk], salt, onion powder, yeast powder, garlic powder, tomato powder, Oak smoked sea salti yeast extract, flavourings, spices, acid: citric acid, colour: paprika extract), rice flour, potato starch.", + "ingredients_that_may_be_from_palm_oil_n": 0, + "ingredients_that_may_be_from_palm_oil_tags": [], + "ingredients_with_specified_percent_n": 1, + "ingredients_with_specified_percent_sum": 54, + "ingredients_with_unspecified_percent_n": 15, + "ingredients_with_unspecified_percent_sum": 46, + "ingredients_without_ciqual_codes": [ + "en:e160c", + "en:e330", + "en:flavouring", + "en:milk", + "en:oak-smoked-sea-salti-yeast-extract", + "en:potato-starch", + "en:spice", + "en:sugar", + "en:yeast-powder" + ], + "ingredients_without_ciqual_codes_n": 9, + "interface_version_created": "20120622", + "interface_version_modified": "20190830", + "known_ingredients_n": 36, + "labels": "Vegetarian, No preservatives, No artificial anything", + "labels_hierarchy": [ + "en:vegetarian", + "en:no-preservatives", + "en:No artificial anything" + ], + "labels_lc": "en", + "labels_old": "Vegetarian,No preservatives,No artificial anything", + "labels_tags": [ + "en:vegetarian", + "en:no-preservatives", + "en:no-artificial-anything" + ], + "lang": "en", + "languages": { + "en:english": 5 + }, + "languages_codes": { + "en": 5 + }, + "languages_hierarchy": [ + "en:english" + ], + "languages_tags": [ + "en:english", + "en:1" + ], + "last_edit_dates_tags": [ + "2023-03-24", + "2023-03", + "2023" + ], + "last_editor": "aleene", + "last_image_dates_tags": [ + "2022-06-24", + "2022-06", + "2022" + ], + "last_image_t": 1656075071, + "last_modified_by": "aleene", + "last_modified_t": 1679645675, + "lc": "en", + "link": "", + "main_countries_tags": [], + "manufacturing_places": "European Union", + "manufacturing_places_tags": [ + "european-union" + ], + "max_imgid": "9", + "minerals_prev_tags": [], + "minerals_tags": [], + "misc_tags": [ + "en:nutriscore-computed", + "en:nutrition-fruits-vegetables-nuts-from-category", + "en:nutrition-fruits-vegetables-nuts-from-category-en-potato-crisps-in-sunflower-oil", + "en:nutrition-fruits-vegetables-legumes-from-category", + "en:nutrition-fruits-vegetables-legumes-from-category-en-potato-crisps-in-sunflower-oil", + "en:nutriscore-2021-same-as-2023", + "en:nutriscore-2021-d-2023-d", + "en:packagings-number-of-components-2", + "en:packagings-not-complete", + "en:packagings-not-empty-but-not-complete", + "en:packagings-not-empty", + "en:ecoscore-extended-data-computed", + "en:ecoscore-extended-data-version-4", + "en:ecoscore-missing-data-warning", + "en:ecoscore-missing-data-labels", + "en:ecoscore-missing-data-origins", + "en:ecoscore-computed", + "en:ecoscore-changed" + ], + "no_nutrition_data": "", + "nova_group": 4, + "nova_group_debug": "", + "nova_groups": "4", + "nova_groups_markers": { + "3": [ + [ + "categories", + "en:salty-snacks" + ], + [ + "ingredients", + "en:salt" + ], + [ + "ingredients", + "en:starch" + ], + [ + "ingredients", + "en:sugar" + ], + [ + "ingredients", + "en:vegetable-oil" + ] + ], + "4": [ + [ + "additives", + "en:e160c" + ], + [ + "ingredients", + "en:colour" + ], + [ + "ingredients", + "en:flavouring" + ], + [ + "ingredients", + "en:whey" + ] + ] + }, + "nova_groups_tags": [ + "en:4-ultra-processed-food-and-drink-products" + ], + "nucleotides_prev_tags": [], + "nucleotides_tags": [], + "nutrient_levels": { + "fat": "moderate", + "salt": "high", + "saturated-fat": "low", + "sugars": "moderate" + }, + "nutrient_levels_tags": [ + "en:fat-in-moderate-quantity", + "en:saturated-fat-in-low-quantity", + "en:sugars-in-moderate-quantity", + "en:salt-in-high-quantity" + ], + "nutriments": { + "carbohydrates": 62, + "carbohydrates_100g": 62, + "carbohydrates_serving": 14.3, + "carbohydrates_unit": "g", + "carbohydrates_value": 62, + "carbon-footprint-from-known-ingredients_100g": 32.4, + "carbon-footprint-from-known-ingredients_product": 7.45, + "salt": 2.1, + "salt_100g": 2.1, + "salt_serving": 0.483, + "salt_unit": "g", + "salt_value": 2.1, + "saturated-fat": 1.4, + "saturated-fat_100g": 1.4, + "saturated-fat_serving": 0.322, + "saturated-fat_unit": "g", + "saturated-fat_value": 1.4, + "sodium": 0.84, + "sodium_100g": 0.84, + "sodium_serving": 0.193, + "sodium_unit": "g", + "sodium_value": 0.84, + "sugars": 8.7, + "sugars_100g": 8.7, + "sugars_serving": 2, + "sugars_unit": "g", + "sugars_value": 8.7 + }, + "nutriscore": { + "2021": { + "category_available": 1, + "data": { + "energy": 1759, + "energy_points": 5, + "energy_value": 1759, + "fiber": 3.9, + "fiber_points": 4, + "sugars": 8.7, + "sugars_points": 1, + "sugars_value": 8.7 + }, + "grade": "d", + "nutrients_available": 1, + "nutriscore_applicable": 1, + "nutriscore_computed": 1, + "score": 12 + }, + "2023": { + "category_available": 1, + "data": { + "count_proteins": 0, + "count_proteins_reason": "negative_points_more_than_11", + "energy": 1759, + "is_red_meat_product": 0, + "is_water": 0, + "negative_nutrients": [ + "energy", + "sugars", + "saturated_fat", + "salt", + "non_nutritive_sweeteners" + ], + "negative_points": 18, + "positive_nutrients": [ + "fruits_vegetables_legumes", + "fiber" + ], + "positive_points": 1, + "proteins": 5.7, + "proteins_points": 2, + "salt": 2.1, + "salt_points": 10, + "saturated_fat": 1.4, + "saturated_fat_points": 1, + "sugars": 8.7, + "sugars_points": 2 + }, + "grade": "d", + "nutrients_available": 1, + "nutriscore_applicable": 1, + "nutriscore_computed": 1, + "score": 17 + } + }, + "nutriscore_2021_tags": [ + "d" + ], + "nutriscore_2023_tags": [ + "d" + ], + "nutriscore_data": { + "energy": 1759, + "energy_points": 5, + "energy_value": 1759, + "fiber": 3.9, + "fiber_points": 4, + "fiber_value": 3.9, + "fruits_vegetables_nuts_colza_walnut_olive_oils": "0", + "fruits_vegetables_nuts_colza_walnut_olive_oils_points": 0, + "fruits_vegetables_nuts_colza_walnut_olive_oils_value": 0, + "grade": "d", + "is_beverage": 0, + "is_cheese": 0, + "is_fat": 0, + "is_water": 0, + "negative_points": 16, + "positive_points": 4, + "proteins": 5.7, + "proteins_points": 3, + "proteins_value": 5.7, + "saturated_fat": 1.4, + "saturated_fat_points": 1, + "saturated_fat_value": 1.4, + "score": 12, + "sodium": 840, + "sodium_points": 9, + "sodium_value": 840, + "sugars": 8.7, + "sugars_points": 1, + "sugars_value": 8.7 + }, + "nutriscore_grade": "d", + "nutriscore_score": 12, + "nutriscore_score_opposite": -12, + "nutriscore_tags": [ + "d" + ], + "nutriscore_version": "2021", + "nutrition_data": "on", + "nutrition_data_per": "100g", + "nutrition_data_prepared": "", + "nutrition_data_prepared_per": "100g", + "nutrition_grade_fr": "d", + "nutrition_grades": "d", + "nutrition_grades_tags": [ + "d" + ], + "nutrition_score_beverage": 0, + "nutrition_score_debug": "", + "obsolete": "", + "obsolete_since_date": "", + "origin": "", + "origin_en": "", + "origins": "", + "origins_hierarchy": [], + "origins_lc": "en", + "origins_old": "", + "origins_tags": [], + "other_nutritional_substances_tags": [], + "packaging": "Plastic,Mixed plastic film-packet", + "packaging_hierarchy": [ + "en:plastic", + "en:Mixed plastic film-packet" + ], + "packaging_lc": "en", + "packaging_materials_tags": [ + "en:plastic" + ], + "packaging_old": "Plastic, Mixed plastic-packet", + "packaging_old_before_taxonomization": "Plastic, en:mixed plastic-packet", + "packaging_recycling_tags": [], + "packaging_shapes_tags": [ + "en:packet" + ], + "packaging_tags": [ + "en:plastic", + "en:mixed-plastic-film-packet" + ], + "packaging_text": "", + "packaging_text_en": "", + "packagings": [ + { + "material": "en:plastic", + "shape": "en:packet" + }, + { + "material": "en:plastic", + "shape": "en:packet" + } + ], + "packagings_complete": 0, + "packagings_materials": { + "all": {}, + "en:plastic": {} + }, + "packagings_n": 2, + "photographers_tags": [ + "kyzh", + "kiliweb" + ], + "pnns_groups_1": "Salty snacks", + "pnns_groups_1_tags": [ + "salty-snacks", + "known" + ], + "pnns_groups_2": "Appetizers", + "pnns_groups_2_tags": [ + "appetizers", + "known" + ], + "popularity_key": 21900000007, + "popularity_tags": [ + "bottom-25-percent-scans-2019", + "bottom-20-percent-scans-2019", + "top-100000-hk-scans-2022", + "top-10000-us-scans-2022", + "top-50000-us-scans-2022", + "top-100000-us-scans-2022" + ], + "product_name": "Barbeque Potato Chips", + "product_name_en": "Barbeque Potato Chips", + "product_name_fr": "", + "product_name_fr_debug_tags": [], + "product_quantity": "23", + "purchase_places": "", + "purchase_places_tags": [], + "quantity": "23 g", + "removed_countries_tags": [], + "rev": 33, + "scans_n": 6, + "selected_images": { + "front": { + "display": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.400.jpg" + }, + "small": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.200.jpg" + }, + "thumb": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/front_en.23.100.jpg" + } + }, + "ingredients": { + "display": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.400.jpg" + }, + "small": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.200.jpg" + }, + "thumb": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/ingredients_en.11.100.jpg" + } + }, + "nutrition": { + "display": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.400.jpg" + }, + "small": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.200.jpg" + }, + "thumb": { + "en": "https://images.openfoodfacts.org/images/products/506/029/230/2201/nutrition_en.32.100.jpg" + } + } + }, + "serving_quantity": "23", + "serving_size": "23 g", + "sortkey": 1535456524, + "states": "en:to-be-completed, en:nutrition-facts-completed, en:ingredients-completed, en:expiration-date-completed, en:packaging-code-to-be-completed, en:characteristics-to-be-completed, en:origins-to-be-completed, en:categories-completed, en:brands-completed, en:packaging-completed, en:quantity-completed, en:product-name-completed, en:photos-to-be-validated, en:packaging-photo-to-be-selected, en:nutrition-photo-selected, en:ingredients-photo-selected, en:front-photo-selected, en:photos-uploaded", + "states_hierarchy": [ + "en:to-be-completed", + "en:nutrition-facts-completed", + "en:ingredients-completed", + "en:ingredients-photo-selected", + "en:front-photo-selected", + "en:photos-uploaded" + ], + "states_tags": [ + "en:to-be-completed", + "en:nutrition-facts-completed", + "en:ingredients-completed", + "en:ingredients-photo-selected", + "en:front-photo-selected", + "en:photos-uploaded" + ], + "stores": "", + "stores_tags": [], + "teams": "swipe-studio", + "teams_tags": [ + "swipe-studio" + ], + "traces": "", + "traces_from_ingredients": "", + "traces_from_user": "(en) ", + "traces_hierarchy": [], + "traces_lc": "en", + "traces_tags": [], + "unique_scans_n": 4, + "unknown_ingredients_n": 1, + "unknown_nutrients_tags": [], + "update_key": "eco20231129", + "vitamins_prev_tags": [], + "vitamins_tags": [], + "weighers_tags": [] + }, + "status": 1, + "status_verbose": "product found" +} diff --git a/test/small_tests.js b/test/small_tests.js index 9442d1f..bcc45a5 100644 --- a/test/small_tests.js +++ b/test/small_tests.js @@ -557,12 +557,18 @@ students test_date `).getDDL(); - //console.log(output); assert( "0 < output.indexOf(\"test_name varchar2(255\")" ); assert( "0 < output.indexOf(\"test_description varchar2(4000\")" ); assert( "0 < output.indexOf(\"test_number number\")" ); assert( "0 < output.indexOf(\"test_date date\")" ); + // https://github.com/oracle/quicksql/issues/48 + output = new quicksql( `support + support_email vc100 /default support@oracle.com + `).getDDL(); + + //console.log(output); + assert( "0 < output.indexOf(\"support_email varchar2(100 char) default on null 'support@oracle.com'\")" ); } @@ -571,7 +577,7 @@ small_tests(); console.log(assertionCnt); -const minimalTestCnt = 95; +const minimalTestCnt = 100; if( assertionCnt < minimalTestCnt ) { console.error("assertionCnt < "+minimalTestCnt); throw new Error('Test failed'); From bedddadda0476165ee5c58e7f5492ead15ff77fe Mon Sep 17 00:00:00 2001 From: Vadim Tropashko Date: Tue, 6 Feb 2024 09:14:49 -0800 Subject: [PATCH 18/22] issue 49 --- dist/quick-sql.js | 1194 ++++++++++++++++++++-------------------- dist/quick-sql.umd.cjs | 146 ++--- src/tree.js | 19 +- test/small_tests.js | 10 +- 4 files changed, 691 insertions(+), 678 deletions(-) diff --git a/dist/quick-sql.js b/dist/quick-sql.js index 7c355bb..def11c0 100644 --- a/dist/quick-sql.js +++ b/dist/quick-sql.js @@ -2,25 +2,25 @@ function W(d) { return d == null ? d : d.toUpperCase().endsWith("IES") ? d.substring(0, d.length - 3) + "y" : d.toUpperCase().endsWith("ES") || d.toUpperCase().endsWith("S") ? d.substring(0, d.length - 1) : d; } function fe(d, h) { - let x = '"'; + let N = '"'; if (d == null) return null; let w = !1; const I = "$#_ "; - if (!d.startsWith(x) && !w) { - const N = d; - if (N.length > 0 && "0" <= N[0] && N[0] <= "9") + if (!d.startsWith(N) && !w) { + const x = d; + if (x.length > 0 && "0" <= x[0] && x[0] <= "9") w = !0; else - for (let b in N) { - const g = N[b]; + for (let b in x) { + const g = x[b]; if (I.indexOf(g) < 0 && (g < "0" || "9" < g && g < "A" || "Z" < g && g < "a" || "z" < g)) { w = !0; break; } } } - return (d.startsWith("_") || d.startsWith("$") || d.startsWith("#")) && (w = !0), w || (x = ""), x + d + x; + return (d.startsWith("_") || d.startsWith("$") || d.startsWith("#")) && (w = !0), w || (N = ""), N + d + N; } function he(d) { if (d == null) @@ -30,10 +30,10 @@ function he(d) { let h = fe(d); return h.indexOf('"') == 0 || (h = h.replace(/ /g, "_")), h; } -function K(d, h, x) { +function K(d, h, N) { let w = !1; - x == null && (x = ""), d.indexOf('"') == 0 && (w = !0, d = d.substring(1, d.length - 1)), h.indexOf('"') == 0 && (w = !0, h = h.substring(1, h.length - 1)), x.indexOf('"') == 0 && (w = !0, x = x.substring(1, x.length - 1)); - let I = d + h + x; + N == null && (N = ""), d.indexOf('"') == 0 && (w = !0, d = d.substring(1, d.length - 1)), h.indexOf('"') == 0 && (w = !0, h = h.substring(1, h.length - 1)), N.indexOf('"') == 0 && (w = !0, N = N.substring(1, N.length - 1)); + let I = d + h + N; return w ? I = '"' + I + '"' : I = I.toLowerCase(), I; } var le = function() { @@ -62,7 +62,7 @@ var le = function() { "\u300C\u30A2\u30CA\u30EA\u30B9\u30C8\u300D", "\u300C\u30B9\u30DA\u30B7\u30E3\u30EA\u30B9\u30C8\u300D", "\u300C\u30A8\u30D0\u30F3\u30B8\u30A7\u30EA\u30B9\u30C8\u300D" - ], x = [ + ], N = [ "\uC601\uC5C5", "\uAE08\uC735", "\uBC30\uC1A1", @@ -76,16 +76,16 @@ var le = function() { "\uC804\uB3C4\uC790", "\uD310\uB9E4\uC6D0" ]; - function w(I, N) { - if (typeof N != "string" || I.substring(0, 2).toLowerCase() == "en") - return N; - N.indexOf("'") == 0 && (N = N.substring(1, N.length - 1)); + function w(I, x) { + if (typeof x != "string" || I.substring(0, 2).toLowerCase() == "en") + return x; + x.indexOf("'") == 0 && (x = x.substring(1, x.length - 1)); for (var b = -1, g = 0; g < d.length; g++) - if (d[g] == N) { + if (d[g] == x) { b = g; break; } - return 0 <= b && I.substring(0, 2).toLowerCase() == "jp" && b < h.length ? "'" + h[b] + "'" : 0 <= b && I.substring(0, 2).toLowerCase() == "kr" && b < x.length ? "'" + x[b] + "'" : N; + return 0 <= b && I.substring(0, 2).toLowerCase() == "jp" && b < h.length ? "'" + h[b] + "'" : 0 <= b && I.substring(0, 2).toLowerCase() == "kr" && b < N.length ? "'" + N[b] + "'" : x; } return w; }(); @@ -95,15 +95,15 @@ function be(d) { var ie = { exports: {} }; (function(d, h) { (function() { - var x = 9007199254740992, w = -x, I = "0123456789", N = "abcdefghijklmnopqrstuvwxyz", b = N.toUpperCase(), g = I + "abcdef"; + var N = 9007199254740992, w = -N, I = "0123456789", x = "abcdefghijklmnopqrstuvwxyz", b = x.toUpperCase(), g = I + "abcdef"; function M(e) { this.name = "UnsupportedError", this.message = e || "This feature is not supported on this platform"; } M.prototype = new Error(), M.prototype.constructor = M; var B = Array.prototype.slice; - function i(e) { - if (!(this instanceof i)) - return e || (e = null), e === null ? new i() : new i(e); + function r(e) { + if (!(this instanceof r)) + return e || (e = null), e === null ? new r() : new r(e); if (typeof e == "function") return this.random = e, this; arguments.length && (this.seed = 0); @@ -123,14 +123,14 @@ var ie = { exports: {} }; return this.mt.random(this.seed); }, this; } - i.prototype.VERSION = "1.1.11"; + r.prototype.VERSION = "1.1.11"; function o(e, a) { if (e = e || {}, a) for (var n in a) typeof e[n] > "u" && (e[n] = a[n]); return e; } - function r(e) { + function i(e) { return Array.apply(null, Array(e)).map(function(a, n) { return n; }); @@ -146,16 +146,16 @@ var ie = { exports: {} }; typeof btoa == "function" ? s = btoa : typeof Buffer == "function" && (s = function(a) { return new Buffer(a).toString("base64"); }); - })(), i.prototype.bool = function(e) { + })(), r.prototype.bool = function(e) { return e = o(e, { likelihood: 50 }), t( e.likelihood < 0 || e.likelihood > 100, "Chance: Likelihood accepts values from 0 to 100." ), this.random() * 100 < e.likelihood; - }, i.prototype.falsy = function(e) { + }, r.prototype.falsy = function(e) { e = o(e, { pool: [!1, null, 0, NaN, "", void 0] }); var a = e.pool, n = this.integer({ min: 0, max: a.length - 1 }), c = a[n]; return c; - }, i.prototype.animal = function(e) { + }, r.prototype.animal = function(e) { if (e = o(e), typeof e.type < "u") return t( !this.get("animals")[e.type.toLowerCase()], @@ -163,16 +163,16 @@ var ie = { exports: {} }; ), this.pick(this.get("animals")[e.type.toLowerCase()]); var a = ["desert", "forest", "ocean", "zoo", "farm", "pet", "grassland"]; return this.pick(this.get("animals")[this.pick(a)]); - }, i.prototype.character = function(e) { + }, r.prototype.character = function(e) { e = o(e); var a = "!@#$%^&*()[]", n, c; - return e.casing === "lower" ? n = N : e.casing === "upper" ? n = b : n = N + b, e.pool ? c = e.pool : (c = "", e.alpha && (c += n), e.numeric && (c += I), e.symbols && (c += a), c || (c = n + I + a)), c.charAt(this.natural({ max: c.length - 1 })); - }, i.prototype.floating = function(e) { + return e.casing === "lower" ? n = x : e.casing === "upper" ? n = b : n = x + b, e.pool ? c = e.pool : (c = "", e.alpha && (c += n), e.numeric && (c += I), e.symbols && (c += a), c || (c = n + I + a)), c.charAt(this.natural({ max: c.length - 1 })); + }, r.prototype.floating = function(e) { e = o(e, { fixed: 4 }), t( e.fixed && e.precision, "Chance: Cannot specify both fixed and precision." ); - var a, n = Math.pow(10, e.fixed), c = x / n, m = -c; + var a, n = Math.pow(10, e.fixed), c = N / n, m = -c; t( e.min && e.fixed && e.min < m, "Chance: Min specified is out of range with fixed. Min should be, at least, " + m @@ -182,10 +182,10 @@ var ie = { exports: {} }; ), e = o(e, { min: m, max: c }), a = this.integer({ min: e.min * n, max: e.max * n }); var C = (a / n).toFixed(e.fixed); return parseFloat(C); - }, i.prototype.integer = function(e) { - return e = o(e, { min: w, max: x }), t(e.min > e.max, "Chance: Min cannot be greater than Max."), Math.floor(this.random() * (e.max - e.min + 1) + e.min); - }, i.prototype.natural = function(e) { - if (e = o(e, { min: 0, max: x }), typeof e.numerals == "number" && (t(e.numerals < 1, "Chance: Numerals cannot be less than one."), e.min = Math.pow(10, e.numerals - 1), e.max = Math.pow(10, e.numerals) - 1), t(e.min < 0, "Chance: Min cannot be less than zero."), e.exclude) { + }, r.prototype.integer = function(e) { + return e = o(e, { min: w, max: N }), t(e.min > e.max, "Chance: Min cannot be greater than Max."), Math.floor(this.random() * (e.max - e.min + 1) + e.min); + }, r.prototype.natural = function(e) { + if (e = o(e, { min: 0, max: N }), typeof e.numerals == "number" && (t(e.numerals < 1, "Chance: Numerals cannot be less than one."), e.min = Math.pow(10, e.numerals - 1), e.max = Math.pow(10, e.numerals) - 1), t(e.min < 0, "Chance: Min cannot be less than zero."), e.exclude) { t(!Array.isArray(e.exclude), "Chance: exclude must be an array."); for (var a in e.exclude) t(!Number.isInteger(e.exclude[a]), "Chance: exclude must be numbers."); @@ -198,7 +198,7 @@ var ie = { exports: {} }; return n; } return this.integer(e); - }, i.prototype.prime = function(e) { + }, r.prototype.prime = function(e) { e = o(e, { min: 0, max: 1e4 }), t(e.min < 0, "Chance: Min cannot be less than zero."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); var a = L.primes[L.primes.length - 1]; if (e.max > a) @@ -208,7 +208,7 @@ var ie = { exports: {} }; return m >= e.min && m <= e.max; }); return this.pick(c); - }, i.prototype.is_prime = function(e) { + }, r.prototype.is_prime = function(e) { if (e % 1 || e < 2) return !1; if (e % 2 === 0) @@ -219,15 +219,15 @@ var ie = { exports: {} }; if (e % n === 0 || e % (n + 2) === 0) return !1; return !0; - }, i.prototype.hex = function(e) { - e = o(e, { min: 0, max: x, casing: "lower" }), t(e.min < 0, "Chance: Min cannot be less than zero."); + }, r.prototype.hex = function(e) { + e = o(e, { min: 0, max: N, casing: "lower" }), t(e.min < 0, "Chance: Min cannot be less than zero."); var a = this.natural({ min: e.min, max: e.max }); return e.casing === "upper" ? a.toString(16).toUpperCase() : a.toString(16); - }, i.prototype.letter = function(e) { + }, r.prototype.letter = function(e) { e = o(e, { casing: "lower" }); var a = "abcdefghijklmnopqrstuvwxyz", n = this.character({ pool: a }); return e.casing === "upper" && (n = n.toUpperCase()), n; - }, i.prototype.string = function(e) { + }, r.prototype.string = function(e) { e = o(e, { min: 5, max: 20 }), e.length !== 0 && !e.length && (e.length = this.natural({ min: e.min, max: e.max })), t(e.length < 0, "Chance: Length cannot be less than zero."); var a = e.length, n = this.n(this.character, a, e); return n.join(""); @@ -262,7 +262,7 @@ var ie = { exports: {} }; return e.character({ pool: b }); }, a: function(e) { - return e.character({ pool: N }); + return e.character({ pool: x }); } }, substitute: function(e) { @@ -289,26 +289,26 @@ var ie = { exports: {} }; } return a; } - i.prototype.template = function(e) { + r.prototype.template = function(e) { if (!e) throw new Error("Template string is required"); var a = this; return T(e).map(function(n) { return n.substitute(a); }).join(""); - }, i.prototype.buffer = function(e) { + }, r.prototype.buffer = function(e) { if (typeof Buffer > "u") throw new M("Sorry, the buffer() function is not supported on your platform"); e = o(e, { length: this.natural({ min: 5, max: 20 }) }), t(e.length < 0, "Chance: Length cannot be less than zero."); var a = e.length, n = this.n(this.character, a, e); return Buffer.from(n); - }, i.prototype.capitalize = function(e) { + }, r.prototype.capitalize = function(e) { return e.charAt(0).toUpperCase() + e.substr(1); - }, i.prototype.mixin = function(e) { + }, r.prototype.mixin = function(e) { for (var a in e) this[a] = e[a]; return this; - }, i.prototype.unique = function(e, a, n) { + }, r.prototype.unique = function(e, a, n) { t( typeof e != "function", "Chance: The first argument must be a function." @@ -323,7 +323,7 @@ var ie = { exports: {} }; throw new RangeError("Chance: num is likely too large for sample set"); } return m; - }, i.prototype.n = function(e, a) { + }, r.prototype.n = function(e, a) { t( typeof e != "function", "Chance: The first argument must be a function." @@ -332,17 +332,17 @@ var ie = { exports: {} }; for (n = Math.max(0, n), null; n--; null) c.push(e.apply(this, m)); return c; - }, i.prototype.pad = function(e, a, n) { + }, r.prototype.pad = function(e, a, n) { return n = n || "0", e = e + "", e.length >= a ? e : new Array(a - e.length + 1).join(n) + e; - }, i.prototype.pick = function(e, a) { + }, r.prototype.pick = function(e, a) { if (e.length === 0) throw new RangeError("Chance: Cannot pick() from an empty array"); return !a || a === 1 ? e[this.natural({ max: e.length - 1 })] : this.shuffle(e).slice(0, a); - }, i.prototype.pickone = function(e) { + }, r.prototype.pickone = function(e) { if (e.length === 0) throw new RangeError("Chance: Cannot pickone() from an empty array"); return e[this.natural({ max: e.length - 1 })]; - }, i.prototype.pickset = function(e, a) { + }, r.prototype.pickset = function(e, a) { if (a === 0) return []; if (e.length === 0) @@ -356,11 +356,11 @@ var ie = { exports: {} }; var m = this.natural({ max: --c }), C = n[m]; return n[m] = n[c], C; }, Math.min(c, a)); - }, i.prototype.shuffle = function(e) { - for (var a = [], n = 0, c = Number(e.length), m = r(c), C = c - 1, P, f = 0; f < c; f++) + }, r.prototype.shuffle = function(e) { + for (var a = [], n = 0, c = Number(e.length), m = i(c), C = c - 1, P, f = 0; f < c; f++) P = this.natural({ max: C }), n = m[P], a[f] = e[n], m[P] = m[C], C -= 1; return a; - }, i.prototype.weighted = function(e, a, n) { + }, r.prototype.weighted = function(e, a, n) { if (e.length !== a.length) throw new RangeError("Chance: Length of array and weights must match"); for (var c = 0, m, C = 0; C < a.length; ++C) { @@ -383,21 +383,21 @@ var ie = { exports: {} }; } var y = e[v]; return n = typeof n > "u" ? !1 : n, n && (e.splice(v, 1), a.splice(v, 1)), y; - }, i.prototype.paragraph = function(e) { + }, r.prototype.paragraph = function(e) { e = o(e); var a = e.sentences || this.natural({ min: 3, max: 7 }), n = this.n(this.sentence, a), c = e.linebreak === !0 ? ` ` : " "; return n.join(c); - }, i.prototype.sentence = function(e) { + }, r.prototype.sentence = function(e) { e = o(e); var a = e.words || this.natural({ min: 12, max: 18 }), n = e.punctuation, c, m = this.n(this.word, a); return c = m.join(" "), c = this.capitalize(c), n !== !1 && !/^[.?;!:]$/.test(n) && (n = "."), n && (c += n), c; - }, i.prototype.syllable = function(e) { + }, r.prototype.syllable = function(e) { e = o(e); for (var a = e.length || this.natural({ min: 2, max: 3 }), n = "bcdfghjklmnprstvwz", c = "aeiou", m = n + c, C = "", P, f = 0; f < a; f++) f === 0 ? P = this.character({ pool: m }) : n.indexOf(P) === -1 ? P = this.character({ pool: n }) : P = this.character({ pool: c }), C += P; return e.capitalize && (C = this.capitalize(C)), C; - }, i.prototype.word = function(e) { + }, r.prototype.word = function(e) { e = o(e), t( e.syllables && e.length, "Chance: Cannot specify both syllables AND length." @@ -412,7 +412,7 @@ var ie = { exports: {} }; for (var c = 0; c < a; c++) n += this.syllable(); return e.capitalize && (n = this.capitalize(n)), n; - }, i.prototype.age = function(e) { + }, r.prototype.age = function(e) { e = o(e); var a; switch (e.type) { @@ -436,7 +436,7 @@ var ie = { exports: {} }; break; } return this.natural(a); - }, i.prototype.birthday = function(e) { + }, r.prototype.birthday = function(e) { var a = this.age(e), n = /* @__PURE__ */ new Date(), c = n.getFullYear(); if (e && e.type) { var m = /* @__PURE__ */ new Date(), C = /* @__PURE__ */ new Date(); @@ -456,7 +456,7 @@ var ie = { exports: {} }; year: c - a }); return this.date(e); - }, i.prototype.cpf = function(e) { + }, r.prototype.cpf = function(e) { e = o(e, { formatted: !0 }); @@ -466,7 +466,7 @@ var ie = { exports: {} }; c = 11 - c % 11, c >= 10 && (c = 0); var m = "" + a[0] + a[1] + a[2] + "." + a[3] + a[4] + a[5] + "." + a[6] + a[7] + a[8] + "-" + n + c; return e.formatted ? m : m.replace(/\D/g, ""); - }, i.prototype.cnpj = function(e) { + }, r.prototype.cnpj = function(e) { e = o(e, { formatted: !0 }); @@ -476,15 +476,15 @@ var ie = { exports: {} }; c = 11 - c % 11, c < 2 && (c = 0); var m = "" + a[0] + a[1] + "." + a[2] + a[3] + a[4] + "." + a[5] + a[6] + a[7] + "/" + a[8] + a[9] + a[10] + a[11] + "-" + n + c; return e.formatted ? m : m.replace(/\D/g, ""); - }, i.prototype.first = function(e) { + }, r.prototype.first = function(e) { return e = o(e, { gender: this.gender(), nationality: "en" }), this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()]); - }, i.prototype.profession = function(e) { + }, r.prototype.profession = function(e) { return e = o(e), e.rank ? this.pick(["Apprentice ", "Junior ", "Senior ", "Lead "]) + this.pick(this.get("profession")) : this.pick(this.get("profession")); - }, i.prototype.company = function() { + }, r.prototype.company = function() { return this.pick(this.get("company")); - }, i.prototype.gender = function(e) { + }, r.prototype.gender = function(e) { return e = o(e, { extraGenders: [] }), this.pick(["Male", "Female"].concat(e.extraGenders)); - }, i.prototype.last = function(e) { + }, r.prototype.last = function(e) { if (e = o(e, { nationality: "*" }), e.nationality === "*") { var a = [], n = this.get("lastNames"); return Object.keys(n).forEach(function(c) { @@ -492,13 +492,13 @@ var ie = { exports: {} }; }), this.pick(a); } else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()]); - }, i.prototype.israelId = function() { + }, r.prototype.israelId = function() { for (var e = this.string({ pool: "0123456789", length: 8 }), a = 0, n = 0; n < e.length; n++) { var c = e[n] * (n / 2 === parseInt(n / 2) ? 1 : 2); c = this.pad(c, 2).toString(), c = parseInt(c[0]) + parseInt(c[1]), a = a + c; } return e = e + (10 - parseInt(a.toString().slice(-1))).toString().slice(-1), e; - }, i.prototype.mrz = function(e) { + }, r.prototype.mrz = function(e) { var a = function(m) { var C = "", "<=", ">=", "="]); e.range && (a = e.range); var n = ""; return e.include_prerelease && (n = this.weighted(["", "-dev", "-beta", "-alpha"], [50, 10, 5, 1])), a + this.rpg("3d10").join(".") + n; - }, i.prototype.tlds = function() { + }, r.prototype.tlds = function() { return ["com", "org", "edu", "gov", "co.uk", "net", "io", "ac", "ad", "ae", "af", "ag", "ai", "al", "am", "ao", "aq", "ar", "as", "at", "au", "aw", "ax", "az", "ba", "bb", "bd", "be", "bf", "bg", "bh", "bi", "bj", "bm", "bn", "bo", "br", "bs", "bt", "bv", "bw", "by", "bz", "ca", "cc", "cd", "cf", "cg", "ch", "ci", "ck", "cl", "cm", "cn", "co", "cr", "cu", "cv", "cw", "cx", "cy", "cz", "de", "dj", "dk", "dm", "do", "dz", "ec", "ee", "eg", "eh", "er", "es", "et", "eu", "fi", "fj", "fk", "fm", "fo", "fr", "ga", "gb", "gd", "ge", "gf", "gg", "gh", "gi", "gl", "gm", "gn", "gp", "gq", "gr", "gs", "gt", "gu", "gw", "gy", "hk", "hm", "hn", "hr", "ht", "hu", "id", "ie", "il", "im", "in", "io", "iq", "ir", "is", "it", "je", "jm", "jo", "jp", "ke", "kg", "kh", "ki", "km", "kn", "kp", "kr", "kw", "ky", "kz", "la", "lb", "lc", "li", "lk", "lr", "ls", "lt", "lu", "lv", "ly", "ma", "mc", "md", "me", "mg", "mh", "mk", "ml", "mm", "mn", "mo", "mp", "mq", "mr", "ms", "mt", "mu", "mv", "mw", "mx", "my", "mz", "na", "nc", "ne", "nf", "ng", "ni", "nl", "no", "np", "nr", "nu", "nz", "om", "pa", "pe", "pf", "pg", "ph", "pk", "pl", "pm", "pn", "pr", "ps", "pt", "pw", "py", "qa", "re", "ro", "rs", "ru", "rw", "sa", "sb", "sc", "sd", "se", "sg", "sh", "si", "sj", "sk", "sl", "sm", "sn", "so", "sr", "ss", "st", "su", "sv", "sx", "sy", "sz", "tc", "td", "tf", "tg", "th", "tj", "tk", "tl", "tm", "tn", "to", "tp", "tr", "tt", "tv", "tw", "tz", "ua", "ug", "uk", "us", "uy", "uz", "va", "vc", "ve", "vg", "vi", "vn", "vu", "wf", "ws", "ye", "yt", "za", "zm", "zw"]; - }, i.prototype.tld = function() { + }, r.prototype.tld = function() { return this.pick(this.tlds()); - }, i.prototype.twitter = function() { + }, r.prototype.twitter = function() { return "@" + this.word(); - }, i.prototype.url = function(e) { + }, r.prototype.url = function(e) { e = o(e, { protocol: "http", domain: this.domain(e), domain_prefix: "", path: this.word(), extensions: [] }); var a = e.extensions.length > 0 ? "." + this.pick(e.extensions) : "", n = e.domain_prefix ? e.domain_prefix + "." + e.domain : e.domain; return e.protocol + "://" + n + "/" + e.path + a; - }, i.prototype.port = function() { + }, r.prototype.port = function() { return this.integer({ min: 0, max: 65535 }); - }, i.prototype.locale = function(e) { + }, r.prototype.locale = function(e) { return e = o(e), e.region ? this.pick(this.get("locale_regions")) : this.pick(this.get("locale_languages")); - }, i.prototype.locales = function(e) { + }, r.prototype.locales = function(e) { return e = o(e), e.region ? this.get("locale_regions") : this.get("locale_languages"); - }, i.prototype.loremPicsum = function(e) { + }, r.prototype.loremPicsum = function(e) { e = o(e, { width: 500, height: 500, greyscale: !1, blurred: !1 }); var a = e.greyscale ? "g/" : "", n = e.blurred ? "/?blur" : "/?random"; return "https://picsum.photos/" + a + e.width + "/" + e.height + n; - }, i.prototype.address = function(e) { + }, r.prototype.address = function(e) { return e = o(e), this.natural({ min: 5, max: 2e3 }) + " " + this.street(e); - }, i.prototype.altitude = function(e) { + }, r.prototype.altitude = function(e) { return e = o(e, { fixed: 5, min: 0, max: 8848 }), this.floating({ min: e.min, max: e.max, fixed: e.fixed }); - }, i.prototype.areacode = function(e) { + }, r.prototype.areacode = function(e) { e = o(e, { parens: !0 }); var a = e.exampleNumber ? "555" : this.natural({ min: 2, max: 9 }).toString() + this.natural({ min: 0, max: 8 }).toString() + this.natural({ min: 0, max: 9 }).toString(); return e.parens ? "(" + a + ")" : a; - }, i.prototype.city = function() { + }, r.prototype.city = function() { return this.capitalize(this.word({ syllables: 3 })); - }, i.prototype.coordinates = function(e) { + }, r.prototype.coordinates = function(e) { return this.latitude(e) + ", " + this.longitude(e); - }, i.prototype.countries = function() { + }, r.prototype.countries = function() { return this.get("countries"); - }, i.prototype.country = function(e) { + }, r.prototype.country = function(e) { e = o(e); var a = this.pick(this.countries()); return e.raw ? a : e.full ? a.name : a.abbreviation; - }, i.prototype.depth = function(e) { + }, r.prototype.depth = function(e) { return e = o(e, { fixed: 5, min: -10994, max: 0 }), this.floating({ min: e.min, max: e.max, fixed: e.fixed }); - }, i.prototype.geohash = function(e) { + }, r.prototype.geohash = function(e) { return e = o(e, { length: 7 }), this.string({ length: e.length, pool: "0123456789bcdefghjkmnpqrstuvwxyz" }); - }, i.prototype.geojson = function(e) { + }, r.prototype.geojson = function(e) { return this.latitude(e) + ", " + this.longitude(e) + ", " + this.altitude(e); - }, i.prototype.latitude = function(e) { + }, r.prototype.latitude = function(e) { var [a, n, c] = ["ddm", "dms", "dd"]; e = o( e, @@ -805,7 +805,7 @@ var ie = { exports: {} }; default: return this.floating({ min: e.min, max: e.max, fixed: e.fixed }); } - }, i.prototype.longitude = function(e) { + }, r.prototype.longitude = function(e) { var [a, n, c] = ["ddm", "dms", "dd"]; e = o( e, @@ -821,7 +821,7 @@ var ie = { exports: {} }; default: return this.floating({ min: e.min, max: e.max, fixed: e.fixed }); } - }, i.prototype.phone = function(e) { + }, r.prototype.phone = function(e) { var a = this, n, c = function(_) { var F = []; return _.sections.forEach(function(z) { @@ -896,23 +896,23 @@ var ie = { exports: {} }; break; } return m; - }, i.prototype.postal = function() { + }, r.prototype.postal = function() { var e = this.character({ pool: "XVTSRPNKLMHJGECBA" }), a = e + this.natural({ max: 9 }) + this.character({ alpha: !0, casing: "upper" }), n = this.natural({ max: 9 }) + this.character({ alpha: !0, casing: "upper" }) + this.natural({ max: 9 }); return a + " " + n; - }, i.prototype.postcode = function() { + }, r.prototype.postcode = function() { var e = this.pick(this.get("postcodeAreas")).code, a = this.natural({ max: 9 }), n = this.bool() ? this.character({ alpha: !0, casing: "upper" }) : "", c = e + a + n, m = this.natural({ max: 9 }), C = this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }), P = m + C; return c + " " + P; - }, i.prototype.counties = function(e) { + }, r.prototype.counties = function(e) { return e = o(e, { country: "uk" }), this.get("counties")[e.country.toLowerCase()]; - }, i.prototype.county = function(e) { + }, r.prototype.county = function(e) { return this.pick(this.counties(e)).name; - }, i.prototype.provinces = function(e) { + }, r.prototype.provinces = function(e) { return e = o(e, { country: "ca" }), this.get("provinces")[e.country.toLowerCase()]; - }, i.prototype.province = function(e) { + }, r.prototype.province = function(e) { return e && e.full ? this.pick(this.provinces(e)).name : this.pick(this.provinces(e)).abbreviation; - }, i.prototype.state = function(e) { + }, r.prototype.state = function(e) { return e && e.full ? this.pick(this.states(e)).name : this.pick(this.states(e)).abbreviation; - }, i.prototype.states = function(e) { + }, r.prototype.states = function(e) { e = o(e, { country: "us", us_states_and_dc: !0 }); var a; switch (e.country.toLowerCase()) { @@ -929,7 +929,7 @@ var ie = { exports: {} }; break; } return a; - }, i.prototype.street = function(e) { + }, r.prototype.street = function(e) { e = o(e, { country: "us", syllables: 2 }); var a; switch (e.country.toLowerCase()) { @@ -941,16 +941,16 @@ var ie = { exports: {} }; break; } return a; - }, i.prototype.street_suffix = function(e) { + }, r.prototype.street_suffix = function(e) { return e = o(e, { country: "us" }), this.pick(this.street_suffixes(e)); - }, i.prototype.street_suffixes = function(e) { + }, r.prototype.street_suffixes = function(e) { return e = o(e, { country: "us" }), this.get("street_suffixes")[e.country.toLowerCase()]; - }, i.prototype.zip = function(e) { + }, r.prototype.zip = function(e) { var a = this.n(this.natural, 5, { max: 9 }); return e && e.plusfour === !0 && (a.push("-"), a = a.concat(this.n(this.natural, 4, { max: 9 }))), a.join(""); - }, i.prototype.ampm = function() { + }, r.prototype.ampm = function() { return this.bool() ? "am" : "pm"; - }, i.prototype.date = function(e) { + }, r.prototype.date = function(e) { var a, n; if (e && (e.min || e.max)) { e = o(e, { @@ -976,40 +976,40 @@ var ie = { exports: {} }; }), n = new Date(e.year, e.month, e.day, e.hour, e.minute, e.second, e.millisecond); } return e.american ? a = n.getMonth() + 1 + "/" + n.getDate() + "/" + n.getFullYear() : a = n.getDate() + "/" + (n.getMonth() + 1) + "/" + n.getFullYear(), e.string ? a : n; - }, i.prototype.hammertime = function(e) { + }, r.prototype.hammertime = function(e) { return this.date(e).getTime(); - }, i.prototype.hour = function(e) { + }, r.prototype.hour = function(e) { return e = o(e, { min: e && e.twentyfour ? 0 : 1, max: e && e.twentyfour ? 23 : 12 }), t(e.min < 0, "Chance: Min cannot be less than 0."), t(e.twentyfour && e.max > 23, "Chance: Max cannot be greater than 23 for twentyfour option."), t(!e.twentyfour && e.max > 12, "Chance: Max cannot be greater than 12."), t(e.min > e.max, "Chance: Min cannot be greater than Max."), this.natural({ min: e.min, max: e.max }); - }, i.prototype.millisecond = function() { + }, r.prototype.millisecond = function() { return this.natural({ max: 999 }); - }, i.prototype.minute = i.prototype.second = function(e) { + }, r.prototype.minute = r.prototype.second = function(e) { return e = o(e, { min: 0, max: 59 }), t(e.min < 0, "Chance: Min cannot be less than 0."), t(e.max > 59, "Chance: Max cannot be greater than 59."), t(e.min > e.max, "Chance: Min cannot be greater than Max."), this.natural({ min: e.min, max: e.max }); - }, i.prototype.month = function(e) { + }, r.prototype.month = function(e) { e = o(e, { min: 1, max: 12 }), t(e.min < 1, "Chance: Min cannot be less than 1."), t(e.max > 12, "Chance: Max cannot be greater than 12."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); var a = this.pick(this.months().slice(e.min - 1, e.max)); return e.raw ? a : a.name; - }, i.prototype.months = function() { + }, r.prototype.months = function() { return this.get("months"); - }, i.prototype.second = function() { + }, r.prototype.second = function() { return this.natural({ max: 59 }); - }, i.prototype.timestamp = function() { + }, r.prototype.timestamp = function() { return this.natural({ min: 1, max: parseInt((/* @__PURE__ */ new Date()).getTime() / 1e3, 10) }); - }, i.prototype.weekday = function(e) { + }, r.prototype.weekday = function(e) { e = o(e, { weekday_only: !1 }); var a = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"]; return e.weekday_only || (a.push("Saturday"), a.push("Sunday")), this.pickone(a); - }, i.prototype.year = function(e) { + }, r.prototype.year = function(e) { return e = o(e, { min: (/* @__PURE__ */ new Date()).getFullYear() }), e.max = typeof e.max < "u" ? e.max : e.min + 100, this.natural(e).toString(); - }, i.prototype.cc = function(e) { + }, r.prototype.cc = function(e) { e = o(e); var a, n, c; return a = e.type ? this.cc_type({ name: e.type, raw: !0 }) : this.cc_type({ raw: !0 }), n = a.prefix.split(""), c = a.length - a.prefix.length - 1, n = n.concat(this.n(this.integer, c, { min: 0, max: 9 })), n.push(this.luhn_calculate(n.join(""))), n.join(""); - }, i.prototype.cc_types = function() { + }, r.prototype.cc_types = function() { return this.get("cc_types"); - }, i.prototype.cc_type = function(e) { + }, r.prototype.cc_type = function(e) { e = o(e); var a = this.cc_types(), n = null; if (e.name) { @@ -1023,15 +1023,15 @@ var ie = { exports: {} }; } else n = this.pick(a); return e.raw ? n : n.name; - }, i.prototype.currency_types = function() { + }, r.prototype.currency_types = function() { return this.get("currency_types"); - }, i.prototype.currency = function() { + }, r.prototype.currency = function() { return this.pick(this.currency_types()); - }, i.prototype.timezones = function() { + }, r.prototype.timezones = function() { return this.get("timezones"); - }, i.prototype.timezone = function() { + }, r.prototype.timezone = function() { return this.pick(this.timezones()); - }, i.prototype.currency_pair = function(e) { + }, r.prototype.currency_pair = function(e) { var a = this.unique(this.currency, 2, { comparator: function(n, c) { return n.reduce(function(m, C) { @@ -1040,17 +1040,17 @@ var ie = { exports: {} }; } }); return e ? a[0].code + "/" + a[1].code : a; - }, i.prototype.dollar = function(e) { + }, r.prototype.dollar = function(e) { e = o(e, { max: 1e4, min: 0 }); var a = this.floating({ min: e.min, max: e.max, fixed: 2 }).toString(), n = a.split(".")[1]; return n === void 0 ? a += ".00" : n.length < 2 && (a = a + "0"), a < 0 ? "-$" + a.replace("-", "") : "$" + a; - }, i.prototype.euro = function(e) { + }, r.prototype.euro = function(e) { return Number(this.dollar(e).replace("$", "")).toLocaleString() + "\u20AC"; - }, i.prototype.exp = function(e) { + }, r.prototype.exp = function(e) { e = o(e); var a = {}; return a.year = this.exp_year(), a.year === (/* @__PURE__ */ new Date()).getFullYear().toString() ? a.month = this.exp_month({ future: !0 }) : a.month = this.exp_month(), e.raw ? a : a.month + "/" + a.year; - }, i.prototype.exp_month = function(e) { + }, r.prototype.exp_month = function(e) { e = o(e); var a, n, c = (/* @__PURE__ */ new Date()).getMonth() + 1; if (e.future && c !== 12) @@ -1060,21 +1060,21 @@ var ie = { exports: {} }; else a = this.month({ raw: !0 }).numeric; return a; - }, i.prototype.exp_year = function() { + }, r.prototype.exp_year = function() { var e = (/* @__PURE__ */ new Date()).getMonth() + 1, a = (/* @__PURE__ */ new Date()).getFullYear(); return this.year({ min: e === 12 ? a + 1 : a, max: a + 10 }); - }, i.prototype.vat = function(e) { + }, r.prototype.vat = function(e) { switch (e = o(e, { country: "it" }), e.country.toLowerCase()) { case "it": return this.it_vat(); } - }, i.prototype.iban = function() { + }, r.prototype.iban = function() { var e = "ABCDEFGHIJKLMNOPQRSTUVWXYZ", a = e + "0123456789", n = this.string({ length: 2, pool: e }) + this.pad(this.integer({ min: 0, max: 99 }), 2) + this.string({ length: 4, pool: a }) + this.pad(this.natural(), this.natural({ min: 6, max: 26 })); return n; - }, i.prototype.it_vat = function() { + }, r.prototype.it_vat = function() { var e = this.natural({ min: 1, max: 18e5 }); return e = this.pad(e, 7) + this.pad(this.pick(this.provinces({ country: "it" })).code, 3), e + this.luhn_calculate(e); - }, i.prototype.cf = function(e) { + }, r.prototype.cf = function(e) { e = e || {}; var a = e.gender ? e.gender : this.gender(), n = e.first ? e.first : this.first({ gender: a, nationality: "it" }), c = e.last ? e.last : this.last({ nationality: "it" }), m = e.birthday ? e.birthday : this.birthday(), C = e.city ? e.city : this.pickone(["A", "B", "C", "D", "E", "F", "G", "H", "I", "L", "M", "Z"]) + this.pad(this.natural({ max: 999 }), 3), P = [], f = function(y, _) { var F, z = []; @@ -1092,22 +1092,22 @@ var ie = { exports: {} }; return z[V % 26]; }; return P = P.concat(f(c, !0), f(n), A(m, a, this), C.toUpperCase().split("")).join(""), P += v(P.toUpperCase()), P.toUpperCase(); - }, i.prototype.pl_pesel = function() { + }, r.prototype.pl_pesel = function() { for (var e = this.natural({ min: 1, max: 9999999999 }), a = this.pad(e, 10).split(""), n = 0; n < a.length; n++) a[n] = parseInt(a[n]); var c = (1 * a[0] + 3 * a[1] + 7 * a[2] + 9 * a[3] + 1 * a[4] + 3 * a[5] + 7 * a[6] + 9 * a[7] + 1 * a[8] + 3 * a[9]) % 10; return c !== 0 && (c = 10 - c), a.join("") + c; - }, i.prototype.pl_nip = function() { + }, r.prototype.pl_nip = function() { for (var e = this.natural({ min: 1, max: 999999999 }), a = this.pad(e, 9).split(""), n = 0; n < a.length; n++) a[n] = parseInt(a[n]); var c = (6 * a[0] + 5 * a[1] + 7 * a[2] + 2 * a[3] + 3 * a[4] + 4 * a[5] + 5 * a[6] + 6 * a[7] + 7 * a[8]) % 11; return c === 10 ? this.pl_nip() : a.join("") + c; - }, i.prototype.pl_regon = function() { + }, r.prototype.pl_regon = function() { for (var e = this.natural({ min: 1, max: 99999999 }), a = this.pad(e, 8).split(""), n = 0; n < a.length; n++) a[n] = parseInt(a[n]); var c = (8 * a[0] + 9 * a[1] + 2 * a[2] + 3 * a[3] + 4 * a[4] + 5 * a[5] + 6 * a[6] + 7 * a[7]) % 11; return c === 10 && (c = 0), a.join("") + c; - }, i.prototype.note = function(e) { + }, r.prototype.note = function(e) { e = o(e, { notes: "flatKey" }); var a = { naturals: ["C", "D", "E", "F", "G", "A", "B"], @@ -1115,10 +1115,10 @@ var ie = { exports: {} }; sharps: ["C\u266F", "D\u266F", "F\u266F", "G\u266F", "A\u266F"] }; return a.all = a.naturals.concat(a.flats.concat(a.sharps)), a.flatKey = a.naturals.concat(a.flats), a.sharpKey = a.naturals.concat(a.sharps), this.pickone(a[e.notes]); - }, i.prototype.midi_note = function(e) { + }, r.prototype.midi_note = function(e) { var a = 0, n = 127; return e = o(e, { min: a, max: n }), this.integer({ min: e.min, max: e.max }); - }, i.prototype.chord_quality = function(e) { + }, r.prototype.chord_quality = function(e) { e = o(e, { jazz: !0 }); var a = ["maj", "min", "aug", "dim"]; return e.jazz && (a = [ @@ -1129,12 +1129,12 @@ var ie = { exports: {} }; "dim", "\xF8" ]), this.pickone(a); - }, i.prototype.chord = function(e) { + }, r.prototype.chord = function(e) { return e = o(e), this.note(e) + this.chord_quality(e); - }, i.prototype.tempo = function(e) { + }, r.prototype.tempo = function(e) { var a = 40, n = 320; return e = o(e, { min: a, max: n }), this.integer({ min: e.min, max: e.max }); - }, i.prototype.coin = function() { + }, r.prototype.coin = function() { return this.bool() ? "heads" : "tails"; }; function S(e) { @@ -1142,7 +1142,7 @@ var ie = { exports: {} }; return this.natural(e); }; } - i.prototype.d4 = S({ min: 1, max: 4 }), i.prototype.d6 = S({ min: 1, max: 6 }), i.prototype.d8 = S({ min: 1, max: 8 }), i.prototype.d10 = S({ min: 1, max: 10 }), i.prototype.d12 = S({ min: 1, max: 12 }), i.prototype.d20 = S({ min: 1, max: 20 }), i.prototype.d30 = S({ min: 1, max: 30 }), i.prototype.d100 = S({ min: 1, max: 100 }), i.prototype.rpg = function(e, a) { + r.prototype.d4 = S({ min: 1, max: 4 }), r.prototype.d6 = S({ min: 1, max: 6 }), r.prototype.d8 = S({ min: 1, max: 8 }), r.prototype.d10 = S({ min: 1, max: 10 }), r.prototype.d12 = S({ min: 1, max: 12 }), r.prototype.d20 = S({ min: 1, max: 20 }), r.prototype.d30 = S({ min: 1, max: 30 }), r.prototype.d100 = S({ min: 1, max: 100 }), r.prototype.rpg = function(e, a) { if (a = o(a), e) { var n = e.toLowerCase().split("d"), c = []; if (n.length !== 2 || !parseInt(n[0], 10) || !parseInt(n[1], 10)) @@ -1154,24 +1154,24 @@ var ie = { exports: {} }; }) : c; } else throw new RangeError("Chance: A type of die roll must be included"); - }, i.prototype.guid = function(e) { + }, r.prototype.guid = function(e) { e = o(e, { version: 5 }); var a = "abcdef1234567890", n = "ab89", c = this.string({ pool: a, length: 8 }) + "-" + this.string({ pool: a, length: 4 }) + "-" + // The Version e.version + this.string({ pool: a, length: 3 }) + "-" + // The Variant this.string({ pool: n, length: 1 }) + this.string({ pool: a, length: 3 }) + "-" + this.string({ pool: a, length: 12 }); return c; - }, i.prototype.hash = function(e) { + }, r.prototype.hash = function(e) { e = o(e, { length: 40, casing: "lower" }); var a = e.casing === "upper" ? g.toUpperCase() : g; return this.string({ pool: a, length: e.length }); - }, i.prototype.luhn_check = function(e) { + }, r.prototype.luhn_check = function(e) { var a = e.toString(), n = +a.substring(a.length - 1); return n === this.luhn_calculate(+a.substring(0, a.length - 1)); - }, i.prototype.luhn_calculate = function(e) { + }, r.prototype.luhn_calculate = function(e) { for (var a = e.toString().split("").reverse(), n = 0, c, m = 0, C = a.length; C > m; ++m) c = +a[m], m % 2 === 0 && (c *= 2, c > 9 && (c -= 9)), n += c; return n * 9 % 10; - }, i.prototype.md5 = function(e) { + }, r.prototype.md5 = function(e) { var a = { str: "", key: null, raw: !1 }; if (!e) a.str = this.string(), e = {}; @@ -1186,7 +1186,7 @@ var ie = { exports: {} }; if (a = o(e, a), !a.str) throw new Error("A parameter is required to return an md5 hash."); return this.bimd5.md5(a.str, a.key, a.raw); - }, i.prototype.file = function(e) { + }, r.prototype.file = function(e) { var a = e || {}, n = "fileExtension", c = Object.keys(this.get("fileExtension")), m, C; if (m = this.word({ length: a.length }), a.extension) return C = a.extension, m + "." + C; @@ -1206,7 +1206,7 @@ var ie = { exports: {} }; throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'"); } return C = this.pickone(this.get(n)[this.pickone(c)]), m + "." + C; - }, i.prototype.fileWithContent = function(e) { + }, r.prototype.fileWithContent = function(e) { var a = e || {}, n = "fileName" in a ? a.fileName : this.file().split(".")[0]; if (n += "." + ("fileExtension" in a ? a.fileExtension : this.file().split(".")[1]), typeof a.fileSize != "number") throw new Error("File size must be an integer"); @@ -7045,13 +7045,13 @@ var ie = { exports: {} }; var n = Array.isArray(e), c = a || (n ? new Array(e.length) : {}); return n ? O(e, c) : k(e, c), c; } - i.prototype.get = function(e) { + r.prototype.get = function(e) { return R(L[e]); - }, i.prototype.mac_address = function(e) { + }, r.prototype.mac_address = function(e) { e = o(e), e.separator || (e.separator = e.networkVersion ? "." : ":"); var a = "ABCDEF1234567890", n = ""; return e.networkVersion ? n = this.n(this.string, 3, { pool: a, length: 4 }).join(e.separator) : n = this.n(this.string, 6, { pool: a, length: 2 }).join(e.separator), n; - }, i.prototype.normal = function(e) { + }, r.prototype.normal = function(e) { if (e = o(e, { mean: 0, dev: 1, pool: [] }), t( e.pool.constructor !== Array, "Chance: The pool option must be a valid array." @@ -7068,7 +7068,7 @@ var ie = { exports: {} }; n = this.random() * 2 - 1, c = this.random() * 2 - 1, a = n * n + c * c; while (a >= 1); return m = n * Math.sqrt(-2 * Math.log(a) / a), P * m + C; - }, i.prototype.normal_pool = function(e) { + }, r.prototype.normal_pool = function(e) { var a = 0; do { var n = Math.round(this.normal({ mean: e.mean, dev: e.dev })); @@ -7077,7 +7077,7 @@ var ie = { exports: {} }; a++; } while (a < 100); throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust."); - }, i.prototype.radio = function(e) { + }, r.prototype.radio = function(e) { e = o(e, { side: "?" }); var a = ""; switch (e.side.toLowerCase()) { @@ -7094,20 +7094,20 @@ var ie = { exports: {} }; break; } return a + this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }); - }, i.prototype.set = function(e, a) { + }, r.prototype.set = function(e, a) { typeof e == "string" ? L[e] = a : L = R(e, L); - }, i.prototype.tv = function(e) { + }, r.prototype.tv = function(e) { return this.radio(e); - }, i.prototype.cnpj = function() { + }, r.prototype.cnpj = function() { var e = this.n(this.natural, 8, { max: 9 }), a = 2 + e[7] * 6 + e[6] * 7 + e[5] * 8 + e[4] * 9 + e[3] * 2 + e[2] * 3 + e[1] * 4 + e[0] * 5; a = 11 - a % 11, a >= 10 && (a = 0); var n = a * 2 + 3 + e[7] * 7 + e[6] * 8 + e[5] * 9 + e[4] * 2 + e[3] * 3 + e[2] * 4 + e[1] * 5 + e[0] * 6; return n = 11 - n % 11, n >= 10 && (n = 0), "" + e[0] + e[1] + "." + e[2] + e[3] + e[4] + "." + e[5] + e[6] + e[7] + "/0001-" + a + n; - }, i.prototype.emotion = function() { + }, r.prototype.emotion = function() { return this.pick(this.get("emotions")); - }, i.prototype.mersenne_twister = function(e) { + }, r.prototype.mersenne_twister = function(e) { return new H(e); - }, i.prototype.blueimp_md5 = function() { + }, r.prototype.blueimp_md5 = function() { return new G(); }; var H = function(e) { @@ -7205,26 +7205,26 @@ var ie = { exports: {} }; return this.rstr2hex(this.raw_hmac_md5(e, a)); }, G.prototype.md5 = function(e, a, n) { return a ? n ? this.raw_hmac_md5(a, e) : this.hex_hmac_md5(a, e) : n ? this.raw_md5(e) : this.hex_md5(e); - }, d.exports && (h = d.exports = i), h.Chance = i, typeof importScripts < "u" && (chance = new i(), self.Chance = i), typeof window == "object" && typeof window.document == "object" && (window.Chance = i, window.chance = new i()); + }, d.exports && (h = d.exports = r), h.Chance = r, typeof importScripts < "u" && (chance = new r(), self.Chance = r), typeof window == "object" && typeof window.document == "object" && (window.Chance = r, window.chance = new r()); })(); })(ie, ie.exports); var pe = ie.exports; const ge = /* @__PURE__ */ be(pe); -function se(d, h, x, w) { +function se(d, h, N, w) { var I = new ge(te); - x == null && console.log(); - let N = x.toUpperCase(), b = d.toUpperCase(), g = h.toUpperCase(); + N == null && console.log(); + let x = N.toUpperCase(), b = d.toUpperCase(), g = h.toUpperCase(); if (w != null && 0 < w.length) { - let r = 0, t = w.length; + let i = 0, t = w.length; var M = "'"; - (N.startsWith("INTEGER") || N.startsWith("NUMBER") || N.startsWith("DATE")) && (M = ""); - let s = w[Math.floor(X() * (t - r)) + r]; + (x.startsWith("INTEGER") || x.startsWith("NUMBER") || x.startsWith("DATE")) && (M = ""); + let s = w[Math.floor(X() * (t - i)) + i]; return s.toLowerCase && s.toLowerCase() == "null" && (M = ""), s.replaceAll && (s = s.replaceAll("'", "''")), M + s + M; } if (g == "NAME" && 0 <= b.indexOf("DEPARTMENT")) { var B = ["Sales", "Finance", "Delivery", "Manufacturing"]; - let r = 0, t = B.length; - return "'" + B[Math.floor(X() * (t - r)) + r] + "'"; + let i = 0, t = B.length; + return "'" + B[Math.floor(X() * (t - i)) + i] + "'"; } if (I[g.toLowerCase()] != null && g.indexOf("NAME") < 0) return "'" + I[g.toLowerCase()]() + "'"; @@ -7241,17 +7241,17 @@ function se(d, h, x, w) { if (g == "DESCRIPTION") return "'" + I.paragraph({ sentences: 2 }) + "'"; if (g == "JOB") { - var i = ["Engineer", "Consultant", "Architect", "Manager", "Analyst", "Specialist", "Evangelist", "Salesman"]; - let r = 0, t = i.length; - return "'" + i[Math.floor(X() * (t - r)) + r] + "'"; + var r = ["Engineer", "Consultant", "Architect", "Manager", "Analyst", "Specialist", "Evangelist", "Salesman"]; + let i = 0, t = r.length; + return "'" + r[Math.floor(X() * (t - i)) + i] + "'"; } - if (N.startsWith("INTEGER") || N.startsWith("NUMBER")) { - let r = 0, t = 100; - return Math.floor(X() * (t - r)) + r; + if (x.startsWith("INTEGER") || x.startsWith("NUMBER")) { + let i = 0, t = 100; + return Math.floor(X() * (t - i)) + i; } - if (N.startsWith("DATE") || N.startsWith("TIMESTAMP")) { - let r = 0, t = 100; - var o = Math.floor(X() * (t - r)) + r; + if (x.startsWith("DATE") || x.startsWith("TIMESTAMP")) { + let i = 0, t = 100; + var o = Math.floor(X() * (t - i)) + i; return "sysdate-" + o; } return "'N/A'"; @@ -7265,10 +7265,10 @@ function X() { return d - Math.floor(d); } var $ = function() { - function d(h, x) { - for (var w = [], I = "", N = 0; N < h.length; N++) { - for (var b = h.charAt(N), g = w.length, M = 0; M < x.length; M++) { - var B = x.charAt(M); + function d(h, N) { + for (var w = [], I = "", x = 0; x < h.length; x++) { + for (var b = h.charAt(x), g = w.length, M = 0; M < N.length; M++) { + var B = N.charAt(M); if (b == B) { 0 < I.length && w.push(I), w.push(b), I = ""; continue; @@ -7280,8 +7280,8 @@ var $ = function() { } return d; }(), Z = function() { - function d(I, N, b, g, M, B) { - this.type = g, this.value = I, this.begin = N, this.end = b, this.line = M, this.col = B, this.toString = function() { + function d(I, x, b, g, M, B) { + this.type = g, this.value = I, this.begin = x, this.end = b, this.line = M, this.col = B, this.toString = function() { return "{type:" + g + ",value:" + I + "}"; }, this.isStandardLiteral = function() { if (this.value.length < 2 || !(this.value.charAt(0) == "'" || this.value.charAt(0) == "n" || this.value.charAt(0) == "N")) @@ -7312,23 +7312,23 @@ var $ = function() { o = o.substring(1, o.length - 1); else return !1; - return i(o.charAt(0)) == o.charAt(o.length - 1); + return r(o.charAt(0)) == o.charAt(o.length - 1); }; - function i(o) { + function r(o) { return o == "<" ? ">" : o == "[" ? "]" : o == "{" ? "}" : o == "(" ? ")" : o; } } - function h(I, N, b) { + function h(I, x, b) { for (var g = [], M = `(){}[]^-|!*+.><='",;:%@?/\\#~` + b, B = ` -\r `, i = $( +\r `, r = $( I, //".*-+/|><=()\'\", \n\r\t" M + B - ), o = 0, r = 0, t = 0, s = 0; s < i.length; s++) { - var l = i[s], u = null; + ), o = 0, i = 0, t = 0, s = 0; s < r.length; s++) { + var l = r[s], u = null; if (g.length > 0 && (u = g[g.length - 1]), l == ` -` ? (r++, t = 0) : s > 0 && i[s - 1] !== ` -` ? t = t + i[s - 1].length : t = 0, o += l.length, u != null && u.type == "comment" && (u.value.lastIndexOf("*/") != u.value.length - 2 || u.value == "/*/")) { +` ? (i++, t = 0) : s > 0 && r[s - 1] !== ` +` ? t = t + r[s - 1].length : t = 0, o += l.length, u != null && u.type == "comment" && (u.value.lastIndexOf("*/") != u.value.length - 2 || u.value == "/*/")) { l == "*" || l == "/" ? u.value = u.value + l : u.value = "/* ... ", u.end = o, u != null && u.type == "comment" && u.value.lastIndexOf("*/") == u.value.length - 2 && u.value != "/*/" && (u.value = I.substring(u.begin, u.end)); continue; } @@ -7362,12 +7362,12 @@ var $ = function() { } if ((l.toUpperCase() == "REM" || l.toUpperCase() == "REMA" || l.toUpperCase() == "REMAR" || l.toUpperCase() == "REMARK" || l.toUpperCase() == "PRO" || l.toUpperCase() == "PROM" || l.toUpperCase() == "PROMP" || l.toUpperCase() == "PROMPT") && (u == null || u.value == ` ` || u.value == "\r")) { - g.push(new d(l, o - l.length, -9, "line-comment", r, t)); + g.push(new d(l, o - l.length, -9, "line-comment", i, t)); continue; } if (l.toUpperCase() == "SODA" && (u == null || u.value == ` ` || u.value == "\r")) { - g.push(new d(l, o - l.length, -9, "dbtools-command", r, t)); + g.push(new d(l, o - l.length, -9, "dbtools-command", i, t)); continue; } if (u != null && u.type == "identifier" && u.end == -11 && u.value.indexOf("@") == 0 && !(l == ` @@ -7377,35 +7377,35 @@ var $ = function() { } if (u != null && u.type == "identifier" && u.end == -11 && u.value.indexOf("@") == 0 && (l == ` ` || l == "\r")) { - u.end = o - 1, g.push(new d(l, o - 1, o, "ws", r, t)); + u.end = o - 1, g.push(new d(l, o - 1, o, "ws", i, t)); continue; } - if (N && l == "'") { - u != null && (u.value.toUpperCase() == "Q" || u.value.toUpperCase() == "N" || u.value.toUpperCase() == "U" || u.value.toUpperCase() == "NQ") ? (u.value += l, u.type = "quoted-string") : g.push(new d(l, o - 1, -10, "quoted-string", r, t)); + if (x && l == "'") { + u != null && (u.value.toUpperCase() == "Q" || u.value.toUpperCase() == "N" || u.value.toUpperCase() == "U" || u.value.toUpperCase() == "NQ") ? (u.value += l, u.type = "quoted-string") : g.push(new d(l, o - 1, -10, "quoted-string", i, t)); continue; } - if (N && l == '"') { - g.push(new d(l, o - 1, -11, "dquoted-string", r, t)); + if (x && l == '"') { + g.push(new d(l, o - 1, -11, "dquoted-string", i, t)); continue; } if (l == "`" && 0 <= M.indexOf("`")) { - g.push(new d(l, o - 1, -11, "bquoted-string", r, t)); + g.push(new d(l, o - 1, -11, "bquoted-string", i, t)); continue; } if (l.length == 1 && 0 <= M.indexOf(l)) { - g.push(new d(l, o - 1, o, "operation", r, t)); + g.push(new d(l, o - 1, o, "operation", i, t)); continue; } if (l.length == 1 && 0 <= B.indexOf(l)) { - g.push(new d(l, o - 1, o, "ws", r, t)); + g.push(new d(l, o - 1, o, "ws", i, t)); continue; } if ("0" <= l.charAt(0) && l.charAt(0) <= "9") { - x(l, g, o - l.length, r) || (l.charAt(l.length - 1) == "K" || l.charAt(l.length - 1) == "k" || l.charAt(l.length - 1) == "M" || l.charAt(l.length - 1) == "m" || l.charAt(l.length - 1) == "G" || l.charAt(l.length - 1) == "g" || l.charAt(l.length - 1) == "T" || l.charAt(l.length - 1) == "t" || l.charAt(l.length - 1) == "P" || l.charAt(l.length - 1) == "p" || l.charAt(l.length - 1) == "E" || l.charAt(l.length - 1) == "e" ? (g.push(new d(l.substring(0, l.length - 1), o - l.length, o - 1, "constant.numeric", r, t)), g.push(new d(l.substring(l.length - 1), o - 1, o, "constant.numeric", r, t))) : g.push(new d(l, o - l.length, o, "constant.numeric", r, t))); + N(l, g, o - l.length, i) || (l.charAt(l.length - 1) == "K" || l.charAt(l.length - 1) == "k" || l.charAt(l.length - 1) == "M" || l.charAt(l.length - 1) == "m" || l.charAt(l.length - 1) == "G" || l.charAt(l.length - 1) == "g" || l.charAt(l.length - 1) == "T" || l.charAt(l.length - 1) == "t" || l.charAt(l.length - 1) == "P" || l.charAt(l.length - 1) == "p" || l.charAt(l.length - 1) == "E" || l.charAt(l.length - 1) == "e" ? (g.push(new d(l.substring(0, l.length - 1), o - l.length, o - 1, "constant.numeric", i, t)), g.push(new d(l.substring(l.length - 1), o - 1, o, "constant.numeric", i, t))) : g.push(new d(l, o - l.length, o, "constant.numeric", i, t))); continue; } var p = "identifier"; - s + 1 < i.length && i[s + 1], g.push(new d(l, o - l.length, o, p, r, t)); + s + 1 < r.length && r[s + 1], g.push(new d(l, o - l.length, o, p, i, t)); } } } @@ -7415,35 +7415,35 @@ var $ = function() { } return g; } - function x(I, N, b, g) { + function N(I, x, b, g) { if (0 > I.indexOf("e") && 0 > I.indexOf("f") && 0 > I.indexOf("d")) return !1; 0 <= I.indexOf("e"), 0 <= I.indexOf("e"), !(0 <= I.indexOf("e")) && 0 <= I.indexOf("f"); for (var M = $(I, "efd"), B = 0; B < M.length; B++) { - var i = M[B]; - b += i.length, "0" <= i.charAt(0) && i.charAt(0) <= "9" ? N.push(new d(i, b - i.length, b, "constant.numeric", g)) : N.push(new d(i, b - i.length, b, "identifier", g)); + var r = M[B]; + b += r.length, "0" <= r.charAt(0) && r.charAt(0) <= "9" ? x.push(new d(r, b - r.length, b, "constant.numeric", g)) : x.push(new d(r, b - r.length, b, "identifier", g)); } return !0; } - function w(I, N, b, g) { - for (var M = [], B = h(I, b, g), i = null, o = 0; o < B.length; o++) { - var r = B[o]; - if (r.type == "quoted-string") { - if (i != null && i.type == "quoted-string") { - i.value = i.value + r.value, i.end = r.end; + function w(I, x, b, g) { + for (var M = [], B = h(I, b, g), r = null, o = 0; o < B.length; o++) { + var i = B[o]; + if (i.type == "quoted-string") { + if (r != null && r.type == "quoted-string") { + r.value = r.value + i.value, r.end = i.end; continue; } - if (i != null && i.type == "identifier" && i.value.toUpperCase() == "N" && i.end == r.begin) { - i.begin = r.begin, i.end = r.end, i.type = r.type, i.value = r.value; + if (r != null && r.type == "identifier" && r.value.toUpperCase() == "N" && r.end == i.begin) { + r.begin = i.begin, r.end = i.end, r.type = i.type, r.value = i.value; continue; } } - if (r.value.indexOf("@") == 0 && (r.end = r.begin + r.value.length), r.value == "#" && i != null && i.type == "identifier") { - i.end += 1, i.value += "#"; + if (i.value.indexOf("@") == 0 && (i.end = i.begin + i.value.length), i.value == "#" && r != null && r.type == "identifier") { + r.end += 1, r.value += "#"; continue; } - if ((r.type === "identifier" || r.type === "constant.numeric") && i !== null && i.value[i.value.length - 1] === "#" && i.type === "identifier") { - i.end += r.value.length, i.value += r.value; + if ((i.type === "identifier" || i.type === "constant.numeric") && r !== null && r.value[r.value.length - 1] === "#" && r.type === "identifier") { + r.end += i.value.length, r.value += i.value; continue; } /*17607445: can just drop preprocessor directives @@ -7452,7 +7452,7 @@ var $ = function() { || token.value.equals("$ELSE") || token.value.equals("$THEN") ||*/ - r.value.indexOf("$$") == 0 && (r.value = "$$VAR"), (N || r.type != "ws" && r.type != "comment" && r.type != "line-comment") && M.push(r), i = r; + i.value.indexOf("$$") == 0 && (i.value = "$$VAR"), (x || i.type != "ws" && i.type != "comment" && i.type != "line-comment") && M.push(i), r = i; } return M; } @@ -7570,98 +7570,100 @@ function ve(d) { WHERE: "Y", WITH: "Y" }; - let x = d.toUpperCase(); - return h[x] != null ? "the_" + d : d; + let N = d.toUpperCase(); + return h[N] != null ? "the_" + d : d; } let ce = function() { - let d, h = " ", x = ["string", "varchar2", "varchar", "vc", "char"]; + let d, h = " ", N = ["string", "varchar2", "varchar", "vc", "char"]; var w = ["yn", "boolean", "bool"]; - function I(M, B, i) { - this.line = M, this.parent = i, this.children = [], i != null && i.children.push(this), this.fks = null, this.findChild = function(r) { + function I(M, B, r) { + this.line = M, this.parent = r, this.children = [], r != null && r.children.push(this), this.fks = null, this.findChild = function(i) { for (var t = 0; t < this.children.length; t++) - if (this.children[t].parseName() == r) + if (this.children[t].parseName() == i) return this.children[t]; return null; }, this.descendants = function() { - var r = []; - r.push(this); + var i = []; + i.push(this); for (var t = 0; t < this.children.length; t++) - r = r.concat(this.children[t].descendants()); - return r; + i = i.concat(this.children[t].descendants()); + return i; }, this.maxChildNameLen = function() { - var r = 2, t = this.trimmedContent().toUpperCase(); - if ((d.optionEQvalue("rowkey", !0) || 0 < t.indexOf("/ROWKEY")) && (r = 7), (d.optionEQvalue("Row Version Number", "yes") || 0 < t.indexOf("/ROWVERSION")) && (r = 11), d.optionEQvalue("Audit Columns", "yes") || 0 < t.indexOf("/AUDITCOLS") || 0 < t.indexOf("/AUDIT COL")) { + var i = 2, t = this.trimmedContent().toUpperCase(); + if ((d.optionEQvalue("rowkey", !0) || 0 < t.indexOf("/ROWKEY")) && (i = 7), (d.optionEQvalue("Row Version Number", "yes") || 0 < t.indexOf("/ROWVERSION")) && (i = 11), d.optionEQvalue("Audit Columns", "yes") || 0 < t.indexOf("/AUDITCOLS") || 0 < t.indexOf("/AUDIT COL")) { let T = d.getOptionValue("createdcol").length; - r < T && (r = T), T = d.getOptionValue("createdbycol").length, r < T && (r = T), T = d.getOptionValue("updatedcol").length, r < T && (r = T), T = d.getOptionValue("updatedbycol").length, r < T && (r = T); + i < T && (i = T), T = d.getOptionValue("createdbycol").length, i < T && (i = T), T = d.getOptionValue("updatedcol").length, i < T && (i = T), T = d.getOptionValue("updatedbycol").length, i < T && (i = T); } if (this.fks != null) for (var s in this.fks) { var l = s.length; let T = d.find(s); - T != null && T.isMany2One() && (l += 3), r < l && (r = l); + T != null && T.isMany2One() && (l += 3), i < l && (i = l); } for (var u = 0; u < this.children.length; u++) { let T = this.children[u]; if (0 < T.children.length) continue; let S = T.parseName().length; - 0 < T.indexOf("file") && (S += 9), r < S && (r = S); + 0 < T.indexOf("file") && (S += 9), i < S && (i = S); } var p = d.additionalColumns(); for (let T in p) { let S = T.length; - r < S && (r = S); + i < S && (i = S); } - return r; + return i; }; - function o(r) { - let t = r; + function o(i) { + let t = i; return t = t.replace(/ timestamp with local time zone/gi, " tswltz"), t = t.replace(/ timestamp with time zone/gi, " tswtz"), t = t.replace(/ timestamp/gi, " ts"), t; } - this.content = o(B), this.comment, this.indexOf = function(r, t) { + this.content = o(B), this.comment, this.indexOf = function(i, t) { for (let s = 0; s < this.src.length; s++) { - if (t && this.src[s].value.toLowerCase().indexOf(r.toLowerCase()) == 0) + if (t && this.src[s].value.toLowerCase().indexOf(i.toLowerCase()) == 0) return s; - if (r.toLowerCase() == this.src[s].value.toLowerCase()) + if (i.toLowerCase() == this.src[s].value.toLowerCase()) return s; } return -1; + }, this.occursBeforeOption = function(i, t) { + return 0 < this.indexOf(i, t) && (this.indexOf("/") < 0 || this.indexOf(i, t) < this.indexOf("/")); }, this.trimmedContent = function() { - var r = this.content.trim(), t = r.indexOf("["), s = r.indexOf("]"); - return this.comment == null && 0 < t && (this.comment = r.substr(t + 1, s - t - 1)), 0 < t && (r = r.substr(0, t) + r.substr(s + 2)), t = r.indexOf("--"), this.comment == null && 0 < t && (this.comment = r.substr(t + 2)), 0 < t && (r = r.substr(0, t)), r.trim(); + var i = this.content.trim(), t = i.indexOf("["), s = i.indexOf("]"); + return this.comment == null && 0 < t && (this.comment = i.substr(t + 1, s - t - 1)), 0 < t && (i = i.substr(0, t) + i.substr(s + 2)), t = i.indexOf("--"), this.comment == null && 0 < t && (this.comment = i.substr(t + 2)), 0 < t && (i = i.substr(0, t)), i.trim(); }, this.src = Z(this.content, !1, !0, ""), this.parseName = function() { - let r = this.trimmedContent(); - r = r.replace(/\t/, h); - const t = r.indexOf('"'), s = r.indexOf('"', t + 1); + let i = this.trimmedContent(); + i = i.replace(/\t/, h); + const t = i.indexOf('"'), s = i.indexOf('"', t + 1); if (0 <= t && t < s) - return r.substring(t, s + 1); - (r.indexOf(">") == 0 || r.indexOf("<") == 0) && (r = r.substring(1).trim()); - const l = r.toLowerCase(); + return i.substring(t, s + 1); + (i.indexOf(">") == 0 || i.indexOf("<") == 0) && (i = i.substring(1).trim()); + const l = i.toLowerCase(); if (l.indexOf("view ") == 0) { - var u = r.split(" "); + var u = i.split(" "); return u[1]; } - r = b(r, " d"); - var p = r.indexOf("/"); - 0 < p && (r = r.substring(0, p)), r = r.trim(), r = b(r, " integer"), r = b(r, " number"), r = b(r, " int"), r = b(r, " num"), r = b(r, " clob"), r = b(r, " blob"), r = b(r, " json"), r = b(r, " file"), r = b(r, " date"), r = b(r, " tstz"), r = b(r, " tswtz"), r = b(r, " tswltz"), r = b(r, " ts"), r = r.replace(/ vc\d+k/g, ""), r = r.replace(/ vc\(\d+\)/g, ""), r = r.replace(/ vc\d+/g, ""); - for (let S in x) { - let L = l.indexOf(" " + x[S]); + i = b(i, " d"); + var p = i.indexOf("/"); + 0 < p && (i = i.substring(0, p)), i = i.trim(), i = b(i, " integer"), i = b(i, " number"), i = b(i, " int"), i = b(i, " num"), i = b(i, " clob"), i = b(i, " blob"), i = b(i, " json"), i = b(i, " file"), i = b(i, " date"), i = b(i, " tstz"), i = b(i, " tswtz"), i = b(i, " tswltz"), i = b(i, " ts"), i = i.replace(/ vc\d+k/g, ""), i = i.replace(/ vc\(\d+\)/g, ""), i = i.replace(/ vc\d+/g, ""); + for (let S in N) { + let L = l.indexOf(" " + N[S]); if (0 < L) { - r = r.substring(0, L) + r.substring(L + x[S].length + 1); + i = i.substring(0, L) + i.substring(L + N[S].length + 1); break; } } for (let S in w) { let L = l.indexOf(" " + w[S]); if (0 < L) { - r = r.substring(0, L) + r.substring(L + w[S].length + 1); + i = i.substring(0, L) + i.substring(L + w[S].length + 1); break; } } - r = r.replace(/ num(ber)?\(\d+\)/g, ""), r = r.replace(/ num(ber)?\(\d+,\d+\)/g, ""), r = r.replace(/ num(ber)?\d+/g, ""), r = r.trim(), this.children.length == 0 && this.parent != null && this.parent.colprefix != null && (r = this.parent.colprefix + "_" + r); - var T = r.substr(0, 1); - return T >= "0" && T <= "9" && (r = "x" + r), ve(he(r)); - }, this.parseType = function(r) { + i = i.replace(/ num(ber)?\(\d+\)/g, ""), i = i.replace(/ num(ber)?\(\d+,\d+\)/g, ""), i = i.replace(/ num(ber)?\d+/g, ""), i = i.trim(), this.children.length == 0 && this.parent != null && this.parent.colprefix != null && (i = this.parent.colprefix + "_" + i); + var T = i.substr(0, 1); + return T >= "0" && T <= "9" && (i = "x" + i), ve(he(i)); + }, this.parseType = function(i) { if (this.children != null && 0 < this.children.length) return "table"; const t = this.src; @@ -7680,21 +7682,21 @@ let ce = function() { E == "" && this.indexOf("(") == u + 1 && (E = t[u + 2].value), E != "" && (l = parseInt(E)), t[u].value.endsWith("k") && (l < 32 ? l = l * 1024 : l = l * 1024 - 1); } var p = "varchar2(" + l + s + ")"; - r == "plsql" && (p = "varchar2"), t[0].value.endsWith("_id") && u < 0 && this.indexOf("date") < 0 && (p = "number"), t[1] && t[1].value == "id" && (p = "number"), t[0].value == "quantity" && (p = "number"), t[0].value.endsWith("_number") && (p = "number"), t[0].value.endsWith("id") && u < 0 && this.indexOf("/") + 1 == this.indexOf("pk") && (p = "number"), 0 < this.indexOf("int", !0) && (p = "integer"), 0 < u && (p = "varchar2(" + l + s + ")", r == "plsql" && (p = "varchar2")); - const T = K(i.parseName(), "_", this.parseName()); + i == "plsql" && (p = "varchar2"), t[0].value.endsWith("_id") && u < 0 && this.indexOf("date") < 0 && (p = "number"), t[1] && t[1].value == "id" && (p = "number"), t[0].value == "quantity" && (p = "number"), t[0].value.endsWith("_number") && (p = "number"), t[0].value.endsWith("id") && u < 0 && this.indexOf("/") + 1 == this.indexOf("pk") && (p = "number"), this.occursBeforeOption("int", !0) && (p = "integer"), 0 < u && (p = "varchar2(" + l + s + ")", i == "plsql" && (p = "varchar2")); + const T = K(r.parseName(), "_", this.parseName()); (t[0].value.endsWith("_yn") || t[0].value.startsWith("is_")) && (p = "varchar2(1 char) constraint " + K(d.objPrefix(), T) + ` -`, p += h + h + " ".repeat(i.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"); +`, p += h + h + " ".repeat(r.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"); for (let E in w) if (0 < this.indexOf(w[E])) { p = "varchar2(1 char) constraint " + K(d.objPrefix(), T) + ` -`, p += h + h + " ".repeat(i.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"; +`, p += h + h + " ".repeat(r.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"; break; } this.indexOf("phone_number") == 0 && (p = "number"); let S = this.indexOf("num", !0); 0 < S && (p = "number"); let L = this.indexOf(")"); - if (0 < S && 0 < L && (p += this.content.toLowerCase().substring(t[S + 1].begin, t[L].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value.startsWith("created") || t[0].value.startsWith("updated")) && (p = d.getOptionValue("Date Data Type").toLowerCase()), u < 0 && (0 < this.indexOf("clob") && (p = "clob"), (0 < this.indexOf("blob") || 0 < this.indexOf("file")) && (p = "blob"), 0 < this.indexOf("json") && (p = "clob check (" + this.parseName() + " is json)")), 0 < this.indexOf("tswltz") ? p = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : 0 < this.indexOf("tswtz") || 0 < this.indexOf("tstz") ? p = "TIMESTAMP WITH TIME ZONE".toLowerCase() : 0 < this.indexOf("ts") && (p = "TIMESTAMP".toLowerCase()), r) { + if (0 < S && 0 < L && (p += this.content.toLowerCase().substring(t[S + 1].begin, t[L].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value.startsWith("created") || t[0].value.startsWith("updated")) && (p = d.getOptionValue("Date Data Type").toLowerCase()), u < 0 && (this.occursBeforeOption("clob") && (p = "clob"), (this.occursBeforeOption("blob") || this.occursBeforeOption("file")) && (p = "blob"), this.occursBeforeOption("json") && (p = "clob check (" + this.parseName() + " is json)")), this.occursBeforeOption("tswltz") && this.indexOf("/") ? p = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : this.occursBeforeOption("tswtz") || this.occursBeforeOption("tstz") ? p = "TIMESTAMP WITH TIME ZONE".toLowerCase() : this.occursBeforeOption("ts") && (p = "TIMESTAMP".toLowerCase()), i) { if (0 < this.indexOf("fk") || 0 < this.indexOf("reference", !0)) { const E = this.refId(); let k = "number"; @@ -7705,7 +7707,7 @@ let ce = function() { return p; } 0 < this.indexOf("unique") && (p += ` -`, p += h + h + " ".repeat(i.maxChildNameLen()) + "constraint " + T + "_unq unique"); +`, p += h + h + " ".repeat(r.maxChildNameLen()) + "constraint " + T + "_unq unique"); var D = "'"; if ((p.startsWith("integer") || p.startsWith("number") || p.startsWith("date")) && (D = ""), 0 < this.indexOf("default")) { let E = ""; @@ -7725,63 +7727,63 @@ let ce = function() { if (0 < this.indexOf("pk")) { let E = " not null"; p.startsWith("number") && d.optionEQvalue("pk", "identityDataType") && (E = " GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), p.startsWith("number") && d.optionEQvalue("pk", "seq") && (E = " default on null " + (d.objPrefix() + this.parent.parseName()) + "_seq.NEXTVAL ".toLowerCase()), p.startsWith("number") && d.optionEQvalue("pk", "guid") && (E = " default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), p += E + ` -`, p += h + h + " ".repeat(i.maxChildNameLen()) + "constraint " + K(d.objPrefix(), T, "_pk") + " primary key"; +`, p += h + h + " ".repeat(r.maxChildNameLen()) + "constraint " + K(d.objPrefix(), T, "_pk") + " primary key"; } return p; - }, this.genConstraint = function(r) { + }, this.genConstraint = function(i) { let t = ""; if (0 < this.indexOf("check")) { let s = ""; - i != null && (s = i.parseName() + "_"); + r != null && (s = r.parseName() + "_"); const l = K(s, this.parseName()), u = this.trimmedContent().toLowerCase(), p = u.indexOf("/check"); let T = u.lastIndexOf("/"); T == p && (T = u.length); let S = this.trimmedContent().substr(p + 6, T - p - 6).trim(); const L = Z(S, !1, !0, ""); let D = h; - i != null && (D = " ".repeat(i.maxChildNameLen())), this.children != null && 0 < this.children.length ? (L[0].value != "(" && (S = "( " + S + ")"), t += h + "constraint " + K(d.objPrefix(), l, "_ck"), t += " check " + S + `, + r != null && (D = " ".repeat(r.maxChildNameLen())), this.children != null && 0 < this.children.length ? (L[0].value != "(" && (S = "( " + S + ")"), t += h + "constraint " + K(d.objPrefix(), l, "_ck"), t += " check " + S + `, `) : L[0].value == "(" && L[L.length - 1].value == ")" ? (t += " constraint " + K(d.objPrefix(), l, "_ck") + ` -`, t += h + h + D + "check " + S) : (0 < S.indexOf(", ") ? S = S.replace(/, /g, r + "," + r) : 0 < S.indexOf(",") ? S = S.replace(/,/g, r + "," + r) : S = S.replace(/ /g, r + "," + r), t += " constraint " + K(d.objPrefix(), l, "_ck") + ` -`, t += h + h + D + "check (" + this.parseName() + " in (" + r + S + r + "))", t = t.replace(/''/gm, "'")); +`, t += h + h + D + "check " + S) : (0 < S.indexOf(", ") ? S = S.replace(/, /g, i + "," + i) : 0 < S.indexOf(",") ? S = S.replace(/,/g, i + "," + i) : S = S.replace(/ /g, i + "," + i), t += " constraint " + K(d.objPrefix(), l, "_ck") + ` +`, t += h + h + D + "check (" + this.parseName() + " in (" + i + S + i + "))", t = t.replace(/''/gm, "'")); } return t; }, this.isMany2One = function() { - var r = this.trimmedContent(), t = r.indexOf(">"); + var i = this.trimmedContent(), t = i.indexOf(">"); return t == 0; }, this.getExplicitPkNode = function() { - for (var r = 0; r < this.children.length; r++) { - var t = this.children[r], s = t.trimmedContent().toLowerCase(); + for (var i = 0; i < this.children.length; i++) { + var t = this.children[i], s = t.trimmedContent().toLowerCase(); if (0 < s.indexOf("/pk")) return t; } return null; }, this.refId = function() { - var r = this.trimmedContent(); - r = r.replace(/\/cascade/g, ""); - var t = r.indexOf(" id "); - if (t < 0 && t == r.length - 3 && (t = r.indexOf(" id")), t < 0 && (t = r.indexOf(" id"), t != r.length - 3 && (t = -1)), t < 0 && (t = r.indexOf("_id "), t != r.length - 4 && (t = -1)), t < 0 && (t = r.indexOf("_id"), t != r.length - 3 && (t = -1)), t < 0 && (t = r.indexOf("Id "), t != r.length - 3 && (t = -1)), 0 < t) { - let s = r.substr(0, t) + "s"; - if (d.find(s) != null || (s = r.substr(0, t), d.find(s) != null)) + var i = this.trimmedContent(); + i = i.replace(/\/cascade/g, ""); + var t = i.indexOf(" id "); + if (t < 0 && t == i.length - 3 && (t = i.indexOf(" id")), t < 0 && (t = i.indexOf(" id"), t != i.length - 3 && (t = -1)), t < 0 && (t = i.indexOf("_id "), t != i.length - 4 && (t = -1)), t < 0 && (t = i.indexOf("_id"), t != i.length - 3 && (t = -1)), t < 0 && (t = i.indexOf("Id "), t != i.length - 3 && (t = -1)), 0 < t) { + let s = i.substr(0, t) + "s"; + if (d.find(s) != null || (s = i.substr(0, t), d.find(s) != null)) return s; } - return t = r.indexOf("/fk"), 0 < t ? (r = r.substr(t + 3).trim(), t = r.indexOf("/"), 0 < t && (r = r.substring(0, t).trim()), r.replace(" ", "_")) : (t = r.indexOf("/reference"), 0 < t ? (r = r.substr(t + 10).trim(), r.indexOf("s") == 0 && (r = r.substring(1).trim()), t = r.indexOf("/"), 0 < t && (r = r.substring(0, t).trim()), r.replace(" ", "_")) : null); + return t = i.indexOf("/fk"), 0 < t ? (i = i.substr(t + 3).trim(), t = i.indexOf("/"), 0 < t && (i = i.substring(0, t).trim()), i.replace(" ", "_")) : (t = i.indexOf("/reference"), 0 < t ? (i = i.substr(t + 10).trim(), i.indexOf("s") == 0 && (i = i.substring(1).trim()), t = i.indexOf("/"), 0 < t && (i = i.substring(0, t).trim()), i.replace(" ", "_")) : null); }, this.parseValues = function() { - var r = this.trimmedContent().toUpperCase(), t, s, l; - if (0 <= r.indexOf("/CHECK") || 0 <= r.indexOf("/VALUES")) { + var i = this.trimmedContent().toUpperCase(), t, s, l; + if (0 <= i.indexOf("/CHECK") || 0 <= i.indexOf("/VALUES")) { var u = "/CHECK"; - return t = r.indexOf(u), t < 0 && (u = "/VALUES", t = r.indexOf(u)), s = r.lastIndexOf("/"), s == t && (s = r.length), l = r.substr(t + u.length, s - t - u.length).trim(), 0 < l.indexOf(",") ? (l = l.replace(/ /g, ""), l.split(",")) : l.split(" "); + return t = i.indexOf(u), t < 0 && (u = "/VALUES", t = i.indexOf(u)), s = i.lastIndexOf("/"), s == t && (s = i.length), l = i.substr(t + u.length, s - t - u.length).trim(), 0 < l.indexOf(",") ? (l = l.replace(/ /g, ""), l.split(",")) : l.split(" "); } - if (0 <= r.indexOf("/BETWEEN")) { - t = r.indexOf("/BETWEEN"), s = r.lastIndexOf("/"), s == t && (s = r.length), l = r.substr(t + 8, s - t - 8).trim(), l = l.replace(" AND ", " "); + if (0 <= i.indexOf("/BETWEEN")) { + t = i.indexOf("/BETWEEN"), s = i.lastIndexOf("/"), s == t && (s = i.length), l = i.substr(t + 8, s - t - 8).trim(), l = l.replace(" AND ", " "); for (var p = [], T = parseInt(l.split(" ")[0]); T <= parseInt(l.split(" ")[1]); T++) p.push(T); return p; } return null; }, this.apparentDepth = function() { - let r = this.content.split(/ |\t/), t = 0; - for (var s = 0; s < r.length; s++) { - var l = r[s]; + let i = this.content.split(/ |\t/), t = 0; + for (var s = 0; s < i.length; s++) { + var l = i[s]; if (l == " ") { t += this.tab; continue; @@ -7796,7 +7798,7 @@ let ce = function() { }, this.depth = function() { return this.parent == null ? 0 : this.parent.depth() + 1; }, this.isLeaf = function() { - return this.children.every((r) => r.children.length == 0); + return this.children.every((i) => i.children.length == 0); }, this.getGenIdColName = function() { if (this.parseType() != "table" || this.getExplicitPkNode() != null) return null; @@ -7806,12 +7808,12 @@ let ce = function() { } return null; }, this.getPkName = function() { - let r = this.getGenIdColName(); - if (r == null) { + let i = this.getGenIdColName(); + if (i == null) { let t = this.getExplicitPkNode(); return t == null ? null : t.parseName(); } - return r; + return i; }, this.singleDDL = function() { if (this.children.length == 0 && 0 < this.apparentDepth()) { let a = h; @@ -7822,10 +7824,10 @@ let ce = function() { for (let a = 0; a < this.children.length; a++) this.children[a].refId() != null && (this.fks[this.children[a].parseName()] = this.children[a].refId()); } - const r = this.trimmedContent().toUpperCase(); - var t = r.indexOf("/COLPREFIX "); + const i = this.trimmedContent().toUpperCase(); + var t = i.indexOf("/COLPREFIX "); if (0 < t) { - let n = r.substr(t + 11).split(" "); + let n = i.substr(t + 11).split(" "); this.colprefix = n[0]; } var s = ""; @@ -7860,7 +7862,7 @@ let ce = function() { `, s += h + h + " ".repeat(this.maxChildNameLen()) + "constraint " + l + "_" + a + `_fk `; let f = ""; - 0 <= r.indexOf("/CASCADE") && (f = " on delete cascade"); + 0 <= i.indexOf("/CASCADE") && (f = " on delete cascade"); let A = ""; for (let v in this.children) { let y = this.children[v]; @@ -7873,7 +7875,7 @@ let ce = function() { s += h + h + " ".repeat(this.maxChildNameLen()) + "references " + d.objPrefix() + n + f + A + `, `; } - if (d.optionEQvalue("rowkey", !0) || 0 < r.indexOf("/ROWKEY")) { + if (d.optionEQvalue("rowkey", !0) || 0 < i.indexOf("/ROWKEY")) { let a = h + " ".repeat(this.maxChildNameLen() - 7); s += h + "row_key" + a + `varchar2(30 char) `, s += h + h + " ".repeat(this.maxChildNameLen()) + "constraint " + l + `_row_key_unq unique not null, @@ -7896,12 +7898,12 @@ let ce = function() { } } } - if (d.optionEQvalue("rowVersion", "yes") || 0 < r.indexOf("/ROWVERSION")) { + if (d.optionEQvalue("rowVersion", "yes") || 0 < i.indexOf("/ROWVERSION")) { let a = h + " ".repeat(this.maxChildNameLen() - 11); s += h + "row_version" + a + `integer not null, `; } - if (d.optionEQvalue("Audit Columns", "yes") || 0 < r.indexOf("/AUDITCOLS") || 0 < r.indexOf("/AUDIT COL")) { + if (d.optionEQvalue("Audit Columns", "yes") || 0 < i.indexOf("/AUDITCOLS") || 0 < i.indexOf("/AUDIT COL")) { let a = d.getOptionValue("createdcol"), n = h + " ".repeat(this.maxChildNameLen() - a.length); s += h + a + n + d.getOptionValue("Date Data Type").toLowerCase() + ` not null, `; @@ -7923,10 +7925,10 @@ let ce = function() { } s += this.genConstraint(), s.lastIndexOf(`, `) == s.length - 2 && (s = s.substring(0, s.length - 2) + ` -`), s += ")" + (d.optionEQvalue("compress", "yes") || 0 < r.indexOf("/COMPRESS") ? " compress" : "") + `; +`), s += ")" + (d.optionEQvalue("compress", "yes") || 0 < i.indexOf("/COMPRESS") ? " compress" : "") + `; `; - const L = r.indexOf("/AUDIT"), D = r.indexOf("/AUDITCOLS"), E = r.indexOf("/AUDIT COL"); + const L = i.indexOf("/AUDIT"), D = i.indexOf("/AUDITCOLS"), E = i.indexOf("/AUDIT COL"); 0 < L && D < 0 && E < 0 && (s += "audit all on " + l + `; `); @@ -7939,9 +7941,9 @@ let ce = function() { `; } - let G = r.indexOf("/UNIQUE "); + let G = i.indexOf("/UNIQUE "); if (0 < G) { - let a = r.substr(G + 8), n = a.indexOf("/"); + let a = i.substr(G + 8), n = a.indexOf("/"); 0 < n && (a = a.substring(0, n).trim()), s += "alter table " + l + " add constraint " + l + "_uk unique (" + a + `); `; @@ -7965,29 +7967,29 @@ let ce = function() { }, this.toDDL = function() { if (this.parseType() == "view" || this.parseType() == "dv") return ""; - var r = this.orderedTableNodes(); + var i = this.orderedTableNodes(); let t = ""; - for (let s = 0; s < r.length; s++) - t += r[s].singleDDL(); + for (let s = 0; s < i.length; s++) + t += i[s].singleDDL(); return t; }, this.orderedTableNodes = function() { - var r = [this]; + var i = [this]; for (let s = 1; s < this.descendants().length; s++) { var t = this.descendants()[s]; - t.children.length != 0 && (t.isMany2One() ? t.isContainedIn(r) || r.unshift(t) : t.isContainedIn(r) || r.push(t)); + t.children.length != 0 && (t.isMany2One() ? t.isContainedIn(i) || i.unshift(t) : t.isContainedIn(i) || i.push(t)); } - return r; - }, this.isContainedIn = function(r) { - for (const t in r) - if (r[t].parseName() == this.parseName()) + return i; + }, this.isContainedIn = function(i) { + for (const t in i) + if (i[t].parseName() == this.parseName()) return !0; return !1; }, this.generateDrop = function() { - let r = d.objPrefix() + this.parseName(), t = ""; - return this.parseType() == "view" && (t = "drop view " + r + `; -`), this.parseType() == "table" && (t = "drop table " + r + ` cascade constraints; -`, d.optionEQvalue("api", "yes") && (t += "drop package " + r + `_api; -`), d.optionEQvalue("pk", "SEQ") && (t += "drop sequence " + r + `_seq; + let i = d.objPrefix() + this.parseName(), t = ""; + return this.parseType() == "view" && (t = "drop view " + i + `; +`), this.parseType() == "table" && (t = "drop table " + i + ` cascade constraints; +`, d.optionEQvalue("api", "yes") && (t += "drop package " + i + `_api; +`), d.optionEQvalue("pk", "SEQ") && (t += "drop sequence " + i + `_seq; `)), t.toLowerCase(); }, this.generateView = function() { if (this.parseType() != "view" && this.parseType() != "dv") @@ -8000,8 +8002,8 @@ let ce = function() { return ""; throw m; } - let r = d.objPrefix() + this.parseName(); - var s = this.trimmedContent().split(" "), l = "create or replace view " + r + ` as + let i = d.objPrefix() + this.parseName(); + var s = this.trimmedContent().split(" "), l = "create or replace view " + i + ` as `; l += `select `; @@ -8113,10 +8115,10 @@ end; }, this.generateTrigger = function() { if (this.parseType() != "table") return ""; - let r = ""; - d.optionEQvalue("editionable", "yes") && (r = " editionable"); + let i = ""; + d.optionEQvalue("editionable", "yes") && (i = " editionable"); let t = d.objPrefix() + this.parseName(); - var s = "create or replace" + r + " trigger " + t.toLowerCase() + `_BIU + var s = "create or replace" + i + " trigger " + t.toLowerCase() + `_BIU `.toLowerCase(); s += ` before insert or update `, s += " on " + t.toLowerCase() + ` @@ -8184,12 +8186,12 @@ end; / `.toLowerCase(), s) : ""; - }, this.procDecl = function(r) { + }, this.procDecl = function(i) { let t = ""; - r != "get" && (t = " default null"); + i != "get" && (t = " default null"); let s = "out"; - r != "get" && (s = " in"); - let l = h + "procedure " + r + `_row ( + i != "get" && (s = " in"); + let l = h + "procedure " + i + `_row ( `; l += h + h + "p_id in number" + t; for (var u in this.fks) { @@ -8204,37 +8206,37 @@ end; } return l += ` )`, l; - }, this.procBody = function(r) { + }, this.procBody = function(i) { let t = d.objPrefix() + this.parseName(), s = h + `is `; s += h + `begin `; let l = h + h + "for c1 in (select * from " + t + ` where id = p_id) loop `; - r == "insert" && (l = h + h + "insert into " + t + ` ( -`, l += h + h + h + "id"), r == "update" && (l = h + h + "update " + t + ` set + i == "insert" && (l = h + h + "insert into " + t + ` ( +`, l += h + h + h + "id"), i == "update" && (l = h + h + "update " + t + ` set `, l += h + h + h + "id = p_id"), s += l; for (let S in this.fks) { let L = this.fks[S], D = d.find(L); - D != null && D.getExplicitPkNode() != null && D.getExplicitPkNode().parseType((k) => !0), (r == "insert" || r == "update") && (s += `, + D != null && D.getExplicitPkNode() != null && D.getExplicitPkNode().parseType((k) => !0), (i == "insert" || i == "update") && (s += `, `); let E = h + h + h + "P_" + S + " := c1." + S + `; `; - r == "insert" && (E = h + h + h + S), r == "update" && (E = h + h + h + S + " = P_" + S + ` + i == "insert" && (E = h + h + h + S), i == "update" && (E = h + h + h + S + " = P_" + S + ` `), s += E; } for (var u = 0; u < this.children.length; u++) { var p = this.children[u]; if (p.refId() != null || p.children.length != 0) continue; - (r == "insert" || r == "update") && (s += `, + (i == "insert" || i == "update") && (s += `, `); let S = h + h + h + "P_" + p.parseName().toLowerCase() + " := c1." + p.parseName().toLowerCase() + `; `; - r == "insert" && (S = h + h + h + p.parseName().toLowerCase()), r == "update" && (S = h + h + h + p.parseName().toLowerCase() + " = P_" + p.parseName().toLowerCase() + ` + i == "insert" && (S = h + h + h + p.parseName().toLowerCase()), i == "update" && (S = h + h + h + p.parseName().toLowerCase() + " = P_" + p.parseName().toLowerCase() + ` `), s += S; } - if (r == "insert") { + if (i == "insert") { s += ` ` + h + h + `) values ( `, s += h + h + h + "p_id"; @@ -8250,16 +8252,16 @@ end; let T = ` end loop; `; - return r == "insert" && (T = ` -` + h + h + ");"), r == "update" && (T = h + h + "where id = p_id;"), s += T, s += ` -` + h + "end " + r + `_row; + return i == "insert" && (T = ` +` + h + h + ");"), i == "update" && (T = h + h + "where id = p_id;"), s += T, s += ` +` + h + "end " + i + `_row; `, s += ` `, s; }, this.generateTAPI = function() { if (this.children.length == 0) return ""; - let r = d.objPrefix() + this.parseName(); - var t = "create or replace package " + r.toLowerCase() + `_API + let i = d.objPrefix() + this.parseName(); + var t = "create or replace package " + i.toLowerCase() + `_API is `.toLowerCase(); @@ -8272,10 +8274,10 @@ is `, t += ` procedure delete_row ( p_id in number ); -end ` + r.toLowerCase() + `_api; +end ` + i.toLowerCase() + `_api; / -`, t += "create or replace package body " + r.toLowerCase() + `_API +`, t += "create or replace package body " + i.toLowerCase() + `_API is `.toLowerCase(), t += this.procDecl("get"), t += ` @@ -8286,39 +8288,39 @@ is `, t += ` ) `, t += ` is `, t += ` begin -`, t += " delete from " + r.toLowerCase() + ` where id = p_id; +`, t += " delete from " + i.toLowerCase() + ` where id = p_id; `, t += ` end delete_row; -`, t += "end " + r.toLowerCase() + `_api; +`, t += "end " + i.toLowerCase() + `_api; `, t += `/ `, t.toLowerCase(); }, this.cardinality = function() { - let r = this.trimmedContent().toLowerCase(), t = r.indexOf("/insert "); + let i = this.trimmedContent().toLowerCase(), t = i.indexOf("/insert "); if (0 < t) { - r = r.substr(t + 8); - let s = r.split(" "), l = parseInt(s[0]); + i = i.substr(t + 8); + let s = i.split(" "), l = parseInt(s[0]); const u = d.getOptionValue("datalimit"); return u < l && (l = u), l; } return 0; - }, this.generateData = function(r) { + }, this.generateData = function(i) { if (Ce(), d.optionEQvalue("inserts", !1)) return ""; - const t = this.inserts4tbl(r), s = this.orderedTableNodes(); + const t = this.inserts4tbl(i), s = this.orderedTableNodes(); let l = ""; for (let u = 0; u < s.length; u++) { const p = t[s[u].parseName()]; p != null && (l += p); } return l; - }, this.inserts4tbl = function(r) { + }, this.inserts4tbl = function(i) { let t = {}; if (d.optionEQvalue("inserts", !1)) return ""; let s = d.objPrefix() + this.parseName(), l = "", u = null, p = null; for (let S = 0; S < this.cardinality(); S++) { let L = null; - if (r != null) { - const E = r[s]; + if (i != null) { + const E = i[s]; E != null && Array.isArray(E) && (L = E[S]); } l += "insert into " + s + ` ( @@ -8420,35 +8422,35 @@ modify ` + T + " generated always as identity restart start with " + (this.card `), t[s] = l; for (let S = 0; S < this.children.length; S++) { const L = this.children[S]; - 0 < L.children.length && (t = { ...t, ...L.inserts4tbl(r) }); + 0 < L.children.length && (t = { ...t, ...L.inserts4tbl(i) }); } return t; }, this.isArray = function() { return !this.isMany2One() && this.parent != null; - }, this.hasNonArrayChildId = function(r) { - if (!r.endsWith("_id")) + }, this.hasNonArrayChildId = function(i) { + if (!i.endsWith("_id")) return !1; - var t = r.slice(0, -3); + var t = i.slice(0, -3); return this.children.some((s) => s.children.length > 0 && s.parseName() == t && !s.isArray()); - }, this.generateSelectJsonBottomUp = function(r) { + }, this.generateSelectJsonBottomUp = function(i) { throw new Error("generateSelectJsonBottomUp() not implemented yet"); - }, this.one2many2oneUnsupoported = "one to many to one is not supported", this.generateSelectJsonTopDown = function(r) { + }, this.one2many2oneUnsupoported = "one to many to one is not supported", this.generateSelectJsonTopDown = function(i) { var t = this.parseName(); let s = ""; - this.getExplicitPkNode == null && (s += r + "'" + this.getGenIdColName() + "' : " + t + "." + this.getGenIdColName() + `, + this.getExplicitPkNode == null && (s += i + "'" + this.getGenIdColName() + "' : " + t + "." + this.getGenIdColName() + `, `); for (var l = 0; l < this.children.length; l++) { var u = this.children[l], p = u.parseName(); if (u.children.length == 0) { if (this.hasNonArrayChildId(p)) continue; - s += r + "'" + p + "' : " + t + "." + p; + s += i + "'" + p + "' : " + t + "." + p; } else { - if (s += r + "'" + p + `' : [ -`, u.isMany2One(), r += " ", s += r + `select JSON { + if (s += i + "'" + p + `' : [ +`, u.isMany2One(), i += " ", s += i + `select JSON { `, this.isMany2One()) throw new Error(this.one2many2oneUnsupoported); - s += u.generateSelectJsonTopDown(r + " "), s += r + " WITH NOCHECK } from " + p + ` with INSERT UPDATE + s += u.generateSelectJsonTopDown(i + " "), s += i + " WITH NOCHECK } from " + p + ` with INSERT UPDATE `; let L = null; for (var T in u.fks) { @@ -8459,8 +8461,8 @@ modify ` + T + " generated always as identity restart start with " + (this.card } } const D = t + "." + this.getPkName(), E = p + "." + L; - s += r + "where " + E + " = " + D + ` -`, r = r.slice(0, -2), s += r + "]"; + s += i + "where " + E + " = " + D + ` +`, i = i.slice(0, -2), s += i + "]"; } s += l < this.children.length - 1 ? `, ` : ` @@ -8469,7 +8471,7 @@ modify ` + T + " generated always as identity restart start with " + (this.card return s[s.length - 2] == "," ? s.slice(0, -2) + ` ` : s; }, this.generateDualityView = function() { - var r = this.trimmedContent(), t = r.split(" "); + var i = this.trimmedContent(), t = i.split(" "); if (3 < t.length) throw "max 1 table is allowed in DV"; var s = "", l = d.find(t[2]); @@ -8480,17 +8482,17 @@ modify ` + T + " generated always as identity restart start with " + (this.card `), s; }; } - function N(M) { + function x(M) { d = M; const B = M.input; - let i = [], o = []; - const r = Z(B + ` + let r = [], o = []; + const i = Z(B + ` `, !0, !0, ""); d.data = null; let t = null, s = "", l = 0; e: - for (let u in r) { - const p = r[u]; + for (let u in i) { + const p = i[u]; if (p.value == ` ` && t == null) { if (s = s.replace(/\r/g, ""), s.replace(/\r/g, "").replace(/ /g, "") == "") { @@ -8498,22 +8500,22 @@ modify ` + T + " generated always as identity restart start with " + (this.card continue; } let S = new I(l, s, null), L = !1; - for (let D = 0; D < i.length; D++) { - let E = i[D]; + for (let D = 0; D < r.length; D++) { + let E = r[D]; if (S.apparentDepth() <= E.apparentDepth()) if (0 < D) { - let k = i[D - 1]; - S = new I(l, s, k), i[D] = S, i = i.slice(0, D + 1), L = !0; + let k = r[D - 1]; + S = new I(l, s, k), r[D] = S, r = r.slice(0, D + 1), L = !0; break; } else - i[0] = S, i = i.slice(0, 1), o.push(S), L = !0; + r[0] = S, r = r.slice(0, 1), o.push(S), L = !0; } if (!L) { - if (0 < i.length) { - let D = i[i.length - 1]; + if (0 < r.length) { + let D = r[r.length - 1]; S = new I(l, s, D); } - i.push(S), S.apparentDepth() == 0 && o.push(S); + r.push(S), S.apparentDepth() == 0 && o.push(S); } if (S.isMany2One()) { const D = S.parent; @@ -8579,96 +8581,96 @@ modify ` + T + " generated always as identity restart start with " + (this.card return o; } function b(M, B) { - let i = B.toLowerCase(); - return 0 < M.indexOf(i) && M.indexOf(i) == M.length - i.length ? M.substring(0, M.length - i.length) : M.trim(); + let r = B.toLowerCase(); + return 0 < M.indexOf(r) && M.indexOf(r) == M.length - r.length ? M.substring(0, M.length - r.length) : M.trim(); } - function g(M, B, i, o) { - let r = []; + function g(M, B, r, o) { + let i = []; if (M == null || typeof M != "object") return null; - let t = M[i]; - t != null && B == o && r.push(t); + let t = M[r]; + t != null && B == o && i.push(t); for (var s in M) { let l = M[s]; - t = g(l, s, i, o), t != null && (r = r.concat(t)); + t = g(l, s, r, o), t != null && (i = i.concat(t)); } - return r; + return i; } - return N; + return x; }(); var Ae = function() { - function d(i) { - for (var o = "", r = 0; r < i; r++) + function d(r) { + for (var o = "", i = 0; i < r; i++) o = o + " "; return o; } - function h(i, o) { - for (const r in i) - if (JSON.stringify(i[r]) == JSON.stringify(o)) + function h(r, o) { + for (const i in r) + if (JSON.stringify(r[i]) == JSON.stringify(o)) return !0; return !1; } - function x(i) { + function N(r) { let o = ["_id", "Id"]; - if (i.id != null) - return { key: "id", value: i.id }; - for (let r = 0; r < o.length; r++) { - const t = o[r]; - for (let s in i) + if (r.id != null) + return { key: "id", value: r.id }; + for (let i = 0; i < o.length; i++) { + const t = o[i]; + for (let s in r) if (s.endsWith(t)) - return { key: s, value: i[s] }; + return { key: s, value: r[s] }; } } - function w(i) { - for (let o in i) - if (!(i[o] != null && typeof i[o] == "object")) + function w(r) { + for (let o in r) + if (!(r[o] != null && typeof r[o] == "object")) return !0; return !1; } - function I(i) { + function I(r) { let o = null; e: - for (const r in i) - if (r == 0) - for (const t in i[r]) { + for (const i in r) + if (i == 0) + for (const t in r[i]) { o = t; break e; } else { - o = r; + o = i; break e; } return o.toLowerCase() == "id" ? null : o.toLowerCase().endsWith("_id") ? o.substring(0, o.length - 3) : o.endsWith("Id") ? o.substring(0, o.length - 2) : null; } - function N(i, o, r) { + function x(r, o, i) { let t = !1, s = !1; - for (const u in i) + for (const u in r) for (var l = 0; l < u; l++) - if (i[u][o] == i[l][o] && i[u][r] != i[l][r] ? t = !0 : i[u][o] != i[l][o] && i[u][r] == i[l][r] && (s = !0), t && s) + if (r[u][o] == r[l][o] && r[u][i] != r[l][i] ? t = !0 : r[u][o] != r[l][o] && r[u][i] == r[l][i] && (s = !0), t && s) return !0; return !1; } - function b(i) { - if (i == null || typeof i != "object") + function b(r) { + if (r == null || typeof r != "object") return ""; let o = "("; - for (let r in i) { - if (r == 0) - return b(i[r]); - i[r] != null && typeof i[r] == "object" || (o += r + ","); + for (let i in r) { + if (i == 0) + return b(r[i]); + r[i] != null && typeof r[i] == "object" || (o += i + ","); } return o.lastIndexOf(",") == o.length - 1 && (o = o.substring(0, o.length - 1)), o + ")"; } - function g(i, o) { - let r = i.indexOf("("); - return 0 < r && (i = i.substring(0, r)), r = o.indexOf("("), 0 < r && (o = o.substring(0, r)), i + "_" + o + "(" + i + "_id," + o + "_id)"; + function g(r, o) { + let i = r.indexOf("("); + return 0 < i && (r = r.substring(0, i)), i = o.indexOf("("), 0 < i && (o = o.substring(0, i)), r + "_" + o + "(" + r + "_id," + o + "_id)"; } - function M(i, o) { - const r = JSON.parse(i), t = I(r); + function M(r, o) { + const i = JSON.parse(r), t = I(i); t != null && (o = t), o == null && (o = "root_tbl"); const s = new B(); - s.duplicatesAndParents(o + b(r), r), s.flatten(o + b(r), r); - let l = s.output(o + b(r), r, 0); + s.duplicatesAndParents(o + b(i), i), s.flatten(o + b(i), i); + let l = s.output(o + b(i), i, 0); l += ` #settings = { genpk: false, drop: true }`, l += ` @@ -8684,118 +8686,118 @@ var Ae = function() { -- Generated by json2qsql.js ${oe()} ` + (/* @__PURE__ */ new Date()).toLocaleString() + ` `, l += `#document = -`, l += JSON.stringify(r, null, 3), l += ` +`, l += JSON.stringify(i, null, 3), l += ` `, l; } function B() { - this.tableContent = {}, this.notNormalized = [], this.tableSignatures = [], this.child2parent = {}, this.objCounts = {}, this.output = function(i, o, r, t) { - if (t != !1 && this.notNormalized.includes(i)) { - const u = g(this.parent(i), i), p = this.tableContent[u]; + this.tableContent = {}, this.notNormalized = [], this.tableSignatures = [], this.child2parent = {}, this.objCounts = {}, this.output = function(r, o, i, t) { + if (t != !1 && this.notNormalized.includes(r)) { + const u = g(this.parent(r), r), p = this.tableContent[u]; if (p != null) { let T = ` -` + d(r) + this.tableName(u) + " /insert " + p.length; - if (p[0], N(p, this.refIdName(this.parent(i)), this.refIdName(i))) - return T += this.output(i, o, r + 1, !1), T; +` + d(i) + this.tableName(u) + " /insert " + p.length; + if (p[0], x(p, this.refIdName(this.parent(r)), this.refIdName(r))) + return T += this.output(r, o, i + 1, !1), T; } } let s = ""; - this.notNormalized.includes(i) && (s = ">"); + this.notNormalized.includes(r) && (s = ">"); let l = ` -` + d(r) + s + this.tableName(i); - if (typeof o == "number" && (l += " num", i.endsWith("_id") || i.endsWith("Id"))) +` + d(i) + s + this.tableName(r); + if (typeof o == "number" && (l += " num", r.endsWith("_id") || r.endsWith("Id"))) return l += " /pk", l; - if (i == "id") + if (r == "id") return ` -` + d(r) + "id vc32 /pk"; +` + d(i) + "id vc32 /pk"; e: if (o != null && typeof o == "object") { if (Array.isArray(o)) for (const p in o) { 1 <= p && console.log("1 <= property !"); const T = o[p]; - l = this.output(i, T, r, t); + l = this.output(r, T, i, t); break e; } else - i != "" && (this.tableContent[i] == null && console.log(), l += " /insert " + this.tableContent[i].length); + r != "" && (this.tableContent[r] == null && console.log(), l += " /insert " + this.tableContent[r].length); let u = ""; - this.tableSignatures.includes(i) || (l = "", r--); + this.tableSignatures.includes(r) || (l = "", i--); for (let p in o) { const T = o[p]; if (p != null) { - const L = W(i), D = p.toLowerCase(); - if (i != null && L + "_id" == D && 0 < r && (u = p), L + "_id" == D || !isNaN(p) && !Array.isArray(o)) + const L = W(r), D = p.toLowerCase(); + if (r != null && L + "_id" == D && 0 < i && (u = p), L + "_id" == D || !isNaN(p) && !Array.isArray(o)) continue; } - const S = this.output(p + b(T), T, r + 1); + const S = this.output(p + b(T), T, i + 1); l += S; } u != "" && (l += ` -` + d(r) + u); +` + d(i) + u); } return l; - }, this.idSeq = 1, this.flatten = function(i, o, r) { + }, this.idSeq = 1, this.flatten = function(r, o, i) { let t = {}; for (let u in o) if (o[u] != null && typeof o[u] == "object") { - let p = i, T = r; + let p = r, T = i; if (isNaN(u)) { p = u + b(o[u]); - const S = x(t); + const S = N(t); S != null && (T = S); } this.flatten(p, o[u], T); } else t[u] = o[u]; - !this.notNormalized.includes(i) && r != null && Object.keys(t).length && (t[r.key] = r.value); + !this.notNormalized.includes(r) && i != null && Object.keys(t).length && (t[i.key] = i.value); const s = 0 < Object.keys(t).length; - let l = this.tableContent[i]; + let l = this.tableContent[r]; if (s) { - if (l == null && (l = []), h(l, t) || l.push(t), this.notNormalized.includes(i)) { - const u = this.parent(i); + if (l == null && (l = []), h(l, t) || l.push(t), this.notNormalized.includes(r)) { + const u = this.parent(r); if (u != null) { - const p = g(u, i); + const p = g(u, r); let T = this.tableContent[p]; T == null && (T = []); const S = {}; - S[this.refIdName(u)] = r.value; - let L = x(t); - L == null && (t.id = this.idSeq++, L = x(t)), S[this.refIdName(i)] = L.value, T.push(S), this.tableContent[p] = T; + S[this.refIdName(u)] = i.value; + let L = N(t); + L == null && (t.id = this.idSeq++, L = N(t)), S[this.refIdName(r)] = L.value, T.push(S), this.tableContent[p] = T; } } - this.tableContent[i] = l; + this.tableContent[r] = l; } else - l == null && (this.tableContent[i] = []); - }, this.duplicatesAndParents = function(i, o) { - const r = '"' + i + '":' + JSON.stringify(o); - let t = this.objCounts[r]; + l == null && (this.tableContent[r] = []); + }, this.duplicatesAndParents = function(r, o) { + const i = '"' + r + '":' + JSON.stringify(o); + let t = this.objCounts[i]; t == null && (t = 0); let s = !1; for (let u in o) if (o[u] != null && typeof o[u] == "object") { - let p = i; + let p = r; if (isNaN(u)) p = u + b(o[u]); else if (!Array.isArray(o)) continue; - p != i && (this.child2parent[p] = i), this.duplicatesAndParents(p, o[u]), s = !0; + p != r && (this.child2parent[p] = r), this.duplicatesAndParents(p, o[u]), s = !0; } - w(o) && !this.tableSignatures.includes(i) && this.tableSignatures.push(i), s || (this.objCounts[r] = t + 1), 1 < this.objCounts[r] && !this.notNormalized.includes(i) && this.notNormalized.push(i); - }, this.parent = function(i) { - let o = this.child2parent[i]; + w(o) && !this.tableSignatures.includes(r) && this.tableSignatures.push(r), s || (this.objCounts[i] = t + 1), 1 < this.objCounts[i] && !this.notNormalized.includes(r) && this.notNormalized.push(r); + }, this.parent = function(r) { + let o = this.child2parent[r]; return o != null && !this.tableSignatures.includes(o) ? this.parent(o) : o; - }, this.tableName = function(i) { - const o = i.indexOf("("); + }, this.tableName = function(r) { + const o = r.indexOf("("); if (o < 0) - return i; - let r = i.substring(0, o), t = 0, s = -1; + return r; + let i = r.substring(0, o), t = 0, s = -1; for (const l in this.tableSignatures) { const u = this.tableSignatures[l]; - u.substring(0, u.indexOf("(")) == r && t++, u == i && (s = t); + u.substring(0, u.indexOf("(")) == i && t++, u == r && (s = t); } - return t < 2 ? r : r + s; - }, this.refIdName = function(i) { - return W(this.tableName(i)) + "_id"; + return t < 2 ? i : i + s; + }, this.refIdName = function(r) { + return W(this.tableName(r)) + "_id"; }; } return M; @@ -8807,16 +8809,16 @@ const ye = function() { function h(b, g) { this.line = b, this.depth = g; } - function x(b) { + function N(b) { const g = b, M = b.input; let B = []; - const i = M.split(` + const r = M.split(` `); - B = B.concat(N(i)); + B = B.concat(x(r)); const o = g.descendants(); - for (let r = 0; r < o.length; r++) { - const t = o[r]; - if (g.optionEQvalue("genpk", !0) && o[r].parseName() == "id") { + for (let i = 0; i < o.length; i++) { + const t = o[i]; + if (g.optionEQvalue("genpk", !0) && o[i].parseName() == "id") { const u = t.content.toLowerCase().indexOf("id"); B.push(new d(j.duplicateId, new h(t.line, u))); continue; @@ -8840,14 +8842,14 @@ const ye = function() { function w(b, g) { var M = [], B = g.content.toLowerCase(); if (g.parseType() == "view") { - var i = $(B, " "); + var r = $(B, " "); let t = 0; - for (var o = 0; o < i.length; o++) - if (t += i[o].length, i[o] != " " && i[o] != "view" && o != 1) { - var r = b.find(i[o]); - r == null && M.push(new d( - j.undefinedObject + i[o], - new h(g.line, t - i[o].length) + for (var o = 0; o < r.length; o++) + if (t += r[o].length, r[o] != " " && r[o] != "view" && o != 1) { + var i = b.find(r[o]); + i == null && M.push(new d( + j.undefinedObject + r[o], + new h(g.line, t - r[o].length) )); } } @@ -8856,19 +8858,19 @@ const ye = function() { function I(b, g) { var M = [], B = g.content.toLowerCase(); if (0 < B.indexOf("/fk") || 0 < B.indexOf("/reference")) { - let r = $(B, " "), t = 0, s = !1; - for (var i = 0; i < r.length; i++) - if (t += r[i].length, r[i] != " ") { - if (r[i] == "/fk" || r[i].indexOf("/reference") == 0) { + let i = $(B, " "), t = 0, s = !1; + for (var r = 0; r < i.length; r++) + if (t += i[r].length, i[r] != " ") { + if (i[r] == "/fk" || i[r].indexOf("/reference") == 0) { s = !0; continue; } if (s) { - var o = b.find(r[i]); + var o = b.find(i[r]); if (o == null) { M.push(new d( - j.undefinedObject + r[i], - new h(g.line, t - r[i].length) + j.undefinedObject + i[r], + new h(g.line, t - i[r].length) )); break; } @@ -8877,10 +8879,10 @@ const ye = function() { } return M; } - function N(b) { + function x(b) { for (var g = [], M = Se(b), B = 1; B < b.length; B++) { - var i = b[B - 1], o = b[B], r = re(i), t = re(o); - t != 0 && r < t && t < r + M && g.push( + var r = b[B - 1], o = b[B], i = re(r), t = re(o); + t != 0 && i < t && t < i + M && g.push( new d( j.misalignedAttribute + M, new h(B, t) @@ -8889,13 +8891,13 @@ const ye = function() { } return g; } - return x; + return N; }(); function Se(d) { let h = []; - for (var x = 0; x < d.length; x++) { - var w = d[x]; - h[x] = re(w); + for (var N = 0; N < d.length; N++) { + var w = d[N]; + h[N] = re(w); } let I = []; for (let b = 0; b < h.length; b++) { @@ -8905,27 +8907,27 @@ function Se(d) { M == null && (M = 0), I[h[b] - h[g]] = M + 1; } } - let N = null; + let x = null; for (let b in I) - (N == null || I[N] <= I[b]) && (N = b); - return N; + (x == null || I[x] <= I[b]) && (x = b); + return x; } function re(d) { - for (var h = d.split(/ |\t/), x = 0, w = 0; w < h.length; w++) { + for (var h = d.split(/ |\t/), N = 0, w = 0; w < h.length; w++) { var I = h[w]; - if (I == " " && (x += 4), I == "") { - x++; + if (I == " " && (N += 4), I == "") { + N++; continue; } if (!/[^.a-zA-Z0-9_"]/.test(I)) - return x; + return N; } return 0; } function Me(d, h) { - for (let x = h; 0 <= x; x--) - if (d[x] < d[h]) - return x; + for (let N = h; 0 <= N; N--) + if (d[N] < d[h]) + return N; return null; } const j = { @@ -8974,16 +8976,16 @@ const j = { let I = w; return typeof I == "string" && (I = I.toLowerCase()), I == "yes" ? !0 : I == "no" ? !1 : I == "y" ? !0 : I == "n" ? !1 : I == "true" ? !0 : I == "false" ? !1 : I == ne.toLowerCase() ? "identity" : I == ue.toLowerCase() ? "guid" : I == me.toLowerCase() ? "tswtz" : I == de.toLowerCase() ? "tswltz" : I; } - function x(w, I) { + function N(w, I) { this.ddl = null, this.erd = null, this.errors = null, this.options = JSON.parse(JSON.stringify(d)), this.input = w, this.getOptionValue = function(b) { const g = b.toLowerCase(); let M = this.options[g]; if (!(g in this.options)) for (let B in this.options) { - const i = this.options[B].label; - if (i == null) + const r = this.options[B].label; + if (r == null) continue; - i.toLowerCase() == g && (M = this.options[B]); + r.toLowerCase() == g && (M = this.options[B]); } return M == null ? null : M.value; }, this.optionEQvalue = function(b, g) { @@ -9002,9 +9004,9 @@ const j = { }, this.setOptionValue = function(b, g) { let M = b.toLowerCase(); if (!(M in this.options)) { - for (let i in this.options) - if (this.options[i].label == b) { - this.options[i].value = g; + for (let r in this.options) + if (this.options[r].label == b) { + this.options[r].value = g; return; } } @@ -9017,9 +9019,9 @@ const j = { }, this.find = function(b) { for (var g = 0; g < this.forest.length; g++) for (var M = this.forest[g].descendants(), B = 0; B < M.length; B++) { - var i = M[B]; - if (i.parseName() == he(b)) - return i; + var r = M[B]; + if (r.parseName() == he(b)) + return r; } return null; }, this.setOptions = function(b) { @@ -9027,14 +9029,14 @@ const j = { const g = b.indexOf("="); let M = b.substring(g + 1).trim(); M.indexOf("{") < 0 && (M = "{" + b + "}"); - let B = "", i = Z(M, !0, !0, ""); - for (let r in i) { - let t = i[r]; + let B = "", r = Z(M, !0, !0, ""); + for (let i in r) { + let t = r[i]; t.type == "identifier" && t.value != "true" && t.value != "false" && t.value != "null" ? B += '"' + t.value + '"' : B += t.value; } let o = JSON.parse(B); - for (let r in o) - this.setOptionValue(r.toLowerCase(), o[r]); + for (let i in o) + this.setOptionValue(i.toLowerCase(), o[i]); }, this.descendants = function() { for (var b = [], g = 0; g < this.forest.length; g++) b = b.concat(this.forest[g].descendants()); @@ -9044,8 +9046,8 @@ const j = { if (g == null) return b; for (var M = g.split(","), B = 0; B < M.length; B++) { - var i = M[B].trim(), o = "VARCHAR2(4000)", r = i.indexOf(" "); - 0 < r && (o = i.substring(r + 1).toUpperCase(), i = i.substring(0, r)), b[i] = o; + var r = M[B].trim(), o = "VARCHAR2(4000)", i = r.indexOf(" "); + 0 < i && (o = r.substring(i + 1).toUpperCase(), r = r.substring(0, i)), b[r] = o; } return b; }, this.objPrefix = function(b) { @@ -9054,28 +9056,28 @@ const j = { var M = ""; return this.getOptionValue("prefix") != null && (M = this.getOptionValue("prefix")), g = g + M, M != "" && (g = g + "_"), g.toLowerCase(); }; - let N = ""; - 0 < w.toLowerCase().indexOf("overridesettings") && ce(this), I != null && this.optionEQvalue("overrideSettings", !1) && (N = "# settings = " + I + ` + let x = ""; + 0 < w.toLowerCase().indexOf("overridesettings") && ce(this), I != null && this.optionEQvalue("overrideSettings", !1) && (x = "# settings = " + I + ` -`), this.input = N + w, this.forest = ce(this), this.getERD = function() { +`), this.input = x + w, this.forest = ce(this), this.getERD = function() { if (this.erd != null) return this.erd; let b = this.descendants(), g = { items: [] }; - for (let i = 0; i < b.length; i++) { - if (b[i].parseType() != "table") + for (let r = 0; r < b.length; r++) { + if (b[r].parseType() != "table") continue; - let o = { name: this.objPrefix("no schema") + b[i].parseName("") }, r = this.getOptionValue("schema"); - r == "" && (r = null), o.schema = r, o.columns = [], g.items.push(o); - let t = b[i].getGenIdColName(); + let o = { name: this.objPrefix("no schema") + b[r].parseName("") }, i = this.getOptionValue("schema"); + i == "" && (i = null), o.schema = i, o.columns = [], g.items.push(o); + let t = b[r].getGenIdColName(); t != null && o.columns.push({ name: t, datatype: "number" }); - for (let l = 0; l < b[i].children.length; l++) { - let u = b[i].children[l]; + for (let l = 0; l < b[r].children.length; l++) { + let u = b[r].children[l]; if (u.parseType() != "table" && (o.columns.push({ name: u.parseName(""), datatype: u.parseType((p) => !0) }), 0 < u.indexOf("file"))) { const p = u.parseName(); o.columns.push({ name: p + "_filename", datatype: "varchar2(255" + this.semantics() + ")" }), o.columns.push({ name: p + "_mimetype", datatype: "varchar2(255" + this.semantics() + ")" }), o.columns.push({ name: p + "_charset", datatype: "varchar2(255" + this.semantics() + ")" }), o.columns.push({ name: p + "_lastupd", datatype: "date" }); } } - const s = b[i].trimmedContent().toUpperCase(); + const s = b[r].trimmedContent().toUpperCase(); if ((this.optionEQvalue("rowkey", !0) || 0 < s.indexOf("/ROWKEY")) && o.columns.push({ name: "row_key", datatype: "varchar2(30 char)" }), (this.optionEQvalue("rowVersion", "yes") || 0 < s.indexOf("/ROWVERSION")) && o.columns.push({ name: "row_version", datatype: "integer" }), this.optionEQvalue("Audit Columns", "yes") || 0 < s.indexOf("/AUDITCOLS")) { let l = this.getOptionValue("createdcol"); o.columns.push({ name: l, datatype: this.getOptionValue("Date Data Type").toLowerCase() }); @@ -9094,18 +9096,18 @@ const j = { } } g.links = []; - for (let i = 0; i < b.length; i++) - if (b[i].parseType() == "table") { - b[i].toDDL(); - for (let o in b[i].fks) { - let r = b[i].fks[o], t = this.find(r); + for (let r = 0; r < b.length; r++) + if (b[r].parseType() == "table") { + b[r].toDDL(); + for (let o in b[r].fks) { + let i = b[r].fks[o], t = this.find(i); if (t == null) continue; let s = "id"; t.getExplicitPkNode() != null && (s = t.getExplicitPkNode().parseName()), g.links.push({ - source: this.objPrefix() + r, + source: this.objPrefix() + i, source_id: s, - target: this.objPrefix() + b[i].parseName(""), + target: this.objPrefix() + b[r].parseName(""), target_id: o }); } @@ -9116,8 +9118,8 @@ const j = { return this.ddl; var b = "", g = this.descendants(); if (this.optionEQvalue("Include Drops", "yes")) - for (let i = 0; i < g.length; i++) { - let o = g[i].generateDrop(); + for (let r = 0; r < g.length; r++) { + let o = g[r].generateDrop(); o != "" && (b += o); } if (this.optionEQvalue("rowkey", !0)) @@ -9125,8 +9127,8 @@ const j = { `; else - for (let i = 0; i < this.forest.length; i++) - if (0 < this.forest[i].trimmedContent().toUpperCase().indexOf("/ROWKEY")) { + for (let r = 0; r < this.forest.length; r++) + if (0 < this.forest[r].trimmedContent().toUpperCase().indexOf("/ROWKEY")) { b += `create sequence row_key_seq; `; @@ -9135,41 +9137,41 @@ const j = { b += `-- create tables `; - for (let i = 0; i < this.forest.length; i++) - b += this.forest[i].toDDL() + ` + for (let r = 0; r < this.forest.length; r++) + b += this.forest[r].toDDL() + ` `; let M = 0; - for (let i = 0; i < g.length; i++) { - let o = g[i].generateTrigger(); + for (let r = 0; r < g.length; r++) { + let o = g[r].generateTrigger(); o != "" && (M++ == 0 && (b += `-- triggers `), b += o + ` `); } M = 0; - for (let i = 0; i < g.length; i++) { - let o = g[i].restEnable(); + for (let r = 0; r < g.length; r++) { + let o = g[r].restEnable(); o != "" && (b += o + ` `); } M = 0; - for (let i = 0; i < g.length; i++) { - if (this.optionEQvalue("api", !1) && g[i].trimmedContent().toLowerCase().indexOf("/api") < 0) + for (let r = 0; r < g.length; r++) { + if (this.optionEQvalue("api", !1) && g[r].trimmedContent().toLowerCase().indexOf("/api") < 0) continue; - let o = g[i].generateTAPI(); + let o = g[r].generateTAPI(); o != "" && (M++ == 0 && (b += `-- APIs `), b += o + ` `); } M = 0; - for (let i = 0; i < this.forest.length; i++) { - let o = this.forest[i].generateView(); + for (let r = 0; r < this.forest.length; r++) { + let o = this.forest[r].generateView(); o != "" && (M++ == 0 && (b += `-- create views `), b += o + ` `); } M = 0; - for (let i = 0; i < this.forest.length; i++) { - let o = this.forest[i].generateData(this.data); + for (let r = 0; r < this.forest.length; r++) { + let o = this.forest[r].generateData(this.data); o != "" && (M++ == 0 && (b += `-- load data `), b += o + ` @@ -9183,8 +9185,8 @@ const j = { B = B.replace(/#.+/g, ` `), B = B.replace(/\/\*/g, "--<--"), B = B.replace(/\*\//g, "-->--"), B = B.replace(/\/* Non-default options:/g, ""), b += B, b += ` `; - for (let i = 0; i < this.unknownOptions().length; i++) - b += "*** Unknown setting: " + this.unknownOptions()[i] + ` + for (let r = 0; r < this.unknownOptions().length; r++) + b += "*** Unknown setting: " + this.unknownOptions()[r] + ` `; return b += ` Non-default options: @@ -9195,7 +9197,7 @@ const j = { return this.errors != null ? this.errors : (this.errors = Te.findErrors(this, this.fullInput), this.errors); }, this.version = oe; } - return x; + return N; }(); function Ie(d, h) { return Ae(d, h); diff --git a/dist/quick-sql.umd.cjs b/dist/quick-sql.umd.cjs index c29ac46..f9d038c 100644 --- a/dist/quick-sql.umd.cjs +++ b/dist/quick-sql.umd.cjs @@ -1,22 +1,22 @@ -(function(V,W){typeof exports=="object"&&typeof module<"u"?W(exports):typeof define=="function"&&define.amd?define(["exports"],W):(V=typeof globalThis<"u"?globalThis:V||self,W(V.quickSQL={}))})(this,function(V){"use strict";function W(d){return d==null?d:d.toUpperCase().endsWith("IES")?d.substring(0,d.length-3)+"y":d.toUpperCase().endsWith("ES")||d.toUpperCase().endsWith("S")?d.substring(0,d.length-1):d}function ve(d,h){let N='"';if(d==null)return null;let w=!1;const I="$#_ ";if(!d.startsWith(N)&&!w){const x=d;if(x.length>0&&"0"<=x[0]&&x[0]<="9")w=!0;else for(let b in x){const g=x[b];if(I.indexOf(g)<0&&(g<"0"||"9""u"&&(e[n]=a[n]);return e}function r(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var s=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?s=btoa:typeof Buffer=="function"&&(s=function(a){return new Buffer(a).toString("base64")})})(),i.prototype.bool=function(e){return e=o(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100c,"Chance: Max specified is out of range with fixed. Max should be, at most, "+c),e=o(e,{min:m,max:c}),a=this.integer({min:e.min*n,max:e.max*n});var C=(a/n).toFixed(e.fixed);return parseFloat(C)},i.prototype.integer=function(e){return e=o(e,{min:w,max:N}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},i.prototype.natural=function(e){if(e=o(e,{min:0,max:N}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),c=e.exclude.sort();for(var m in c){if(ne.max,"Chance: Min cannot be greater than Max.");var a=L.primes[L.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&L.primes.push(n);var c=L.primes.filter(function(m){return m>=e.min&&m<=e.max});return this.pick(c)},i.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},i.prototype.hex=function(e){e=o(e,{min:0,max:N,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},i.prototype.letter=function(e){e=o(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},i.prototype.string=function(e){e=o(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function u(e){this.c=e}u.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function p(e){this.c=e}p.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:b})},a:function(e){return e.character({pool:x})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function T(e){for(var a=[],n="identity",c=0;c"u")throw new M("Sorry, the buffer() function is not supported on your platform");e=o(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},i.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},i.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},i.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var c=function(y,_){return y.indexOf(_)!==-1};n&&(c=n.comparator||c);for(var m=[],C=0,P,f=a*50,A=B.call(arguments,2);m.lengthf)throw new RangeError("Chance: num is likely too large for sample set")}return m},i.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,c=[],m=B.call(arguments,2);for(n=Math.max(0,n),null;n--;null)c.push(e.apply(this,m));return c},i.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},i.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},i.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},i.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),c=n.length;return this.n(function(){var m=this.natural({max:--c}),C=n[m];return n[m]=n[c],C},Math.min(c,a))},i.prototype.shuffle=function(e){for(var a=[],n=0,c=Number(e.length),m=r(c),C=c-1,P,f=0;f0&&(c+=m)}if(c===0)throw new RangeError("Chance: No valid entries in array weights");var P=this.random()*c,f=0,A=-1,v;for(C=0;C0){if(P<=f){v=C;break}A=C}C===a.length-1&&(v=A)}var y=e[v];return n=typeof n>"u"?!1:n,n&&(e.splice(v,1),a.splice(v,1)),y},i.prototype.paragraph=function(e){e=o(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),c=e.linebreak===!0?` -`:" ";return n.join(c)},i.prototype.sentence=function(e){e=o(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,c,m=this.n(this.word,a);return c=m.join(" "),c=this.capitalize(c),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(c+=n),c},i.prototype.syllable=function(e){e=o(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",c="aeiou",m=n+c,C="",P,f=0;fe.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var P=e.minAge!==void 0?e.minAge:0,f=e.maxAge!==void 0?e.maxAge:100,A=new Date(c-f-1,n.getMonth(),n.getDate()),v=new Date(c-P,n.getMonth(),n.getDate());A.setDate(A.getDate()+1),v.setDate(v.getDate()+1),v.setMilliseconds(v.getMilliseconds()-1),e=o(e,{min:A,max:v})}else e=o(e,{year:c-a});return this.date(e)},i.prototype.cpf=function(e){e=o(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var c=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;c=11-c%11,c>=10&&(c=0);var m=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},i.prototype.cnpj=function(e){e=o(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var c=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;c=11-c%11,c<2&&(c=0);var m=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},i.prototype.first=function(e){return e=o(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},i.prototype.profession=function(e){return e=o(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},i.prototype.company=function(){return this.pick(this.get("company"))},i.prototype.gender=function(e){return e=o(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},i.prototype.last=function(e){if(e=o(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(c){a=a.concat(n[c])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},i.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},i.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},i.prototype.tld=function(){return this.pick(this.tlds())},i.prototype.twitter=function(){return"@"+this.word()},i.prototype.url=function(e){e=o(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},i.prototype.port=function(){return this.integer({min:0,max:65535})},i.prototype.locale=function(e){return e=o(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},i.prototype.locales=function(e){return e=o(e),e.region?this.get("locale_regions"):this.get("locale_languages")},i.prototype.loremPicsum=function(e){e=o(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},i.prototype.address=function(e){return e=o(e),this.natural({min:5,max:2e3})+" "+this.street(e)},i.prototype.altitude=function(e){return e=o(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},i.prototype.areacode=function(e){e=o(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},i.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},i.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},i.prototype.countries=function(){return this.get("countries")},i.prototype.country=function(e){e=o(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},i.prototype.depth=function(e){return e=o(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},i.prototype.geohash=function(e){return e=o(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},i.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},i.prototype.latitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=o(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},i.prototype.longitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=o(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},i.prototype.phone=function(e){var a=this,n,c=function(_){var F=[];return _.sections.forEach(function(z){F.push(a.string({pool:"0123456789",length:z}))}),_.area+F.join(" ")};e=o(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var m;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),m=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),m=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n);break;case"us":var C=this.areacode(e).toString(),P=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),f=this.natural({min:1e3,max:9999}).toString();m=e.formatted?C+" "+P+"-"+f:C+P+f;break;case"br":var A=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),v;e.mobile?v="9"+a.string({pool:"0123456789",length:4}):v=this.natural({min:2e3,max:5999}).toString();var y=a.string({pool:"0123456789",length:4});m=e.formatted?"("+A+") "+v+"-"+y:A+v+y;break}return m},i.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},i.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",c=e+a+n,m=this.natural({max:9}),C=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),P=m+C;return c+" "+P},i.prototype.counties=function(e){return e=o(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},i.prototype.county=function(e){return this.pick(this.counties(e)).name},i.prototype.provinces=function(e){return e=o(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},i.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},i.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},i.prototype.states=function(e){e=o(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),c=this.get("territories"),m=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(c)),e.armed_forces&&(a=a.concat(m));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},i.prototype.street=function(e){e=o(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},i.prototype.street_suffix=function(e){return e=o(e,{country:"us"}),this.pick(this.street_suffixes(e))},i.prototype.street_suffixes=function(e){return e=o(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},i.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},i.prototype.ampm=function(){return this.bool()?"am":"pm"},i.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=o(e,{american:!0,string:!1});var c=typeof e.min<"u"?e.min.getTime():1,m=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:c,max:m}))}else{var C=this.month({raw:!0}),P=C.days;e&&e.month&&(P=this.get("months")[(e.month%12+12)%12].days),e=o(e,{year:parseInt(this.year(),10),month:C.numeric-1,day:this.natural({min:1,max:P}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},i.prototype.hammertime=function(e){return this.date(e).getTime()},i.prototype.hour=function(e){return e=o(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},i.prototype.millisecond=function(){return this.natural({max:999})},i.prototype.minute=i.prototype.second=function(e){return e=o(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},i.prototype.month=function(e){e=o(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},i.prototype.months=function(){return this.get("months")},i.prototype.second=function(){return this.natural({max:59})},i.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},i.prototype.weekday=function(e){e=o(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},i.prototype.year=function(e){return e=o(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},i.prototype.cc=function(e){e=o(e);var a,n,c;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),c=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,c,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},i.prototype.cc_types=function(){return this.get("cc_types")},i.prototype.cc_type=function(e){e=o(e);var a=this.cc_types(),n=null;if(e.name){for(var c=0;c3&&(_?F=F.substr(0,3):F=F[0]+F.substr(2,2)),F.length<3&&(z=F,F=y.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+F),z},A=function(y,_,F){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return y.getFullYear().toString().substr(2)+z[y.getMonth()]+F.pad(y.getDate()+(_.toLowerCase()==="female"?40:0),2)},v=function(y){for(var _="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",F="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(F[_.indexOf(y[U])]):K+=j.indexOf(F[_.indexOf(y[U])]);return z[K%26]};return P=P.concat(f(c,!0),f(n),A(m,a,this),C.toUpperCase().split("")).join(""),P+=v(P.toUpperCase()),P.toUpperCase()},i.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;m--)c[m-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?c.reduce(function(C,P){return C+P}):c}else throw new RangeError("Chance: A type of die roll must be included")},i.prototype.guid=function(e){e=o(e,{version:5});var a="abcdef1234567890",n="ab89",c=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return c},i.prototype.hash=function(e){e=o(e,{length:40,casing:"lower"});var a=e.casing==="upper"?g.toUpperCase():g;return this.string({pool:a,length:e.length})},i.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},i.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,c,m=0,C=a.length;C>m;++m)c=+a[m],m%2===0&&(c*=2,c>9&&(c-=9)),n+=c;return n*9%10},i.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=o(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},i.prototype.file=function(e){var a=e||{},n="fileExtension",c=Object.keys(this.get("fileExtension")),m,C;if(m=this.word({length:a.length}),a.extension)return C=a.extension,m+"."+C;if(a.extensions){if(Array.isArray(a.extensions))return C=this.pickone(a.extensions),m+"."+C;if(a.extensions.constructor===Object){var P=a.extensions,f=Object.keys(P);return C=this.pickone(P[this.pickone(f)]),m+"."+C}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var A=a.fileType;if(c.indexOf(A)!==-1)return C=this.pickone(this.get(n)[A]),m+"."+C;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return C=this.pickone(this.get(n)[this.pickone(c)]),m+"."+C},i.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var c={fileData:this.buffer({length:a.fileSize}),fileName:n};return c};var L={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},D=Object.prototype.hasOwnProperty,E=Object.keys||function(e){var a=[];for(var n in e)D.call(e,n)&&a.push(n);return a};function k(e,a){for(var n=E(e),c,m=0,C=n.length;m0)return this.normal_pool(e);var a,n,c,m,C=e.mean,P=e.dev;do n=this.random()*2-1,c=this.random()*2-1,a=n*n+c*c;while(a>=1);return m=n*Math.sqrt(-2*Math.log(a)/a),P*m+C},i.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},i.prototype.radio=function(e){e=o(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},i.prototype.set=function(e,a){typeof e=="string"?L[e]=a:L=R(e,L)},i.prototype.tv=function(e){return this.radio(e)},i.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},i.prototype.emotion=function(){return this.pick(this.get("emotions"))},i.prototype.mersenne_twister=function(e){return new H(e)},i.prototype.blueimp_md5=function(){return new G};var H=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};H.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},H.prototype.init_by_array=function(e,a){var n=1,c=0,m,C;for(this.init_genrand(19650218),m=this.N>a?this.N:a;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1664525<<16)+(C&65535)*1664525)+e[c]+c,this.mt[n]>>>=0,n++,c++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),c>=a&&(c=0);for(m=this.N-1;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1566083941<<16)+(C&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},H.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},H.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},H.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},H.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},H.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},H.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var G=function(){};G.prototype.VERSION="1.0.1",G.prototype.safe_add=function(a,n){var c=(a&65535)+(n&65535),m=(a>>16)+(n>>16)+(c>>16);return m<<16|c&65535},G.prototype.bit_roll=function(e,a){return e<>>32-a},G.prototype.md5_cmn=function(e,a,n,c,m,C){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(c,C)),m),n)},G.prototype.md5_ff=function(e,a,n,c,m,C,P){return this.md5_cmn(a&n|~a&c,e,a,m,C,P)},G.prototype.md5_gg=function(e,a,n,c,m,C,P){return this.md5_cmn(a&c|n&~c,e,a,m,C,P)},G.prototype.md5_hh=function(e,a,n,c,m,C,P){return this.md5_cmn(a^n^c,e,a,m,C,P)},G.prototype.md5_ii=function(e,a,n,c,m,C,P){return this.md5_cmn(n^(a|~c),e,a,m,C,P)},G.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,c,m,C,P,f=1732584193,A=-271733879,v=-1732584194,y=271733878;for(n=0;n>5]>>>a%32&255);return n},G.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(c=this.binl_md5(c,e.length*8)),n=0;n<16;n+=1)m[n]=c[n]^909522486,C[n]=c[n]^1549556828;return P=this.binl_md5(m.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(C.concat(P),512+128))},G.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",c,m;for(m=0;m>>4&15)+a.charAt(c&15);return n},G.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},G.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},G.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},G.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},G.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},G.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},d.exports&&(h=d.exports=i),h.Chance=i,typeof importScripts<"u"&&(chance=new i,self.Chance=i),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=i,window.chance=new i)})()})(ne,ne.exports);var ye=ne.exports;const Se=Ae(ye);function ue(d,h,N,w){var I=new Se(ie);N==null&&console.log();let x=N.toUpperCase(),b=d.toUpperCase(),g=h.toUpperCase();if(w!=null&&0":o=="["?"]":o=="{"?"}":o=="("?")":o}}function h(I,x,b){for(var g=[],M=`(){}[]^-|!*+.><='",;:%@?/\\#~`+b,B=` -\r `,i=$(I,M+B),o=0,r=0,t=0,s=0;s0&&(u=g[g.length-1]),l==` -`?(r++,t=0):s>0&&i[s-1]!==` -`?t=t+i[s-1].length:t=0,o+=l.length,u!=null&&u.type=="comment"&&(u.value.lastIndexOf("*/")!=u.value.length-2||u.value=="/*/")){l=="*"||l=="/"?u.value=u.value+l:u.value="/* ... ",u.end=o,u!=null&&u.type=="comment"&&u.value.lastIndexOf("*/")==u.value.length-2&&u.value!="/*/"&&(u.value=I.substring(u.begin,u.end));continue}if(u!=null&&(u.type=="line-comment"||u.type=="dbtools-command")&&l!=` +(function(V,W){typeof exports=="object"&&typeof module<"u"?W(exports):typeof define=="function"&&define.amd?define(["exports"],W):(V=typeof globalThis<"u"?globalThis:V||self,W(V.quickSQL={}))})(this,function(V){"use strict";function W(d){return d==null?d:d.toUpperCase().endsWith("IES")?d.substring(0,d.length-3)+"y":d.toUpperCase().endsWith("ES")||d.toUpperCase().endsWith("S")?d.substring(0,d.length-1):d}function ve(d,h){let N='"';if(d==null)return null;let w=!1;const I="$#_ ";if(!d.startsWith(N)&&!w){const x=d;if(x.length>0&&"0"<=x[0]&&x[0]<="9")w=!0;else for(let b in x){const g=x[b];if(I.indexOf(g)<0&&(g<"0"||"9""u"&&(e[n]=a[n]);return e}function i(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var s=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?s=btoa:typeof Buffer=="function"&&(s=function(a){return new Buffer(a).toString("base64")})})(),r.prototype.bool=function(e){return e=o(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100c,"Chance: Max specified is out of range with fixed. Max should be, at most, "+c),e=o(e,{min:m,max:c}),a=this.integer({min:e.min*n,max:e.max*n});var C=(a/n).toFixed(e.fixed);return parseFloat(C)},r.prototype.integer=function(e){return e=o(e,{min:w,max:N}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},r.prototype.natural=function(e){if(e=o(e,{min:0,max:N}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),c=e.exclude.sort();for(var m in c){if(ne.max,"Chance: Min cannot be greater than Max.");var a=L.primes[L.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&L.primes.push(n);var c=L.primes.filter(function(m){return m>=e.min&&m<=e.max});return this.pick(c)},r.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},r.prototype.hex=function(e){e=o(e,{min:0,max:N,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},r.prototype.letter=function(e){e=o(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},r.prototype.string=function(e){e=o(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function u(e){this.c=e}u.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function p(e){this.c=e}p.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:b})},a:function(e){return e.character({pool:x})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function T(e){for(var a=[],n="identity",c=0;c"u")throw new M("Sorry, the buffer() function is not supported on your platform");e=o(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},r.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},r.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},r.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var c=function(y,_){return y.indexOf(_)!==-1};n&&(c=n.comparator||c);for(var m=[],C=0,P,f=a*50,A=B.call(arguments,2);m.lengthf)throw new RangeError("Chance: num is likely too large for sample set")}return m},r.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,c=[],m=B.call(arguments,2);for(n=Math.max(0,n),null;n--;null)c.push(e.apply(this,m));return c},r.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},r.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},r.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},r.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),c=n.length;return this.n(function(){var m=this.natural({max:--c}),C=n[m];return n[m]=n[c],C},Math.min(c,a))},r.prototype.shuffle=function(e){for(var a=[],n=0,c=Number(e.length),m=i(c),C=c-1,P,f=0;f0&&(c+=m)}if(c===0)throw new RangeError("Chance: No valid entries in array weights");var P=this.random()*c,f=0,A=-1,v;for(C=0;C0){if(P<=f){v=C;break}A=C}C===a.length-1&&(v=A)}var y=e[v];return n=typeof n>"u"?!1:n,n&&(e.splice(v,1),a.splice(v,1)),y},r.prototype.paragraph=function(e){e=o(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),c=e.linebreak===!0?` +`:" ";return n.join(c)},r.prototype.sentence=function(e){e=o(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,c,m=this.n(this.word,a);return c=m.join(" "),c=this.capitalize(c),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(c+=n),c},r.prototype.syllable=function(e){e=o(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",c="aeiou",m=n+c,C="",P,f=0;fe.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var P=e.minAge!==void 0?e.minAge:0,f=e.maxAge!==void 0?e.maxAge:100,A=new Date(c-f-1,n.getMonth(),n.getDate()),v=new Date(c-P,n.getMonth(),n.getDate());A.setDate(A.getDate()+1),v.setDate(v.getDate()+1),v.setMilliseconds(v.getMilliseconds()-1),e=o(e,{min:A,max:v})}else e=o(e,{year:c-a});return this.date(e)},r.prototype.cpf=function(e){e=o(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var c=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;c=11-c%11,c>=10&&(c=0);var m=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},r.prototype.cnpj=function(e){e=o(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var c=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;c=11-c%11,c<2&&(c=0);var m=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},r.prototype.first=function(e){return e=o(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},r.prototype.profession=function(e){return e=o(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},r.prototype.company=function(){return this.pick(this.get("company"))},r.prototype.gender=function(e){return e=o(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},r.prototype.last=function(e){if(e=o(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(c){a=a.concat(n[c])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},r.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},r.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},r.prototype.tld=function(){return this.pick(this.tlds())},r.prototype.twitter=function(){return"@"+this.word()},r.prototype.url=function(e){e=o(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},r.prototype.port=function(){return this.integer({min:0,max:65535})},r.prototype.locale=function(e){return e=o(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},r.prototype.locales=function(e){return e=o(e),e.region?this.get("locale_regions"):this.get("locale_languages")},r.prototype.loremPicsum=function(e){e=o(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},r.prototype.address=function(e){return e=o(e),this.natural({min:5,max:2e3})+" "+this.street(e)},r.prototype.altitude=function(e){return e=o(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.areacode=function(e){e=o(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},r.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},r.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},r.prototype.countries=function(){return this.get("countries")},r.prototype.country=function(e){e=o(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},r.prototype.depth=function(e){return e=o(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.geohash=function(e){return e=o(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},r.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},r.prototype.latitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=o(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.longitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=o(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.phone=function(e){var a=this,n,c=function(_){var F=[];return _.sections.forEach(function(z){F.push(a.string({pool:"0123456789",length:z}))}),_.area+F.join(" ")};e=o(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var m;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),m=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),m=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n);break;case"us":var C=this.areacode(e).toString(),P=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),f=this.natural({min:1e3,max:9999}).toString();m=e.formatted?C+" "+P+"-"+f:C+P+f;break;case"br":var A=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),v;e.mobile?v="9"+a.string({pool:"0123456789",length:4}):v=this.natural({min:2e3,max:5999}).toString();var y=a.string({pool:"0123456789",length:4});m=e.formatted?"("+A+") "+v+"-"+y:A+v+y;break}return m},r.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},r.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",c=e+a+n,m=this.natural({max:9}),C=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),P=m+C;return c+" "+P},r.prototype.counties=function(e){return e=o(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},r.prototype.county=function(e){return this.pick(this.counties(e)).name},r.prototype.provinces=function(e){return e=o(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},r.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},r.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},r.prototype.states=function(e){e=o(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),c=this.get("territories"),m=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(c)),e.armed_forces&&(a=a.concat(m));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},r.prototype.street=function(e){e=o(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},r.prototype.street_suffix=function(e){return e=o(e,{country:"us"}),this.pick(this.street_suffixes(e))},r.prototype.street_suffixes=function(e){return e=o(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},r.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},r.prototype.ampm=function(){return this.bool()?"am":"pm"},r.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=o(e,{american:!0,string:!1});var c=typeof e.min<"u"?e.min.getTime():1,m=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:c,max:m}))}else{var C=this.month({raw:!0}),P=C.days;e&&e.month&&(P=this.get("months")[(e.month%12+12)%12].days),e=o(e,{year:parseInt(this.year(),10),month:C.numeric-1,day:this.natural({min:1,max:P}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},r.prototype.hammertime=function(e){return this.date(e).getTime()},r.prototype.hour=function(e){return e=o(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.millisecond=function(){return this.natural({max:999})},r.prototype.minute=r.prototype.second=function(e){return e=o(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.month=function(e){e=o(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},r.prototype.months=function(){return this.get("months")},r.prototype.second=function(){return this.natural({max:59})},r.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},r.prototype.weekday=function(e){e=o(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},r.prototype.year=function(e){return e=o(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},r.prototype.cc=function(e){e=o(e);var a,n,c;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),c=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,c,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},r.prototype.cc_types=function(){return this.get("cc_types")},r.prototype.cc_type=function(e){e=o(e);var a=this.cc_types(),n=null;if(e.name){for(var c=0;c3&&(_?F=F.substr(0,3):F=F[0]+F.substr(2,2)),F.length<3&&(z=F,F=y.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+F),z},A=function(y,_,F){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return y.getFullYear().toString().substr(2)+z[y.getMonth()]+F.pad(y.getDate()+(_.toLowerCase()==="female"?40:0),2)},v=function(y){for(var _="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",F="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(F[_.indexOf(y[U])]):K+=j.indexOf(F[_.indexOf(y[U])]);return z[K%26]};return P=P.concat(f(c,!0),f(n),A(m,a,this),C.toUpperCase().split("")).join(""),P+=v(P.toUpperCase()),P.toUpperCase()},r.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;m--)c[m-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?c.reduce(function(C,P){return C+P}):c}else throw new RangeError("Chance: A type of die roll must be included")},r.prototype.guid=function(e){e=o(e,{version:5});var a="abcdef1234567890",n="ab89",c=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return c},r.prototype.hash=function(e){e=o(e,{length:40,casing:"lower"});var a=e.casing==="upper"?g.toUpperCase():g;return this.string({pool:a,length:e.length})},r.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},r.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,c,m=0,C=a.length;C>m;++m)c=+a[m],m%2===0&&(c*=2,c>9&&(c-=9)),n+=c;return n*9%10},r.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=o(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},r.prototype.file=function(e){var a=e||{},n="fileExtension",c=Object.keys(this.get("fileExtension")),m,C;if(m=this.word({length:a.length}),a.extension)return C=a.extension,m+"."+C;if(a.extensions){if(Array.isArray(a.extensions))return C=this.pickone(a.extensions),m+"."+C;if(a.extensions.constructor===Object){var P=a.extensions,f=Object.keys(P);return C=this.pickone(P[this.pickone(f)]),m+"."+C}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var A=a.fileType;if(c.indexOf(A)!==-1)return C=this.pickone(this.get(n)[A]),m+"."+C;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return C=this.pickone(this.get(n)[this.pickone(c)]),m+"."+C},r.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var c={fileData:this.buffer({length:a.fileSize}),fileName:n};return c};var L={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},D=Object.prototype.hasOwnProperty,E=Object.keys||function(e){var a=[];for(var n in e)D.call(e,n)&&a.push(n);return a};function k(e,a){for(var n=E(e),c,m=0,C=n.length;m0)return this.normal_pool(e);var a,n,c,m,C=e.mean,P=e.dev;do n=this.random()*2-1,c=this.random()*2-1,a=n*n+c*c;while(a>=1);return m=n*Math.sqrt(-2*Math.log(a)/a),P*m+C},r.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},r.prototype.radio=function(e){e=o(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},r.prototype.set=function(e,a){typeof e=="string"?L[e]=a:L=R(e,L)},r.prototype.tv=function(e){return this.radio(e)},r.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},r.prototype.emotion=function(){return this.pick(this.get("emotions"))},r.prototype.mersenne_twister=function(e){return new H(e)},r.prototype.blueimp_md5=function(){return new G};var H=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};H.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},H.prototype.init_by_array=function(e,a){var n=1,c=0,m,C;for(this.init_genrand(19650218),m=this.N>a?this.N:a;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1664525<<16)+(C&65535)*1664525)+e[c]+c,this.mt[n]>>>=0,n++,c++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),c>=a&&(c=0);for(m=this.N-1;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1566083941<<16)+(C&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},H.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},H.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},H.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},H.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},H.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},H.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var G=function(){};G.prototype.VERSION="1.0.1",G.prototype.safe_add=function(a,n){var c=(a&65535)+(n&65535),m=(a>>16)+(n>>16)+(c>>16);return m<<16|c&65535},G.prototype.bit_roll=function(e,a){return e<>>32-a},G.prototype.md5_cmn=function(e,a,n,c,m,C){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(c,C)),m),n)},G.prototype.md5_ff=function(e,a,n,c,m,C,P){return this.md5_cmn(a&n|~a&c,e,a,m,C,P)},G.prototype.md5_gg=function(e,a,n,c,m,C,P){return this.md5_cmn(a&c|n&~c,e,a,m,C,P)},G.prototype.md5_hh=function(e,a,n,c,m,C,P){return this.md5_cmn(a^n^c,e,a,m,C,P)},G.prototype.md5_ii=function(e,a,n,c,m,C,P){return this.md5_cmn(n^(a|~c),e,a,m,C,P)},G.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,c,m,C,P,f=1732584193,A=-271733879,v=-1732584194,y=271733878;for(n=0;n>5]>>>a%32&255);return n},G.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(c=this.binl_md5(c,e.length*8)),n=0;n<16;n+=1)m[n]=c[n]^909522486,C[n]=c[n]^1549556828;return P=this.binl_md5(m.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(C.concat(P),512+128))},G.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",c,m;for(m=0;m>>4&15)+a.charAt(c&15);return n},G.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},G.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},G.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},G.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},G.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},G.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},d.exports&&(h=d.exports=r),h.Chance=r,typeof importScripts<"u"&&(chance=new r,self.Chance=r),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=r,window.chance=new r)})()})(ne,ne.exports);var ye=ne.exports;const Se=Ae(ye);function ue(d,h,N,w){var I=new Se(ie);N==null&&console.log();let x=N.toUpperCase(),b=d.toUpperCase(),g=h.toUpperCase();if(w!=null&&0":o=="["?"]":o=="{"?"}":o=="("?")":o}}function h(I,x,b){for(var g=[],M=`(){}[]^-|!*+.><='",;:%@?/\\#~`+b,B=` +\r `,r=$(I,M+B),o=0,i=0,t=0,s=0;s0&&(u=g[g.length-1]),l==` +`?(i++,t=0):s>0&&r[s-1]!==` +`?t=t+r[s-1].length:t=0,o+=l.length,u!=null&&u.type=="comment"&&(u.value.lastIndexOf("*/")!=u.value.length-2||u.value=="/*/")){l=="*"||l=="/"?u.value=u.value+l:u.value="/* ... ",u.end=o,u!=null&&u.type=="comment"&&u.value.lastIndexOf("*/")==u.value.length-2&&u.value!="/*/"&&(u.value=I.substring(u.begin,u.end));continue}if(u!=null&&(u.type=="line-comment"||u.type=="dbtools-command")&&l!=` `){u.value=u.value+l;continue}if(u!=null&&(u.type=="line-comment"||u.type=="dbtools-command")&&l==` `&&(u.end=u.begin+u.value.length),u!=null&&u.type=="quoted-string"&&!(u.isStandardLiteral()||u.isAltLiteral())){u.value=u.value+l,u.end=u.begin+u.value.length;continue}if(!(u!=null&&u.type=="dquoted-string"&&l!='"'&&!(u.value.endsWith('"')&&u.value.length>1))){if(u!=null&&u.type=="dquoted-string"&&l=='"'){u.end=o,u.value=I.substring(u.begin,u.end);continue}if(!(u!=null&&u.type=="bquoted-string"&&l!="`"&&!(u.value.endsWith("`")&&u.value.length>1))){if(u!=null&&u.type=="bquoted-string"&&l=="`"){u.end=o,u.value=I.substring(u.begin,u.end);continue}if(l=="*"&&u!=null&&u.value=="/"){u.value=u.value+l,u.end=u.begin+u.value.length,u.type="comment";continue}if(l=="-"&&u!=null&&u.value=="-"){u.value=u.value+l,u.type="line-comment";continue}if((l.toUpperCase()=="REM"||l.toUpperCase()=="REMA"||l.toUpperCase()=="REMAR"||l.toUpperCase()=="REMARK"||l.toUpperCase()=="PRO"||l.toUpperCase()=="PROM"||l.toUpperCase()=="PROMP"||l.toUpperCase()=="PROMPT")&&(u==null||u.value==` -`||u.value=="\r")){g.push(new d(l,o-l.length,-9,"line-comment",r,t));continue}if(l.toUpperCase()=="SODA"&&(u==null||u.value==` -`||u.value=="\r")){g.push(new d(l,o-l.length,-9,"dbtools-command",r,t));continue}if(u!=null&&u.type=="identifier"&&u.end==-11&&u.value.indexOf("@")==0&&!(l==` +`||u.value=="\r")){g.push(new d(l,o-l.length,-9,"line-comment",i,t));continue}if(l.toUpperCase()=="SODA"&&(u==null||u.value==` +`||u.value=="\r")){g.push(new d(l,o-l.length,-9,"dbtools-command",i,t));continue}if(u!=null&&u.type=="identifier"&&u.end==-11&&u.value.indexOf("@")==0&&!(l==` `||l=="\r")){u.value=u.value+l;continue}if(u!=null&&u.type=="identifier"&&u.end==-11&&u.value.indexOf("@")==0&&(l==` -`||l=="\r")){u.end=o-1,g.push(new d(l,o-1,o,"ws",r,t));continue}if(x&&l=="'"){u!=null&&(u.value.toUpperCase()=="Q"||u.value.toUpperCase()=="N"||u.value.toUpperCase()=="U"||u.value.toUpperCase()=="NQ")?(u.value+=l,u.type="quoted-string"):g.push(new d(l,o-1,-10,"quoted-string",r,t));continue}if(x&&l=='"'){g.push(new d(l,o-1,-11,"dquoted-string",r,t));continue}if(l=="`"&&0<=M.indexOf("`")){g.push(new d(l,o-1,-11,"bquoted-string",r,t));continue}if(l.length==1&&0<=M.indexOf(l)){g.push(new d(l,o-1,o,"operation",r,t));continue}if(l.length==1&&0<=B.indexOf(l)){g.push(new d(l,o-1,o,"ws",r,t));continue}if("0"<=l.charAt(0)&&l.charAt(0)<="9"){N(l,g,o-l.length,r)||(l.charAt(l.length-1)=="K"||l.charAt(l.length-1)=="k"||l.charAt(l.length-1)=="M"||l.charAt(l.length-1)=="m"||l.charAt(l.length-1)=="G"||l.charAt(l.length-1)=="g"||l.charAt(l.length-1)=="T"||l.charAt(l.length-1)=="t"||l.charAt(l.length-1)=="P"||l.charAt(l.length-1)=="p"||l.charAt(l.length-1)=="E"||l.charAt(l.length-1)=="e"?(g.push(new d(l.substring(0,l.length-1),o-l.length,o-1,"constant.numeric",r,t)),g.push(new d(l.substring(l.length-1),o-1,o,"constant.numeric",r,t))):g.push(new d(l,o-l.length,o,"constant.numeric",r,t)));continue}var p="identifier";s+10){var u=g[g.length-1];u.end=I.length}return g}function N(I,x,b,g){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var M=$(I,"efd"),B=0;B")==0||r.indexOf("<")==0)&&(r=r.substring(1).trim());const l=r.toLowerCase();if(l.indexOf("view ")==0){var u=r.split(" ");return u[1]}r=b(r," d");var p=r.indexOf("/");0="0"&&T<="9"&&(r="x"+r),Te(se(r))},this.parseType=function(r){if(this.children!=null&&0!0)),k}return p}00){var u=g[g.length-1];u.end=I.length}return g}function N(I,x,b,g){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var M=$(I,"efd"),B=0;B")==0||i.indexOf("<")==0)&&(i=i.substring(1).trim());const l=i.toLowerCase();if(l.indexOf("view ")==0){var u=i.split(" ");return u[1]}i=b(i," d");var p=i.indexOf("/");0="0"&&T<="9"&&(i="x"+i),Te(se(i))},this.parseType=function(i){if(this.children!=null&&0!0)),k}return p}0");return t==0},this.getExplicitPkNode=function(){for(var r=0;rr.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(d.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),d.optionEQvalue("prefixPKwithTname","yes")&&(t=W(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let r=this.getGenIdColName();if(r==null){let t=this.getExplicitPkNode();return t==null?null:t.parseName()}return r},this.singleDDL=function(){if(this.children.length==0&&0");return t==0},this.getExplicitPkNode=function(){for(var i=0;ii.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(d.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),d.optionEQvalue("prefixPKwithTname","yes")&&(t=W(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let i=this.getGenIdColName();if(i==null){let t=this.getExplicitPkNode();return t==null?null:t.parseName()}return i},this.singleDDL=function(){if(this.children.length==0&&0!0):C==null&&(C=d.find(a),C.isMany2One()&!a.endsWith("_id")&&(n=a,a=W(a),P="_id")),u=h+" ".repeat(this.maxChildNameLen()-a.length),s+=h+a+P+u+c+` `,s+=h+h+" ".repeat(this.maxChildNameLen())+"constraint "+l+"_"+a+`_fk -`;let f="";0<=r.indexOf("/CASCADE")&&(f=" on delete cascade");let A="";for(let v in this.children){let y=this.children[v];if(a==y.parseName()){let _=y.trimmedContent().toUpperCase();(0<=_.indexOf("/NN")||0<=_.indexOf("/NOTNULL"))&&(A=" NOT NULL".toLowerCase()),0<=_.indexOf("/CASCADE")&&(f=" on delete cascade");break}}s+=h+h+" ".repeat(this.maxChildNameLen())+"references "+d.objPrefix()+n+f+A+`, -`}if(d.optionEQvalue("rowkey",!0)||0TRUE, p_object=>'"+u+`'); end; / -`},this.generateTrigger=function(){if(this.parseType()!="table")return"";let r="";d.optionEQvalue("editionable","yes")&&(r=" editionable");let t=d.objPrefix()+this.parseName();var s="create or replace"+r+" trigger "+t.toLowerCase()+`_BIU +`},this.generateTrigger=function(){if(this.parseType()!="table")return"";let i="";d.optionEQvalue("editionable","yes")&&(i=" editionable");let t=d.objPrefix()+this.parseName();var s="create or replace"+i+" trigger "+t.toLowerCase()+`_BIU `.toLowerCase();s+=` before insert or update `,s+=" on "+t.toLowerCase()+` `,s+=` for each row @@ -133,32 +133,32 @@ end; `,u=!0}return u?(s+="end "+t.toLowerCase()+`_BIU; / -`.toLowerCase(),s):""},this.procDecl=function(r){let t="";r!="get"&&(t=" default null");let s="out";r!="get"&&(s=" in");let l=h+"procedure "+r+`_row ( +`.toLowerCase(),s):""},this.procDecl=function(i){let t="";i!="get"&&(t=" default null");let s="out";i!="get"&&(s=" in");let l=h+"procedure "+i+`_row ( `;l+=h+h+"p_id in number"+t;for(var u in this.fks){let T=this.fks[u],S="number",L=d.find(T);L!=null&&L.getExplicitPkNode()!=null&&(S=L.getExplicitPkNode().parseType(D=>!0)),l+=`, `,l+=h+h+"P_"+u+" "+s+" "+S+t}for(let T=0;T!0),(r=="insert"||r=="update")&&(s+=`, +`;i=="insert"&&(l=h+h+"insert into "+t+` ( +`,l+=h+h+h+"id"),i=="update"&&(l=h+h+"update "+t+` set +`,l+=h+h+h+"id = p_id"),s+=l;for(let S in this.fks){let L=this.fks[S],D=d.find(L);D!=null&&D.getExplicitPkNode()!=null&&D.getExplicitPkNode().parseType(k=>!0),(i=="insert"||i=="update")&&(s+=`, `);let E=h+h+h+"P_"+S+" := c1."+S+`; -`;r=="insert"&&(E=h+h+h+S),r=="update"&&(E=h+h+h+S+" = P_"+S+` -`),s+=E}for(var u=0;us.children.length>0&&s.parseName()==t&&!s.isArray())},this.generateSelectJsonBottomUp=function(r){throw new Error("generateSelectJsonBottomUp() not implemented yet")},this.one2many2oneUnsupoported="one to many to one is not supported",this.generateSelectJsonTopDown=function(r){var t=this.parseName();let s="";this.getExplicitPkNode==null&&(s+=r+"'"+this.getGenIdColName()+"' : "+t+"."+this.getGenIdColName()+`, -`);for(var l=0;ls.children.length>0&&s.parseName()==t&&!s.isArray())},this.generateSelectJsonBottomUp=function(i){throw new Error("generateSelectJsonBottomUp() not implemented yet")},this.one2many2oneUnsupoported="one to many to one is not supported",this.generateSelectJsonTopDown=function(i){var t=this.parseName();let s="";this.getExplicitPkNode==null&&(s+=i+"'"+this.getGenIdColName()+"' : "+t+"."+this.getGenIdColName()+`, +`);for(var l=0;l!0)}),0!0)}),0--"),B=B.replace(/\/* Non-default options:/g,""),b+=B,b+=` -`;for(let i=0;i Date: Tue, 6 Feb 2024 13:03:30 -0800 Subject: [PATCH 19/22] issue 51 --- dist/quick-sql.js | 404 +++++++++++++++++++++-------------------- dist/quick-sql.umd.cjs | 94 +++++----- src/tree.js | 13 +- test/small_tests.js | 25 ++- 4 files changed, 278 insertions(+), 258 deletions(-) diff --git a/dist/quick-sql.js b/dist/quick-sql.js index def11c0..bd84ae9 100644 --- a/dist/quick-sql.js +++ b/dist/quick-sql.js @@ -5,22 +5,22 @@ function fe(d, h) { let N = '"'; if (d == null) return null; - let w = !1; + let D = !1; const I = "$#_ "; - if (!d.startsWith(N) && !w) { + if (!d.startsWith(N) && !D) { const x = d; if (x.length > 0 && "0" <= x[0] && x[0] <= "9") - w = !0; + D = !0; else for (let b in x) { const g = x[b]; if (I.indexOf(g) < 0 && (g < "0" || "9" < g && g < "A" || "Z" < g && g < "a" || "z" < g)) { - w = !0; + D = !0; break; } } } - return (d.startsWith("_") || d.startsWith("$") || d.startsWith("#")) && (w = !0), w || (N = ""), N + d + N; + return (d.startsWith("_") || d.startsWith("$") || d.startsWith("#")) && (D = !0), D || (N = ""), N + d + N; } function he(d) { if (d == null) @@ -31,10 +31,10 @@ function he(d) { return h.indexOf('"') == 0 || (h = h.replace(/ /g, "_")), h; } function K(d, h, N) { - let w = !1; - N == null && (N = ""), d.indexOf('"') == 0 && (w = !0, d = d.substring(1, d.length - 1)), h.indexOf('"') == 0 && (w = !0, h = h.substring(1, h.length - 1)), N.indexOf('"') == 0 && (w = !0, N = N.substring(1, N.length - 1)); + let D = !1; + N == null && (N = ""), d.indexOf('"') == 0 && (D = !0, d = d.substring(1, d.length - 1)), h.indexOf('"') == 0 && (D = !0, h = h.substring(1, h.length - 1)), N.indexOf('"') == 0 && (D = !0, N = N.substring(1, N.length - 1)); let I = d + h + N; - return w ? I = '"' + I + '"' : I = I.toLowerCase(), I; + return D ? I = '"' + I + '"' : I = I.toLowerCase(), I; } var le = function() { var d = [ @@ -76,7 +76,7 @@ var le = function() { "\uC804\uB3C4\uC790", "\uD310\uB9E4\uC6D0" ]; - function w(I, x) { + function D(I, x) { if (typeof x != "string" || I.substring(0, 2).toLowerCase() == "en") return x; x.indexOf("'") == 0 && (x = x.substring(1, x.length - 1)); @@ -87,7 +87,7 @@ var le = function() { } return 0 <= b && I.substring(0, 2).toLowerCase() == "jp" && b < h.length ? "'" + h[b] + "'" : 0 <= b && I.substring(0, 2).toLowerCase() == "kr" && b < N.length ? "'" + N[b] + "'" : x; } - return w; + return D; }(); function be(d) { return d && d.__esModule && Object.prototype.hasOwnProperty.call(d, "default") ? d.default : d; @@ -95,7 +95,7 @@ function be(d) { var ie = { exports: {} }; (function(d, h) { (function() { - var N = 9007199254740992, w = -N, I = "0123456789", x = "abcdefghijklmnopqrstuvwxyz", b = x.toUpperCase(), g = I + "abcdef"; + var N = 9007199254740992, D = -N, I = "0123456789", x = "abcdefghijklmnopqrstuvwxyz", b = x.toUpperCase(), g = I + "abcdef"; function M(e) { this.name = "UnsupportedError", this.message = e || "This feature is not supported on this platform"; } @@ -183,7 +183,7 @@ var ie = { exports: {} }; var C = (a / n).toFixed(e.fixed); return parseFloat(C); }, r.prototype.integer = function(e) { - return e = o(e, { min: w, max: N }), t(e.min > e.max, "Chance: Min cannot be greater than Max."), Math.floor(this.random() * (e.max - e.min + 1) + e.min); + return e = o(e, { min: D, max: N }), t(e.min > e.max, "Chance: Min cannot be greater than Max."), Math.floor(this.random() * (e.max - e.min + 1) + e.min); }, r.prototype.natural = function(e) { if (e = o(e, { min: 0, max: N }), typeof e.numerals == "number" && (t(e.numerals < 1, "Chance: Numerals cannot be less than one."), e.min = Math.pow(10, e.numerals - 1), e.max = Math.pow(10, e.numerals) - 1), t(e.min < 0, "Chance: Min cannot be less than zero."), e.exclude) { t(!Array.isArray(e.exclude), "Chance: exclude must be an array."); @@ -200,11 +200,11 @@ var ie = { exports: {} }; return this.integer(e); }, r.prototype.prime = function(e) { e = o(e, { min: 0, max: 1e4 }), t(e.min < 0, "Chance: Min cannot be less than zero."), t(e.min > e.max, "Chance: Min cannot be greater than Max."); - var a = L.primes[L.primes.length - 1]; + var a = E.primes[E.primes.length - 1]; if (e.max > a) for (var n = a + 2; n <= e.max; ++n) - this.is_prime(n) && L.primes.push(n); - var c = L.primes.filter(function(m) { + this.is_prime(n) && E.primes.push(n); + var c = E.primes.filter(function(m) { return m >= e.min && m <= e.max; }); return this.pick(c); @@ -1216,7 +1216,7 @@ var ie = { exports: {} }; }; return c; }; - var L = { + var E = { firstNames: { male: { en: ["James", "John", "Robert", "Michael", "William", "David", "Richard", "Joseph", "Charles", "Thomas", "Christopher", "Daniel", "Matthew", "George", "Donald", "Anthony", "Paul", "Mark", "Edward", "Steven", "Kenneth", "Andrew", "Brian", "Joshua", "Kevin", "Ronald", "Timothy", "Jason", "Jeffrey", "Frank", "Gary", "Ryan", "Nicholas", "Eric", "Stephen", "Jacob", "Larry", "Jonathan", "Scott", "Raymond", "Justin", "Brandon", "Gregory", "Samuel", "Benjamin", "Patrick", "Jack", "Henry", "Walter", "Dennis", "Jerry", "Alexander", "Peter", "Tyler", "Douglas", "Harold", "Aaron", "Jose", "Adam", "Arthur", "Zachary", "Carl", "Nathan", "Albert", "Kyle", "Lawrence", "Joe", "Willie", "Gerald", "Roger", "Keith", "Jeremy", "Terry", "Harry", "Ralph", "Sean", "Jesse", "Roy", "Louis", "Billy", "Austin", "Bruce", "Eugene", "Christian", "Bryan", "Wayne", "Russell", "Howard", "Fred", "Ethan", "Jordan", "Philip", "Alan", "Juan", "Randy", "Vincent", "Bobby", "Dylan", "Johnny", "Phillip", "Victor", "Clarence", "Ernest", "Martin", "Craig", "Stanley", "Shawn", "Travis", "Bradley", "Leonard", "Earl", "Gabriel", "Jimmy", "Francis", "Todd", "Noah", "Danny", "Dale", "Cody", "Carlos", "Allen", "Frederick", "Logan", "Curtis", "Alex", "Joel", "Luis", "Norman", "Marvin", "Glenn", "Tony", "Nathaniel", "Rodney", "Melvin", "Alfred", "Steve", "Cameron", "Chad", "Edwin", "Caleb", "Evan", "Antonio", "Lee", "Herbert", "Jeffery", "Isaac", "Derek", "Ricky", "Marcus", "Theodore", "Elijah", "Luke", "Jesus", "Eddie", "Troy", "Mike", "Dustin", "Ray", "Adrian", "Bernard", "Leroy", "Angel", "Randall", "Wesley", "Ian", "Jared", "Mason", "Hunter", "Calvin", "Oscar", "Clifford", "Jay", "Shane", "Ronnie", "Barry", "Lucas", "Corey", "Manuel", "Leo", "Tommy", "Warren", "Jackson", "Isaiah", "Connor", "Don", "Dean", "Jon", "Julian", "Miguel", "Bill", "Lloyd", "Charlie", "Mitchell", "Leon", "Jerome", "Darrell", "Jeremiah", "Alvin", "Brett", "Seth", "Floyd", "Jim", "Blake", "Micheal", "Gordon", "Trevor", "Lewis", "Erik", "Edgar", "Vernon", "Devin", "Gavin", "Jayden", "Chris", "Clyde", "Tom", "Derrick", "Mario", "Brent", "Marc", "Herman", "Chase", "Dominic", "Ricardo", "Franklin", "Maurice", "Max", "Aiden", "Owen", "Lester", "Gilbert", "Elmer", "Gene", "Francisco", "Glen", "Cory", "Garrett", "Clayton", "Sam", "Jorge", "Chester", "Alejandro", "Jeff", "Harvey", "Milton", "Cole", "Ivan", "Andre", "Duane", "Landon"], @@ -7027,14 +7027,14 @@ var ie = { exports: {} }; "sadness", "fear" ] - }, D = Object.prototype.hasOwnProperty, E = Object.keys || function(e) { + }, w = Object.prototype.hasOwnProperty, k = Object.keys || function(e) { var a = []; for (var n in e) - D.call(e, n) && a.push(n); + w.call(e, n) && a.push(n); return a; }; - function k(e, a) { - for (var n = E(e), c, m = 0, C = n.length; m < C; m++) + function L(e, a) { + for (var n = k(e), c, m = 0, C = n.length; m < C; m++) c = n[m], a[c] = e[c] || a[c]; } function O(e, a) { @@ -7043,10 +7043,10 @@ var ie = { exports: {} }; } function R(e, a) { var n = Array.isArray(e), c = a || (n ? new Array(e.length) : {}); - return n ? O(e, c) : k(e, c), c; + return n ? O(e, c) : L(e, c), c; } r.prototype.get = function(e) { - return R(L[e]); + return R(E[e]); }, r.prototype.mac_address = function(e) { e = o(e), e.separator || (e.separator = e.networkVersion ? "." : ":"); var a = "ABCDEF1234567890", n = ""; @@ -7095,7 +7095,7 @@ var ie = { exports: {} }; } return a + this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }) + this.character({ alpha: !0, casing: "upper" }); }, r.prototype.set = function(e, a) { - typeof e == "string" ? L[e] = a : L = R(e, L); + typeof e == "string" ? E[e] = a : E = R(e, E); }, r.prototype.tv = function(e) { return this.radio(e); }, r.prototype.cnpj = function() { @@ -7210,15 +7210,15 @@ var ie = { exports: {} }; })(ie, ie.exports); var pe = ie.exports; const ge = /* @__PURE__ */ be(pe); -function se(d, h, N, w) { +function se(d, h, N, D) { var I = new ge(te); N == null && console.log(); let x = N.toUpperCase(), b = d.toUpperCase(), g = h.toUpperCase(); - if (w != null && 0 < w.length) { - let i = 0, t = w.length; + if (D != null && 0 < D.length) { + let i = 0, t = D.length; var M = "'"; (x.startsWith("INTEGER") || x.startsWith("NUMBER") || x.startsWith("DATE")) && (M = ""); - let s = w[Math.floor(X() * (t - i)) + i]; + let s = D[Math.floor(X() * (t - i)) + i]; return s.toLowerCase && s.toLowerCase() == "null" && (M = ""), s.replaceAll && (s = s.replaceAll("'", "''")), M + s + M; } if (g == "NAME" && 0 <= b.indexOf("DEPARTMENT")) { @@ -7266,17 +7266,17 @@ function X() { } var $ = function() { function d(h, N) { - for (var w = [], I = "", x = 0; x < h.length; x++) { - for (var b = h.charAt(x), g = w.length, M = 0; M < N.length; M++) { + for (var D = [], I = "", x = 0; x < h.length; x++) { + for (var b = h.charAt(x), g = D.length, M = 0; M < N.length; M++) { var B = N.charAt(M); if (b == B) { - 0 < I.length && w.push(I), w.push(b), I = ""; + 0 < I.length && D.push(I), D.push(b), I = ""; continue; } } - g == w.length && (I = I + b); + g == D.length && (I = I + b); } - return 0 < I.length && w.push(I), w; + return 0 < I.length && D.push(I), D; } return d; }(), Z = function() { @@ -7425,7 +7425,7 @@ var $ = function() { } return !0; } - function w(I, x, b, g) { + function D(I, x, b, g) { for (var M = [], B = h(I, b, g), r = null, o = 0; o < B.length; o++) { var i = B[o]; if (i.type == "quoted-string") { @@ -7456,7 +7456,7 @@ var $ = function() { } return M; } - return w; + return D; }(); function ve(d) { const h = { @@ -7575,7 +7575,7 @@ function ve(d) { } let ce = function() { let d, h = " ", N = ["string", "varchar2", "varchar", "vc", "char"]; - var w = ["yn", "boolean", "bool"]; + var D = ["yn", "boolean", "bool"]; function I(M, B, r) { this.line = M, this.parent = r, this.children = [], r != null && r.children.push(this), this.fks = null, this.findChild = function(i) { for (var t = 0; t < this.children.length; t++) @@ -7647,16 +7647,16 @@ let ce = function() { var p = i.indexOf("/"); 0 < p && (i = i.substring(0, p)), i = i.trim(), i = b(i, " integer"), i = b(i, " number"), i = b(i, " int"), i = b(i, " num"), i = b(i, " clob"), i = b(i, " blob"), i = b(i, " json"), i = b(i, " file"), i = b(i, " date"), i = b(i, " tstz"), i = b(i, " tswtz"), i = b(i, " tswltz"), i = b(i, " ts"), i = i.replace(/ vc\d+k/g, ""), i = i.replace(/ vc\(\d+\)/g, ""), i = i.replace(/ vc\d+/g, ""); for (let S in N) { - let L = l.indexOf(" " + N[S]); - if (0 < L) { - i = i.substring(0, L) + i.substring(L + N[S].length + 1); + let E = l.indexOf(" " + N[S]); + if (0 < E) { + i = i.substring(0, E) + i.substring(E + N[S].length + 1); break; } } - for (let S in w) { - let L = l.indexOf(" " + w[S]); - if (0 < L) { - i = i.substring(0, L) + i.substring(L + w[S].length + 1); + for (let S in D) { + let E = l.indexOf(" " + D[S]); + if (0 < E) { + i = i.substring(0, E) + i.substring(E + D[S].length + 1); break; } } @@ -7678,55 +7678,57 @@ let ce = function() { const u = this.indexOf("vc", !0); if (0 < u) { t[u].begin, t[u].end; - let E = t[u].value.substring(2); - E == "" && this.indexOf("(") == u + 1 && (E = t[u + 2].value), E != "" && (l = parseInt(E)), t[u].value.endsWith("k") && (l < 32 ? l = l * 1024 : l = l * 1024 - 1); + let L = t[u].value.substring(2); + L == "" && this.indexOf("(") == u + 1 && (L = t[u + 2].value), L != "" && (l = parseInt(L)), t[u].value.endsWith("k") && (l < 32 ? l = l * 1024 : l = l * 1024 - 1); } var p = "varchar2(" + l + s + ")"; i == "plsql" && (p = "varchar2"), t[0].value.endsWith("_id") && u < 0 && this.indexOf("date") < 0 && (p = "number"), t[1] && t[1].value == "id" && (p = "number"), t[0].value == "quantity" && (p = "number"), t[0].value.endsWith("_number") && (p = "number"), t[0].value.endsWith("id") && u < 0 && this.indexOf("/") + 1 == this.indexOf("pk") && (p = "number"), this.occursBeforeOption("int", !0) && (p = "integer"), 0 < u && (p = "varchar2(" + l + s + ")", i == "plsql" && (p = "varchar2")); const T = K(r.parseName(), "_", this.parseName()); - (t[0].value.endsWith("_yn") || t[0].value.startsWith("is_")) && (p = "varchar2(1 char) constraint " + K(d.objPrefix(), T) + ` -`, p += h + h + " ".repeat(r.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"); - for (let E in w) - if (0 < this.indexOf(w[E])) { - p = "varchar2(1 char) constraint " + K(d.objPrefix(), T) + ` -`, p += h + h + " ".repeat(r.maxChildNameLen()) + "check (" + this.parseName() + " in ('Y','N'))"; + 0 < this.indexOf("default"); + let S = ""; + (t[0].value.endsWith("_yn") || t[0].value.startsWith("is_")) && (p = "varchar2(1 char)", S = ` +` + h + h + " ".repeat(r.maxChildNameLen()) + "constraint " + K(d.objPrefix(), T) + " check (" + this.parseName() + " in ('Y','N'))"); + for (let L in D) + if (0 < this.indexOf(D[L])) { + p = "varchar2(1 char)", S = ` +` + h + h + " ".repeat(r.maxChildNameLen()) + "constraint " + K(d.objPrefix(), T) + " check (" + this.parseName() + " in ('Y','N'))"; break; } this.indexOf("phone_number") == 0 && (p = "number"); - let S = this.indexOf("num", !0); - 0 < S && (p = "number"); - let L = this.indexOf(")"); - if (0 < S && 0 < L && (p += this.content.toLowerCase().substring(t[S + 1].begin, t[L].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value.startsWith("created") || t[0].value.startsWith("updated")) && (p = d.getOptionValue("Date Data Type").toLowerCase()), u < 0 && (this.occursBeforeOption("clob") && (p = "clob"), (this.occursBeforeOption("blob") || this.occursBeforeOption("file")) && (p = "blob"), this.occursBeforeOption("json") && (p = "clob check (" + this.parseName() + " is json)")), this.occursBeforeOption("tswltz") && this.indexOf("/") ? p = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : this.occursBeforeOption("tswtz") || this.occursBeforeOption("tstz") ? p = "TIMESTAMP WITH TIME ZONE".toLowerCase() : this.occursBeforeOption("ts") && (p = "TIMESTAMP".toLowerCase()), i) { + let E = this.indexOf("num", !0); + 0 < E && (p = "number"); + let w = this.indexOf(")"); + if (0 < E && 0 < w && (p += this.content.toLowerCase().substring(t[E + 1].begin, t[w].end)), (0 <= this.indexOf("date") || this.indexOf("hiredate") == 0 || t[0].value.endsWith("_date") || t[0].value.startsWith("date_of_") || 1 < t.length && t[1].value == "d" || t[0].value.startsWith("created") || t[0].value.startsWith("updated")) && (p = d.getOptionValue("Date Data Type").toLowerCase()), u < 0 && (this.occursBeforeOption("clob") && (p = "clob"), (this.occursBeforeOption("blob") || this.occursBeforeOption("file")) && (p = "blob"), this.occursBeforeOption("json") && (p = "clob check (" + this.parseName() + " is json)")), this.occursBeforeOption("tswltz") && this.indexOf("/") ? p = "TIMESTAMP WITH LOCAL TIME ZONE".toLowerCase() : this.occursBeforeOption("tswtz") || this.occursBeforeOption("tstz") ? p = "TIMESTAMP WITH TIME ZONE".toLowerCase() : this.occursBeforeOption("ts") && (p = "TIMESTAMP".toLowerCase()), i) { if (0 < this.indexOf("fk") || 0 < this.indexOf("reference", !0)) { - const E = this.refId(); - let k = "number"; - p == "integer" && (k = p); - let O = d.find(E); - return O != null && O.getExplicitPkNode() != null && (k = O.getExplicitPkNode().parseType((R) => !0)), k; + const L = this.refId(); + let O = "number"; + p == "integer" && (O = p); + let R = d.find(L); + return R != null && R.getExplicitPkNode() != null && (O = R.getExplicitPkNode().parseType((H) => !0)), O; } return p; } 0 < this.indexOf("unique") && (p += ` `, p += h + h + " ".repeat(r.maxChildNameLen()) + "constraint " + T + "_unq unique"); - var D = "'"; - if ((p.startsWith("integer") || p.startsWith("number") || p.startsWith("date")) && (D = ""), 0 < this.indexOf("default")) { - let E = ""; - for (let k = this.indexOf("default") + 1; k < t.length; k++) { - const O = t[k].value; - if (O == "/" || O == "-" || O == "[") + var k = "'"; + if ((p.startsWith("integer") || p.startsWith("number") || p.startsWith("date")) && (k = ""), 0 < this.indexOf("default")) { + let L = ""; + for (let O = this.indexOf("default") + 1; O < t.length; O++) { + const R = t[O].value; + if (R == "/" || R == "-" || R == "[") break; - E += t[k].value; + L += t[O].value; } - p += " default on null " + D + E + D; + p += " default on null " + k + L + k; } - if ((0 < this.indexOf("nn") || this.indexOf("not") + 1 == this.indexOf("null")) && this.indexOf("pk") < 0 && (p += " not null"), (0 < this.indexOf("hidden") || 0 < this.indexOf("invincible")) && (p += " invisible"), p += this.genConstraint(D), 0 < this.indexOf("between")) { - const E = this.indexOf("between"), k = t[E + 1].value + " and " + t[E + 3].value; + if ((0 < this.indexOf("nn") || this.indexOf("not") + 1 == this.indexOf("null")) && this.indexOf("pk") < 0 && (p += " not null"), (0 < this.indexOf("hidden") || 0 < this.indexOf("invincible")) && (p += " invisible"), p += this.genConstraint(k), p += S, 0 < this.indexOf("between")) { + const L = this.indexOf("between"), O = t[L + 1].value + " and " + t[L + 3].value; p += " constraint " + K(T, "_bet") + ` -`, p += " check (" + this.parseName() + " between " + k + ")"; +`, p += " check (" + this.parseName() + " between " + O + ")"; } if (0 < this.indexOf("pk")) { - let E = " not null"; - p.startsWith("number") && d.optionEQvalue("pk", "identityDataType") && (E = " GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), p.startsWith("number") && d.optionEQvalue("pk", "seq") && (E = " default on null " + (d.objPrefix() + this.parent.parseName()) + "_seq.NEXTVAL ".toLowerCase()), p.startsWith("number") && d.optionEQvalue("pk", "guid") && (E = " default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), p += E + ` + let L = " not null"; + p.startsWith("number") && d.optionEQvalue("pk", "identityDataType") && (L = " GENERATED BY DEFAULT ON NULL AS IDENTITY".toLowerCase()), p.startsWith("number") && d.optionEQvalue("pk", "seq") && (L = " default on null " + (d.objPrefix() + this.parent.parseName()) + "_seq.NEXTVAL ".toLowerCase()), p.startsWith("number") && d.optionEQvalue("pk", "guid") && (L = " default on null to_number(sys_guid(), 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') "), p += L + ` `, p += h + h + " ".repeat(r.maxChildNameLen()) + "constraint " + K(d.objPrefix(), T, "_pk") + " primary key"; } return p; @@ -7739,12 +7741,12 @@ let ce = function() { let T = u.lastIndexOf("/"); T == p && (T = u.length); let S = this.trimmedContent().substr(p + 6, T - p - 6).trim(); - const L = Z(S, !1, !0, ""); - let D = h; - r != null && (D = " ".repeat(r.maxChildNameLen())), this.children != null && 0 < this.children.length ? (L[0].value != "(" && (S = "( " + S + ")"), t += h + "constraint " + K(d.objPrefix(), l, "_ck"), t += " check " + S + `, -`) : L[0].value == "(" && L[L.length - 1].value == ")" ? (t += " constraint " + K(d.objPrefix(), l, "_ck") + ` -`, t += h + h + D + "check " + S) : (0 < S.indexOf(", ") ? S = S.replace(/, /g, i + "," + i) : 0 < S.indexOf(",") ? S = S.replace(/,/g, i + "," + i) : S = S.replace(/ /g, i + "," + i), t += " constraint " + K(d.objPrefix(), l, "_ck") + ` -`, t += h + h + D + "check (" + this.parseName() + " in (" + i + S + i + "))", t = t.replace(/''/gm, "'")); + const E = Z(S, !1, !0, ""); + let w = h; + r != null && (w = " ".repeat(r.maxChildNameLen())), this.children != null && 0 < this.children.length ? (E[0].value != "(" && (S = "( " + S + ")"), t += h + "constraint " + K(d.objPrefix(), l, "_ck"), t += " check " + S + `, +`) : E[0].value == "(" && E[E.length - 1].value == ")" ? (t += " constraint " + K(d.objPrefix(), l, "_ck") + ` +`, t += h + h + w + "check " + S) : (0 < S.indexOf(", ") ? S = S.replace(/, /g, i + "," + i) : 0 < S.indexOf(",") ? S = S.replace(/,/g, i + "," + i) : S = S.replace(/ /g, i + "," + i), t += " constraint " + K(d.objPrefix(), l, "_ck") + ` +`, t += h + h + w + "check (" + this.parseName() + " in (" + i + S + i + "))", t = t.replace(/''/gm, "'")); } return t; }, this.isMany2One = function() { @@ -7928,16 +7930,16 @@ let ce = function() { `), s += ")" + (d.optionEQvalue("compress", "yes") || 0 < i.indexOf("/COMPRESS") ? " compress" : "") + `; `; - const L = i.indexOf("/AUDIT"), D = i.indexOf("/AUDITCOLS"), E = i.indexOf("/AUDIT COL"); - 0 < L && D < 0 && E < 0 && (s += "audit all on " + l + `; + const E = i.indexOf("/AUDIT"), w = i.indexOf("/AUDITCOLS"), k = i.indexOf("/AUDIT COL"); + 0 < E && w < 0 && k < 0 && (s += "audit all on " + l + `; `); - let k = 1; + let L = 1; for (let a in this.fks) if (!this.isMany2One()) { var O = this.fks[a], R = O, H = a; - H == null && (H = W(R) + "_id"), k == 1 && (s += `-- table index -`), s += "create index " + l + "_i" + k++ + " on " + l + " (" + H + `); + H == null && (H = W(R) + "_id"), L == 1 && (s += `-- table index +`), s += "create index " + l + "_i" + L++ + " on " + l + " (" + H + `); `; } @@ -7951,8 +7953,8 @@ let ce = function() { for (let a = 0; a < this.children.length; a++) { var e = this.children[a]; let n = e.trimmedContent().toUpperCase(); - (0 <= n.indexOf("/IDX") || 0 <= n.indexOf("/INDEX")) && (k == 1 && (s += `-- table index -`), s += "create index " + l + "_i" + k++ + " on " + l + " (" + e.parseName() + `); + (0 <= n.indexOf("/IDX") || 0 <= n.indexOf("/INDEX")) && (L == 1 && (s += `-- table index +`), s += "create index " + l + "_i" + L++ + " on " + l + " (" + e.parseName() + `); `); } this.comment != null && (s += "comment on table " + l + " is '" + this.comment + `'; @@ -8014,17 +8016,17 @@ let ce = function() { var T = (s[p] + ".id").length; u < T && (u = T); for (var S = 0; S < m.children.length; S++) { - var L = m.children[S]; - T = (s[p] + "." + L.parseName()).length, u < T && (u = T); + var E = m.children[S]; + T = (s[p] + "." + E.parseName()).length, u < T && (u = T); } } - var D = {}; + var w = {}; for (let m = 2; m < s.length; m++) { let C = d.find(s[m]); if (C != null) for (let P = 0; P < C.children.length; P++) { - var E = C.children[P].parseName(), k = D[E]; - k == null && (k = 0), D[E] = k + 1; + var k = C.children[P].parseName(), L = w[k]; + L == null && (L = 0), w[k] = L + 1; } } for (let m = 2; m < s.length; m++) { @@ -8039,7 +8041,7 @@ let ce = function() { if (v.children.length == 0) { P = " ".repeat(u - (s[m] + "." + v.parseName()).length); var O = ""; - 1 < D[v.parseName()] && (O = W(s[m]) + "_"), l += h + s[m] + "." + v.parseName() + h + P + O + v.parseName() + `, + 1 < w[v.parseName()] && (O = W(s[m]) + "_"), l += h + s[m] + "." + v.parseName() + h + P + O + v.parseName() + `, `; } } @@ -8157,8 +8159,8 @@ end; `, u = !0); for (var T = 0; T < this.children.length; T++) { var S = this.children[T]; - let k = null; - 0 < S.content.indexOf("/lower") ? k = "LOWER".toLowerCase() : 0 < S.content.indexOf("/upper") && (k = "UPPER".toLowerCase()), k != null && (s += " :new." + S.parseName().toLowerCase() + " := " + k + "(:new." + S.parseName().toLowerCase() + `); + let L = null; + 0 < S.content.indexOf("/lower") ? L = "LOWER".toLowerCase() : 0 < S.content.indexOf("/upper") && (L = "UPPER".toLowerCase()), L != null && (s += " :new." + S.parseName().toLowerCase() + " := " + L + "(:new." + S.parseName().toLowerCase() + `); `, u = !0); } (d.optionEQvalue("Row Version Number", "yes") || 0 < l.indexOf("/ROWVERSION")) && (s += ` if inserting then @@ -8173,12 +8175,12 @@ end; `, s += " :new." + d.getOptionValue("updatedcol") + ` := SYSDATE; `.toLowerCase(), s += " :new." + d.getOptionValue("updatedbycol") + " := " + p + `; `.toLowerCase(), u = !0); - var L = d.additionalColumns(); - for (var D in L) { - var E = L[D]; - s += " if :new." + D + ` is null then -`, E.startsWith("INT") ? s += " " + D + ` := 0; -` : s += " " + D + ` := 'N/A'; + var E = d.additionalColumns(); + for (var w in E) { + var k = E[w]; + s += " if :new." + w + ` is null then +`, k.startsWith("INT") ? s += " " + w + ` := 0; +` : s += " " + w + ` := 'N/A'; `, s += ` end if; `, u = !0; } @@ -8195,8 +8197,8 @@ end; `; l += h + h + "p_id in number" + t; for (var u in this.fks) { - let T = this.fks[u], S = "number", L = d.find(T); - L != null && L.getExplicitPkNode() != null && (S = L.getExplicitPkNode().parseType((D) => !0)), l += `, + let T = this.fks[u], S = "number", E = d.find(T); + E != null && E.getExplicitPkNode() != null && (S = E.getExplicitPkNode().parseType((w) => !0)), l += `, `, l += h + h + "P_" + u + " " + s + " " + S + t; } for (let T = 0; T < this.children.length; T++) { @@ -8217,13 +8219,13 @@ end; `, l += h + h + h + "id"), i == "update" && (l = h + h + "update " + t + ` set `, l += h + h + h + "id = p_id"), s += l; for (let S in this.fks) { - let L = this.fks[S], D = d.find(L); - D != null && D.getExplicitPkNode() != null && D.getExplicitPkNode().parseType((k) => !0), (i == "insert" || i == "update") && (s += `, + let E = this.fks[S], w = d.find(E); + w != null && w.getExplicitPkNode() != null && w.getExplicitPkNode().parseType((L) => !0), (i == "insert" || i == "update") && (s += `, `); - let E = h + h + h + "P_" + S + " := c1." + S + `; + let k = h + h + h + "P_" + S + " := c1." + S + `; `; - i == "insert" && (E = h + h + h + S), i == "update" && (E = h + h + h + S + " = P_" + S + ` -`), s += E; + i == "insert" && (k = h + h + h + S), i == "update" && (k = h + h + h + S + " = P_" + S + ` +`), s += k; } for (var u = 0; u < this.children.length; u++) { var p = this.children[u]; @@ -8244,9 +8246,9 @@ end; s += `, `, s += h + h + h + "p_" + S; for (let S = 0; S < this.children.length; S++) { - let L = this.children[S]; - L.refId() == null && L.children.length == 0 && (s += `, -`, s += h + h + h + "p_" + L.parseName()); + let E = this.children[S]; + E.refId() == null && E.children.length == 0 && (s += `, +`, s += h + h + h + "p_" + E.parseName()); } } let T = ` @@ -8318,89 +8320,89 @@ is return ""; let s = d.objPrefix() + this.parseName(), l = "", u = null, p = null; for (let S = 0; S < this.cardinality(); S++) { - let L = null; + let E = null; if (i != null) { - const E = i[s]; - E != null && Array.isArray(E) && (L = E[S]); + const k = i[s]; + k != null && Array.isArray(k) && (E = k[S]); } l += "insert into " + s + ` ( `; - let D = this.getGenIdColName(); - if (D != null) - u = D, l += h + u + `, + let w = this.getGenIdColName(); + if (w != null) + u = w, l += h + u + `, `; else { - let E = this.getExplicitPkNode(); - E != null && (u = E.parseName(), l += h + u + `, + let k = this.getExplicitPkNode(); + k != null && (u = k.parseName(), l += h + u + `, `); } - for (let E in this.fks) { - let k = this.fks[E], O = d.find(k), R = ""; - O == null && (O = d.find(E), O.isMany2One() & !E.endsWith("_id") && (k = E, E = W(E), R = "_id")), l += h + E + R + `, + for (let k in this.fks) { + let L = this.fks[k], O = d.find(L), R = ""; + O == null && (O = d.find(k), O.isMany2One() & !k.endsWith("_id") && (L = k, k = W(k), R = "_id")), l += h + k + R + `, `; } - for (let E = 0; E < this.children.length; E++) { - let k = this.children[E]; - if (!(D != null && k.parseName() == "id") && k.refId() == null) { - if (k == this.getExplicitPkNode()) + for (let k = 0; k < this.children.length; k++) { + let L = this.children[k]; + if (!(w != null && L.parseName() == "id") && L.refId() == null) { + if (L == this.getExplicitPkNode()) continue; - k.children.length == 0 && (l += h + k.parseName() + `, + L.children.length == 0 && (l += h + L.parseName() + `, `); } } if (l.lastIndexOf(`, `) == l.length - 2 && (l = l.substr(0, l.length - 2) + ` `), l += `) values ( -`, D != null) +`, w != null) p = S + 1, l += h + p + `, `; else { - let E = this.getExplicitPkNode(); - if (E != null) { - const k = E.parseName(); - let O = g(d.data, null, k, this.parseName()), R = -1; - L != null && (R = L[k]), O != null && O[S] != null && (R = O[S]), R.replaceAll && (R = "'" + R + "'"), p = R != -1 ? R : S + 1, l += h + p + `, + let k = this.getExplicitPkNode(); + if (k != null) { + const L = k.parseName(); + let O = g(d.data, null, L, this.parseName()), R = -1; + E != null && (R = E[L]), O != null && O[S] != null && (R = O[S]), R.replaceAll && (R = "'" + R + "'"), p = R != -1 ? R : S + 1, l += h + p + `, `; } } - for (let E in this.fks) { - let k = this.fks[E], O = d.find(k), R = [], H = "INTEGER"; + for (let k in this.fks) { + let L = this.fks[k], O = d.find(L), R = [], H = "INTEGER"; for (let G = 1; G <= O.cardinality(); G++) R.push(G); - if (L != null) { - let G = L[E]; + if (E != null) { + let G = E[k]; if (G != null) typeof G == "string" && (H = "STRING"), R = [], R[0] = G; else { - const e = s + "_" + k, a = d.data[e]; + const e = s + "_" + L, a = d.data[e]; if (a != null) { for (const n in a) if (a[n][s + "_id"] == p) { - const c = a[n][E]; + const c = a[n][k]; c != null && (typeof c == "string" && (H = "STRING"), R = [], R[0] = c); break; } } else { - let n = O.getPkName(), c = L[n]; + let n = O.getPkName(), c = E[n]; c != null && (typeof c == "string" && (H = "STRING"), R = [], R[0] = c); } } } - l += h + le(d.getOptionValue("Data Language"), se(s, W(k) + "_id", H, R)) + `, + l += h + le(d.getOptionValue("Data Language"), se(s, W(L) + "_id", H, R)) + `, `; } - for (let E = 0; E < this.children.length; E++) { - let k = this.children[E]; - if (!(D != null && k.parseName() == "id") && k.refId() == null) { - if (k == this.getExplicitPkNode()) + for (let k = 0; k < this.children.length; k++) { + let L = this.children[k]; + if (!(w != null && L.parseName() == "id") && L.refId() == null) { + if (L == this.getExplicitPkNode()) continue; - if (k.children.length == 0) { - let O = k.parseValues(), R = k.parseName(); - if (L != null) { - let G = L[R]; + if (L.children.length == 0) { + let O = L.parseValues(), R = L.parseName(); + if (E != null) { + let G = E[R]; G != null && (O = [], O[0] = G); } - let H = se(s, R, k.parseType(), O); + let H = se(s, R, L.parseType(), O); l += h + le(d.getOptionValue("Data Language"), H) + `, `; } @@ -8421,8 +8423,8 @@ modify ` + T + " generated always as identity restart start with " + (this.card `), t[s] = l; for (let S = 0; S < this.children.length; S++) { - const L = this.children[S]; - 0 < L.children.length && (t = { ...t, ...L.inserts4tbl(i) }); + const E = this.children[S]; + 0 < E.children.length && (t = { ...t, ...E.inserts4tbl(i) }); } return t; }, this.isArray = function() { @@ -8452,16 +8454,16 @@ modify ` + T + " generated always as identity restart start with " + (this.card throw new Error(this.one2many2oneUnsupoported); s += u.generateSelectJsonTopDown(i + " "), s += i + " WITH NOCHECK } from " + p + ` with INSERT UPDATE `; - let L = null; + let E = null; for (var T in u.fks) { var S = u.fks[T]; if (S == t) { - L = T; + E = T; break; } } - const D = t + "." + this.getPkName(), E = p + "." + L; - s += i + "where " + E + " = " + D + ` + const w = t + "." + this.getPkName(), k = p + "." + E; + s += i + "where " + k + " = " + w + ` `, i = i.slice(0, -2), s += i + "]"; } s += l < this.children.length - 1 ? `, @@ -8499,29 +8501,29 @@ modify ` + T + " generated always as identity restart start with " + (this.card s = "", l++; continue; } - let S = new I(l, s, null), L = !1; - for (let D = 0; D < r.length; D++) { - let E = r[D]; - if (S.apparentDepth() <= E.apparentDepth()) - if (0 < D) { - let k = r[D - 1]; - S = new I(l, s, k), r[D] = S, r = r.slice(0, D + 1), L = !0; + let S = new I(l, s, null), E = !1; + for (let w = 0; w < r.length; w++) { + let k = r[w]; + if (S.apparentDepth() <= k.apparentDepth()) + if (0 < w) { + let L = r[w - 1]; + S = new I(l, s, L), r[w] = S, r = r.slice(0, w + 1), E = !0; break; } else - r[0] = S, r = r.slice(0, 1), o.push(S), L = !0; + r[0] = S, r = r.slice(0, 1), o.push(S), E = !0; } - if (!L) { + if (!E) { if (0 < r.length) { - let D = r[r.length - 1]; - S = new I(l, s, D); + let w = r[r.length - 1]; + S = new I(l, s, w); } r.push(S), S.apparentDepth() == 0 && o.push(S); } if (S.isMany2One()) { - const D = S.parent; - D.fks == null && (D.fks = []); - let E = S.refId(); - E == null && (E = S.parseName()), D.fks[S.parseName() + "_id"] = E; + const w = S.parent; + w.fks == null && (w.fks = []); + let k = S.refId(); + k == null && (k = S.parseName()), w.fks[S.parseName() + "_id"] = k; } l++, s = ""; continue; @@ -8539,31 +8541,31 @@ modify ` + T + " generated always as identity restart start with " + (this.card M.setOptions(t), t = null, s = ""; continue; } - let S = null, L = null; - for (let D in T) { - const E = T[D]; - if (S == null && E.value == "flattened") { + let S = null, E = null; + for (let w in T) { + const k = T[w]; + if (S == null && k.value == "flattened") { S = ""; continue; } if (S != null) { - if (S += E.value, S == "=" || S.charAt(S.length - 1) != "}") + if (S += k.value, S == "=" || S.charAt(S.length - 1) != "}") continue; - let k = S.substring(1); + let L = S.substring(1); try { - d.data = JSON.parse(k), t = null, s = ""; + d.data = JSON.parse(L), t = null, s = ""; continue e; } catch { } } - if (L == null && E.value == "settings") { - L = ""; + if (E == null && k.value == "settings") { + E = ""; continue; } - if (L != null) { - L += E.value, L.substring(1); + if (E != null) { + E += k.value, E.substring(1); try { - M.setOptions(L), t = null, s = ""; + M.setOptions(E), t = null, s = ""; continue e; } catch { } @@ -8621,7 +8623,7 @@ var Ae = function() { return { key: s, value: r[s] }; } } - function w(r) { + function D(r) { for (let o in r) if (!(r[o] != null && typeof r[o] == "object")) return !0; @@ -8725,8 +8727,8 @@ var Ae = function() { for (let p in o) { const T = o[p]; if (p != null) { - const L = W(r), D = p.toLowerCase(); - if (r != null && L + "_id" == D && 0 < i && (u = p), L + "_id" == D || !isNaN(p) && !Array.isArray(o)) + const E = W(r), w = p.toLowerCase(); + if (r != null && E + "_id" == w && 0 < i && (u = p), E + "_id" == w || !isNaN(p) && !Array.isArray(o)) continue; } const S = this.output(p + b(T), T, i + 1); @@ -8761,8 +8763,8 @@ var Ae = function() { T == null && (T = []); const S = {}; S[this.refIdName(u)] = i.value; - let L = N(t); - L == null && (t.id = this.idSeq++, L = N(t)), S[this.refIdName(r)] = L.value, T.push(S), this.tableContent[p] = T; + let E = N(t); + E == null && (t.id = this.idSeq++, E = N(t)), S[this.refIdName(r)] = E.value, T.push(S), this.tableContent[p] = T; } } this.tableContent[r] = l; @@ -8782,7 +8784,7 @@ var Ae = function() { continue; p != r && (this.child2parent[p] = r), this.duplicatesAndParents(p, o[u]), s = !0; } - w(o) && !this.tableSignatures.includes(r) && this.tableSignatures.push(r), s || (this.objCounts[i] = t + 1), 1 < this.objCounts[i] && !this.notNormalized.includes(r) && this.notNormalized.push(r); + D(o) && !this.tableSignatures.includes(r) && this.tableSignatures.push(r), s || (this.objCounts[i] = t + 1), 1 < this.objCounts[i] && !this.notNormalized.includes(r) && this.notNormalized.push(r); }, this.parent = function(r) { let o = this.child2parent[r]; return o != null && !this.tableSignatures.includes(o) ? this.parent(o) : o; @@ -8835,11 +8837,11 @@ const ye = function() { B.push(new d(j.invalidDatatype, new h(t.line, u))); continue; } - B = B.concat(w(g, t)), B = B.concat(I(g, t)); + B = B.concat(D(g, t)), B = B.concat(I(g, t)); } return B; } - function w(b, g) { + function D(b, g) { var M = [], B = g.content.toLowerCase(); if (g.parseType() == "view") { var r = $(B, " "); @@ -8896,8 +8898,8 @@ const ye = function() { function Se(d) { let h = []; for (var N = 0; N < d.length; N++) { - var w = d[N]; - h[N] = re(w); + var D = d[N]; + h[N] = re(D); } let I = []; for (let b = 0; b < h.length; b++) { @@ -8913,8 +8915,8 @@ function Se(d) { return x; } function re(d) { - for (var h = d.split(/ |\t/), N = 0, w = 0; w < h.length; w++) { - var I = h[w]; + for (var h = d.split(/ |\t/), N = 0, D = 0; D < h.length; D++) { + var I = h[D]; if (I == " " && (N += 4), I == "") { N++; continue; @@ -8970,14 +8972,14 @@ const j = { //"Auxiliary Columns": {label: "Auxiliary Columns", value:''}, // e.g. security_group_id integer //namecase: {label: 'Object and Field name convention', value:'canonic',check:['canonic','json']}, }; - function h(w) { - if (w == null) + function h(D) { + if (D == null) return null; - let I = w; + let I = D; return typeof I == "string" && (I = I.toLowerCase()), I == "yes" ? !0 : I == "no" ? !1 : I == "y" ? !0 : I == "n" ? !1 : I == "true" ? !0 : I == "false" ? !1 : I == ne.toLowerCase() ? "identity" : I == ue.toLowerCase() ? "guid" : I == me.toLowerCase() ? "tswtz" : I == de.toLowerCase() ? "tswltz" : I; } - function N(w, I) { - this.ddl = null, this.erd = null, this.errors = null, this.options = JSON.parse(JSON.stringify(d)), this.input = w, this.getOptionValue = function(b) { + function N(D, I) { + this.ddl = null, this.erd = null, this.errors = null, this.options = JSON.parse(JSON.stringify(d)), this.input = D, this.getOptionValue = function(b) { const g = b.toLowerCase(); let M = this.options[g]; if (!(g in this.options)) @@ -9057,9 +9059,9 @@ const j = { return this.getOptionValue("prefix") != null && (M = this.getOptionValue("prefix")), g = g + M, M != "" && (g = g + "_"), g.toLowerCase(); }; let x = ""; - 0 < w.toLowerCase().indexOf("overridesettings") && ce(this), I != null && this.optionEQvalue("overrideSettings", !1) && (x = "# settings = " + I + ` + 0 < D.toLowerCase().indexOf("overridesettings") && ce(this), I != null && this.optionEQvalue("overrideSettings", !1) && (x = "# settings = " + I + ` -`), this.input = x + w, this.forest = ce(this), this.getERD = function() { +`), this.input = x + D, this.forest = ce(this), this.getERD = function() { if (this.erd != null) return this.erd; let b = this.descendants(), g = { items: [] }; @@ -9181,7 +9183,7 @@ const j = { `, b += `/* `; - let B = w; + let B = D; B = B.replace(/#.+/g, ` `), B = B.replace(/\/\*/g, "--<--"), B = B.replace(/\*\//g, "-->--"), B = B.replace(/\/* Non-default options:/g, ""), b += B, b += ` `; diff --git a/dist/quick-sql.umd.cjs b/dist/quick-sql.umd.cjs index f9d038c..5f4cb34 100644 --- a/dist/quick-sql.umd.cjs +++ b/dist/quick-sql.umd.cjs @@ -1,5 +1,5 @@ -(function(V,W){typeof exports=="object"&&typeof module<"u"?W(exports):typeof define=="function"&&define.amd?define(["exports"],W):(V=typeof globalThis<"u"?globalThis:V||self,W(V.quickSQL={}))})(this,function(V){"use strict";function W(d){return d==null?d:d.toUpperCase().endsWith("IES")?d.substring(0,d.length-3)+"y":d.toUpperCase().endsWith("ES")||d.toUpperCase().endsWith("S")?d.substring(0,d.length-1):d}function ve(d,h){let N='"';if(d==null)return null;let w=!1;const I="$#_ ";if(!d.startsWith(N)&&!w){const x=d;if(x.length>0&&"0"<=x[0]&&x[0]<="9")w=!0;else for(let b in x){const g=x[b];if(I.indexOf(g)<0&&(g<"0"||"9""u"&&(e[n]=a[n]);return e}function i(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var s=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?s=btoa:typeof Buffer=="function"&&(s=function(a){return new Buffer(a).toString("base64")})})(),r.prototype.bool=function(e){return e=o(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100c,"Chance: Max specified is out of range with fixed. Max should be, at most, "+c),e=o(e,{min:m,max:c}),a=this.integer({min:e.min*n,max:e.max*n});var C=(a/n).toFixed(e.fixed);return parseFloat(C)},r.prototype.integer=function(e){return e=o(e,{min:w,max:N}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},r.prototype.natural=function(e){if(e=o(e,{min:0,max:N}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),c=e.exclude.sort();for(var m in c){if(ne.max,"Chance: Min cannot be greater than Max.");var a=L.primes[L.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&L.primes.push(n);var c=L.primes.filter(function(m){return m>=e.min&&m<=e.max});return this.pick(c)},r.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},r.prototype.hex=function(e){e=o(e,{min:0,max:N,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},r.prototype.letter=function(e){e=o(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},r.prototype.string=function(e){e=o(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function u(e){this.c=e}u.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function p(e){this.c=e}p.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:b})},a:function(e){return e.character({pool:x})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function T(e){for(var a=[],n="identity",c=0;c"u")throw new M("Sorry, the buffer() function is not supported on your platform");e=o(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},r.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},r.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},r.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var c=function(y,_){return y.indexOf(_)!==-1};n&&(c=n.comparator||c);for(var m=[],C=0,P,f=a*50,A=B.call(arguments,2);m.lengthf)throw new RangeError("Chance: num is likely too large for sample set")}return m},r.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,c=[],m=B.call(arguments,2);for(n=Math.max(0,n),null;n--;null)c.push(e.apply(this,m));return c},r.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},r.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},r.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},r.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),c=n.length;return this.n(function(){var m=this.natural({max:--c}),C=n[m];return n[m]=n[c],C},Math.min(c,a))},r.prototype.shuffle=function(e){for(var a=[],n=0,c=Number(e.length),m=i(c),C=c-1,P,f=0;f0&&(c+=m)}if(c===0)throw new RangeError("Chance: No valid entries in array weights");var P=this.random()*c,f=0,A=-1,v;for(C=0;C0){if(P<=f){v=C;break}A=C}C===a.length-1&&(v=A)}var y=e[v];return n=typeof n>"u"?!1:n,n&&(e.splice(v,1),a.splice(v,1)),y},r.prototype.paragraph=function(e){e=o(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),c=e.linebreak===!0?` -`:" ";return n.join(c)},r.prototype.sentence=function(e){e=o(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,c,m=this.n(this.word,a);return c=m.join(" "),c=this.capitalize(c),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(c+=n),c},r.prototype.syllable=function(e){e=o(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",c="aeiou",m=n+c,C="",P,f=0;fe.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var P=e.minAge!==void 0?e.minAge:0,f=e.maxAge!==void 0?e.maxAge:100,A=new Date(c-f-1,n.getMonth(),n.getDate()),v=new Date(c-P,n.getMonth(),n.getDate());A.setDate(A.getDate()+1),v.setDate(v.getDate()+1),v.setMilliseconds(v.getMilliseconds()-1),e=o(e,{min:A,max:v})}else e=o(e,{year:c-a});return this.date(e)},r.prototype.cpf=function(e){e=o(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var c=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;c=11-c%11,c>=10&&(c=0);var m=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},r.prototype.cnpj=function(e){e=o(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var c=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;c=11-c%11,c<2&&(c=0);var m=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},r.prototype.first=function(e){return e=o(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},r.prototype.profession=function(e){return e=o(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},r.prototype.company=function(){return this.pick(this.get("company"))},r.prototype.gender=function(e){return e=o(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},r.prototype.last=function(e){if(e=o(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(c){a=a.concat(n[c])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},r.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},r.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},r.prototype.tld=function(){return this.pick(this.tlds())},r.prototype.twitter=function(){return"@"+this.word()},r.prototype.url=function(e){e=o(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},r.prototype.port=function(){return this.integer({min:0,max:65535})},r.prototype.locale=function(e){return e=o(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},r.prototype.locales=function(e){return e=o(e),e.region?this.get("locale_regions"):this.get("locale_languages")},r.prototype.loremPicsum=function(e){e=o(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},r.prototype.address=function(e){return e=o(e),this.natural({min:5,max:2e3})+" "+this.street(e)},r.prototype.altitude=function(e){return e=o(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.areacode=function(e){e=o(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},r.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},r.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},r.prototype.countries=function(){return this.get("countries")},r.prototype.country=function(e){e=o(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},r.prototype.depth=function(e){return e=o(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.geohash=function(e){return e=o(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},r.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},r.prototype.latitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=o(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.longitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=o(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.phone=function(e){var a=this,n,c=function(_){var F=[];return _.sections.forEach(function(z){F.push(a.string({pool:"0123456789",length:z}))}),_.area+F.join(" ")};e=o(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var m;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),m=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),m=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n);break;case"us":var C=this.areacode(e).toString(),P=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),f=this.natural({min:1e3,max:9999}).toString();m=e.formatted?C+" "+P+"-"+f:C+P+f;break;case"br":var A=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),v;e.mobile?v="9"+a.string({pool:"0123456789",length:4}):v=this.natural({min:2e3,max:5999}).toString();var y=a.string({pool:"0123456789",length:4});m=e.formatted?"("+A+") "+v+"-"+y:A+v+y;break}return m},r.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},r.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",c=e+a+n,m=this.natural({max:9}),C=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),P=m+C;return c+" "+P},r.prototype.counties=function(e){return e=o(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},r.prototype.county=function(e){return this.pick(this.counties(e)).name},r.prototype.provinces=function(e){return e=o(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},r.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},r.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},r.prototype.states=function(e){e=o(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),c=this.get("territories"),m=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(c)),e.armed_forces&&(a=a.concat(m));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},r.prototype.street=function(e){e=o(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},r.prototype.street_suffix=function(e){return e=o(e,{country:"us"}),this.pick(this.street_suffixes(e))},r.prototype.street_suffixes=function(e){return e=o(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},r.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},r.prototype.ampm=function(){return this.bool()?"am":"pm"},r.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=o(e,{american:!0,string:!1});var c=typeof e.min<"u"?e.min.getTime():1,m=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:c,max:m}))}else{var C=this.month({raw:!0}),P=C.days;e&&e.month&&(P=this.get("months")[(e.month%12+12)%12].days),e=o(e,{year:parseInt(this.year(),10),month:C.numeric-1,day:this.natural({min:1,max:P}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},r.prototype.hammertime=function(e){return this.date(e).getTime()},r.prototype.hour=function(e){return e=o(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.millisecond=function(){return this.natural({max:999})},r.prototype.minute=r.prototype.second=function(e){return e=o(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.month=function(e){e=o(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},r.prototype.months=function(){return this.get("months")},r.prototype.second=function(){return this.natural({max:59})},r.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},r.prototype.weekday=function(e){e=o(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},r.prototype.year=function(e){return e=o(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},r.prototype.cc=function(e){e=o(e);var a,n,c;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),c=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,c,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},r.prototype.cc_types=function(){return this.get("cc_types")},r.prototype.cc_type=function(e){e=o(e);var a=this.cc_types(),n=null;if(e.name){for(var c=0;c3&&(_?F=F.substr(0,3):F=F[0]+F.substr(2,2)),F.length<3&&(z=F,F=y.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+F),z},A=function(y,_,F){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return y.getFullYear().toString().substr(2)+z[y.getMonth()]+F.pad(y.getDate()+(_.toLowerCase()==="female"?40:0),2)},v=function(y){for(var _="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",F="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(F[_.indexOf(y[U])]):K+=j.indexOf(F[_.indexOf(y[U])]);return z[K%26]};return P=P.concat(f(c,!0),f(n),A(m,a,this),C.toUpperCase().split("")).join(""),P+=v(P.toUpperCase()),P.toUpperCase()},r.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;m--)c[m-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?c.reduce(function(C,P){return C+P}):c}else throw new RangeError("Chance: A type of die roll must be included")},r.prototype.guid=function(e){e=o(e,{version:5});var a="abcdef1234567890",n="ab89",c=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return c},r.prototype.hash=function(e){e=o(e,{length:40,casing:"lower"});var a=e.casing==="upper"?g.toUpperCase():g;return this.string({pool:a,length:e.length})},r.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},r.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,c,m=0,C=a.length;C>m;++m)c=+a[m],m%2===0&&(c*=2,c>9&&(c-=9)),n+=c;return n*9%10},r.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=o(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},r.prototype.file=function(e){var a=e||{},n="fileExtension",c=Object.keys(this.get("fileExtension")),m,C;if(m=this.word({length:a.length}),a.extension)return C=a.extension,m+"."+C;if(a.extensions){if(Array.isArray(a.extensions))return C=this.pickone(a.extensions),m+"."+C;if(a.extensions.constructor===Object){var P=a.extensions,f=Object.keys(P);return C=this.pickone(P[this.pickone(f)]),m+"."+C}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var A=a.fileType;if(c.indexOf(A)!==-1)return C=this.pickone(this.get(n)[A]),m+"."+C;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return C=this.pickone(this.get(n)[this.pickone(c)]),m+"."+C},r.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var c={fileData:this.buffer({length:a.fileSize}),fileName:n};return c};var L={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},D=Object.prototype.hasOwnProperty,E=Object.keys||function(e){var a=[];for(var n in e)D.call(e,n)&&a.push(n);return a};function k(e,a){for(var n=E(e),c,m=0,C=n.length;m0)return this.normal_pool(e);var a,n,c,m,C=e.mean,P=e.dev;do n=this.random()*2-1,c=this.random()*2-1,a=n*n+c*c;while(a>=1);return m=n*Math.sqrt(-2*Math.log(a)/a),P*m+C},r.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},r.prototype.radio=function(e){e=o(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},r.prototype.set=function(e,a){typeof e=="string"?L[e]=a:L=R(e,L)},r.prototype.tv=function(e){return this.radio(e)},r.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},r.prototype.emotion=function(){return this.pick(this.get("emotions"))},r.prototype.mersenne_twister=function(e){return new H(e)},r.prototype.blueimp_md5=function(){return new G};var H=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};H.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},H.prototype.init_by_array=function(e,a){var n=1,c=0,m,C;for(this.init_genrand(19650218),m=this.N>a?this.N:a;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1664525<<16)+(C&65535)*1664525)+e[c]+c,this.mt[n]>>>=0,n++,c++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),c>=a&&(c=0);for(m=this.N-1;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1566083941<<16)+(C&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},H.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},H.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},H.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},H.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},H.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},H.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var G=function(){};G.prototype.VERSION="1.0.1",G.prototype.safe_add=function(a,n){var c=(a&65535)+(n&65535),m=(a>>16)+(n>>16)+(c>>16);return m<<16|c&65535},G.prototype.bit_roll=function(e,a){return e<>>32-a},G.prototype.md5_cmn=function(e,a,n,c,m,C){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(c,C)),m),n)},G.prototype.md5_ff=function(e,a,n,c,m,C,P){return this.md5_cmn(a&n|~a&c,e,a,m,C,P)},G.prototype.md5_gg=function(e,a,n,c,m,C,P){return this.md5_cmn(a&c|n&~c,e,a,m,C,P)},G.prototype.md5_hh=function(e,a,n,c,m,C,P){return this.md5_cmn(a^n^c,e,a,m,C,P)},G.prototype.md5_ii=function(e,a,n,c,m,C,P){return this.md5_cmn(n^(a|~c),e,a,m,C,P)},G.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,c,m,C,P,f=1732584193,A=-271733879,v=-1732584194,y=271733878;for(n=0;n>5]>>>a%32&255);return n},G.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(c=this.binl_md5(c,e.length*8)),n=0;n<16;n+=1)m[n]=c[n]^909522486,C[n]=c[n]^1549556828;return P=this.binl_md5(m.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(C.concat(P),512+128))},G.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",c,m;for(m=0;m>>4&15)+a.charAt(c&15);return n},G.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},G.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},G.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},G.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},G.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},G.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},d.exports&&(h=d.exports=r),h.Chance=r,typeof importScripts<"u"&&(chance=new r,self.Chance=r),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=r,window.chance=new r)})()})(ne,ne.exports);var ye=ne.exports;const Se=Ae(ye);function ue(d,h,N,w){var I=new Se(ie);N==null&&console.log();let x=N.toUpperCase(),b=d.toUpperCase(),g=h.toUpperCase();if(w!=null&&0":o=="["?"]":o=="{"?"}":o=="("?")":o}}function h(I,x,b){for(var g=[],M=`(){}[]^-|!*+.><='",;:%@?/\\#~`+b,B=` +(function(V,W){typeof exports=="object"&&typeof module<"u"?W(exports):typeof define=="function"&&define.amd?define(["exports"],W):(V=typeof globalThis<"u"?globalThis:V||self,W(V.quickSQL={}))})(this,function(V){"use strict";function W(d){return d==null?d:d.toUpperCase().endsWith("IES")?d.substring(0,d.length-3)+"y":d.toUpperCase().endsWith("ES")||d.toUpperCase().endsWith("S")?d.substring(0,d.length-1):d}function ve(d,h){let N='"';if(d==null)return null;let D=!1;const I="$#_ ";if(!d.startsWith(N)&&!D){const x=d;if(x.length>0&&"0"<=x[0]&&x[0]<="9")D=!0;else for(let b in x){const g=x[b];if(I.indexOf(g)<0&&(g<"0"||"9""u"&&(e[n]=a[n]);return e}function i(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var s=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?s=btoa:typeof Buffer=="function"&&(s=function(a){return new Buffer(a).toString("base64")})})(),r.prototype.bool=function(e){return e=o(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100c,"Chance: Max specified is out of range with fixed. Max should be, at most, "+c),e=o(e,{min:m,max:c}),a=this.integer({min:e.min*n,max:e.max*n});var C=(a/n).toFixed(e.fixed);return parseFloat(C)},r.prototype.integer=function(e){return e=o(e,{min:D,max:N}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},r.prototype.natural=function(e){if(e=o(e,{min:0,max:N}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),c=e.exclude.sort();for(var m in c){if(ne.max,"Chance: Min cannot be greater than Max.");var a=E.primes[E.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&E.primes.push(n);var c=E.primes.filter(function(m){return m>=e.min&&m<=e.max});return this.pick(c)},r.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},r.prototype.hex=function(e){e=o(e,{min:0,max:N,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},r.prototype.letter=function(e){e=o(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},r.prototype.string=function(e){e=o(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function u(e){this.c=e}u.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function p(e){this.c=e}p.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:b})},a:function(e){return e.character({pool:x})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function T(e){for(var a=[],n="identity",c=0;c"u")throw new M("Sorry, the buffer() function is not supported on your platform");e=o(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},r.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},r.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},r.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var c=function(y,_){return y.indexOf(_)!==-1};n&&(c=n.comparator||c);for(var m=[],C=0,P,f=a*50,A=B.call(arguments,2);m.lengthf)throw new RangeError("Chance: num is likely too large for sample set")}return m},r.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,c=[],m=B.call(arguments,2);for(n=Math.max(0,n),null;n--;null)c.push(e.apply(this,m));return c},r.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},r.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},r.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},r.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),c=n.length;return this.n(function(){var m=this.natural({max:--c}),C=n[m];return n[m]=n[c],C},Math.min(c,a))},r.prototype.shuffle=function(e){for(var a=[],n=0,c=Number(e.length),m=i(c),C=c-1,P,f=0;f0&&(c+=m)}if(c===0)throw new RangeError("Chance: No valid entries in array weights");var P=this.random()*c,f=0,A=-1,v;for(C=0;C0){if(P<=f){v=C;break}A=C}C===a.length-1&&(v=A)}var y=e[v];return n=typeof n>"u"?!1:n,n&&(e.splice(v,1),a.splice(v,1)),y},r.prototype.paragraph=function(e){e=o(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),c=e.linebreak===!0?` +`:" ";return n.join(c)},r.prototype.sentence=function(e){e=o(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,c,m=this.n(this.word,a);return c=m.join(" "),c=this.capitalize(c),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(c+=n),c},r.prototype.syllable=function(e){e=o(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",c="aeiou",m=n+c,C="",P,f=0;fe.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var P=e.minAge!==void 0?e.minAge:0,f=e.maxAge!==void 0?e.maxAge:100,A=new Date(c-f-1,n.getMonth(),n.getDate()),v=new Date(c-P,n.getMonth(),n.getDate());A.setDate(A.getDate()+1),v.setDate(v.getDate()+1),v.setMilliseconds(v.getMilliseconds()-1),e=o(e,{min:A,max:v})}else e=o(e,{year:c-a});return this.date(e)},r.prototype.cpf=function(e){e=o(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var c=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;c=11-c%11,c>=10&&(c=0);var m=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},r.prototype.cnpj=function(e){e=o(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var c=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;c=11-c%11,c<2&&(c=0);var m=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},r.prototype.first=function(e){return e=o(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},r.prototype.profession=function(e){return e=o(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},r.prototype.company=function(){return this.pick(this.get("company"))},r.prototype.gender=function(e){return e=o(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},r.prototype.last=function(e){if(e=o(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(c){a=a.concat(n[c])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},r.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},r.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},r.prototype.tld=function(){return this.pick(this.tlds())},r.prototype.twitter=function(){return"@"+this.word()},r.prototype.url=function(e){e=o(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},r.prototype.port=function(){return this.integer({min:0,max:65535})},r.prototype.locale=function(e){return e=o(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},r.prototype.locales=function(e){return e=o(e),e.region?this.get("locale_regions"):this.get("locale_languages")},r.prototype.loremPicsum=function(e){e=o(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},r.prototype.address=function(e){return e=o(e),this.natural({min:5,max:2e3})+" "+this.street(e)},r.prototype.altitude=function(e){return e=o(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.areacode=function(e){e=o(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},r.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},r.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},r.prototype.countries=function(){return this.get("countries")},r.prototype.country=function(e){e=o(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},r.prototype.depth=function(e){return e=o(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.geohash=function(e){return e=o(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},r.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},r.prototype.latitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=o(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.longitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=o(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.phone=function(e){var a=this,n,c=function(_){var F=[];return _.sections.forEach(function(z){F.push(a.string({pool:"0123456789",length:z}))}),_.area+F.join(" ")};e=o(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var m;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),m=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),m=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n);break;case"us":var C=this.areacode(e).toString(),P=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),f=this.natural({min:1e3,max:9999}).toString();m=e.formatted?C+" "+P+"-"+f:C+P+f;break;case"br":var A=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),v;e.mobile?v="9"+a.string({pool:"0123456789",length:4}):v=this.natural({min:2e3,max:5999}).toString();var y=a.string({pool:"0123456789",length:4});m=e.formatted?"("+A+") "+v+"-"+y:A+v+y;break}return m},r.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},r.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",c=e+a+n,m=this.natural({max:9}),C=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),P=m+C;return c+" "+P},r.prototype.counties=function(e){return e=o(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},r.prototype.county=function(e){return this.pick(this.counties(e)).name},r.prototype.provinces=function(e){return e=o(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},r.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},r.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},r.prototype.states=function(e){e=o(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),c=this.get("territories"),m=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(c)),e.armed_forces&&(a=a.concat(m));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},r.prototype.street=function(e){e=o(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},r.prototype.street_suffix=function(e){return e=o(e,{country:"us"}),this.pick(this.street_suffixes(e))},r.prototype.street_suffixes=function(e){return e=o(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},r.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},r.prototype.ampm=function(){return this.bool()?"am":"pm"},r.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=o(e,{american:!0,string:!1});var c=typeof e.min<"u"?e.min.getTime():1,m=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:c,max:m}))}else{var C=this.month({raw:!0}),P=C.days;e&&e.month&&(P=this.get("months")[(e.month%12+12)%12].days),e=o(e,{year:parseInt(this.year(),10),month:C.numeric-1,day:this.natural({min:1,max:P}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},r.prototype.hammertime=function(e){return this.date(e).getTime()},r.prototype.hour=function(e){return e=o(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.millisecond=function(){return this.natural({max:999})},r.prototype.minute=r.prototype.second=function(e){return e=o(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.month=function(e){e=o(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},r.prototype.months=function(){return this.get("months")},r.prototype.second=function(){return this.natural({max:59})},r.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},r.prototype.weekday=function(e){e=o(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},r.prototype.year=function(e){return e=o(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},r.prototype.cc=function(e){e=o(e);var a,n,c;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),c=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,c,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},r.prototype.cc_types=function(){return this.get("cc_types")},r.prototype.cc_type=function(e){e=o(e);var a=this.cc_types(),n=null;if(e.name){for(var c=0;c3&&(_?F=F.substr(0,3):F=F[0]+F.substr(2,2)),F.length<3&&(z=F,F=y.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+F),z},A=function(y,_,F){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return y.getFullYear().toString().substr(2)+z[y.getMonth()]+F.pad(y.getDate()+(_.toLowerCase()==="female"?40:0),2)},v=function(y){for(var _="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",F="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(F[_.indexOf(y[U])]):K+=j.indexOf(F[_.indexOf(y[U])]);return z[K%26]};return P=P.concat(f(c,!0),f(n),A(m,a,this),C.toUpperCase().split("")).join(""),P+=v(P.toUpperCase()),P.toUpperCase()},r.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;m--)c[m-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?c.reduce(function(C,P){return C+P}):c}else throw new RangeError("Chance: A type of die roll must be included")},r.prototype.guid=function(e){e=o(e,{version:5});var a="abcdef1234567890",n="ab89",c=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return c},r.prototype.hash=function(e){e=o(e,{length:40,casing:"lower"});var a=e.casing==="upper"?g.toUpperCase():g;return this.string({pool:a,length:e.length})},r.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},r.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,c,m=0,C=a.length;C>m;++m)c=+a[m],m%2===0&&(c*=2,c>9&&(c-=9)),n+=c;return n*9%10},r.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=o(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},r.prototype.file=function(e){var a=e||{},n="fileExtension",c=Object.keys(this.get("fileExtension")),m,C;if(m=this.word({length:a.length}),a.extension)return C=a.extension,m+"."+C;if(a.extensions){if(Array.isArray(a.extensions))return C=this.pickone(a.extensions),m+"."+C;if(a.extensions.constructor===Object){var P=a.extensions,f=Object.keys(P);return C=this.pickone(P[this.pickone(f)]),m+"."+C}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var A=a.fileType;if(c.indexOf(A)!==-1)return C=this.pickone(this.get(n)[A]),m+"."+C;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return C=this.pickone(this.get(n)[this.pickone(c)]),m+"."+C},r.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var c={fileData:this.buffer({length:a.fileSize}),fileName:n};return c};var E={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},w=Object.prototype.hasOwnProperty,k=Object.keys||function(e){var a=[];for(var n in e)w.call(e,n)&&a.push(n);return a};function L(e,a){for(var n=k(e),c,m=0,C=n.length;m0)return this.normal_pool(e);var a,n,c,m,C=e.mean,P=e.dev;do n=this.random()*2-1,c=this.random()*2-1,a=n*n+c*c;while(a>=1);return m=n*Math.sqrt(-2*Math.log(a)/a),P*m+C},r.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},r.prototype.radio=function(e){e=o(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},r.prototype.set=function(e,a){typeof e=="string"?E[e]=a:E=R(e,E)},r.prototype.tv=function(e){return this.radio(e)},r.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},r.prototype.emotion=function(){return this.pick(this.get("emotions"))},r.prototype.mersenne_twister=function(e){return new H(e)},r.prototype.blueimp_md5=function(){return new G};var H=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};H.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},H.prototype.init_by_array=function(e,a){var n=1,c=0,m,C;for(this.init_genrand(19650218),m=this.N>a?this.N:a;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1664525<<16)+(C&65535)*1664525)+e[c]+c,this.mt[n]>>>=0,n++,c++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),c>=a&&(c=0);for(m=this.N-1;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1566083941<<16)+(C&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},H.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},H.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},H.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},H.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},H.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},H.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var G=function(){};G.prototype.VERSION="1.0.1",G.prototype.safe_add=function(a,n){var c=(a&65535)+(n&65535),m=(a>>16)+(n>>16)+(c>>16);return m<<16|c&65535},G.prototype.bit_roll=function(e,a){return e<>>32-a},G.prototype.md5_cmn=function(e,a,n,c,m,C){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(c,C)),m),n)},G.prototype.md5_ff=function(e,a,n,c,m,C,P){return this.md5_cmn(a&n|~a&c,e,a,m,C,P)},G.prototype.md5_gg=function(e,a,n,c,m,C,P){return this.md5_cmn(a&c|n&~c,e,a,m,C,P)},G.prototype.md5_hh=function(e,a,n,c,m,C,P){return this.md5_cmn(a^n^c,e,a,m,C,P)},G.prototype.md5_ii=function(e,a,n,c,m,C,P){return this.md5_cmn(n^(a|~c),e,a,m,C,P)},G.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,c,m,C,P,f=1732584193,A=-271733879,v=-1732584194,y=271733878;for(n=0;n>5]>>>a%32&255);return n},G.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(c=this.binl_md5(c,e.length*8)),n=0;n<16;n+=1)m[n]=c[n]^909522486,C[n]=c[n]^1549556828;return P=this.binl_md5(m.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(C.concat(P),512+128))},G.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",c,m;for(m=0;m>>4&15)+a.charAt(c&15);return n},G.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},G.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},G.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},G.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},G.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},G.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},d.exports&&(h=d.exports=r),h.Chance=r,typeof importScripts<"u"&&(chance=new r,self.Chance=r),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=r,window.chance=new r)})()})(ne,ne.exports);var ye=ne.exports;const Se=Ae(ye);function ue(d,h,N,D){var I=new Se(ie);N==null&&console.log();let x=N.toUpperCase(),b=d.toUpperCase(),g=h.toUpperCase();if(D!=null&&0":o=="["?"]":o=="{"?"}":o=="("?")":o}}function h(I,x,b){for(var g=[],M=`(){}[]^-|!*+.><='",;:%@?/\\#~`+b,B=` \r `,r=$(I,M+B),o=0,i=0,t=0,s=0;s0&&(u=g[g.length-1]),l==` `?(i++,t=0):s>0&&r[s-1]!==` `?t=t+r[s-1].length:t=0,o+=l.length,u!=null&&u.type=="comment"&&(u.value.lastIndexOf("*/")!=u.value.length-2||u.value=="/*/")){l=="*"||l=="/"?u.value=u.value+l:u.value="/* ... ",u.end=o,u!=null&&u.type=="comment"&&u.value.lastIndexOf("*/")==u.value.length-2&&u.value!="/*/"&&(u.value=I.substring(u.begin,u.end));continue}if(u!=null&&(u.type=="line-comment"||u.type=="dbtools-command")&&l!=` @@ -8,15 +8,15 @@ `||u.value=="\r")){g.push(new d(l,o-l.length,-9,"line-comment",i,t));continue}if(l.toUpperCase()=="SODA"&&(u==null||u.value==` `||u.value=="\r")){g.push(new d(l,o-l.length,-9,"dbtools-command",i,t));continue}if(u!=null&&u.type=="identifier"&&u.end==-11&&u.value.indexOf("@")==0&&!(l==` `||l=="\r")){u.value=u.value+l;continue}if(u!=null&&u.type=="identifier"&&u.end==-11&&u.value.indexOf("@")==0&&(l==` -`||l=="\r")){u.end=o-1,g.push(new d(l,o-1,o,"ws",i,t));continue}if(x&&l=="'"){u!=null&&(u.value.toUpperCase()=="Q"||u.value.toUpperCase()=="N"||u.value.toUpperCase()=="U"||u.value.toUpperCase()=="NQ")?(u.value+=l,u.type="quoted-string"):g.push(new d(l,o-1,-10,"quoted-string",i,t));continue}if(x&&l=='"'){g.push(new d(l,o-1,-11,"dquoted-string",i,t));continue}if(l=="`"&&0<=M.indexOf("`")){g.push(new d(l,o-1,-11,"bquoted-string",i,t));continue}if(l.length==1&&0<=M.indexOf(l)){g.push(new d(l,o-1,o,"operation",i,t));continue}if(l.length==1&&0<=B.indexOf(l)){g.push(new d(l,o-1,o,"ws",i,t));continue}if("0"<=l.charAt(0)&&l.charAt(0)<="9"){N(l,g,o-l.length,i)||(l.charAt(l.length-1)=="K"||l.charAt(l.length-1)=="k"||l.charAt(l.length-1)=="M"||l.charAt(l.length-1)=="m"||l.charAt(l.length-1)=="G"||l.charAt(l.length-1)=="g"||l.charAt(l.length-1)=="T"||l.charAt(l.length-1)=="t"||l.charAt(l.length-1)=="P"||l.charAt(l.length-1)=="p"||l.charAt(l.length-1)=="E"||l.charAt(l.length-1)=="e"?(g.push(new d(l.substring(0,l.length-1),o-l.length,o-1,"constant.numeric",i,t)),g.push(new d(l.substring(l.length-1),o-1,o,"constant.numeric",i,t))):g.push(new d(l,o-l.length,o,"constant.numeric",i,t)));continue}var p="identifier";s+10){var u=g[g.length-1];u.end=I.length}return g}function N(I,x,b,g){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var M=$(I,"efd"),B=0;B")==0||i.indexOf("<")==0)&&(i=i.substring(1).trim());const l=i.toLowerCase();if(l.indexOf("view ")==0){var u=i.split(" ");return u[1]}i=b(i," d");var p=i.indexOf("/");0="0"&&T<="9"&&(i="x"+i),Te(se(i))},this.parseType=function(i){if(this.children!=null&&0!0)),k}return p}0");return t==0},this.getExplicitPkNode=function(){for(var i=0;ii.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(d.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),d.optionEQvalue("prefixPKwithTname","yes")&&(t=W(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let i=this.getGenIdColName();if(i==null){let t=this.getExplicitPkNode();return t==null?null:t.parseName()}return i},this.singleDDL=function(){if(this.children.length==0&&00){var u=g[g.length-1];u.end=I.length}return g}function N(I,x,b,g){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var M=$(I,"efd"),B=0;B")==0||i.indexOf("<")==0)&&(i=i.substring(1).trim());const l=i.toLowerCase();if(l.indexOf("view ")==0){var u=i.split(" ");return u[1]}i=b(i," d");var p=i.indexOf("/");0="0"&&T<="9"&&(i="x"+i),Te(se(i))},this.parseType=function(i){if(this.children!=null&&0!0)),O}return p}0");return t==0},this.getExplicitPkNode=function(){for(var i=0;ii.children.length==0)},this.getGenIdColName=function(){if(this.parseType()!="table"||this.getExplicitPkNode()!=null)return null;if(d.optionEQvalue("Auto Primary Key","yes")){let t="";return this.colprefix!=null&&(t=this.colprefix+"_"),d.optionEQvalue("prefixPKwithTname","yes")&&(t=W(this.parseName())+"_"),t+"id"}return null},this.getPkName=function(){let i=this.getGenIdColName();if(i==null){let t=this.getExplicitPkNode();return t==null?null:t.parseName()}return i},this.singleDDL=function(){if(this.children.length==0&&0!0)),l+=`, +`;l+=h+h+"p_id in number"+t;for(var u in this.fks){let T=this.fks[u],S="number",E=d.find(T);E!=null&&E.getExplicitPkNode()!=null&&(S=E.getExplicitPkNode().parseType(w=>!0)),l+=`, `,l+=h+h+"P_"+u+" "+s+" "+S+t}for(let T=0;T!0),(i=="insert"||i=="update")&&(s+=`, -`);let E=h+h+h+"P_"+S+" := c1."+S+`; -`;i=="insert"&&(E=h+h+h+S),i=="update"&&(E=h+h+h+S+" = P_"+S+` -`),s+=E}for(var u=0;u!0),(i=="insert"||i=="update")&&(s+=`, +`);let k=h+h+h+"P_"+S+" := c1."+S+`; +`;i=="insert"&&(k=h+h+h+S),i=="update"&&(k=h+h+h+S+" = P_"+S+` +`),s+=k}for(var u=0;us.children.length>0&&s.parseName()==t&&!s.isArray())},this.generateSelectJsonBottomUp=function(i){throw new Error("generateSelectJsonBottomUp() not implemented yet")},this.one2many2oneUnsupoported="one to many to one is not supported",this.generateSelectJsonTopDown=function(i){var t=this.parseName();let s="";this.getExplicitPkNode==null&&(s+=i+"'"+this.getGenIdColName()+"' : "+t+"."+this.getGenIdColName()+`, +`),t[s]=l;for(let S=0;Ss.children.length>0&&s.parseName()==t&&!s.isArray())},this.generateSelectJsonBottomUp=function(i){throw new Error("generateSelectJsonBottomUp() not implemented yet")},this.one2many2oneUnsupoported="one to many to one is not supported",this.generateSelectJsonTopDown=function(i){var t=this.parseName();let s="";this.getExplicitPkNode==null&&(s+=i+"'"+this.getGenIdColName()+"' : "+t+"."+this.getGenIdColName()+`, `);for(var l=0;l!0)}),0!0)}),0--"),B=B.replace(/\/* Non-default options:/g,""),b+=B,b+=` `;for(let r=0;r Date: Thu, 8 Feb 2024 16:23:03 -0800 Subject: [PATCH 20/22] 50% performance improvement --- CHANGELOG.md | 8 + dist/quick-sql.js | 184 +++++++++--------- dist/quick-sql.umd.cjs | 48 ++--- src/naming.js | 1 + src/tree.js | 8 +- test/profile.js | 16 ++ test/regression_test.js | 1 + test/tst_000.sql | 0 vscode-profile-2024-02-08-10-16-54.cpuprofile | 1 + 9 files changed, 150 insertions(+), 117 deletions(-) create mode 100644 test/profile.js delete mode 100644 test/tst_000.sql create mode 100644 vscode-profile-2024-02-08-10-16-54.cpuprofile diff --git a/CHANGELOG.md b/CHANGELOG.md index eb54108..167df17 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -19,3 +19,11 @@ are encouraged to be replaced with let errors = qsql.getErrors(); ``` +## [1.2.1] - 2024-2-8 + +Issues up to #51 + +Further Json to QSQL parsing progress + +Performance optimization: from 12 sec down to 6 sec for 1000 line QSQL schema definition +in test/profile.js. Faster regression test as well. \ No newline at end of file diff --git a/dist/quick-sql.js b/dist/quick-sql.js index bd84ae9..43beedd 100644 --- a/dist/quick-sql.js +++ b/dist/quick-sql.js @@ -2,12 +2,12 @@ function W(d) { return d == null ? d : d.toUpperCase().endsWith("IES") ? d.substring(0, d.length - 3) + "y" : d.toUpperCase().endsWith("ES") || d.toUpperCase().endsWith("S") ? d.substring(0, d.length - 1) : d; } function fe(d, h) { - let N = '"'; + let k = '"'; if (d == null) return null; let D = !1; const I = "$#_ "; - if (!d.startsWith(N) && !D) { + if (!d.startsWith(k) && !D) { const x = d; if (x.length > 0 && "0" <= x[0] && x[0] <= "9") D = !0; @@ -20,7 +20,7 @@ function fe(d, h) { } } } - return (d.startsWith("_") || d.startsWith("$") || d.startsWith("#")) && (D = !0), D || (N = ""), N + d + N; + return (d.startsWith("_") || d.startsWith("$") || d.startsWith("#")) && (D = !0), D || (k = ""), k + d + k; } function he(d) { if (d == null) @@ -30,10 +30,10 @@ function he(d) { let h = fe(d); return h.indexOf('"') == 0 || (h = h.replace(/ /g, "_")), h; } -function K(d, h, N) { +function K(d, h, k) { let D = !1; - N == null && (N = ""), d.indexOf('"') == 0 && (D = !0, d = d.substring(1, d.length - 1)), h.indexOf('"') == 0 && (D = !0, h = h.substring(1, h.length - 1)), N.indexOf('"') == 0 && (D = !0, N = N.substring(1, N.length - 1)); - let I = d + h + N; + k == null && (k = ""), d.indexOf('"') == 0 && (D = !0, d = d.substring(1, d.length - 1)), h.indexOf('"') == 0 && (D = !0, h = h.substring(1, h.length - 1)), k.indexOf('"') == 0 && (D = !0, k = k.substring(1, k.length - 1)); + let I = d + h + k; return D ? I = '"' + I + '"' : I = I.toLowerCase(), I; } var le = function() { @@ -62,7 +62,7 @@ var le = function() { "\u300C\u30A2\u30CA\u30EA\u30B9\u30C8\u300D", "\u300C\u30B9\u30DA\u30B7\u30E3\u30EA\u30B9\u30C8\u300D", "\u300C\u30A8\u30D0\u30F3\u30B8\u30A7\u30EA\u30B9\u30C8\u300D" - ], N = [ + ], k = [ "\uC601\uC5C5", "\uAE08\uC735", "\uBC30\uC1A1", @@ -85,7 +85,7 @@ var le = function() { b = g; break; } - return 0 <= b && I.substring(0, 2).toLowerCase() == "jp" && b < h.length ? "'" + h[b] + "'" : 0 <= b && I.substring(0, 2).toLowerCase() == "kr" && b < N.length ? "'" + N[b] + "'" : x; + return 0 <= b && I.substring(0, 2).toLowerCase() == "jp" && b < h.length ? "'" + h[b] + "'" : 0 <= b && I.substring(0, 2).toLowerCase() == "kr" && b < k.length ? "'" + k[b] + "'" : x; } return D; }(); @@ -95,7 +95,7 @@ function be(d) { var ie = { exports: {} }; (function(d, h) { (function() { - var N = 9007199254740992, D = -N, I = "0123456789", x = "abcdefghijklmnopqrstuvwxyz", b = x.toUpperCase(), g = I + "abcdef"; + var k = 9007199254740992, D = -k, I = "0123456789", x = "abcdefghijklmnopqrstuvwxyz", b = x.toUpperCase(), g = I + "abcdef"; function M(e) { this.name = "UnsupportedError", this.message = e || "This feature is not supported on this platform"; } @@ -172,7 +172,7 @@ var ie = { exports: {} }; e.fixed && e.precision, "Chance: Cannot specify both fixed and precision." ); - var a, n = Math.pow(10, e.fixed), c = N / n, m = -c; + var a, n = Math.pow(10, e.fixed), c = k / n, m = -c; t( e.min && e.fixed && e.min < m, "Chance: Min specified is out of range with fixed. Min should be, at least, " + m @@ -183,9 +183,9 @@ var ie = { exports: {} }; var C = (a / n).toFixed(e.fixed); return parseFloat(C); }, r.prototype.integer = function(e) { - return e = o(e, { min: D, max: N }), t(e.min > e.max, "Chance: Min cannot be greater than Max."), Math.floor(this.random() * (e.max - e.min + 1) + e.min); + return e = o(e, { min: D, max: k }), t(e.min > e.max, "Chance: Min cannot be greater than Max."), Math.floor(this.random() * (e.max - e.min + 1) + e.min); }, r.prototype.natural = function(e) { - if (e = o(e, { min: 0, max: N }), typeof e.numerals == "number" && (t(e.numerals < 1, "Chance: Numerals cannot be less than one."), e.min = Math.pow(10, e.numerals - 1), e.max = Math.pow(10, e.numerals) - 1), t(e.min < 0, "Chance: Min cannot be less than zero."), e.exclude) { + if (e = o(e, { min: 0, max: k }), typeof e.numerals == "number" && (t(e.numerals < 1, "Chance: Numerals cannot be less than one."), e.min = Math.pow(10, e.numerals - 1), e.max = Math.pow(10, e.numerals) - 1), t(e.min < 0, "Chance: Min cannot be less than zero."), e.exclude) { t(!Array.isArray(e.exclude), "Chance: exclude must be an array."); for (var a in e.exclude) t(!Number.isInteger(e.exclude[a]), "Chance: exclude must be numbers."); @@ -220,7 +220,7 @@ var ie = { exports: {} }; return !1; return !0; }, r.prototype.hex = function(e) { - e = o(e, { min: 0, max: N, casing: "lower" }), t(e.min < 0, "Chance: Min cannot be less than zero."); + e = o(e, { min: 0, max: k, casing: "lower" }), t(e.min < 0, "Chance: Min cannot be less than zero."); var a = this.natural({ min: e.min, max: e.max }); return e.casing === "upper" ? a.toString(16).toUpperCase() : a.toString(16); }, r.prototype.letter = function(e) { @@ -7027,14 +7027,14 @@ var ie = { exports: {} }; "sadness", "fear" ] - }, w = Object.prototype.hasOwnProperty, k = Object.keys || function(e) { + }, w = Object.prototype.hasOwnProperty, N = Object.keys || function(e) { var a = []; for (var n in e) w.call(e, n) && a.push(n); return a; }; function L(e, a) { - for (var n = k(e), c, m = 0, C = n.length; m < C; m++) + for (var n = N(e), c, m = 0, C = n.length; m < C; m++) c = n[m], a[c] = e[c] || a[c]; } function O(e, a) { @@ -7210,10 +7210,10 @@ var ie = { exports: {} }; })(ie, ie.exports); var pe = ie.exports; const ge = /* @__PURE__ */ be(pe); -function se(d, h, N, D) { +function se(d, h, k, D) { var I = new ge(te); - N == null && console.log(); - let x = N.toUpperCase(), b = d.toUpperCase(), g = h.toUpperCase(); + k == null && console.log(); + let x = k.toUpperCase(), b = d.toUpperCase(), g = h.toUpperCase(); if (D != null && 0 < D.length) { let i = 0, t = D.length; var M = "'"; @@ -7265,10 +7265,10 @@ function X() { return d - Math.floor(d); } var $ = function() { - function d(h, N) { + function d(h, k) { for (var D = [], I = "", x = 0; x < h.length; x++) { - for (var b = h.charAt(x), g = D.length, M = 0; M < N.length; M++) { - var B = N.charAt(M); + for (var b = h.charAt(x), g = D.length, M = 0; M < k.length; M++) { + var B = k.charAt(M); if (b == B) { 0 < I.length && D.push(I), D.push(b), I = ""; continue; @@ -7401,7 +7401,7 @@ var $ = function() { continue; } if ("0" <= l.charAt(0) && l.charAt(0) <= "9") { - N(l, g, o - l.length, i) || (l.charAt(l.length - 1) == "K" || l.charAt(l.length - 1) == "k" || l.charAt(l.length - 1) == "M" || l.charAt(l.length - 1) == "m" || l.charAt(l.length - 1) == "G" || l.charAt(l.length - 1) == "g" || l.charAt(l.length - 1) == "T" || l.charAt(l.length - 1) == "t" || l.charAt(l.length - 1) == "P" || l.charAt(l.length - 1) == "p" || l.charAt(l.length - 1) == "E" || l.charAt(l.length - 1) == "e" ? (g.push(new d(l.substring(0, l.length - 1), o - l.length, o - 1, "constant.numeric", i, t)), g.push(new d(l.substring(l.length - 1), o - 1, o, "constant.numeric", i, t))) : g.push(new d(l, o - l.length, o, "constant.numeric", i, t))); + k(l, g, o - l.length, i) || (l.charAt(l.length - 1) == "K" || l.charAt(l.length - 1) == "k" || l.charAt(l.length - 1) == "M" || l.charAt(l.length - 1) == "m" || l.charAt(l.length - 1) == "G" || l.charAt(l.length - 1) == "g" || l.charAt(l.length - 1) == "T" || l.charAt(l.length - 1) == "t" || l.charAt(l.length - 1) == "P" || l.charAt(l.length - 1) == "p" || l.charAt(l.length - 1) == "E" || l.charAt(l.length - 1) == "e" ? (g.push(new d(l.substring(0, l.length - 1), o - l.length, o - 1, "constant.numeric", i, t)), g.push(new d(l.substring(l.length - 1), o - 1, o, "constant.numeric", i, t))) : g.push(new d(l, o - l.length, o, "constant.numeric", i, t))); continue; } var p = "identifier"; @@ -7415,7 +7415,7 @@ var $ = function() { } return g; } - function N(I, x, b, g) { + function k(I, x, b, g) { if (0 > I.indexOf("e") && 0 > I.indexOf("f") && 0 > I.indexOf("d")) return !1; 0 <= I.indexOf("e"), 0 <= I.indexOf("e"), !(0 <= I.indexOf("e")) && 0 <= I.indexOf("f"); @@ -7570,11 +7570,11 @@ function ve(d) { WHERE: "Y", WITH: "Y" }; - let N = d.toUpperCase(); - return h[N] != null ? "the_" + d : d; + let k = d.toUpperCase(); + return h[k] != null ? "the_" + d : d; } let ce = function() { - let d, h = " ", N = ["string", "varchar2", "varchar", "vc", "char"]; + let d, h = " ", k = ["string", "varchar2", "varchar", "vc", "char"]; var D = ["yn", "boolean", "bool"]; function I(M, B, r) { this.line = M, this.parent = r, this.children = [], r != null && r.children.push(this), this.fks = null, this.findChild = function(i) { @@ -7631,7 +7631,9 @@ let ce = function() { }, this.trimmedContent = function() { var i = this.content.trim(), t = i.indexOf("["), s = i.indexOf("]"); return this.comment == null && 0 < t && (this.comment = i.substr(t + 1, s - t - 1)), 0 < t && (i = i.substr(0, t) + i.substr(s + 2)), t = i.indexOf("--"), this.comment == null && 0 < t && (this.comment = i.substr(t + 2)), 0 < t && (i = i.substr(0, t)), i.trim(); - }, this.src = Z(this.content, !1, !0, ""), this.parseName = function() { + }, this.src = Z(this.content, !1, !0, ""), this.parsedName = null, this.parseName = function() { + if (this.parsedName != null) + return this.parsedName; let i = this.trimmedContent(); i = i.replace(/\t/, h); const t = i.indexOf('"'), s = i.indexOf('"', t + 1); @@ -7646,10 +7648,10 @@ let ce = function() { i = b(i, " d"); var p = i.indexOf("/"); 0 < p && (i = i.substring(0, p)), i = i.trim(), i = b(i, " integer"), i = b(i, " number"), i = b(i, " int"), i = b(i, " num"), i = b(i, " clob"), i = b(i, " blob"), i = b(i, " json"), i = b(i, " file"), i = b(i, " date"), i = b(i, " tstz"), i = b(i, " tswtz"), i = b(i, " tswltz"), i = b(i, " ts"), i = i.replace(/ vc\d+k/g, ""), i = i.replace(/ vc\(\d+\)/g, ""), i = i.replace(/ vc\d+/g, ""); - for (let S in N) { - let E = l.indexOf(" " + N[S]); + for (let S in k) { + let E = l.indexOf(" " + k[S]); if (0 < E) { - i = i.substring(0, E) + i.substring(E + N[S].length + 1); + i = i.substring(0, E) + i.substring(E + k[S].length + 1); break; } } @@ -7662,7 +7664,7 @@ let ce = function() { } i = i.replace(/ num(ber)?\(\d+\)/g, ""), i = i.replace(/ num(ber)?\(\d+,\d+\)/g, ""), i = i.replace(/ num(ber)?\d+/g, ""), i = i.trim(), this.children.length == 0 && this.parent != null && this.parent.colprefix != null && (i = this.parent.colprefix + "_" + i); var T = i.substr(0, 1); - return T >= "0" && T <= "9" && (i = "x" + i), ve(he(i)); + return T >= "0" && T <= "9" && (i = "x" + i), this.parsedName = ve(he(i)), this.parsedName; }, this.parseType = function(i) { if (this.children != null && 0 < this.children.length) return "table"; @@ -7710,8 +7712,8 @@ let ce = function() { } 0 < this.indexOf("unique") && (p += ` `, p += h + h + " ".repeat(r.maxChildNameLen()) + "constraint " + T + "_unq unique"); - var k = "'"; - if ((p.startsWith("integer") || p.startsWith("number") || p.startsWith("date")) && (k = ""), 0 < this.indexOf("default")) { + var N = "'"; + if ((p.startsWith("integer") || p.startsWith("number") || p.startsWith("date")) && (N = ""), 0 < this.indexOf("default")) { let L = ""; for (let O = this.indexOf("default") + 1; O < t.length; O++) { const R = t[O].value; @@ -7719,9 +7721,9 @@ let ce = function() { break; L += t[O].value; } - p += " default on null " + k + L + k; + p += " default on null " + N + L + N; } - if ((0 < this.indexOf("nn") || this.indexOf("not") + 1 == this.indexOf("null")) && this.indexOf("pk") < 0 && (p += " not null"), (0 < this.indexOf("hidden") || 0 < this.indexOf("invincible")) && (p += " invisible"), p += this.genConstraint(k), p += S, 0 < this.indexOf("between")) { + if ((0 < this.indexOf("nn") || this.indexOf("not") + 1 == this.indexOf("null")) && this.indexOf("pk") < 0 && (p += " not null"), (0 < this.indexOf("hidden") || 0 < this.indexOf("invincible")) && (p += " invisible"), p += this.genConstraint(N), p += S, 0 < this.indexOf("between")) { const L = this.indexOf("between"), O = t[L + 1].value + " and " + t[L + 3].value; p += " constraint " + K(T, "_bet") + ` `, p += " check (" + this.parseName() + " between " + O + ")"; @@ -7930,8 +7932,8 @@ let ce = function() { `), s += ")" + (d.optionEQvalue("compress", "yes") || 0 < i.indexOf("/COMPRESS") ? " compress" : "") + `; `; - const E = i.indexOf("/AUDIT"), w = i.indexOf("/AUDITCOLS"), k = i.indexOf("/AUDIT COL"); - 0 < E && w < 0 && k < 0 && (s += "audit all on " + l + `; + const E = i.indexOf("/AUDIT"), w = i.indexOf("/AUDITCOLS"), N = i.indexOf("/AUDIT COL"); + 0 < E && w < 0 && N < 0 && (s += "audit all on " + l + `; `); let L = 1; @@ -8025,8 +8027,8 @@ let ce = function() { let C = d.find(s[m]); if (C != null) for (let P = 0; P < C.children.length; P++) { - var k = C.children[P].parseName(), L = w[k]; - L == null && (L = 0), w[k] = L + 1; + var N = C.children[P].parseName(), L = w[N]; + L == null && (L = 0), w[N] = L + 1; } } for (let m = 2; m < s.length; m++) { @@ -8177,9 +8179,9 @@ end; `.toLowerCase(), u = !0); var E = d.additionalColumns(); for (var w in E) { - var k = E[w]; + var N = E[w]; s += " if :new." + w + ` is null then -`, k.startsWith("INT") ? s += " " + w + ` := 0; +`, N.startsWith("INT") ? s += " " + w + ` := 0; ` : s += " " + w + ` := 'N/A'; `, s += ` end if; `, u = !0; @@ -8222,10 +8224,10 @@ end; let E = this.fks[S], w = d.find(E); w != null && w.getExplicitPkNode() != null && w.getExplicitPkNode().parseType((L) => !0), (i == "insert" || i == "update") && (s += `, `); - let k = h + h + h + "P_" + S + " := c1." + S + `; + let N = h + h + h + "P_" + S + " := c1." + S + `; `; - i == "insert" && (k = h + h + h + S), i == "update" && (k = h + h + h + S + " = P_" + S + ` -`), s += k; + i == "insert" && (N = h + h + h + S), i == "update" && (N = h + h + h + S + " = P_" + S + ` +`), s += N; } for (var u = 0; u < this.children.length; u++) { var p = this.children[u]; @@ -8322,8 +8324,8 @@ is for (let S = 0; S < this.cardinality(); S++) { let E = null; if (i != null) { - const k = i[s]; - k != null && Array.isArray(k) && (E = k[S]); + const N = i[s]; + N != null && Array.isArray(N) && (E = N[S]); } l += "insert into " + s + ` ( `; @@ -8332,17 +8334,17 @@ is u = w, l += h + u + `, `; else { - let k = this.getExplicitPkNode(); - k != null && (u = k.parseName(), l += h + u + `, + let N = this.getExplicitPkNode(); + N != null && (u = N.parseName(), l += h + u + `, `); } - for (let k in this.fks) { - let L = this.fks[k], O = d.find(L), R = ""; - O == null && (O = d.find(k), O.isMany2One() & !k.endsWith("_id") && (L = k, k = W(k), R = "_id")), l += h + k + R + `, + for (let N in this.fks) { + let L = this.fks[N], O = d.find(L), R = ""; + O == null && (O = d.find(N), O.isMany2One() & !N.endsWith("_id") && (L = N, N = W(N), R = "_id")), l += h + N + R + `, `; } - for (let k = 0; k < this.children.length; k++) { - let L = this.children[k]; + for (let N = 0; N < this.children.length; N++) { + let L = this.children[N]; if (!(w != null && L.parseName() == "id") && L.refId() == null) { if (L == this.getExplicitPkNode()) continue; @@ -8357,20 +8359,20 @@ is p = S + 1, l += h + p + `, `; else { - let k = this.getExplicitPkNode(); - if (k != null) { - const L = k.parseName(); + let N = this.getExplicitPkNode(); + if (N != null) { + const L = N.parseName(); let O = g(d.data, null, L, this.parseName()), R = -1; E != null && (R = E[L]), O != null && O[S] != null && (R = O[S]), R.replaceAll && (R = "'" + R + "'"), p = R != -1 ? R : S + 1, l += h + p + `, `; } } - for (let k in this.fks) { - let L = this.fks[k], O = d.find(L), R = [], H = "INTEGER"; + for (let N in this.fks) { + let L = this.fks[N], O = d.find(L), R = [], H = "INTEGER"; for (let G = 1; G <= O.cardinality(); G++) R.push(G); if (E != null) { - let G = E[k]; + let G = E[N]; if (G != null) typeof G == "string" && (H = "STRING"), R = [], R[0] = G; else { @@ -8378,7 +8380,7 @@ is if (a != null) { for (const n in a) if (a[n][s + "_id"] == p) { - const c = a[n][k]; + const c = a[n][N]; c != null && (typeof c == "string" && (H = "STRING"), R = [], R[0] = c); break; } @@ -8391,8 +8393,8 @@ is l += h + le(d.getOptionValue("Data Language"), se(s, W(L) + "_id", H, R)) + `, `; } - for (let k = 0; k < this.children.length; k++) { - let L = this.children[k]; + for (let N = 0; N < this.children.length; N++) { + let L = this.children[N]; if (!(w != null && L.parseName() == "id") && L.refId() == null) { if (L == this.getExplicitPkNode()) continue; @@ -8462,8 +8464,8 @@ modify ` + T + " generated always as identity restart start with " + (this.card break; } } - const w = t + "." + this.getPkName(), k = p + "." + E; - s += i + "where " + k + " = " + w + ` + const w = t + "." + this.getPkName(), N = p + "." + E; + s += i + "where " + N + " = " + w + ` `, i = i.slice(0, -2), s += i + "]"; } s += l < this.children.length - 1 ? `, @@ -8503,8 +8505,8 @@ modify ` + T + " generated always as identity restart start with " + (this.card } let S = new I(l, s, null), E = !1; for (let w = 0; w < r.length; w++) { - let k = r[w]; - if (S.apparentDepth() <= k.apparentDepth()) + let N = r[w]; + if (S.apparentDepth() <= N.apparentDepth()) if (0 < w) { let L = r[w - 1]; S = new I(l, s, L), r[w] = S, r = r.slice(0, w + 1), E = !0; @@ -8522,8 +8524,8 @@ modify ` + T + " generated always as identity restart start with " + (this.card if (S.isMany2One()) { const w = S.parent; w.fks == null && (w.fks = []); - let k = S.refId(); - k == null && (k = S.parseName()), w.fks[S.parseName() + "_id"] = k; + let N = S.refId(); + N == null && (N = S.parseName()), w.fks[S.parseName() + "_id"] = N; } l++, s = ""; continue; @@ -8543,13 +8545,13 @@ modify ` + T + " generated always as identity restart start with " + (this.card } let S = null, E = null; for (let w in T) { - const k = T[w]; - if (S == null && k.value == "flattened") { + const N = T[w]; + if (S == null && N.value == "flattened") { S = ""; continue; } if (S != null) { - if (S += k.value, S == "=" || S.charAt(S.length - 1) != "}") + if (S += N.value, S == "=" || S.charAt(S.length - 1) != "}") continue; let L = S.substring(1); try { @@ -8558,12 +8560,12 @@ modify ` + T + " generated always as identity restart start with " + (this.card } catch { } } - if (E == null && k.value == "settings") { + if (E == null && N.value == "settings") { E = ""; continue; } if (E != null) { - E += k.value, E.substring(1); + E += N.value, E.substring(1); try { M.setOptions(E), t = null, s = ""; continue e; @@ -8612,7 +8614,7 @@ var Ae = function() { return !0; return !1; } - function N(r) { + function k(r) { let o = ["_id", "Id"]; if (r.id != null) return { key: "id", value: r.id }; @@ -8745,7 +8747,7 @@ var Ae = function() { let p = r, T = i; if (isNaN(u)) { p = u + b(o[u]); - const S = N(t); + const S = k(t); S != null && (T = S); } this.flatten(p, o[u], T); @@ -8763,8 +8765,8 @@ var Ae = function() { T == null && (T = []); const S = {}; S[this.refIdName(u)] = i.value; - let E = N(t); - E == null && (t.id = this.idSeq++, E = N(t)), S[this.refIdName(r)] = E.value, T.push(S), this.tableContent[p] = T; + let E = k(t); + E == null && (t.id = this.idSeq++, E = k(t)), S[this.refIdName(r)] = E.value, T.push(S), this.tableContent[p] = T; } } this.tableContent[r] = l; @@ -8811,7 +8813,7 @@ const ye = function() { function h(b, g) { this.line = b, this.depth = g; } - function N(b) { + function k(b) { const g = b, M = b.input; let B = []; const r = M.split(` @@ -8893,13 +8895,13 @@ const ye = function() { } return g; } - return N; + return k; }(); function Se(d) { let h = []; - for (var N = 0; N < d.length; N++) { - var D = d[N]; - h[N] = re(D); + for (var k = 0; k < d.length; k++) { + var D = d[k]; + h[k] = re(D); } let I = []; for (let b = 0; b < h.length; b++) { @@ -8915,21 +8917,21 @@ function Se(d) { return x; } function re(d) { - for (var h = d.split(/ |\t/), N = 0, D = 0; D < h.length; D++) { + for (var h = d.split(/ |\t/), k = 0, D = 0; D < h.length; D++) { var I = h[D]; - if (I == " " && (N += 4), I == "") { - N++; + if (I == " " && (k += 4), I == "") { + k++; continue; } if (!/[^.a-zA-Z0-9_"]/.test(I)) - return N; + return k; } return 0; } function Me(d, h) { - for (let N = h; 0 <= N; N--) - if (d[N] < d[h]) - return N; + for (let k = h; 0 <= k; k--) + if (d[k] < d[h]) + return k; return null; } const j = { @@ -8978,7 +8980,7 @@ const j = { let I = D; return typeof I == "string" && (I = I.toLowerCase()), I == "yes" ? !0 : I == "no" ? !1 : I == "y" ? !0 : I == "n" ? !1 : I == "true" ? !0 : I == "false" ? !1 : I == ne.toLowerCase() ? "identity" : I == ue.toLowerCase() ? "guid" : I == me.toLowerCase() ? "tswtz" : I == de.toLowerCase() ? "tswltz" : I; } - function N(D, I) { + function k(D, I) { this.ddl = null, this.erd = null, this.errors = null, this.options = JSON.parse(JSON.stringify(d)), this.input = D, this.getOptionValue = function(b) { const g = b.toLowerCase(); let M = this.options[g]; @@ -9199,7 +9201,7 @@ const j = { return this.errors != null ? this.errors : (this.errors = Te.findErrors(this, this.fullInput), this.errors); }, this.version = oe; } - return N; + return k; }(); function Ie(d, h) { return Ae(d, h); diff --git a/dist/quick-sql.umd.cjs b/dist/quick-sql.umd.cjs index 5f4cb34..1ba0cfb 100644 --- a/dist/quick-sql.umd.cjs +++ b/dist/quick-sql.umd.cjs @@ -1,5 +1,5 @@ -(function(V,W){typeof exports=="object"&&typeof module<"u"?W(exports):typeof define=="function"&&define.amd?define(["exports"],W):(V=typeof globalThis<"u"?globalThis:V||self,W(V.quickSQL={}))})(this,function(V){"use strict";function W(d){return d==null?d:d.toUpperCase().endsWith("IES")?d.substring(0,d.length-3)+"y":d.toUpperCase().endsWith("ES")||d.toUpperCase().endsWith("S")?d.substring(0,d.length-1):d}function ve(d,h){let N='"';if(d==null)return null;let D=!1;const I="$#_ ";if(!d.startsWith(N)&&!D){const x=d;if(x.length>0&&"0"<=x[0]&&x[0]<="9")D=!0;else for(let b in x){const g=x[b];if(I.indexOf(g)<0&&(g<"0"||"9""u"&&(e[n]=a[n]);return e}function i(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var s=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?s=btoa:typeof Buffer=="function"&&(s=function(a){return new Buffer(a).toString("base64")})})(),r.prototype.bool=function(e){return e=o(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100c,"Chance: Max specified is out of range with fixed. Max should be, at most, "+c),e=o(e,{min:m,max:c}),a=this.integer({min:e.min*n,max:e.max*n});var C=(a/n).toFixed(e.fixed);return parseFloat(C)},r.prototype.integer=function(e){return e=o(e,{min:D,max:N}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},r.prototype.natural=function(e){if(e=o(e,{min:0,max:N}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),c=e.exclude.sort();for(var m in c){if(ne.max,"Chance: Min cannot be greater than Max.");var a=E.primes[E.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&E.primes.push(n);var c=E.primes.filter(function(m){return m>=e.min&&m<=e.max});return this.pick(c)},r.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},r.prototype.hex=function(e){e=o(e,{min:0,max:N,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},r.prototype.letter=function(e){e=o(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},r.prototype.string=function(e){e=o(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function u(e){this.c=e}u.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function p(e){this.c=e}p.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:b})},a:function(e){return e.character({pool:x})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function T(e){for(var a=[],n="identity",c=0;c"u")throw new M("Sorry, the buffer() function is not supported on your platform");e=o(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},r.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},r.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},r.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var c=function(y,_){return y.indexOf(_)!==-1};n&&(c=n.comparator||c);for(var m=[],C=0,P,f=a*50,A=B.call(arguments,2);m.lengthf)throw new RangeError("Chance: num is likely too large for sample set")}return m},r.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,c=[],m=B.call(arguments,2);for(n=Math.max(0,n),null;n--;null)c.push(e.apply(this,m));return c},r.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},r.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},r.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},r.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),c=n.length;return this.n(function(){var m=this.natural({max:--c}),C=n[m];return n[m]=n[c],C},Math.min(c,a))},r.prototype.shuffle=function(e){for(var a=[],n=0,c=Number(e.length),m=i(c),C=c-1,P,f=0;f0&&(c+=m)}if(c===0)throw new RangeError("Chance: No valid entries in array weights");var P=this.random()*c,f=0,A=-1,v;for(C=0;C0){if(P<=f){v=C;break}A=C}C===a.length-1&&(v=A)}var y=e[v];return n=typeof n>"u"?!1:n,n&&(e.splice(v,1),a.splice(v,1)),y},r.prototype.paragraph=function(e){e=o(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),c=e.linebreak===!0?` -`:" ";return n.join(c)},r.prototype.sentence=function(e){e=o(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,c,m=this.n(this.word,a);return c=m.join(" "),c=this.capitalize(c),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(c+=n),c},r.prototype.syllable=function(e){e=o(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",c="aeiou",m=n+c,C="",P,f=0;fe.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var P=e.minAge!==void 0?e.minAge:0,f=e.maxAge!==void 0?e.maxAge:100,A=new Date(c-f-1,n.getMonth(),n.getDate()),v=new Date(c-P,n.getMonth(),n.getDate());A.setDate(A.getDate()+1),v.setDate(v.getDate()+1),v.setMilliseconds(v.getMilliseconds()-1),e=o(e,{min:A,max:v})}else e=o(e,{year:c-a});return this.date(e)},r.prototype.cpf=function(e){e=o(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var c=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;c=11-c%11,c>=10&&(c=0);var m=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},r.prototype.cnpj=function(e){e=o(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var c=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;c=11-c%11,c<2&&(c=0);var m=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},r.prototype.first=function(e){return e=o(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},r.prototype.profession=function(e){return e=o(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},r.prototype.company=function(){return this.pick(this.get("company"))},r.prototype.gender=function(e){return e=o(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},r.prototype.last=function(e){if(e=o(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(c){a=a.concat(n[c])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},r.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},r.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},r.prototype.tld=function(){return this.pick(this.tlds())},r.prototype.twitter=function(){return"@"+this.word()},r.prototype.url=function(e){e=o(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},r.prototype.port=function(){return this.integer({min:0,max:65535})},r.prototype.locale=function(e){return e=o(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},r.prototype.locales=function(e){return e=o(e),e.region?this.get("locale_regions"):this.get("locale_languages")},r.prototype.loremPicsum=function(e){e=o(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},r.prototype.address=function(e){return e=o(e),this.natural({min:5,max:2e3})+" "+this.street(e)},r.prototype.altitude=function(e){return e=o(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.areacode=function(e){e=o(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},r.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},r.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},r.prototype.countries=function(){return this.get("countries")},r.prototype.country=function(e){e=o(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},r.prototype.depth=function(e){return e=o(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.geohash=function(e){return e=o(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},r.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},r.prototype.latitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=o(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.longitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=o(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.phone=function(e){var a=this,n,c=function(_){var F=[];return _.sections.forEach(function(z){F.push(a.string({pool:"0123456789",length:z}))}),_.area+F.join(" ")};e=o(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var m;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),m=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),m=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n);break;case"us":var C=this.areacode(e).toString(),P=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),f=this.natural({min:1e3,max:9999}).toString();m=e.formatted?C+" "+P+"-"+f:C+P+f;break;case"br":var A=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),v;e.mobile?v="9"+a.string({pool:"0123456789",length:4}):v=this.natural({min:2e3,max:5999}).toString();var y=a.string({pool:"0123456789",length:4});m=e.formatted?"("+A+") "+v+"-"+y:A+v+y;break}return m},r.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},r.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",c=e+a+n,m=this.natural({max:9}),C=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),P=m+C;return c+" "+P},r.prototype.counties=function(e){return e=o(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},r.prototype.county=function(e){return this.pick(this.counties(e)).name},r.prototype.provinces=function(e){return e=o(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},r.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},r.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},r.prototype.states=function(e){e=o(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),c=this.get("territories"),m=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(c)),e.armed_forces&&(a=a.concat(m));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},r.prototype.street=function(e){e=o(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},r.prototype.street_suffix=function(e){return e=o(e,{country:"us"}),this.pick(this.street_suffixes(e))},r.prototype.street_suffixes=function(e){return e=o(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},r.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},r.prototype.ampm=function(){return this.bool()?"am":"pm"},r.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=o(e,{american:!0,string:!1});var c=typeof e.min<"u"?e.min.getTime():1,m=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:c,max:m}))}else{var C=this.month({raw:!0}),P=C.days;e&&e.month&&(P=this.get("months")[(e.month%12+12)%12].days),e=o(e,{year:parseInt(this.year(),10),month:C.numeric-1,day:this.natural({min:1,max:P}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},r.prototype.hammertime=function(e){return this.date(e).getTime()},r.prototype.hour=function(e){return e=o(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.millisecond=function(){return this.natural({max:999})},r.prototype.minute=r.prototype.second=function(e){return e=o(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.month=function(e){e=o(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},r.prototype.months=function(){return this.get("months")},r.prototype.second=function(){return this.natural({max:59})},r.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},r.prototype.weekday=function(e){e=o(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},r.prototype.year=function(e){return e=o(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},r.prototype.cc=function(e){e=o(e);var a,n,c;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),c=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,c,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},r.prototype.cc_types=function(){return this.get("cc_types")},r.prototype.cc_type=function(e){e=o(e);var a=this.cc_types(),n=null;if(e.name){for(var c=0;c3&&(_?F=F.substr(0,3):F=F[0]+F.substr(2,2)),F.length<3&&(z=F,F=y.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+F),z},A=function(y,_,F){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return y.getFullYear().toString().substr(2)+z[y.getMonth()]+F.pad(y.getDate()+(_.toLowerCase()==="female"?40:0),2)},v=function(y){for(var _="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",F="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(F[_.indexOf(y[U])]):K+=j.indexOf(F[_.indexOf(y[U])]);return z[K%26]};return P=P.concat(f(c,!0),f(n),A(m,a,this),C.toUpperCase().split("")).join(""),P+=v(P.toUpperCase()),P.toUpperCase()},r.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;m--)c[m-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?c.reduce(function(C,P){return C+P}):c}else throw new RangeError("Chance: A type of die roll must be included")},r.prototype.guid=function(e){e=o(e,{version:5});var a="abcdef1234567890",n="ab89",c=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return c},r.prototype.hash=function(e){e=o(e,{length:40,casing:"lower"});var a=e.casing==="upper"?g.toUpperCase():g;return this.string({pool:a,length:e.length})},r.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},r.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,c,m=0,C=a.length;C>m;++m)c=+a[m],m%2===0&&(c*=2,c>9&&(c-=9)),n+=c;return n*9%10},r.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=o(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},r.prototype.file=function(e){var a=e||{},n="fileExtension",c=Object.keys(this.get("fileExtension")),m,C;if(m=this.word({length:a.length}),a.extension)return C=a.extension,m+"."+C;if(a.extensions){if(Array.isArray(a.extensions))return C=this.pickone(a.extensions),m+"."+C;if(a.extensions.constructor===Object){var P=a.extensions,f=Object.keys(P);return C=this.pickone(P[this.pickone(f)]),m+"."+C}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var A=a.fileType;if(c.indexOf(A)!==-1)return C=this.pickone(this.get(n)[A]),m+"."+C;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return C=this.pickone(this.get(n)[this.pickone(c)]),m+"."+C},r.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var c={fileData:this.buffer({length:a.fileSize}),fileName:n};return c};var E={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},w=Object.prototype.hasOwnProperty,k=Object.keys||function(e){var a=[];for(var n in e)w.call(e,n)&&a.push(n);return a};function L(e,a){for(var n=k(e),c,m=0,C=n.length;m0)return this.normal_pool(e);var a,n,c,m,C=e.mean,P=e.dev;do n=this.random()*2-1,c=this.random()*2-1,a=n*n+c*c;while(a>=1);return m=n*Math.sqrt(-2*Math.log(a)/a),P*m+C},r.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},r.prototype.radio=function(e){e=o(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},r.prototype.set=function(e,a){typeof e=="string"?E[e]=a:E=R(e,E)},r.prototype.tv=function(e){return this.radio(e)},r.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},r.prototype.emotion=function(){return this.pick(this.get("emotions"))},r.prototype.mersenne_twister=function(e){return new H(e)},r.prototype.blueimp_md5=function(){return new G};var H=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};H.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},H.prototype.init_by_array=function(e,a){var n=1,c=0,m,C;for(this.init_genrand(19650218),m=this.N>a?this.N:a;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1664525<<16)+(C&65535)*1664525)+e[c]+c,this.mt[n]>>>=0,n++,c++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),c>=a&&(c=0);for(m=this.N-1;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1566083941<<16)+(C&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},H.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},H.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},H.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},H.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},H.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},H.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var G=function(){};G.prototype.VERSION="1.0.1",G.prototype.safe_add=function(a,n){var c=(a&65535)+(n&65535),m=(a>>16)+(n>>16)+(c>>16);return m<<16|c&65535},G.prototype.bit_roll=function(e,a){return e<>>32-a},G.prototype.md5_cmn=function(e,a,n,c,m,C){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(c,C)),m),n)},G.prototype.md5_ff=function(e,a,n,c,m,C,P){return this.md5_cmn(a&n|~a&c,e,a,m,C,P)},G.prototype.md5_gg=function(e,a,n,c,m,C,P){return this.md5_cmn(a&c|n&~c,e,a,m,C,P)},G.prototype.md5_hh=function(e,a,n,c,m,C,P){return this.md5_cmn(a^n^c,e,a,m,C,P)},G.prototype.md5_ii=function(e,a,n,c,m,C,P){return this.md5_cmn(n^(a|~c),e,a,m,C,P)},G.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,c,m,C,P,f=1732584193,A=-271733879,v=-1732584194,y=271733878;for(n=0;n>5]>>>a%32&255);return n},G.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(c=this.binl_md5(c,e.length*8)),n=0;n<16;n+=1)m[n]=c[n]^909522486,C[n]=c[n]^1549556828;return P=this.binl_md5(m.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(C.concat(P),512+128))},G.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",c,m;for(m=0;m>>4&15)+a.charAt(c&15);return n},G.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},G.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},G.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},G.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},G.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},G.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},d.exports&&(h=d.exports=r),h.Chance=r,typeof importScripts<"u"&&(chance=new r,self.Chance=r),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=r,window.chance=new r)})()})(ne,ne.exports);var ye=ne.exports;const Se=Ae(ye);function ue(d,h,N,D){var I=new Se(ie);N==null&&console.log();let x=N.toUpperCase(),b=d.toUpperCase(),g=h.toUpperCase();if(D!=null&&0":o=="["?"]":o=="{"?"}":o=="("?")":o}}function h(I,x,b){for(var g=[],M=`(){}[]^-|!*+.><='",;:%@?/\\#~`+b,B=` +(function(V,W){typeof exports=="object"&&typeof module<"u"?W(exports):typeof define=="function"&&define.amd?define(["exports"],W):(V=typeof globalThis<"u"?globalThis:V||self,W(V.quickSQL={}))})(this,function(V){"use strict";function W(d){return d==null?d:d.toUpperCase().endsWith("IES")?d.substring(0,d.length-3)+"y":d.toUpperCase().endsWith("ES")||d.toUpperCase().endsWith("S")?d.substring(0,d.length-1):d}function ve(d,h){let k='"';if(d==null)return null;let D=!1;const I="$#_ ";if(!d.startsWith(k)&&!D){const x=d;if(x.length>0&&"0"<=x[0]&&x[0]<="9")D=!0;else for(let b in x){const g=x[b];if(I.indexOf(g)<0&&(g<"0"||"9""u"&&(e[n]=a[n]);return e}function i(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var s=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?s=btoa:typeof Buffer=="function"&&(s=function(a){return new Buffer(a).toString("base64")})})(),r.prototype.bool=function(e){return e=o(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100c,"Chance: Max specified is out of range with fixed. Max should be, at most, "+c),e=o(e,{min:m,max:c}),a=this.integer({min:e.min*n,max:e.max*n});var C=(a/n).toFixed(e.fixed);return parseFloat(C)},r.prototype.integer=function(e){return e=o(e,{min:D,max:k}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},r.prototype.natural=function(e){if(e=o(e,{min:0,max:k}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),c=e.exclude.sort();for(var m in c){if(ne.max,"Chance: Min cannot be greater than Max.");var a=E.primes[E.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&E.primes.push(n);var c=E.primes.filter(function(m){return m>=e.min&&m<=e.max});return this.pick(c)},r.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},r.prototype.hex=function(e){e=o(e,{min:0,max:k,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},r.prototype.letter=function(e){e=o(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},r.prototype.string=function(e){e=o(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function u(e){this.c=e}u.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function p(e){this.c=e}p.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:b})},a:function(e){return e.character({pool:x})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function T(e){for(var a=[],n="identity",c=0;c"u")throw new M("Sorry, the buffer() function is not supported on your platform");e=o(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},r.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},r.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},r.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var c=function(y,_){return y.indexOf(_)!==-1};n&&(c=n.comparator||c);for(var m=[],C=0,P,f=a*50,A=B.call(arguments,2);m.lengthf)throw new RangeError("Chance: num is likely too large for sample set")}return m},r.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,c=[],m=B.call(arguments,2);for(n=Math.max(0,n),null;n--;null)c.push(e.apply(this,m));return c},r.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},r.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},r.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},r.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),c=n.length;return this.n(function(){var m=this.natural({max:--c}),C=n[m];return n[m]=n[c],C},Math.min(c,a))},r.prototype.shuffle=function(e){for(var a=[],n=0,c=Number(e.length),m=i(c),C=c-1,P,f=0;f0&&(c+=m)}if(c===0)throw new RangeError("Chance: No valid entries in array weights");var P=this.random()*c,f=0,A=-1,v;for(C=0;C0){if(P<=f){v=C;break}A=C}C===a.length-1&&(v=A)}var y=e[v];return n=typeof n>"u"?!1:n,n&&(e.splice(v,1),a.splice(v,1)),y},r.prototype.paragraph=function(e){e=o(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),c=e.linebreak===!0?` +`:" ";return n.join(c)},r.prototype.sentence=function(e){e=o(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,c,m=this.n(this.word,a);return c=m.join(" "),c=this.capitalize(c),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(c+=n),c},r.prototype.syllable=function(e){e=o(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",c="aeiou",m=n+c,C="",P,f=0;fe.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var P=e.minAge!==void 0?e.minAge:0,f=e.maxAge!==void 0?e.maxAge:100,A=new Date(c-f-1,n.getMonth(),n.getDate()),v=new Date(c-P,n.getMonth(),n.getDate());A.setDate(A.getDate()+1),v.setDate(v.getDate()+1),v.setMilliseconds(v.getMilliseconds()-1),e=o(e,{min:A,max:v})}else e=o(e,{year:c-a});return this.date(e)},r.prototype.cpf=function(e){e=o(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var c=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;c=11-c%11,c>=10&&(c=0);var m=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},r.prototype.cnpj=function(e){e=o(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var c=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;c=11-c%11,c<2&&(c=0);var m=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},r.prototype.first=function(e){return e=o(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},r.prototype.profession=function(e){return e=o(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},r.prototype.company=function(){return this.pick(this.get("company"))},r.prototype.gender=function(e){return e=o(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},r.prototype.last=function(e){if(e=o(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(c){a=a.concat(n[c])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},r.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},r.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},r.prototype.tld=function(){return this.pick(this.tlds())},r.prototype.twitter=function(){return"@"+this.word()},r.prototype.url=function(e){e=o(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},r.prototype.port=function(){return this.integer({min:0,max:65535})},r.prototype.locale=function(e){return e=o(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},r.prototype.locales=function(e){return e=o(e),e.region?this.get("locale_regions"):this.get("locale_languages")},r.prototype.loremPicsum=function(e){e=o(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},r.prototype.address=function(e){return e=o(e),this.natural({min:5,max:2e3})+" "+this.street(e)},r.prototype.altitude=function(e){return e=o(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.areacode=function(e){e=o(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},r.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},r.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},r.prototype.countries=function(){return this.get("countries")},r.prototype.country=function(e){e=o(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},r.prototype.depth=function(e){return e=o(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.geohash=function(e){return e=o(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},r.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},r.prototype.latitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=o(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.longitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=o(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.phone=function(e){var a=this,n,c=function(_){var F=[];return _.sections.forEach(function(z){F.push(a.string({pool:"0123456789",length:z}))}),_.area+F.join(" ")};e=o(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var m;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),m=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),m=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n);break;case"us":var C=this.areacode(e).toString(),P=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),f=this.natural({min:1e3,max:9999}).toString();m=e.formatted?C+" "+P+"-"+f:C+P+f;break;case"br":var A=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),v;e.mobile?v="9"+a.string({pool:"0123456789",length:4}):v=this.natural({min:2e3,max:5999}).toString();var y=a.string({pool:"0123456789",length:4});m=e.formatted?"("+A+") "+v+"-"+y:A+v+y;break}return m},r.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},r.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",c=e+a+n,m=this.natural({max:9}),C=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),P=m+C;return c+" "+P},r.prototype.counties=function(e){return e=o(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},r.prototype.county=function(e){return this.pick(this.counties(e)).name},r.prototype.provinces=function(e){return e=o(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},r.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},r.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},r.prototype.states=function(e){e=o(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),c=this.get("territories"),m=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(c)),e.armed_forces&&(a=a.concat(m));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},r.prototype.street=function(e){e=o(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},r.prototype.street_suffix=function(e){return e=o(e,{country:"us"}),this.pick(this.street_suffixes(e))},r.prototype.street_suffixes=function(e){return e=o(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},r.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},r.prototype.ampm=function(){return this.bool()?"am":"pm"},r.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=o(e,{american:!0,string:!1});var c=typeof e.min<"u"?e.min.getTime():1,m=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:c,max:m}))}else{var C=this.month({raw:!0}),P=C.days;e&&e.month&&(P=this.get("months")[(e.month%12+12)%12].days),e=o(e,{year:parseInt(this.year(),10),month:C.numeric-1,day:this.natural({min:1,max:P}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},r.prototype.hammertime=function(e){return this.date(e).getTime()},r.prototype.hour=function(e){return e=o(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.millisecond=function(){return this.natural({max:999})},r.prototype.minute=r.prototype.second=function(e){return e=o(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.month=function(e){e=o(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},r.prototype.months=function(){return this.get("months")},r.prototype.second=function(){return this.natural({max:59})},r.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},r.prototype.weekday=function(e){e=o(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},r.prototype.year=function(e){return e=o(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},r.prototype.cc=function(e){e=o(e);var a,n,c;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),c=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,c,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},r.prototype.cc_types=function(){return this.get("cc_types")},r.prototype.cc_type=function(e){e=o(e);var a=this.cc_types(),n=null;if(e.name){for(var c=0;c3&&(_?F=F.substr(0,3):F=F[0]+F.substr(2,2)),F.length<3&&(z=F,F=y.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+F),z},A=function(y,_,F){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return y.getFullYear().toString().substr(2)+z[y.getMonth()]+F.pad(y.getDate()+(_.toLowerCase()==="female"?40:0),2)},v=function(y){for(var _="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",F="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(F[_.indexOf(y[U])]):K+=j.indexOf(F[_.indexOf(y[U])]);return z[K%26]};return P=P.concat(f(c,!0),f(n),A(m,a,this),C.toUpperCase().split("")).join(""),P+=v(P.toUpperCase()),P.toUpperCase()},r.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;m--)c[m-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?c.reduce(function(C,P){return C+P}):c}else throw new RangeError("Chance: A type of die roll must be included")},r.prototype.guid=function(e){e=o(e,{version:5});var a="abcdef1234567890",n="ab89",c=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return c},r.prototype.hash=function(e){e=o(e,{length:40,casing:"lower"});var a=e.casing==="upper"?g.toUpperCase():g;return this.string({pool:a,length:e.length})},r.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},r.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,c,m=0,C=a.length;C>m;++m)c=+a[m],m%2===0&&(c*=2,c>9&&(c-=9)),n+=c;return n*9%10},r.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=o(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},r.prototype.file=function(e){var a=e||{},n="fileExtension",c=Object.keys(this.get("fileExtension")),m,C;if(m=this.word({length:a.length}),a.extension)return C=a.extension,m+"."+C;if(a.extensions){if(Array.isArray(a.extensions))return C=this.pickone(a.extensions),m+"."+C;if(a.extensions.constructor===Object){var P=a.extensions,f=Object.keys(P);return C=this.pickone(P[this.pickone(f)]),m+"."+C}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var A=a.fileType;if(c.indexOf(A)!==-1)return C=this.pickone(this.get(n)[A]),m+"."+C;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return C=this.pickone(this.get(n)[this.pickone(c)]),m+"."+C},r.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var c={fileData:this.buffer({length:a.fileSize}),fileName:n};return c};var E={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},w=Object.prototype.hasOwnProperty,N=Object.keys||function(e){var a=[];for(var n in e)w.call(e,n)&&a.push(n);return a};function L(e,a){for(var n=N(e),c,m=0,C=n.length;m0)return this.normal_pool(e);var a,n,c,m,C=e.mean,P=e.dev;do n=this.random()*2-1,c=this.random()*2-1,a=n*n+c*c;while(a>=1);return m=n*Math.sqrt(-2*Math.log(a)/a),P*m+C},r.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},r.prototype.radio=function(e){e=o(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},r.prototype.set=function(e,a){typeof e=="string"?E[e]=a:E=R(e,E)},r.prototype.tv=function(e){return this.radio(e)},r.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},r.prototype.emotion=function(){return this.pick(this.get("emotions"))},r.prototype.mersenne_twister=function(e){return new H(e)},r.prototype.blueimp_md5=function(){return new G};var H=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};H.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},H.prototype.init_by_array=function(e,a){var n=1,c=0,m,C;for(this.init_genrand(19650218),m=this.N>a?this.N:a;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1664525<<16)+(C&65535)*1664525)+e[c]+c,this.mt[n]>>>=0,n++,c++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),c>=a&&(c=0);for(m=this.N-1;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1566083941<<16)+(C&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},H.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},H.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},H.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},H.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},H.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},H.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var G=function(){};G.prototype.VERSION="1.0.1",G.prototype.safe_add=function(a,n){var c=(a&65535)+(n&65535),m=(a>>16)+(n>>16)+(c>>16);return m<<16|c&65535},G.prototype.bit_roll=function(e,a){return e<>>32-a},G.prototype.md5_cmn=function(e,a,n,c,m,C){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(c,C)),m),n)},G.prototype.md5_ff=function(e,a,n,c,m,C,P){return this.md5_cmn(a&n|~a&c,e,a,m,C,P)},G.prototype.md5_gg=function(e,a,n,c,m,C,P){return this.md5_cmn(a&c|n&~c,e,a,m,C,P)},G.prototype.md5_hh=function(e,a,n,c,m,C,P){return this.md5_cmn(a^n^c,e,a,m,C,P)},G.prototype.md5_ii=function(e,a,n,c,m,C,P){return this.md5_cmn(n^(a|~c),e,a,m,C,P)},G.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,c,m,C,P,f=1732584193,A=-271733879,v=-1732584194,y=271733878;for(n=0;n>5]>>>a%32&255);return n},G.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(c=this.binl_md5(c,e.length*8)),n=0;n<16;n+=1)m[n]=c[n]^909522486,C[n]=c[n]^1549556828;return P=this.binl_md5(m.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(C.concat(P),512+128))},G.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",c,m;for(m=0;m>>4&15)+a.charAt(c&15);return n},G.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},G.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},G.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},G.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},G.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},G.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},d.exports&&(h=d.exports=r),h.Chance=r,typeof importScripts<"u"&&(chance=new r,self.Chance=r),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=r,window.chance=new r)})()})(ne,ne.exports);var ye=ne.exports;const Se=Ae(ye);function ue(d,h,k,D){var I=new Se(ie);k==null&&console.log();let x=k.toUpperCase(),b=d.toUpperCase(),g=h.toUpperCase();if(D!=null&&0":o=="["?"]":o=="{"?"}":o=="("?")":o}}function h(I,x,b){for(var g=[],M=`(){}[]^-|!*+.><='",;:%@?/\\#~`+b,B=` \r `,r=$(I,M+B),o=0,i=0,t=0,s=0;s0&&(u=g[g.length-1]),l==` `?(i++,t=0):s>0&&r[s-1]!==` `?t=t+r[s-1].length:t=0,o+=l.length,u!=null&&u.type=="comment"&&(u.value.lastIndexOf("*/")!=u.value.length-2||u.value=="/*/")){l=="*"||l=="/"?u.value=u.value+l:u.value="/* ... ",u.end=o,u!=null&&u.type=="comment"&&u.value.lastIndexOf("*/")==u.value.length-2&&u.value!="/*/"&&(u.value=I.substring(u.begin,u.end));continue}if(u!=null&&(u.type=="line-comment"||u.type=="dbtools-command")&&l!=` @@ -8,10 +8,10 @@ `||u.value=="\r")){g.push(new d(l,o-l.length,-9,"line-comment",i,t));continue}if(l.toUpperCase()=="SODA"&&(u==null||u.value==` `||u.value=="\r")){g.push(new d(l,o-l.length,-9,"dbtools-command",i,t));continue}if(u!=null&&u.type=="identifier"&&u.end==-11&&u.value.indexOf("@")==0&&!(l==` `||l=="\r")){u.value=u.value+l;continue}if(u!=null&&u.type=="identifier"&&u.end==-11&&u.value.indexOf("@")==0&&(l==` -`||l=="\r")){u.end=o-1,g.push(new d(l,o-1,o,"ws",i,t));continue}if(x&&l=="'"){u!=null&&(u.value.toUpperCase()=="Q"||u.value.toUpperCase()=="N"||u.value.toUpperCase()=="U"||u.value.toUpperCase()=="NQ")?(u.value+=l,u.type="quoted-string"):g.push(new d(l,o-1,-10,"quoted-string",i,t));continue}if(x&&l=='"'){g.push(new d(l,o-1,-11,"dquoted-string",i,t));continue}if(l=="`"&&0<=M.indexOf("`")){g.push(new d(l,o-1,-11,"bquoted-string",i,t));continue}if(l.length==1&&0<=M.indexOf(l)){g.push(new d(l,o-1,o,"operation",i,t));continue}if(l.length==1&&0<=B.indexOf(l)){g.push(new d(l,o-1,o,"ws",i,t));continue}if("0"<=l.charAt(0)&&l.charAt(0)<="9"){N(l,g,o-l.length,i)||(l.charAt(l.length-1)=="K"||l.charAt(l.length-1)=="k"||l.charAt(l.length-1)=="M"||l.charAt(l.length-1)=="m"||l.charAt(l.length-1)=="G"||l.charAt(l.length-1)=="g"||l.charAt(l.length-1)=="T"||l.charAt(l.length-1)=="t"||l.charAt(l.length-1)=="P"||l.charAt(l.length-1)=="p"||l.charAt(l.length-1)=="E"||l.charAt(l.length-1)=="e"?(g.push(new d(l.substring(0,l.length-1),o-l.length,o-1,"constant.numeric",i,t)),g.push(new d(l.substring(l.length-1),o-1,o,"constant.numeric",i,t))):g.push(new d(l,o-l.length,o,"constant.numeric",i,t)));continue}var p="identifier";s+10){var u=g[g.length-1];u.end=I.length}return g}function N(I,x,b,g){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var M=$(I,"efd"),B=0;B")==0||i.indexOf("<")==0)&&(i=i.substring(1).trim());const l=i.toLowerCase();if(l.indexOf("view ")==0){var u=i.split(" ");return u[1]}i=b(i," d");var p=i.indexOf("/");0="0"&&T<="9"&&(i="x"+i),Te(se(i))},this.parseType=function(i){if(this.children!=null&&00){var u=g[g.length-1];u.end=I.length}return g}function k(I,x,b,g){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var M=$(I,"efd"),B=0;B")==0||i.indexOf("<")==0)&&(i=i.substring(1).trim());const l=i.toLowerCase();if(l.indexOf("view ")==0){var u=i.split(" ");return u[1]}i=b(i," d");var p=i.indexOf("/");0="0"&&T<="9"&&(i="x"+i),this.parsedName=Te(se(i)),this.parsedName},this.parseType=function(i){if(this.children!=null&&0!0)),O}return p}0!0),(i=="insert"||i=="update")&&(s+=`, -`);let k=h+h+h+"P_"+S+" := c1."+S+`; -`;i=="insert"&&(k=h+h+h+S),i=="update"&&(k=h+h+h+S+" = P_"+S+` -`),s+=k}for(var u=0;u!0)}),0= '0' && c <= '9') { rEt = 'x'+rEt; } - return amend_reserved_word(canonicalObjectName(rEt)); + this.parsedName = amend_reserved_word(canonicalObjectName(rEt)); + return this.parsedName; }; this.parseType = function( pure ) { if( this.children != null && 0 < this.children.length ) diff --git a/test/profile.js b/test/profile.js new file mode 100644 index 0000000..558cf24 --- /dev/null +++ b/test/profile.js @@ -0,0 +1,16 @@ +import {quicksql,fromJSON} from "../src/ddl.js"; + +let input = "table\n"; +for( let i = 0; i < 1000; i++) + input += ' '.repeat((i/10)*3+3)+'attr'+i+'\n'; +console.log('input='+input.substring(0,1000)); + +let t1 = Date.now(); + +let output = quicksql.toDDL(input); +console.log("length="+output.length); +console.log(output.substring(0,1000)); + +console.log("Time = "+(Date.now()-t1)); +console.log("Compared with 13367 ms for i < 1000"); + diff --git a/test/regression_test.js b/test/regression_test.js index b886e2a..86cbe81 100755 --- a/test/regression_test.js +++ b/test/regression_test.js @@ -166,6 +166,7 @@ console.log("Time = "+(Date.now()-t1)); console.log("Compared with 364-412 ms as of 10/2/2023"); console.log(" 506 ms as of 11/8/2023"); console.log(" 800 ms as of 1/24/2024"); +console.log(" 631 ms as of 2/8/2024"); import {quicksql} from '../dist/quick-sql.js'; diff --git a/test/tst_000.sql b/test/tst_000.sql deleted file mode 100644 index e69de29..0000000 diff --git a/vscode-profile-2024-02-08-10-16-54.cpuprofile b/vscode-profile-2024-02-08-10-16-54.cpuprofile new file mode 100644 index 0000000..55982cb --- /dev/null +++ b/vscode-profile-2024-02-08-10-16-54.cpuprofile @@ -0,0 +1 @@ +{"nodes":[{"id":1,"callFrame":{"functionName":"(root)","scriptId":"0","url":"","lineNumber":-1,"columnNumber":-1},"hitCount":0,"children":[2,16,641,949,1216,1489,1801,2060,2337,2848,3107],"locationId":0},{"id":2,"callFrame":{"functionName":"run","scriptId":"442","url":"node:internal/modules/esm/module_job","lineNumber":187,"columnNumber":11},"hitCount":0,"children":[3],"locationId":1},{"id":3,"callFrame":{"functionName":"evaluate","scriptId":"0","url":"","lineNumber":-1,"columnNumber":-1},"hitCount":0,"children":[4],"locationId":2},{"id":4,"callFrame":{"functionName":"","scriptId":"498","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/test/profile.js","lineNumber":-1,"columnNumber":-1},"hitCount":0,"children":[5],"locationId":3},{"id":5,"callFrame":{"functionName":"toDDL","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":483,"columnNumber":21},"hitCount":0,"children":[6],"locationId":4},{"id":6,"callFrame":{"functionName":"Parsed.getDDL","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":336,"columnNumber":31},"hitCount":0,"children":[7],"locationId":5},{"id":7,"callFrame":{"functionName":"toDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":832,"columnNumber":29},"hitCount":2,"children":[8],"positionTicks":[{"line":840,"ticks":2,"startLocationId":7,"endLocationId":8}],"locationId":6},{"id":8,"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":607,"columnNumber":33},"hitCount":257,"children":[9,270,486,809,948,2316,2594,3106,4383,4388],"positionTicks":[{"line":618,"ticks":1,"startLocationId":10,"endLocationId":11},{"line":678,"ticks":17,"startLocationId":12,"endLocationId":13},{"line":692,"ticks":49,"startLocationId":14,"endLocationId":15},{"line":663,"ticks":47,"startLocationId":16,"endLocationId":17},{"line":719,"ticks":1,"startLocationId":18,"endLocationId":19},{"line":650,"ticks":40,"startLocationId":20,"endLocationId":21},{"line":727,"ticks":3,"startLocationId":22,"endLocationId":23},{"line":699,"ticks":2,"startLocationId":24,"endLocationId":25},{"line":690,"ticks":43,"startLocationId":26,"endLocationId":27},{"line":624,"ticks":9,"startLocationId":28,"endLocationId":29},{"line":680,"ticks":1,"startLocationId":30,"endLocationId":31},{"line":708,"ticks":43,"startLocationId":32,"endLocationId":33},{"line":675,"ticks":1,"startLocationId":34,"endLocationId":35}],"locationId":9},{"id":9,"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":47,"columnNumber":39},"hitCount":234,"children":[10,1204,2319,2325],"positionTicks":[{"line":52,"ticks":3,"startLocationId":37,"endLocationId":38},{"line":81,"ticks":1,"startLocationId":39,"endLocationId":40},{"line":58,"ticks":11,"startLocationId":41,"endLocationId":42},{"line":148,"ticks":1,"startLocationId":43,"endLocationId":44},{"line":69,"ticks":10,"startLocationId":45,"endLocationId":46},{"line":82,"ticks":2,"startLocationId":40,"endLocationId":47},{"line":151,"ticks":7,"startLocationId":48,"endLocationId":49},{"line":59,"ticks":9,"startLocationId":42,"endLocationId":50},{"line":55,"ticks":6,"startLocationId":51,"endLocationId":52},{"line":83,"ticks":2,"startLocationId":47,"endLocationId":53},{"line":60,"ticks":56,"startLocationId":50,"endLocationId":54},{"line":149,"ticks":4,"startLocationId":44,"endLocationId":55},{"line":57,"ticks":47,"startLocationId":56,"endLocationId":41},{"line":63,"ticks":7,"startLocationId":57,"endLocationId":58},{"line":84,"ticks":5,"startLocationId":53,"endLocationId":59},{"line":73,"ticks":63,"startLocationId":60,"endLocationId":61}],"locationId":36},{"id":10,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":474,"children":[11,484,487,712,2593],"positionTicks":[{"line":58,"ticks":3,"startLocationId":63,"endLocationId":64},{"line":55,"ticks":1,"startLocationId":65,"endLocationId":66},{"line":77,"ticks":2,"startLocationId":67,"endLocationId":68},{"line":57,"ticks":11,"startLocationId":69,"endLocationId":63},{"line":59,"ticks":3,"startLocationId":64,"endLocationId":70},{"line":71,"ticks":1,"startLocationId":71,"endLocationId":72},{"line":60,"ticks":14,"startLocationId":70,"endLocationId":73},{"line":63,"ticks":1,"startLocationId":74,"endLocationId":75},{"line":151,"ticks":438,"startLocationId":76,"endLocationId":77}],"locationId":62},{"id":11,"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":150,"columnNumber":34},"hitCount":1745,"children":[12,14,15,642,947],"positionTicks":[{"line":201,"ticks":2,"startLocationId":79,"endLocationId":80},{"line":153,"ticks":1,"startLocationId":81,"endLocationId":82},{"line":184,"ticks":2,"startLocationId":83,"endLocationId":84},{"line":216,"ticks":3,"startLocationId":85,"endLocationId":86},{"line":119,"ticks":6,"startLocationId":87,"endLocationId":88},{"line":217,"ticks":1,"startLocationId":86,"endLocationId":89},{"line":120,"ticks":4,"startLocationId":88,"endLocationId":90},{"line":170,"ticks":19,"startLocationId":91,"endLocationId":92},{"line":73,"ticks":4,"startLocationId":93,"endLocationId":94},{"line":180,"ticks":14,"startLocationId":95,"endLocationId":96},{"line":169,"ticks":9,"startLocationId":97,"endLocationId":91},{"line":176,"ticks":16,"startLocationId":98,"endLocationId":99},{"line":59,"ticks":9,"startLocationId":100,"endLocationId":101},{"line":208,"ticks":14,"startLocationId":102,"endLocationId":103},{"line":175,"ticks":19,"startLocationId":104,"endLocationId":98},{"line":178,"ticks":10,"startLocationId":105,"endLocationId":106},{"line":84,"ticks":3,"startLocationId":107,"endLocationId":108},{"line":69,"ticks":13,"startLocationId":109,"endLocationId":110},{"line":177,"ticks":17,"startLocationId":99,"endLocationId":105},{"line":52,"ticks":3,"startLocationId":111,"endLocationId":112},{"line":1748,"ticks":4,"startLocationId":113,"endLocationId":114},{"line":189,"ticks":60,"startLocationId":115,"endLocationId":116},{"line":205,"ticks":59,"startLocationId":117,"endLocationId":118},{"line":198,"ticks":250,"startLocationId":119,"endLocationId":120},{"line":1750,"ticks":1,"startLocationId":121,"endLocationId":122},{"line":155,"ticks":24,"startLocationId":123,"endLocationId":124},{"line":58,"ticks":8,"startLocationId":125,"endLocationId":100},{"line":199,"ticks":97,"startLocationId":120,"endLocationId":126},{"line":71,"ticks":1,"startLocationId":127,"endLocationId":128},{"line":165,"ticks":18,"startLocationId":129,"endLocationId":130},{"line":211,"ticks":18,"startLocationId":131,"endLocationId":132},{"line":188,"ticks":69,"startLocationId":133,"endLocationId":115},{"line":173,"ticks":11,"startLocationId":134,"endLocationId":135},{"line":220,"ticks":14,"startLocationId":136,"endLocationId":137},{"line":174,"ticks":22,"startLocationId":135,"endLocationId":104},{"line":60,"ticks":48,"startLocationId":101,"endLocationId":138},{"line":57,"ticks":46,"startLocationId":139,"endLocationId":125},{"line":154,"ticks":79,"startLocationId":82,"endLocationId":123},{"line":191,"ticks":307,"startLocationId":140,"endLocationId":141},{"line":8,"ticks":43,"startLocationId":142,"endLocationId":143},{"line":202,"ticks":1,"startLocationId":80,"endLocationId":144},{"line":207,"ticks":52,"startLocationId":145,"endLocationId":102},{"line":63,"ticks":1,"startLocationId":146,"endLocationId":147},{"line":160,"ticks":36,"startLocationId":148,"endLocationId":149},{"line":206,"ticks":57,"startLocationId":118,"endLocationId":145},{"line":55,"ticks":3,"startLocationId":150,"endLocationId":151},{"line":195,"ticks":2,"startLocationId":152,"endLocationId":153},{"line":1747,"ticks":8,"startLocationId":154,"endLocationId":113},{"line":183,"ticks":16,"startLocationId":155,"endLocationId":83},{"line":82,"ticks":3,"startLocationId":156,"endLocationId":157},{"line":179,"ticks":12,"startLocationId":106,"endLocationId":95},{"line":187,"ticks":69,"startLocationId":158,"endLocationId":133},{"line":192,"ticks":137,"startLocationId":141,"endLocationId":159}],"locationId":78},{"id":12,"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":75,"columnNumber":35},"hitCount":77,"children":[13],"positionTicks":[{"line":82,"ticks":10,"startLocationId":161,"endLocationId":162},{"line":84,"ticks":49,"startLocationId":163,"endLocationId":164},{"line":79,"ticks":18,"startLocationId":165,"endLocationId":166}],"locationId":160},{"id":13,"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":34,"columnNumber":24},"hitCount":3230,"positionTicks":[{"line":58,"ticks":43,"startLocationId":168,"endLocationId":169},{"line":69,"ticks":2,"startLocationId":170,"endLocationId":171},{"line":59,"ticks":95,"startLocationId":169,"endLocationId":172},{"line":57,"ticks":3090,"startLocationId":173,"endLocationId":168}],"locationId":167},{"id":14,"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":130,"columnNumber":38},"hitCount":1068,"positionTicks":[{"line":131,"ticks":2,"startLocationId":175,"endLocationId":176},{"line":133,"ticks":14,"startLocationId":177,"endLocationId":178},{"line":146,"ticks":15,"startLocationId":179,"endLocationId":180},{"line":135,"ticks":3,"startLocationId":181,"endLocationId":182},{"line":140,"ticks":34,"startLocationId":183,"endLocationId":184},{"line":132,"ticks":1000,"startLocationId":176,"endLocationId":177}],"locationId":174},{"id":15,"callFrame":{"functionName":"amend_reserved_word","scriptId":"508","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/reserved_words.js","lineNumber":0,"columnNumber":28},"hitCount":549,"positionTicks":[{"line":119,"ticks":67,"startLocationId":186,"endLocationId":187},{"line":120,"ticks":482,"startLocationId":187,"endLocationId":188}],"locationId":185},{"id":642,"callFrame":{"functionName":"replaceTrailing","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1745,"columnNumber":29},"hitCount":503,"positionTicks":[{"line":1747,"ticks":13,"startLocationId":190,"endLocationId":191},{"line":1750,"ticks":213,"startLocationId":192,"endLocationId":193},{"line":1748,"ticks":265,"startLocationId":191,"endLocationId":194},{"line":1746,"ticks":12,"startLocationId":195,"endLocationId":190}],"locationId":189},{"id":947,"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":150,"columnNumber":34},"hitCount":19,"positionTicks":[{"line":199,"ticks":2,"startLocationId":120,"endLocationId":126},{"line":192,"ticks":17,"startLocationId":141,"endLocationId":159}],"locationId":78},{"id":484,"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":75,"columnNumber":35},"hitCount":81,"children":[485],"positionTicks":[{"line":82,"ticks":13,"startLocationId":161,"endLocationId":162},{"line":79,"ticks":13,"startLocationId":165,"endLocationId":166},{"line":84,"ticks":55,"startLocationId":163,"endLocationId":164}],"locationId":160},{"id":485,"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":34,"columnNumber":24},"hitCount":3436,"positionTicks":[{"line":69,"ticks":1,"startLocationId":170,"endLocationId":171},{"line":59,"ticks":157,"startLocationId":169,"endLocationId":172},{"line":58,"ticks":57,"startLocationId":168,"endLocationId":169},{"line":57,"ticks":3221,"startLocationId":173,"endLocationId":168}],"locationId":167},{"id":487,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[488],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":488,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[489],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":489,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[490],"positionTicks":[{"line":43,"ticks":1,"startLocationId":199,"endLocationId":197},{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":490,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[491],"locationId":196},{"id":491,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[492],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":492,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[493],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":493,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":4,"children":[494],"positionTicks":[{"line":44,"ticks":4,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":494,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[495],"locationId":196},{"id":495,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[496],"locationId":196},{"id":496,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":4,"children":[497],"positionTicks":[{"line":44,"ticks":4,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":497,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[498],"locationId":196},{"id":498,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[499],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":499,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[500],"locationId":196},{"id":500,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[501],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":501,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[502],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":502,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[503],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":503,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":5,"children":[504],"positionTicks":[{"line":44,"ticks":5,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":504,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[505],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":505,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[506],"locationId":196},{"id":506,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[507],"locationId":196},{"id":507,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[508],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":508,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[509],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":509,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[510],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":510,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[511],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":511,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":5,"children":[512],"positionTicks":[{"line":44,"ticks":5,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":512,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[513],"locationId":196},{"id":513,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[514],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":514,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[515],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":515,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[516],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":516,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[517],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":517,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[518],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":518,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":4,"children":[519],"positionTicks":[{"line":44,"ticks":4,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":519,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[520],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":520,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[521],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":521,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[522],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":522,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":4,"children":[523],"positionTicks":[{"line":44,"ticks":4,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":523,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[524],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":524,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[525],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":525,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[526],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":526,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[527],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":527,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[528],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":528,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[529],"locationId":196},{"id":529,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[530],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":530,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[531],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":531,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[532],"locationId":196},{"id":532,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":5,"children":[533],"positionTicks":[{"line":44,"ticks":5,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":533,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[534],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":534,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[535],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":535,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[536],"locationId":196},{"id":536,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[537],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":537,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[538],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":538,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[539],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":539,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[540],"locationId":196},{"id":540,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[541],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":541,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[542],"locationId":196},{"id":542,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":6,"children":[543],"positionTicks":[{"line":44,"ticks":6,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":543,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[544],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":544,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[545],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":545,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[546],"locationId":196},{"id":546,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[547],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":547,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[548],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":548,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[549],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":549,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[550],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":550,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[551],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":551,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[552],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":552,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[553],"locationId":196},{"id":553,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[554],"locationId":196},{"id":554,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[555],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":555,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[556],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":556,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":4,"children":[557],"positionTicks":[{"line":44,"ticks":4,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":557,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[558],"locationId":196},{"id":558,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[559],"locationId":196},{"id":559,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[560],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":560,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":7,"children":[561],"positionTicks":[{"line":44,"ticks":7,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":561,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[562],"locationId":196},{"id":562,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":7,"children":[563],"positionTicks":[{"line":44,"ticks":7,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":563,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[564],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":564,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[565],"locationId":196},{"id":565,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":5,"children":[566],"positionTicks":[{"line":44,"ticks":5,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":566,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[567],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":567,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[568],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":568,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[569],"locationId":196},{"id":569,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":4,"children":[570],"positionTicks":[{"line":44,"ticks":4,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":570,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[571],"locationId":196},{"id":571,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[572],"locationId":196},{"id":572,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[573],"positionTicks":[{"line":43,"ticks":1,"startLocationId":199,"endLocationId":197}],"locationId":196},{"id":573,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[574],"locationId":196},{"id":574,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":6,"children":[575],"positionTicks":[{"line":44,"ticks":6,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":575,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[576],"locationId":196},{"id":576,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[577],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":577,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":4,"children":[578],"positionTicks":[{"line":44,"ticks":4,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":578,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[579],"locationId":196},{"id":579,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[580],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":580,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[581],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":581,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[582],"locationId":196},{"id":582,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[583],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":583,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[584],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":584,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[585],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":585,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[586],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":586,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[587],"locationId":196},{"id":587,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[588],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":588,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[589],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":589,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[590],"locationId":196},{"id":590,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":7,"children":[591],"positionTicks":[{"line":44,"ticks":7,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":591,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[592],"locationId":196},{"id":592,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[593],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":593,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[594],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":594,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[595],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":595,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[596],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":596,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[597],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":597,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[598],"locationId":196},{"id":598,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[599],"locationId":196},{"id":599,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[600],"locationId":196},{"id":600,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[601],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":601,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[602],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":602,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[603],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":603,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[604],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":604,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[605],"locationId":196},{"id":605,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[606],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":606,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[607],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":607,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[608],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":608,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[609],"locationId":196},{"id":609,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[610],"locationId":196},{"id":610,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":5,"children":[611],"positionTicks":[{"line":44,"ticks":5,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":611,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[612],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":612,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[613],"locationId":196},{"id":613,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[614],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":614,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":4,"children":[615],"positionTicks":[{"line":44,"ticks":4,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":615,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[616],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":616,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[617],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":617,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[618],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":618,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[619],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":619,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[620],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":620,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[621],"locationId":196},{"id":621,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[622],"locationId":196},{"id":622,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[623],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":623,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[624],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":624,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[625],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":625,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[626],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":626,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[627],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":627,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[628],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":628,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[629],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":629,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[630],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":630,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[631],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":631,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[632],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":632,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":6,"children":[633],"positionTicks":[{"line":44,"ticks":6,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":633,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[634],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":634,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[635],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":635,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[636],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":636,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[637],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":637,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[638],"locationId":196},{"id":638,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[639],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":639,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[640],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":640,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[644],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":644,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[645],"locationId":196},{"id":645,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[646],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":646,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[647],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":647,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[648],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":648,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[649],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":649,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[650],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":650,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[651],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":651,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[652],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":652,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[653],"locationId":196},{"id":653,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[654],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":654,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[655],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":655,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[656],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":656,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[657],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":657,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[658],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":658,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[659],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":659,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[660],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":660,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[661],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":661,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[662],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":662,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[663],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":663,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[664],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":664,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[665],"locationId":196},{"id":665,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[666],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":666,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[667],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":667,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[668],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":668,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[669],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":669,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":7,"children":[670],"positionTicks":[{"line":44,"ticks":7,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":670,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[671],"locationId":196},{"id":671,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[672],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":672,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[673],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":673,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[674],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":674,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[675],"positionTicks":[{"line":43,"ticks":1,"startLocationId":199,"endLocationId":197},{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":675,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[676],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":676,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[677],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":677,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[678],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":678,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[679],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":679,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":6,"children":[826],"positionTicks":[{"line":44,"ticks":6,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":826,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[827],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":827,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":4,"children":[828],"positionTicks":[{"line":44,"ticks":4,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":828,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[829],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":829,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[830],"locationId":196},{"id":830,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[831],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":831,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[832],"locationId":196},{"id":832,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[833],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":833,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[834],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":834,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[835],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":835,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[836],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":836,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[837],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":837,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[838],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":838,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[839],"locationId":196},{"id":839,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[840],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":840,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[841],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":841,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[842],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":842,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[843],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":843,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[844],"locationId":196},{"id":844,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[845],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":845,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[846],"locationId":196},{"id":846,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[847],"locationId":196},{"id":847,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[848],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":848,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[849],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":849,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[850],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":850,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[851],"locationId":196},{"id":851,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[852],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":852,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[920],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":920,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[921],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":921,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[922],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":922,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[923],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":923,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[924],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":924,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[935],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":935,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[936],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":936,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[937],"locationId":196},{"id":937,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[938],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":938,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[939],"locationId":196},{"id":939,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[940],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":940,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[941],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":941,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[942],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":942,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[943],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198},{"line":43,"ticks":2,"startLocationId":199,"endLocationId":197}],"locationId":196},{"id":943,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":4,"children":[944],"positionTicks":[{"line":44,"ticks":4,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":944,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[945],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":945,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[946],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":946,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1205],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1205,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1206],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1206,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1207],"locationId":196},{"id":1207,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1208],"locationId":196},{"id":1208,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1209],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1209,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[1210],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1210,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[1211],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1211,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":4,"children":[1212],"positionTicks":[{"line":44,"ticks":4,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1212,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[1213],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1213,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1214],"locationId":196},{"id":1214,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[1800],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1800,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":712,"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":130,"columnNumber":38},"hitCount":4,"positionTicks":[{"line":131,"ticks":2,"startLocationId":175,"endLocationId":176},{"line":146,"ticks":2,"startLocationId":179,"endLocationId":180}],"locationId":174},{"id":2593,"callFrame":{"functionName":"replaceTrailing","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1745,"columnNumber":29},"hitCount":5,"positionTicks":[{"line":1750,"ticks":5,"startLocationId":192,"endLocationId":193}],"locationId":189},{"id":1204,"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":150,"columnNumber":34},"hitCount":3,"children":[2328,2331],"positionTicks":[{"line":60,"ticks":1,"startLocationId":101,"endLocationId":138},{"line":151,"ticks":1,"startLocationId":200,"endLocationId":201},{"line":189,"ticks":1,"startLocationId":115,"endLocationId":116}],"locationId":78},{"id":2328,"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":75,"columnNumber":35},"hitCount":0,"children":[2329],"locationId":160},{"id":2329,"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":34,"columnNumber":24},"hitCount":5,"positionTicks":[{"line":59,"ticks":1,"startLocationId":169,"endLocationId":172},{"line":57,"ticks":4,"startLocationId":173,"endLocationId":168}],"locationId":167},{"id":2331,"callFrame":{"functionName":"amend_reserved_word","scriptId":"508","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/reserved_words.js","lineNumber":0,"columnNumber":28},"hitCount":1,"positionTicks":[{"line":120,"ticks":1,"startLocationId":187,"endLocationId":188}],"locationId":185},{"id":2319,"callFrame":{"functionName":"Parsed.optionEQvalue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":94,"columnNumber":37},"hitCount":2,"children":[2320,4386],"positionTicks":[{"line":96,"ticks":2,"startLocationId":203,"endLocationId":204}],"locationId":202},{"id":2320,"callFrame":{"functionName":"Parsed.getOptionValue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":77,"columnNumber":38},"hitCount":1,"positionTicks":[{"line":83,"ticks":1,"startLocationId":206,"endLocationId":207}],"locationId":205},{"id":4386,"callFrame":{"functionName":"normalize","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":50,"columnNumber":22},"hitCount":1,"positionTicks":[{"line":56,"ticks":1,"startLocationId":209,"endLocationId":210}],"locationId":208},{"id":2325,"callFrame":{"functionName":"Parsed.additionalColumns","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":193,"columnNumber":41},"hitCount":1,"children":[3366],"positionTicks":[{"line":196,"ticks":1,"startLocationId":212,"endLocationId":213}],"locationId":211},{"id":3366,"callFrame":{"functionName":"Parsed.getOptionValue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":77,"columnNumber":38},"hitCount":1,"positionTicks":[{"line":81,"ticks":1,"startLocationId":214,"endLocationId":215}],"locationId":205},{"id":270,"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":607,"columnNumber":33},"hitCount":97,"children":[271,930,2332,3368],"positionTicks":[{"line":613,"ticks":97,"startLocationId":216,"endLocationId":217}],"locationId":9},{"id":271,"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":47,"columnNumber":39},"hitCount":113,"children":[272,812,2321,2326],"positionTicks":[{"line":52,"ticks":1,"startLocationId":37,"endLocationId":38},{"line":84,"ticks":1,"startLocationId":53,"endLocationId":59},{"line":55,"ticks":4,"startLocationId":51,"endLocationId":52},{"line":82,"ticks":2,"startLocationId":40,"endLocationId":47},{"line":151,"ticks":5,"startLocationId":48,"endLocationId":49},{"line":59,"ticks":4,"startLocationId":42,"endLocationId":50},{"line":69,"ticks":3,"startLocationId":45,"endLocationId":46},{"line":58,"ticks":7,"startLocationId":41,"endLocationId":42},{"line":89,"ticks":1,"startLocationId":218,"endLocationId":219},{"line":60,"ticks":34,"startLocationId":50,"endLocationId":54},{"line":79,"ticks":2,"startLocationId":220,"endLocationId":221},{"line":57,"ticks":21,"startLocationId":56,"endLocationId":41},{"line":73,"ticks":28,"startLocationId":60,"endLocationId":61}],"locationId":36},{"id":272,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":223,"children":[273,407,409,2330],"positionTicks":[{"line":73,"ticks":1,"startLocationId":222,"endLocationId":223},{"line":149,"ticks":1,"startLocationId":224,"endLocationId":225},{"line":55,"ticks":2,"startLocationId":65,"endLocationId":66},{"line":58,"ticks":2,"startLocationId":63,"endLocationId":64},{"line":151,"ticks":206,"startLocationId":76,"endLocationId":77},{"line":63,"ticks":2,"startLocationId":74,"endLocationId":75},{"line":60,"ticks":4,"startLocationId":70,"endLocationId":73},{"line":57,"ticks":5,"startLocationId":69,"endLocationId":63}],"locationId":62},{"id":273,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[274],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":274,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":4,"children":[275],"positionTicks":[{"line":44,"ticks":4,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":275,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[276],"locationId":196},{"id":276,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[277],"locationId":196},{"id":277,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[278],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":278,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[279],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":279,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[280],"locationId":196},{"id":280,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[281],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":281,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[282],"locationId":196},{"id":282,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[283],"locationId":196},{"id":283,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[284],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":284,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[285],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":285,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[286],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":286,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[287],"locationId":196},{"id":287,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[288],"locationId":196},{"id":288,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[289],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":289,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[290],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":290,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[291],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":291,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[292],"locationId":196},{"id":292,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[293],"locationId":196},{"id":293,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[294],"locationId":196},{"id":294,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[295],"locationId":196},{"id":295,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[296],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":296,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[297],"locationId":196},{"id":297,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[298],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":298,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[299],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":299,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[300],"locationId":196},{"id":300,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":4,"children":[301],"positionTicks":[{"line":44,"ticks":4,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":301,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[302],"locationId":196},{"id":302,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[303],"locationId":196},{"id":303,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[304],"locationId":196},{"id":304,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[305],"locationId":196},{"id":305,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[306],"locationId":196},{"id":306,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[307],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":307,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[308],"locationId":196},{"id":308,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[309],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":309,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[310],"locationId":196},{"id":310,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[311],"locationId":196},{"id":311,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[312],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":312,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[313],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":313,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[314],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":314,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[315],"locationId":196},{"id":315,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[316],"locationId":196},{"id":316,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[317],"locationId":196},{"id":317,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[318],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":318,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[319],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":319,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[320],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":320,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[321],"locationId":196},{"id":321,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[322],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":322,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[323],"locationId":196},{"id":323,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[324],"locationId":196},{"id":324,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[325],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":325,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[326],"locationId":196},{"id":326,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[327],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":327,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[328],"locationId":196},{"id":328,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[329],"locationId":196},{"id":329,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[330],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":330,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[331],"locationId":196},{"id":331,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[332],"locationId":196},{"id":332,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[333],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":333,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[334],"locationId":196},{"id":334,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[335],"locationId":196},{"id":335,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[336],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":336,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[337],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":337,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[338],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":338,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[339],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":339,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[340],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":340,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[341],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":341,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[342],"locationId":196},{"id":342,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[343],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":343,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[344],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":344,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[345],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":345,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[346],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":346,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[347],"locationId":196},{"id":347,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[348],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":348,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[349],"locationId":196},{"id":349,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[350],"locationId":196},{"id":350,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[351],"locationId":196},{"id":351,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[352],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":352,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[353],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":353,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[354],"locationId":196},{"id":354,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[355],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":355,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[356],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":356,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[357],"locationId":196},{"id":357,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[358],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":358,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[359],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":359,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[360],"locationId":196},{"id":360,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[361],"locationId":196},{"id":361,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[362],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":362,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[363],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":363,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[364],"locationId":196},{"id":364,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[365],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":365,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[366],"locationId":196},{"id":366,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[367],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":367,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[368],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":368,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[369],"locationId":196},{"id":369,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[370],"locationId":196},{"id":370,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[371],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":371,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[372],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":372,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[373],"locationId":196},{"id":373,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[374],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":374,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[375],"locationId":196},{"id":375,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[376],"locationId":196},{"id":376,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[377],"locationId":196},{"id":377,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[378],"locationId":196},{"id":378,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[379],"locationId":196},{"id":379,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[380],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":380,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[381],"locationId":196},{"id":381,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[382],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":382,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[383],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":383,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[384],"locationId":196},{"id":384,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[385],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":385,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[386],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":386,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[387],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":387,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[388],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":388,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[389],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":389,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[390],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":390,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[391],"locationId":196},{"id":391,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[392],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":392,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[393],"locationId":196},{"id":393,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[394],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":394,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[395],"locationId":196},{"id":395,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[396],"locationId":196},{"id":396,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[397],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":397,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[398],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":398,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[399],"locationId":196},{"id":399,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[400],"locationId":196},{"id":400,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[401],"locationId":196},{"id":401,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[402],"locationId":196},{"id":402,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[403],"locationId":196},{"id":403,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[404],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":404,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[405],"locationId":196},{"id":405,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[406],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":406,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[412],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":412,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[413],"locationId":196},{"id":413,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[414],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":414,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[415],"locationId":196},{"id":415,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[416],"positionTicks":[{"line":40,"ticks":1,"startLocationId":226,"endLocationId":227},{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":416,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[417],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":417,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[418],"locationId":196},{"id":418,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[419],"locationId":196},{"id":419,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[420],"locationId":196},{"id":420,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[421],"locationId":196},{"id":421,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[422],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":422,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[423],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":423,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[424],"locationId":196},{"id":424,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[425],"locationId":196},{"id":425,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[426],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":426,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[427],"locationId":196},{"id":427,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[428],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":428,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[429],"locationId":196},{"id":429,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[430],"locationId":196},{"id":430,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[431],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":431,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[432],"locationId":196},{"id":432,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[433],"locationId":196},{"id":433,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[434],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":434,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[435],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":435,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[436],"locationId":196},{"id":436,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[437],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":437,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[438],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":438,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[439],"locationId":196},{"id":439,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[440],"locationId":196},{"id":440,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[441],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":441,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[442],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":442,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[443],"locationId":196},{"id":443,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[444],"locationId":196},{"id":444,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[445],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":445,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[446],"locationId":196},{"id":446,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[447],"locationId":196},{"id":447,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[448],"locationId":196},{"id":448,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[449],"locationId":196},{"id":449,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[450],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":450,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[451],"locationId":196},{"id":451,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[452],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":452,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[453],"locationId":196},{"id":453,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[454],"locationId":196},{"id":454,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[455],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":455,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[456],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":456,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[457],"locationId":196},{"id":457,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[458],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":458,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[459],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":459,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[460],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198},{"line":43,"ticks":1,"startLocationId":199,"endLocationId":197}],"locationId":196},{"id":460,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[461],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":461,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[462],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":462,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[463],"locationId":196},{"id":463,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[464],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":464,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[465],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":465,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[466],"locationId":196},{"id":466,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[467],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":467,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[468],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":468,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[469],"locationId":196},{"id":469,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[470],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":470,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[471],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":471,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[472],"locationId":196},{"id":472,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[473],"locationId":196},{"id":473,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[474],"locationId":196},{"id":474,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[475],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":475,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[476],"locationId":196},{"id":476,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[477],"locationId":196},{"id":477,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[478],"locationId":196},{"id":478,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[479],"locationId":196},{"id":479,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[480],"locationId":196},{"id":480,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[481],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":481,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[482],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":482,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[853],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":853,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[854],"locationId":196},{"id":854,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[855],"locationId":196},{"id":855,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[856],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":856,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[857],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":857,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[858],"locationId":196},{"id":858,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[859],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":859,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[860],"locationId":196},{"id":860,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[861],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":861,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[862],"locationId":196},{"id":862,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[863],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":863,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[864],"locationId":196},{"id":864,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[865],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":865,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[866],"locationId":196},{"id":866,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[867],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":867,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[868],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":868,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[869],"locationId":196},{"id":869,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[870],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":870,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[871],"locationId":196},{"id":871,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1471],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1471,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[1472],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1472,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1473],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1473,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1474],"locationId":196},{"id":1474,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1475],"locationId":196},{"id":1475,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1476],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1476,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1477],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1477,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1478],"locationId":196},{"id":1478,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1479],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1479,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1480],"locationId":196},{"id":1480,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1481],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1481,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1482],"locationId":196},{"id":1482,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1483],"positionTicks":[{"line":43,"ticks":1,"startLocationId":199,"endLocationId":197}],"locationId":196},{"id":1483,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[1484],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1484,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1485],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1485,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1486],"locationId":196},{"id":1486,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1487],"locationId":196},{"id":1487,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1488],"locationId":196},{"id":1488,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[2335],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":2335,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2336],"locationId":196},{"id":2336,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":407,"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":75,"columnNumber":35},"hitCount":53,"children":[408],"positionTicks":[{"line":82,"ticks":8,"startLocationId":161,"endLocationId":162},{"line":79,"ticks":7,"startLocationId":165,"endLocationId":166},{"line":84,"ticks":38,"startLocationId":163,"endLocationId":164}],"locationId":160},{"id":408,"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":34,"columnNumber":24},"hitCount":1568,"positionTicks":[{"line":58,"ticks":18,"startLocationId":168,"endLocationId":169},{"line":59,"ticks":56,"startLocationId":169,"endLocationId":172},{"line":57,"ticks":1494,"startLocationId":173,"endLocationId":168}],"locationId":167},{"id":409,"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":150,"columnNumber":34},"hitCount":814,"children":[410,483,643,711,934],"positionTicks":[{"line":216,"ticks":1,"startLocationId":85,"endLocationId":86},{"line":201,"ticks":2,"startLocationId":79,"endLocationId":80},{"line":211,"ticks":3,"startLocationId":131,"endLocationId":132},{"line":1747,"ticks":4,"startLocationId":154,"endLocationId":113},{"line":195,"ticks":3,"startLocationId":152,"endLocationId":153},{"line":52,"ticks":1,"startLocationId":111,"endLocationId":112},{"line":177,"ticks":9,"startLocationId":99,"endLocationId":105},{"line":183,"ticks":4,"startLocationId":155,"endLocationId":83},{"line":179,"ticks":4,"startLocationId":106,"endLocationId":95},{"line":82,"ticks":1,"startLocationId":156,"endLocationId":157},{"line":79,"ticks":1,"startLocationId":228,"endLocationId":229},{"line":176,"ticks":7,"startLocationId":98,"endLocationId":99},{"line":69,"ticks":2,"startLocationId":109,"endLocationId":110},{"line":210,"ticks":1,"startLocationId":230,"endLocationId":131},{"line":174,"ticks":4,"startLocationId":135,"endLocationId":104},{"line":175,"ticks":6,"startLocationId":104,"endLocationId":98},{"line":178,"ticks":10,"startLocationId":105,"endLocationId":106},{"line":160,"ticks":19,"startLocationId":148,"endLocationId":149},{"line":63,"ticks":1,"startLocationId":146,"endLocationId":147},{"line":180,"ticks":2,"startLocationId":95,"endLocationId":96},{"line":169,"ticks":5,"startLocationId":97,"endLocationId":91},{"line":165,"ticks":7,"startLocationId":129,"endLocationId":130},{"line":155,"ticks":6,"startLocationId":123,"endLocationId":124},{"line":58,"ticks":4,"startLocationId":125,"endLocationId":100},{"line":199,"ticks":36,"startLocationId":120,"endLocationId":126},{"line":198,"ticks":121,"startLocationId":119,"endLocationId":120},{"line":1750,"ticks":2,"startLocationId":121,"endLocationId":122},{"line":120,"ticks":1,"startLocationId":88,"endLocationId":90},{"line":217,"ticks":1,"startLocationId":86,"endLocationId":89},{"line":170,"ticks":5,"startLocationId":91,"endLocationId":92},{"line":8,"ticks":18,"startLocationId":142,"endLocationId":143},{"line":202,"ticks":4,"startLocationId":80,"endLocationId":144},{"line":151,"ticks":1,"startLocationId":200,"endLocationId":201},{"line":154,"ticks":48,"startLocationId":82,"endLocationId":123},{"line":57,"ticks":18,"startLocationId":139,"endLocationId":125},{"line":153,"ticks":4,"startLocationId":81,"endLocationId":82},{"line":59,"ticks":7,"startLocationId":100,"endLocationId":101},{"line":173,"ticks":8,"startLocationId":134,"endLocationId":135},{"line":220,"ticks":6,"startLocationId":136,"endLocationId":137},{"line":187,"ticks":22,"startLocationId":158,"endLocationId":133},{"line":208,"ticks":7,"startLocationId":102,"endLocationId":103},{"line":189,"ticks":30,"startLocationId":115,"endLocationId":116},{"line":191,"ticks":167,"startLocationId":140,"endLocationId":141},{"line":188,"ticks":25,"startLocationId":133,"endLocationId":115},{"line":205,"ticks":24,"startLocationId":117,"endLocationId":118},{"line":60,"ticks":33,"startLocationId":101,"endLocationId":138},{"line":55,"ticks":2,"startLocationId":150,"endLocationId":151},{"line":192,"ticks":69,"startLocationId":141,"endLocationId":159},{"line":206,"ticks":23,"startLocationId":118,"endLocationId":145},{"line":207,"ticks":17,"startLocationId":145,"endLocationId":102},{"line":1748,"ticks":8,"startLocationId":113,"endLocationId":114}],"locationId":78},{"id":410,"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":75,"columnNumber":35},"hitCount":43,"children":[411],"positionTicks":[{"line":82,"ticks":6,"startLocationId":161,"endLocationId":162},{"line":79,"ticks":6,"startLocationId":165,"endLocationId":166},{"line":84,"ticks":31,"startLocationId":163,"endLocationId":164}],"locationId":160},{"id":411,"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":34,"columnNumber":24},"hitCount":1522,"positionTicks":[{"line":58,"ticks":21,"startLocationId":168,"endLocationId":169},{"line":69,"ticks":2,"startLocationId":170,"endLocationId":171},{"line":59,"ticks":45,"startLocationId":169,"endLocationId":172},{"line":57,"ticks":1454,"startLocationId":173,"endLocationId":168}],"locationId":167},{"id":483,"callFrame":{"functionName":"amend_reserved_word","scriptId":"508","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/reserved_words.js","lineNumber":0,"columnNumber":28},"hitCount":241,"positionTicks":[{"line":119,"ticks":34,"startLocationId":186,"endLocationId":187},{"line":120,"ticks":207,"startLocationId":187,"endLocationId":188}],"locationId":185},{"id":643,"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":130,"columnNumber":38},"hitCount":506,"positionTicks":[{"line":131,"ticks":1,"startLocationId":175,"endLocationId":176},{"line":146,"ticks":10,"startLocationId":179,"endLocationId":180},{"line":133,"ticks":9,"startLocationId":177,"endLocationId":178},{"line":140,"ticks":12,"startLocationId":183,"endLocationId":184},{"line":132,"ticks":474,"startLocationId":176,"endLocationId":177}],"locationId":174},{"id":711,"callFrame":{"functionName":"replaceTrailing","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1745,"columnNumber":29},"hitCount":245,"positionTicks":[{"line":1746,"ticks":10,"startLocationId":195,"endLocationId":190},{"line":1747,"ticks":6,"startLocationId":190,"endLocationId":191},{"line":1750,"ticks":96,"startLocationId":192,"endLocationId":193},{"line":1748,"ticks":133,"startLocationId":191,"endLocationId":194}],"locationId":189},{"id":934,"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":150,"columnNumber":34},"hitCount":12,"positionTicks":[{"line":199,"ticks":2,"startLocationId":120,"endLocationId":126},{"line":192,"ticks":10,"startLocationId":141,"endLocationId":159}],"locationId":78},{"id":2330,"callFrame":{"functionName":"replaceTrailing","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1745,"columnNumber":29},"hitCount":2,"positionTicks":[{"line":1750,"ticks":2,"startLocationId":192,"endLocationId":193}],"locationId":189},{"id":812,"callFrame":{"functionName":"Parsed.additionalColumns","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":193,"columnNumber":41},"hitCount":0,"children":[813],"locationId":211},{"id":813,"callFrame":{"functionName":"Parsed.getOptionValue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":77,"columnNumber":38},"hitCount":3,"positionTicks":[{"line":80,"ticks":1,"startLocationId":231,"endLocationId":214},{"line":83,"ticks":2,"startLocationId":206,"endLocationId":207}],"locationId":205},{"id":2321,"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":150,"columnNumber":34},"hitCount":2,"children":[3362],"positionTicks":[{"line":191,"ticks":1,"startLocationId":140,"endLocationId":141},{"line":176,"ticks":1,"startLocationId":98,"endLocationId":99}],"locationId":78},{"id":3362,"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":75,"columnNumber":35},"hitCount":0,"children":[3363],"locationId":160},{"id":3363,"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":34,"columnNumber":24},"hitCount":2,"positionTicks":[{"line":57,"ticks":2,"startLocationId":173,"endLocationId":168}],"locationId":167},{"id":2326,"callFrame":{"functionName":"Parsed.optionEQvalue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":94,"columnNumber":37},"hitCount":0,"children":[2327],"locationId":202},{"id":2327,"callFrame":{"functionName":"normalize","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":50,"columnNumber":22},"hitCount":1,"positionTicks":[{"line":58,"ticks":1,"startLocationId":232,"endLocationId":233}],"locationId":208},{"id":930,"callFrame":{"functionName":"parseType","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":221,"columnNumber":33},"hitCount":4,"children":[931,1744,2595,3365,3370],"positionTicks":[{"line":355,"ticks":2,"startLocationId":235,"endLocationId":236},{"line":244,"ticks":1,"startLocationId":237,"endLocationId":238},{"line":374,"ticks":1,"startLocationId":239,"endLocationId":240}],"locationId":234},{"id":931,"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":150,"columnNumber":34},"hitCount":0,"children":[932],"locationId":78},{"id":932,"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":75,"columnNumber":35},"hitCount":0,"children":[933],"locationId":160},{"id":933,"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":34,"columnNumber":24},"hitCount":4,"positionTicks":[{"line":57,"ticks":4,"startLocationId":173,"endLocationId":168}],"locationId":167},{"id":1744,"callFrame":{"functionName":"concatNames","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":88,"columnNumber":27},"hitCount":3,"positionTicks":[{"line":93,"ticks":1,"startLocationId":242,"endLocationId":243},{"line":109,"ticks":2,"startLocationId":244,"endLocationId":245}],"locationId":241},{"id":2595,"callFrame":{"functionName":"indexOf","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":115,"columnNumber":31},"hitCount":1,"positionTicks":[{"line":118,"ticks":1,"startLocationId":247,"endLocationId":248}],"locationId":246},{"id":3365,"callFrame":{"functionName":"occursBeforeOption","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":125,"columnNumber":42},"hitCount":1,"positionTicks":[{"line":127,"ticks":1,"startLocationId":250,"endLocationId":251}],"locationId":249},{"id":3370,"callFrame":{"functionName":"Parsed.semantics","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":137,"columnNumber":33},"hitCount":0,"children":[3371],"locationId":252},{"id":3371,"callFrame":{"functionName":"Parsed.optionEQvalue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":94,"columnNumber":37},"hitCount":0,"children":[3372],"locationId":202},{"id":3372,"callFrame":{"functionName":"normalize","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":50,"columnNumber":22},"hitCount":1,"positionTicks":[{"line":61,"ticks":1,"startLocationId":253,"endLocationId":254}],"locationId":208},{"id":2332,"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":150,"columnNumber":34},"hitCount":0,"children":[2333,3875],"locationId":78},{"id":2333,"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":75,"columnNumber":35},"hitCount":0,"children":[2334],"locationId":160},{"id":2334,"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":34,"columnNumber":24},"hitCount":1,"positionTicks":[{"line":57,"ticks":1,"startLocationId":173,"endLocationId":168}],"locationId":167},{"id":3875,"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":130,"columnNumber":38},"hitCount":1,"positionTicks":[{"line":132,"ticks":1,"startLocationId":176,"endLocationId":177}],"locationId":174},{"id":3368,"callFrame":{"functionName":"apparentDepth","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":553,"columnNumber":37},"hitCount":2,"positionTicks":[{"line":555,"ticks":2,"startLocationId":256,"endLocationId":257}],"locationId":255},{"id":486,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":39,"children":[680,810,926,3367],"positionTicks":[{"line":57,"ticks":3,"startLocationId":69,"endLocationId":63},{"line":151,"ticks":31,"startLocationId":76,"endLocationId":77},{"line":59,"ticks":2,"startLocationId":64,"endLocationId":70},{"line":69,"ticks":1,"startLocationId":258,"endLocationId":259},{"line":60,"ticks":2,"startLocationId":70,"endLocationId":73}],"locationId":62},{"id":680,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[681],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":681,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[682],"locationId":196},{"id":682,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[683],"locationId":196},{"id":683,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[684],"locationId":196},{"id":684,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[685],"locationId":196},{"id":685,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[686],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":686,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[687],"locationId":196},{"id":687,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[688],"locationId":196},{"id":688,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[689],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":689,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[690],"locationId":196},{"id":690,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[691],"locationId":196},{"id":691,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[692],"locationId":196},{"id":692,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[693],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":693,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[694],"locationId":196},{"id":694,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[695],"locationId":196},{"id":695,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[696],"locationId":196},{"id":696,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[697],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":697,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[698],"locationId":196},{"id":698,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[699],"locationId":196},{"id":699,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[700],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":700,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[701],"locationId":196},{"id":701,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[702],"locationId":196},{"id":702,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[703],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":703,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[704],"locationId":196},{"id":704,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[705],"locationId":196},{"id":705,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[706],"locationId":196},{"id":706,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[707],"locationId":196},{"id":707,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[708],"locationId":196},{"id":708,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[713],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":713,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[714],"locationId":196},{"id":714,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[715],"locationId":196},{"id":715,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[716],"locationId":196},{"id":716,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[717],"locationId":196},{"id":717,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[718],"locationId":196},{"id":718,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[719],"locationId":196},{"id":719,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[720],"locationId":196},{"id":720,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[721],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":721,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[722],"locationId":196},{"id":722,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[723],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":723,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[724],"locationId":196},{"id":724,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[725],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":725,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[726],"locationId":196},{"id":726,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[727],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":727,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[728],"locationId":196},{"id":728,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[729],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":729,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[730],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":730,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[731],"locationId":196},{"id":731,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[732],"locationId":196},{"id":732,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[733],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":733,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[734],"locationId":196},{"id":734,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[735],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":735,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[736],"locationId":196},{"id":736,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[737],"locationId":196},{"id":737,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[738],"locationId":196},{"id":738,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[739],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":739,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[740],"locationId":196},{"id":740,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[741],"locationId":196},{"id":741,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[742],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":742,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[743],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":743,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[744],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":744,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[745],"locationId":196},{"id":745,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[746],"locationId":196},{"id":746,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[747],"locationId":196},{"id":747,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[748],"locationId":196},{"id":748,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[749],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":749,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[750],"locationId":196},{"id":750,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[751],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":751,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[752],"locationId":196},{"id":752,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[753],"locationId":196},{"id":753,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[754],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":754,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[755],"locationId":196},{"id":755,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[756],"locationId":196},{"id":756,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[757],"locationId":196},{"id":757,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[758],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":758,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[759],"locationId":196},{"id":759,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[760],"locationId":196},{"id":760,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[761],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":761,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[762],"locationId":196},{"id":762,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[763],"locationId":196},{"id":763,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[764],"locationId":196},{"id":764,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[765],"locationId":196},{"id":765,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[766],"locationId":196},{"id":766,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[767],"locationId":196},{"id":767,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[768],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":768,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[769],"locationId":196},{"id":769,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[770],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":770,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[771],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":771,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[772],"locationId":196},{"id":772,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[773],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":773,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[774],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":774,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[775],"locationId":196},{"id":775,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[776],"locationId":196},{"id":776,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[777],"locationId":196},{"id":777,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[778],"locationId":196},{"id":778,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[779],"locationId":196},{"id":779,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[780],"locationId":196},{"id":780,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[781],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":781,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[782],"locationId":196},{"id":782,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[783],"locationId":196},{"id":783,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[784],"locationId":196},{"id":784,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[785],"locationId":196},{"id":785,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[786],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":786,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[787],"locationId":196},{"id":787,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[788],"locationId":196},{"id":788,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[789],"locationId":196},{"id":789,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[790],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":790,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[791],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":791,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[792],"locationId":196},{"id":792,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[793],"locationId":196},{"id":793,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[794],"locationId":196},{"id":794,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[795],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":795,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[796],"locationId":196},{"id":796,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[797],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":797,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[798],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":798,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[799],"locationId":196},{"id":799,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[800],"locationId":196},{"id":800,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[801],"locationId":196},{"id":801,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[802],"locationId":196},{"id":802,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[803],"locationId":196},{"id":803,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[804],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":804,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[805],"locationId":196},{"id":805,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[806],"locationId":196},{"id":806,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[807],"locationId":196},{"id":807,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[808],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":808,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[814],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":814,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[815],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":815,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[816],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":816,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[817],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":817,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[818],"locationId":196},{"id":818,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[819],"locationId":196},{"id":819,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[820],"locationId":196},{"id":820,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[821],"locationId":196},{"id":821,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[822],"locationId":196},{"id":822,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[823],"locationId":196},{"id":823,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[824],"locationId":196},{"id":824,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[825],"locationId":196},{"id":825,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[872],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":872,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[873],"locationId":196},{"id":873,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[874],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":874,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[875],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":875,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[876],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":876,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[877],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":877,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[878],"locationId":196},{"id":878,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[879],"locationId":196},{"id":879,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[880],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":880,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[881],"locationId":196},{"id":881,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[882],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":882,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[883],"locationId":196},{"id":883,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[884],"locationId":196},{"id":884,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[885],"locationId":196},{"id":885,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[886],"locationId":196},{"id":886,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[887],"locationId":196},{"id":887,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[888],"locationId":196},{"id":888,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[889],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":889,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[890],"locationId":196},{"id":890,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[891],"locationId":196},{"id":891,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[892],"locationId":196},{"id":892,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[893],"locationId":196},{"id":893,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[894],"locationId":196},{"id":894,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[895],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":895,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[896],"locationId":196},{"id":896,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[897],"locationId":196},{"id":897,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[898],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":898,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[899],"locationId":196},{"id":899,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[900],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":900,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[901],"locationId":196},{"id":901,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[902],"locationId":196},{"id":902,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[903],"locationId":196},{"id":903,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[904],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":904,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[905],"locationId":196},{"id":905,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[906],"locationId":196},{"id":906,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[907],"locationId":196},{"id":907,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[908],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":908,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[909],"locationId":196},{"id":909,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[910],"locationId":196},{"id":910,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[911],"locationId":196},{"id":911,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[912],"locationId":196},{"id":912,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[913],"locationId":196},{"id":913,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[914],"locationId":196},{"id":914,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[915],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":915,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[916],"locationId":196},{"id":916,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[917],"locationId":196},{"id":917,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[918],"locationId":196},{"id":918,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[919],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":919,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1745],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1745,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1746],"locationId":196},{"id":1746,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1747],"locationId":196},{"id":1747,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1748],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1748,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1749],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1749,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1750],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1750,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1751],"locationId":196},{"id":1751,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1752],"locationId":196},{"id":1752,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1753],"locationId":196},{"id":1753,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1754],"locationId":196},{"id":1754,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1755],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1755,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1756],"locationId":196},{"id":1756,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1757],"locationId":196},{"id":1757,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1758],"locationId":196},{"id":1758,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1759],"locationId":196},{"id":1759,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1760],"locationId":196},{"id":1760,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1761],"locationId":196},{"id":1761,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1762],"locationId":196},{"id":1762,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1763],"locationId":196},{"id":1763,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1764],"locationId":196},{"id":1764,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1765],"locationId":196},{"id":1765,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1766],"locationId":196},{"id":1766,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1767],"locationId":196},{"id":1767,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1768],"locationId":196},{"id":1768,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1769],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1769,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1770],"locationId":196},{"id":1770,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1771],"locationId":196},{"id":1771,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1772],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1772,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1773],"locationId":196},{"id":1773,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1774],"locationId":196},{"id":1774,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1775],"locationId":196},{"id":1775,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1776],"locationId":196},{"id":1776,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1777],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1777,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1778],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1778,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1779],"locationId":196},{"id":1779,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1780],"locationId":196},{"id":1780,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1781],"locationId":196},{"id":1781,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1782],"locationId":196},{"id":1782,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1783],"locationId":196},{"id":1783,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1784],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1784,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1785],"locationId":196},{"id":1785,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1786],"locationId":196},{"id":1786,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1787],"locationId":196},{"id":1787,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1788],"locationId":196},{"id":1788,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1789],"locationId":196},{"id":1789,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1790],"locationId":196},{"id":1790,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1791],"locationId":196},{"id":1791,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1792],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1792,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1793],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1793,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1794],"locationId":196},{"id":1794,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1795],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1795,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1796],"locationId":196},{"id":1796,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1797],"locationId":196},{"id":1797,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1798],"locationId":196},{"id":1798,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1799],"locationId":196},{"id":1799,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[2055],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":2055,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2056],"locationId":196},{"id":2056,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2057],"locationId":196},{"id":2057,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2058],"locationId":196},{"id":2058,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2059],"locationId":196},{"id":2059,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[3103],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":3103,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3104],"locationId":196},{"id":3104,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3105],"locationId":196},{"id":3105,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":810,"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":150,"columnNumber":34},"hitCount":114,"children":[811,928,1215,2324,3369],"positionTicks":[{"line":195,"ticks":1,"startLocationId":152,"endLocationId":153},{"line":1748,"ticks":1,"startLocationId":113,"endLocationId":114},{"line":69,"ticks":1,"startLocationId":109,"endLocationId":110},{"line":153,"ticks":1,"startLocationId":81,"endLocationId":82},{"line":59,"ticks":1,"startLocationId":100,"endLocationId":101},{"line":189,"ticks":2,"startLocationId":115,"endLocationId":116},{"line":198,"ticks":20,"startLocationId":119,"endLocationId":120},{"line":57,"ticks":2,"startLocationId":139,"endLocationId":125},{"line":187,"ticks":5,"startLocationId":158,"endLocationId":133},{"line":180,"ticks":2,"startLocationId":95,"endLocationId":96},{"line":173,"ticks":1,"startLocationId":134,"endLocationId":135},{"line":205,"ticks":4,"startLocationId":117,"endLocationId":118},{"line":170,"ticks":4,"startLocationId":91,"endLocationId":92},{"line":217,"ticks":1,"startLocationId":86,"endLocationId":89},{"line":207,"ticks":5,"startLocationId":145,"endLocationId":102},{"line":160,"ticks":2,"startLocationId":148,"endLocationId":149},{"line":206,"ticks":2,"startLocationId":118,"endLocationId":145},{"line":55,"ticks":1,"startLocationId":150,"endLocationId":151},{"line":8,"ticks":1,"startLocationId":142,"endLocationId":143},{"line":192,"ticks":9,"startLocationId":141,"endLocationId":159},{"line":165,"ticks":2,"startLocationId":129,"endLocationId":130},{"line":188,"ticks":2,"startLocationId":133,"endLocationId":115},{"line":58,"ticks":1,"startLocationId":125,"endLocationId":100},{"line":199,"ticks":5,"startLocationId":120,"endLocationId":126},{"line":60,"ticks":7,"startLocationId":101,"endLocationId":138},{"line":154,"ticks":5,"startLocationId":82,"endLocationId":123},{"line":175,"ticks":1,"startLocationId":104,"endLocationId":98},{"line":191,"ticks":25,"startLocationId":140,"endLocationId":141}],"locationId":78},{"id":811,"callFrame":{"functionName":"amend_reserved_word","scriptId":"508","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/reserved_words.js","lineNumber":0,"columnNumber":28},"hitCount":36,"positionTicks":[{"line":120,"ticks":26,"startLocationId":187,"endLocationId":188},{"line":119,"ticks":10,"startLocationId":186,"endLocationId":187}],"locationId":185},{"id":928,"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":75,"columnNumber":35},"hitCount":10,"children":[929],"positionTicks":[{"line":82,"ticks":1,"startLocationId":161,"endLocationId":162},{"line":79,"ticks":4,"startLocationId":165,"endLocationId":166},{"line":84,"ticks":5,"startLocationId":163,"endLocationId":164}],"locationId":160},{"id":929,"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":34,"columnNumber":24},"hitCount":199,"positionTicks":[{"line":59,"ticks":8,"startLocationId":169,"endLocationId":172},{"line":58,"ticks":3,"startLocationId":168,"endLocationId":169},{"line":57,"ticks":188,"startLocationId":173,"endLocationId":168}],"locationId":167},{"id":1215,"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":130,"columnNumber":38},"hitCount":41,"positionTicks":[{"line":146,"ticks":1,"startLocationId":179,"endLocationId":180},{"line":140,"ticks":1,"startLocationId":183,"endLocationId":184},{"line":132,"ticks":39,"startLocationId":176,"endLocationId":177}],"locationId":174},{"id":2324,"callFrame":{"functionName":"replaceTrailing","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1745,"columnNumber":29},"hitCount":34,"positionTicks":[{"line":1747,"ticks":1,"startLocationId":190,"endLocationId":191},{"line":1750,"ticks":15,"startLocationId":192,"endLocationId":193},{"line":1748,"ticks":18,"startLocationId":191,"endLocationId":194}],"locationId":189},{"id":3369,"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":150,"columnNumber":34},"hitCount":2,"positionTicks":[{"line":192,"ticks":1,"startLocationId":141,"endLocationId":159},{"line":199,"ticks":1,"startLocationId":120,"endLocationId":126}],"locationId":78},{"id":926,"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":75,"columnNumber":35},"hitCount":3,"children":[927],"positionTicks":[{"line":79,"ticks":1,"startLocationId":165,"endLocationId":166},{"line":84,"ticks":2,"startLocationId":163,"endLocationId":164}],"locationId":160},{"id":927,"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":34,"columnNumber":24},"hitCount":183,"positionTicks":[{"line":58,"ticks":1,"startLocationId":168,"endLocationId":169},{"line":57,"ticks":173,"startLocationId":173,"endLocationId":168},{"line":59,"ticks":9,"startLocationId":169,"endLocationId":172}],"locationId":167},{"id":3367,"callFrame":{"functionName":"replaceTrailing","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1745,"columnNumber":29},"hitCount":1,"positionTicks":[{"line":1750,"ticks":1,"startLocationId":192,"endLocationId":193}],"locationId":189},{"id":809,"callFrame":{"functionName":"refId","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":459,"columnNumber":29},"hitCount":2,"children":[925],"positionTicks":[{"line":462,"ticks":1,"startLocationId":261,"endLocationId":262},{"line":494,"ticks":1,"startLocationId":263,"endLocationId":264}],"locationId":260},{"id":925,"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":130,"columnNumber":38},"hitCount":1,"positionTicks":[{"line":133,"ticks":1,"startLocationId":177,"endLocationId":178}],"locationId":174},{"id":948,"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":150,"columnNumber":34},"hitCount":4,"children":[2322,2847,3364],"positionTicks":[{"line":151,"ticks":2,"startLocationId":200,"endLocationId":201},{"line":198,"ticks":2,"startLocationId":119,"endLocationId":120}],"locationId":78},{"id":2322,"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":75,"columnNumber":35},"hitCount":0,"children":[2323],"locationId":160},{"id":2323,"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":34,"columnNumber":24},"hitCount":5,"positionTicks":[{"line":57,"ticks":5,"startLocationId":173,"endLocationId":168}],"locationId":167},{"id":2847,"callFrame":{"functionName":"replaceTrailing","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1745,"columnNumber":29},"hitCount":1,"positionTicks":[{"line":1748,"ticks":1,"startLocationId":191,"endLocationId":194}],"locationId":189},{"id":3364,"callFrame":{"functionName":"amend_reserved_word","scriptId":"508","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/reserved_words.js","lineNumber":0,"columnNumber":28},"hitCount":1,"positionTicks":[{"line":120,"ticks":1,"startLocationId":187,"endLocationId":188}],"locationId":185},{"id":2316,"callFrame":{"functionName":"findChild","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":32,"columnNumber":33},"hitCount":0,"children":[2317],"locationId":265},{"id":2317,"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":150,"columnNumber":34},"hitCount":1,"children":[2318],"positionTicks":[{"line":199,"ticks":1,"startLocationId":120,"endLocationId":126}],"locationId":78},{"id":2318,"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":130,"columnNumber":38},"hitCount":1,"positionTicks":[{"line":132,"ticks":1,"startLocationId":176,"endLocationId":177}],"locationId":174},{"id":2594,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"positionTicks":[{"line":40,"ticks":1,"startLocationId":226,"endLocationId":227}],"locationId":196},{"id":3106,"callFrame":{"functionName":"Parsed.additionalColumns","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":193,"columnNumber":41},"hitCount":1,"positionTicks":[{"line":196,"ticks":1,"startLocationId":212,"endLocationId":213}],"locationId":211},{"id":4383,"callFrame":{"functionName":"getGenIdColName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":580,"columnNumber":40},"hitCount":0,"children":[4384],"locationId":266},{"id":4384,"callFrame":{"functionName":"Parsed.optionEQvalue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":94,"columnNumber":37},"hitCount":0,"children":[4385],"locationId":202},{"id":4385,"callFrame":{"functionName":"Parsed.getOptionValue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":77,"columnNumber":38},"hitCount":1,"positionTicks":[{"line":83,"ticks":1,"startLocationId":206,"endLocationId":207}],"locationId":205},{"id":4388,"callFrame":{"functionName":"Parsed.optionEQvalue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":94,"columnNumber":37},"hitCount":1,"positionTicks":[{"line":91,"ticks":1,"startLocationId":267,"endLocationId":268}],"locationId":202},{"id":16,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[17],"locationId":196},{"id":17,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[18],"locationId":196},{"id":18,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[19],"locationId":196},{"id":19,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[20],"locationId":196},{"id":20,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[21],"locationId":196},{"id":21,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[22],"locationId":196},{"id":22,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[23],"locationId":196},{"id":23,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[24],"locationId":196},{"id":24,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[25],"locationId":196},{"id":25,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[26],"locationId":196},{"id":26,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[27],"locationId":196},{"id":27,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[28],"locationId":196},{"id":28,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[29],"locationId":196},{"id":29,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[30],"locationId":196},{"id":30,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[31],"locationId":196},{"id":31,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[32],"locationId":196},{"id":32,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[33],"locationId":196},{"id":33,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[34],"locationId":196},{"id":34,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[35],"locationId":196},{"id":35,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[36],"locationId":196},{"id":36,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[37],"locationId":196},{"id":37,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[38],"locationId":196},{"id":38,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[39],"locationId":196},{"id":39,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[40],"locationId":196},{"id":40,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[41],"locationId":196},{"id":41,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[42],"locationId":196},{"id":42,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[43],"locationId":196},{"id":43,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[44],"locationId":196},{"id":44,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[45],"locationId":196},{"id":45,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[46],"locationId":196},{"id":46,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[47],"locationId":196},{"id":47,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[48],"locationId":196},{"id":48,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[49],"locationId":196},{"id":49,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[50],"locationId":196},{"id":50,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[51],"locationId":196},{"id":51,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[52],"locationId":196},{"id":52,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[53],"locationId":196},{"id":53,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[54],"locationId":196},{"id":54,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[55],"locationId":196},{"id":55,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[56],"locationId":196},{"id":56,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[57],"locationId":196},{"id":57,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[58],"locationId":196},{"id":58,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[59],"locationId":196},{"id":59,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[60],"locationId":196},{"id":60,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[61],"locationId":196},{"id":61,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[62],"locationId":196},{"id":62,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[63],"locationId":196},{"id":63,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[64],"locationId":196},{"id":64,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[65],"locationId":196},{"id":65,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[66],"locationId":196},{"id":66,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[67],"locationId":196},{"id":67,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[68],"locationId":196},{"id":68,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[69],"locationId":196},{"id":69,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[70],"locationId":196},{"id":70,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[71],"locationId":196},{"id":71,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[72],"locationId":196},{"id":72,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[73],"locationId":196},{"id":73,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[74],"locationId":196},{"id":74,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[75],"locationId":196},{"id":75,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[76],"locationId":196},{"id":76,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[77],"locationId":196},{"id":77,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[78],"locationId":196},{"id":78,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[79],"locationId":196},{"id":79,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[80],"locationId":196},{"id":80,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[81],"locationId":196},{"id":81,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[82],"locationId":196},{"id":82,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[83],"locationId":196},{"id":83,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[84],"locationId":196},{"id":84,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[85],"locationId":196},{"id":85,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[86],"locationId":196},{"id":86,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[87],"locationId":196},{"id":87,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[88],"locationId":196},{"id":88,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[89],"locationId":196},{"id":89,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[90],"locationId":196},{"id":90,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[91],"locationId":196},{"id":91,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[92],"locationId":196},{"id":92,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[93],"locationId":196},{"id":93,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[94],"locationId":196},{"id":94,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[95],"locationId":196},{"id":95,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[96],"locationId":196},{"id":96,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[97],"locationId":196},{"id":97,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[98],"locationId":196},{"id":98,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[99],"locationId":196},{"id":99,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[100],"locationId":196},{"id":100,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[101],"locationId":196},{"id":101,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[102],"locationId":196},{"id":102,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[103],"locationId":196},{"id":103,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[104],"locationId":196},{"id":104,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[105],"locationId":196},{"id":105,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[106],"locationId":196},{"id":106,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[107],"locationId":196},{"id":107,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[108],"locationId":196},{"id":108,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[109],"locationId":196},{"id":109,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[110],"locationId":196},{"id":110,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[111],"locationId":196},{"id":111,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[112],"locationId":196},{"id":112,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[113],"locationId":196},{"id":113,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[114],"locationId":196},{"id":114,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[115],"locationId":196},{"id":115,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[116],"locationId":196},{"id":116,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[117],"locationId":196},{"id":117,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[118],"locationId":196},{"id":118,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[119],"locationId":196},{"id":119,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[120],"locationId":196},{"id":120,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[121],"locationId":196},{"id":121,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[122],"locationId":196},{"id":122,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[123],"locationId":196},{"id":123,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[124],"locationId":196},{"id":124,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[125],"locationId":196},{"id":125,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[126],"locationId":196},{"id":126,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[127],"locationId":196},{"id":127,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[128],"locationId":196},{"id":128,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[129],"locationId":196},{"id":129,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[130],"locationId":196},{"id":130,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[131],"locationId":196},{"id":131,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[132],"locationId":196},{"id":132,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[133],"locationId":196},{"id":133,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[134],"locationId":196},{"id":134,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[135],"locationId":196},{"id":135,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[136],"locationId":196},{"id":136,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[137],"locationId":196},{"id":137,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[138],"locationId":196},{"id":138,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[139],"locationId":196},{"id":139,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[140],"locationId":196},{"id":140,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[141],"locationId":196},{"id":141,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[142],"locationId":196},{"id":142,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[143],"locationId":196},{"id":143,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[144],"locationId":196},{"id":144,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[145],"locationId":196},{"id":145,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[146],"locationId":196},{"id":146,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[147],"locationId":196},{"id":147,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[148],"locationId":196},{"id":148,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[149],"locationId":196},{"id":149,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[150],"locationId":196},{"id":150,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[151],"locationId":196},{"id":151,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[152],"locationId":196},{"id":152,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[153],"locationId":196},{"id":153,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[154],"locationId":196},{"id":154,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[155],"locationId":196},{"id":155,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[156],"locationId":196},{"id":156,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[157],"locationId":196},{"id":157,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[158],"locationId":196},{"id":158,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[159],"locationId":196},{"id":159,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[160],"locationId":196},{"id":160,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[161],"locationId":196},{"id":161,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[162],"locationId":196},{"id":162,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[163],"locationId":196},{"id":163,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[164],"locationId":196},{"id":164,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[165],"locationId":196},{"id":165,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[166],"locationId":196},{"id":166,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[167],"locationId":196},{"id":167,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[168],"locationId":196},{"id":168,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[169],"locationId":196},{"id":169,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[170],"locationId":196},{"id":170,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[171],"locationId":196},{"id":171,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[172],"locationId":196},{"id":172,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[173],"locationId":196},{"id":173,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[174],"locationId":196},{"id":174,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[175],"locationId":196},{"id":175,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[176],"locationId":196},{"id":176,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[177],"locationId":196},{"id":177,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[178],"locationId":196},{"id":178,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[179],"locationId":196},{"id":179,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[180],"locationId":196},{"id":180,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[181],"locationId":196},{"id":181,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[182],"locationId":196},{"id":182,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[183],"locationId":196},{"id":183,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[184],"locationId":196},{"id":184,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[185],"locationId":196},{"id":185,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[186],"locationId":196},{"id":186,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[187],"locationId":196},{"id":187,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[188],"locationId":196},{"id":188,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[189],"locationId":196},{"id":189,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[190],"locationId":196},{"id":190,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[191],"locationId":196},{"id":191,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[192],"locationId":196},{"id":192,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[193],"locationId":196},{"id":193,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[194],"locationId":196},{"id":194,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[195],"locationId":196},{"id":195,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[196],"locationId":196},{"id":196,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[197],"locationId":196},{"id":197,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[198],"locationId":196},{"id":198,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[199],"locationId":196},{"id":199,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[200],"locationId":196},{"id":200,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[201],"locationId":196},{"id":201,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[202],"locationId":196},{"id":202,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[203],"locationId":196},{"id":203,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[204],"locationId":196},{"id":204,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[205],"locationId":196},{"id":205,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[206],"locationId":196},{"id":206,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[207],"locationId":196},{"id":207,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[208],"locationId":196},{"id":208,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[209],"locationId":196},{"id":209,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[210],"locationId":196},{"id":210,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[211],"locationId":196},{"id":211,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[212],"locationId":196},{"id":212,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[213],"locationId":196},{"id":213,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[214],"locationId":196},{"id":214,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[215],"locationId":196},{"id":215,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[216],"locationId":196},{"id":216,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[217],"locationId":196},{"id":217,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[218],"locationId":196},{"id":218,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[219],"locationId":196},{"id":219,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[220],"locationId":196},{"id":220,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[221],"locationId":196},{"id":221,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[222],"locationId":196},{"id":222,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[223],"locationId":196},{"id":223,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[224],"locationId":196},{"id":224,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[225],"locationId":196},{"id":225,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[226],"locationId":196},{"id":226,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[227],"locationId":196},{"id":227,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[228],"locationId":196},{"id":228,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[229],"locationId":196},{"id":229,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[230],"locationId":196},{"id":230,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[231],"locationId":196},{"id":231,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[232],"locationId":196},{"id":232,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[233],"locationId":196},{"id":233,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[234],"locationId":196},{"id":234,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[235],"locationId":196},{"id":235,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[236],"locationId":196},{"id":236,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[237],"locationId":196},{"id":237,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[238],"locationId":196},{"id":238,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[239],"locationId":196},{"id":239,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[240],"locationId":196},{"id":240,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[241],"locationId":196},{"id":241,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[242],"locationId":196},{"id":242,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[243],"locationId":196},{"id":243,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[244],"locationId":196},{"id":244,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[245],"locationId":196},{"id":245,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[246],"locationId":196},{"id":246,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[247],"locationId":196},{"id":247,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[248],"locationId":196},{"id":248,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[249],"locationId":196},{"id":249,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[250],"locationId":196},{"id":250,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[251],"locationId":196},{"id":251,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[252],"locationId":196},{"id":252,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[253],"locationId":196},{"id":253,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[254],"locationId":196},{"id":254,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[255],"locationId":196},{"id":255,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[256],"locationId":196},{"id":256,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[257],"locationId":196},{"id":257,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[258],"locationId":196},{"id":258,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[259],"locationId":196},{"id":259,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[260],"locationId":196},{"id":260,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[261],"locationId":196},{"id":261,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[262],"locationId":196},{"id":262,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[263],"locationId":196},{"id":263,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[264],"locationId":196},{"id":264,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[265],"locationId":196},{"id":265,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[266],"locationId":196},{"id":266,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[267],"locationId":196},{"id":267,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[268],"locationId":196},{"id":268,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[269],"locationId":196},{"id":269,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":488,"children":[709],"positionTicks":[{"line":44,"ticks":488,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":709,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":72,"children":[710],"positionTicks":[{"line":44,"ticks":72,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":710,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":31,"positionTicks":[{"line":41,"ticks":1,"startLocationId":227,"endLocationId":269},{"line":42,"ticks":2,"startLocationId":269,"endLocationId":199},{"line":43,"ticks":14,"startLocationId":199,"endLocationId":197},{"line":45,"ticks":2,"startLocationId":198,"endLocationId":270},{"line":40,"ticks":2,"startLocationId":226,"endLocationId":227},{"line":44,"ticks":10,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":641,"callFrame":{"functionName":"(garbage collector)","scriptId":"0","url":"","lineNumber":-1,"columnNumber":-1},"hitCount":1027,"locationId":271},{"id":949,"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":47,"columnNumber":39},"hitCount":0,"children":[950],"locationId":36},{"id":950,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":0,"children":[951],"locationId":62},{"id":951,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[952],"locationId":196},{"id":952,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[953],"locationId":196},{"id":953,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[954],"locationId":196},{"id":954,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[955],"locationId":196},{"id":955,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[956],"locationId":196},{"id":956,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[957],"locationId":196},{"id":957,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[958],"locationId":196},{"id":958,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[959],"locationId":196},{"id":959,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[960],"locationId":196},{"id":960,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[961],"locationId":196},{"id":961,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[962],"locationId":196},{"id":962,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[963],"locationId":196},{"id":963,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[964],"locationId":196},{"id":964,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[965],"locationId":196},{"id":965,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[966],"locationId":196},{"id":966,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[967],"locationId":196},{"id":967,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[968],"locationId":196},{"id":968,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[969],"locationId":196},{"id":969,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[970],"locationId":196},{"id":970,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[971],"locationId":196},{"id":971,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[972],"locationId":196},{"id":972,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[973],"locationId":196},{"id":973,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[974],"locationId":196},{"id":974,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[975],"locationId":196},{"id":975,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[976],"locationId":196},{"id":976,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[977],"locationId":196},{"id":977,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[978],"locationId":196},{"id":978,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[979],"locationId":196},{"id":979,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[980],"locationId":196},{"id":980,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[981],"locationId":196},{"id":981,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[982],"locationId":196},{"id":982,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[983],"locationId":196},{"id":983,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[984],"locationId":196},{"id":984,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[985],"locationId":196},{"id":985,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[986],"locationId":196},{"id":986,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[987],"locationId":196},{"id":987,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[988],"locationId":196},{"id":988,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[989],"locationId":196},{"id":989,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[990],"locationId":196},{"id":990,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[991],"locationId":196},{"id":991,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[992],"locationId":196},{"id":992,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[993],"locationId":196},{"id":993,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[994],"locationId":196},{"id":994,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[995],"locationId":196},{"id":995,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[996],"locationId":196},{"id":996,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[997],"locationId":196},{"id":997,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[998],"locationId":196},{"id":998,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[999],"locationId":196},{"id":999,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1000],"locationId":196},{"id":1000,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1001],"locationId":196},{"id":1001,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1002],"locationId":196},{"id":1002,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1003],"locationId":196},{"id":1003,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1004],"locationId":196},{"id":1004,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1005],"locationId":196},{"id":1005,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1006],"locationId":196},{"id":1006,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1007],"locationId":196},{"id":1007,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1008],"locationId":196},{"id":1008,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1009],"locationId":196},{"id":1009,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1010],"locationId":196},{"id":1010,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1011],"locationId":196},{"id":1011,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1012],"locationId":196},{"id":1012,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1013],"locationId":196},{"id":1013,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1014],"locationId":196},{"id":1014,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1015],"locationId":196},{"id":1015,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1016],"locationId":196},{"id":1016,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1017],"locationId":196},{"id":1017,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1018],"locationId":196},{"id":1018,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1019],"locationId":196},{"id":1019,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1020],"locationId":196},{"id":1020,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1021],"locationId":196},{"id":1021,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1022],"locationId":196},{"id":1022,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1023],"locationId":196},{"id":1023,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1024],"locationId":196},{"id":1024,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1025],"locationId":196},{"id":1025,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1026],"locationId":196},{"id":1026,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1027],"locationId":196},{"id":1027,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1028],"locationId":196},{"id":1028,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1029],"locationId":196},{"id":1029,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1030],"locationId":196},{"id":1030,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1031],"locationId":196},{"id":1031,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1032],"locationId":196},{"id":1032,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1033],"locationId":196},{"id":1033,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1034],"locationId":196},{"id":1034,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1035],"locationId":196},{"id":1035,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1036],"locationId":196},{"id":1036,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1037],"locationId":196},{"id":1037,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1038],"locationId":196},{"id":1038,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1039],"locationId":196},{"id":1039,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1040],"locationId":196},{"id":1040,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1041],"locationId":196},{"id":1041,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1042],"locationId":196},{"id":1042,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1043],"locationId":196},{"id":1043,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1044],"locationId":196},{"id":1044,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1045],"locationId":196},{"id":1045,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1046],"locationId":196},{"id":1046,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1047],"locationId":196},{"id":1047,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1048],"locationId":196},{"id":1048,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1049],"locationId":196},{"id":1049,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1050],"locationId":196},{"id":1050,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1051],"locationId":196},{"id":1051,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1052],"locationId":196},{"id":1052,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1053],"locationId":196},{"id":1053,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1054],"locationId":196},{"id":1054,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1055],"locationId":196},{"id":1055,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1056],"locationId":196},{"id":1056,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1057],"locationId":196},{"id":1057,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1058],"locationId":196},{"id":1058,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1059],"locationId":196},{"id":1059,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1060],"locationId":196},{"id":1060,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1061],"locationId":196},{"id":1061,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1062],"locationId":196},{"id":1062,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1063],"locationId":196},{"id":1063,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1064],"locationId":196},{"id":1064,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1065],"locationId":196},{"id":1065,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1066],"locationId":196},{"id":1066,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1067],"locationId":196},{"id":1067,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1068],"locationId":196},{"id":1068,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1069],"locationId":196},{"id":1069,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1070],"locationId":196},{"id":1070,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1071],"locationId":196},{"id":1071,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1072],"locationId":196},{"id":1072,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1073],"locationId":196},{"id":1073,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1074],"locationId":196},{"id":1074,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1075],"locationId":196},{"id":1075,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1076],"locationId":196},{"id":1076,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1077],"locationId":196},{"id":1077,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1078],"locationId":196},{"id":1078,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1079],"locationId":196},{"id":1079,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1080],"locationId":196},{"id":1080,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1081],"locationId":196},{"id":1081,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1082],"locationId":196},{"id":1082,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1083],"locationId":196},{"id":1083,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1084],"locationId":196},{"id":1084,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1085],"locationId":196},{"id":1085,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1086],"locationId":196},{"id":1086,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1087],"locationId":196},{"id":1087,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1088],"locationId":196},{"id":1088,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1089],"locationId":196},{"id":1089,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1090],"locationId":196},{"id":1090,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1091],"locationId":196},{"id":1091,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1092],"locationId":196},{"id":1092,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1093],"locationId":196},{"id":1093,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1094],"locationId":196},{"id":1094,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1095],"locationId":196},{"id":1095,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1096],"locationId":196},{"id":1096,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1097],"locationId":196},{"id":1097,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1098],"locationId":196},{"id":1098,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1099],"locationId":196},{"id":1099,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1100],"locationId":196},{"id":1100,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1101],"locationId":196},{"id":1101,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1102],"locationId":196},{"id":1102,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1103],"locationId":196},{"id":1103,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1104],"locationId":196},{"id":1104,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1105],"locationId":196},{"id":1105,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1106],"locationId":196},{"id":1106,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1107],"locationId":196},{"id":1107,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1108],"locationId":196},{"id":1108,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1109],"locationId":196},{"id":1109,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1110],"locationId":196},{"id":1110,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1111],"locationId":196},{"id":1111,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1112],"locationId":196},{"id":1112,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1113],"locationId":196},{"id":1113,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1114],"locationId":196},{"id":1114,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1115],"locationId":196},{"id":1115,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1116],"locationId":196},{"id":1116,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1117],"locationId":196},{"id":1117,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1118],"locationId":196},{"id":1118,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1119],"locationId":196},{"id":1119,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1120],"locationId":196},{"id":1120,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1121],"locationId":196},{"id":1121,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1122],"locationId":196},{"id":1122,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1123],"locationId":196},{"id":1123,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1124],"locationId":196},{"id":1124,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1125],"locationId":196},{"id":1125,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1126],"locationId":196},{"id":1126,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1127],"locationId":196},{"id":1127,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1128],"locationId":196},{"id":1128,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1129],"locationId":196},{"id":1129,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1130],"locationId":196},{"id":1130,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1131],"locationId":196},{"id":1131,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1132],"locationId":196},{"id":1132,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1133],"locationId":196},{"id":1133,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1134],"locationId":196},{"id":1134,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1135],"locationId":196},{"id":1135,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1136],"locationId":196},{"id":1136,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1137],"locationId":196},{"id":1137,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1138],"locationId":196},{"id":1138,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1139],"locationId":196},{"id":1139,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1140],"locationId":196},{"id":1140,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1141],"locationId":196},{"id":1141,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1142],"locationId":196},{"id":1142,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1143],"locationId":196},{"id":1143,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1144],"locationId":196},{"id":1144,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1145],"locationId":196},{"id":1145,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1146],"locationId":196},{"id":1146,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1147],"locationId":196},{"id":1147,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1148],"locationId":196},{"id":1148,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1149],"locationId":196},{"id":1149,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1150],"locationId":196},{"id":1150,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1151],"locationId":196},{"id":1151,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1152],"locationId":196},{"id":1152,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1153],"locationId":196},{"id":1153,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1154],"locationId":196},{"id":1154,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1155],"locationId":196},{"id":1155,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1156],"locationId":196},{"id":1156,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1157],"locationId":196},{"id":1157,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1158],"locationId":196},{"id":1158,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1159],"locationId":196},{"id":1159,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1160],"locationId":196},{"id":1160,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1161],"locationId":196},{"id":1161,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1162],"locationId":196},{"id":1162,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1163],"locationId":196},{"id":1163,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1164],"locationId":196},{"id":1164,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1165],"locationId":196},{"id":1165,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1166],"locationId":196},{"id":1166,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1167],"locationId":196},{"id":1167,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1168],"locationId":196},{"id":1168,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1169],"locationId":196},{"id":1169,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1170],"locationId":196},{"id":1170,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1171],"locationId":196},{"id":1171,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1172],"locationId":196},{"id":1172,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1173],"locationId":196},{"id":1173,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1174],"locationId":196},{"id":1174,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1175],"locationId":196},{"id":1175,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1176],"locationId":196},{"id":1176,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1177],"locationId":196},{"id":1177,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1178],"locationId":196},{"id":1178,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1179],"locationId":196},{"id":1179,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1180],"locationId":196},{"id":1180,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1181],"locationId":196},{"id":1181,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1182],"locationId":196},{"id":1182,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1183],"locationId":196},{"id":1183,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1184],"locationId":196},{"id":1184,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1185],"locationId":196},{"id":1185,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1186],"locationId":196},{"id":1186,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1187],"locationId":196},{"id":1187,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1188],"locationId":196},{"id":1188,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1189],"locationId":196},{"id":1189,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1190],"locationId":196},{"id":1190,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1191],"locationId":196},{"id":1191,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1192],"locationId":196},{"id":1192,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1193],"locationId":196},{"id":1193,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1194],"locationId":196},{"id":1194,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1195],"locationId":196},{"id":1195,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1196],"locationId":196},{"id":1196,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1197],"locationId":196},{"id":1197,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1198],"locationId":196},{"id":1198,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1199],"locationId":196},{"id":1199,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1200],"locationId":196},{"id":1200,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1201],"locationId":196},{"id":1201,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1202],"locationId":196},{"id":1202,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1203],"locationId":196},{"id":1203,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":4,"positionTicks":[{"line":44,"ticks":4,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1216,"callFrame":{"functionName":"Parsed.getDDL","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":336,"columnNumber":31},"hitCount":0,"children":[1217],"locationId":5},{"id":1217,"callFrame":{"functionName":"toDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":832,"columnNumber":29},"hitCount":0,"children":[1218],"locationId":6},{"id":1218,"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":607,"columnNumber":33},"hitCount":0,"children":[1219,3373],"locationId":9},{"id":1219,"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":47,"columnNumber":39},"hitCount":0,"children":[1220],"locationId":36},{"id":1220,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":0,"children":[1221],"locationId":62},{"id":1221,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1222],"locationId":196},{"id":1222,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1223],"locationId":196},{"id":1223,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1224],"locationId":196},{"id":1224,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1225],"locationId":196},{"id":1225,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1226],"locationId":196},{"id":1226,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1227],"locationId":196},{"id":1227,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1228],"locationId":196},{"id":1228,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1229],"locationId":196},{"id":1229,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1230],"locationId":196},{"id":1230,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1231],"locationId":196},{"id":1231,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1232],"locationId":196},{"id":1232,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1233],"locationId":196},{"id":1233,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1234],"locationId":196},{"id":1234,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1235],"locationId":196},{"id":1235,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1236],"locationId":196},{"id":1236,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1237],"locationId":196},{"id":1237,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1238],"locationId":196},{"id":1238,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1239],"locationId":196},{"id":1239,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1240],"locationId":196},{"id":1240,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1241],"locationId":196},{"id":1241,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1242],"locationId":196},{"id":1242,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1243],"locationId":196},{"id":1243,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1244],"locationId":196},{"id":1244,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1245],"locationId":196},{"id":1245,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1246],"locationId":196},{"id":1246,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1247],"locationId":196},{"id":1247,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1248],"locationId":196},{"id":1248,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1249],"locationId":196},{"id":1249,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1250],"locationId":196},{"id":1250,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1251],"locationId":196},{"id":1251,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1252],"locationId":196},{"id":1252,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1253],"locationId":196},{"id":1253,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1254],"locationId":196},{"id":1254,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1255],"locationId":196},{"id":1255,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1256],"locationId":196},{"id":1256,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1257],"locationId":196},{"id":1257,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1258],"locationId":196},{"id":1258,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1259],"locationId":196},{"id":1259,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1260],"locationId":196},{"id":1260,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1261],"locationId":196},{"id":1261,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1262],"locationId":196},{"id":1262,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1263],"locationId":196},{"id":1263,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1264],"locationId":196},{"id":1264,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1265],"locationId":196},{"id":1265,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1266],"locationId":196},{"id":1266,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1267],"locationId":196},{"id":1267,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1268],"locationId":196},{"id":1268,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1269],"locationId":196},{"id":1269,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1270],"locationId":196},{"id":1270,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1271],"locationId":196},{"id":1271,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1272],"locationId":196},{"id":1272,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1273],"locationId":196},{"id":1273,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1274],"locationId":196},{"id":1274,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1275],"locationId":196},{"id":1275,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1276],"locationId":196},{"id":1276,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1277],"locationId":196},{"id":1277,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1278],"locationId":196},{"id":1278,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1279],"locationId":196},{"id":1279,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1280],"locationId":196},{"id":1280,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1281],"locationId":196},{"id":1281,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1282],"locationId":196},{"id":1282,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1283],"locationId":196},{"id":1283,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1284],"locationId":196},{"id":1284,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1285],"locationId":196},{"id":1285,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1286],"locationId":196},{"id":1286,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1287],"locationId":196},{"id":1287,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1288],"locationId":196},{"id":1288,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1289],"locationId":196},{"id":1289,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1290],"locationId":196},{"id":1290,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1291],"locationId":196},{"id":1291,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1292],"locationId":196},{"id":1292,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1293],"locationId":196},{"id":1293,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1294],"locationId":196},{"id":1294,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1295],"locationId":196},{"id":1295,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1296],"locationId":196},{"id":1296,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1297],"locationId":196},{"id":1297,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1298],"locationId":196},{"id":1298,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1299],"locationId":196},{"id":1299,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1300],"locationId":196},{"id":1300,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1301],"locationId":196},{"id":1301,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1302],"locationId":196},{"id":1302,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1303],"locationId":196},{"id":1303,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1304],"locationId":196},{"id":1304,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1305],"locationId":196},{"id":1305,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1306],"locationId":196},{"id":1306,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1307],"locationId":196},{"id":1307,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1308],"locationId":196},{"id":1308,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1309],"locationId":196},{"id":1309,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1310],"locationId":196},{"id":1310,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1311],"locationId":196},{"id":1311,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1312],"locationId":196},{"id":1312,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1313],"locationId":196},{"id":1313,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1314],"locationId":196},{"id":1314,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1315],"locationId":196},{"id":1315,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1316],"locationId":196},{"id":1316,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1317],"locationId":196},{"id":1317,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1318],"locationId":196},{"id":1318,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1319],"locationId":196},{"id":1319,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1320],"locationId":196},{"id":1320,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1321],"locationId":196},{"id":1321,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1322],"locationId":196},{"id":1322,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1323],"locationId":196},{"id":1323,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1324],"locationId":196},{"id":1324,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1325],"locationId":196},{"id":1325,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1326],"locationId":196},{"id":1326,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1327],"locationId":196},{"id":1327,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1328],"locationId":196},{"id":1328,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1329],"locationId":196},{"id":1329,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1330],"locationId":196},{"id":1330,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1331],"locationId":196},{"id":1331,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1332],"locationId":196},{"id":1332,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1333],"locationId":196},{"id":1333,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1334],"locationId":196},{"id":1334,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1335],"locationId":196},{"id":1335,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1336],"locationId":196},{"id":1336,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1337],"locationId":196},{"id":1337,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1338],"locationId":196},{"id":1338,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1339],"locationId":196},{"id":1339,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1340],"locationId":196},{"id":1340,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1341],"locationId":196},{"id":1341,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1342],"locationId":196},{"id":1342,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1343],"locationId":196},{"id":1343,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1344],"locationId":196},{"id":1344,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1345],"locationId":196},{"id":1345,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1346],"locationId":196},{"id":1346,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1347],"locationId":196},{"id":1347,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1348],"locationId":196},{"id":1348,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1349],"locationId":196},{"id":1349,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1350],"locationId":196},{"id":1350,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1351],"locationId":196},{"id":1351,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1352],"locationId":196},{"id":1352,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1353],"locationId":196},{"id":1353,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1354],"locationId":196},{"id":1354,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1355],"locationId":196},{"id":1355,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1356],"locationId":196},{"id":1356,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1357],"locationId":196},{"id":1357,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1358],"locationId":196},{"id":1358,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1359],"locationId":196},{"id":1359,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1360],"locationId":196},{"id":1360,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1361],"locationId":196},{"id":1361,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1362],"locationId":196},{"id":1362,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1363],"locationId":196},{"id":1363,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1364],"locationId":196},{"id":1364,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1365],"locationId":196},{"id":1365,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1366],"locationId":196},{"id":1366,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1367],"locationId":196},{"id":1367,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1368],"locationId":196},{"id":1368,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1369],"locationId":196},{"id":1369,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1370],"locationId":196},{"id":1370,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1371],"locationId":196},{"id":1371,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1372],"locationId":196},{"id":1372,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1373],"locationId":196},{"id":1373,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1374],"locationId":196},{"id":1374,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1375],"locationId":196},{"id":1375,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1376],"locationId":196},{"id":1376,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1377],"locationId":196},{"id":1377,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1378],"locationId":196},{"id":1378,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1379],"locationId":196},{"id":1379,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1380],"locationId":196},{"id":1380,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1381],"locationId":196},{"id":1381,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1382],"locationId":196},{"id":1382,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1383],"locationId":196},{"id":1383,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1384],"locationId":196},{"id":1384,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1385],"locationId":196},{"id":1385,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1386],"locationId":196},{"id":1386,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1387],"locationId":196},{"id":1387,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1388],"locationId":196},{"id":1388,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1389],"locationId":196},{"id":1389,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1390],"locationId":196},{"id":1390,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1391],"locationId":196},{"id":1391,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1392],"locationId":196},{"id":1392,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1393],"locationId":196},{"id":1393,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1394],"locationId":196},{"id":1394,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1395],"locationId":196},{"id":1395,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1396],"locationId":196},{"id":1396,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1397],"locationId":196},{"id":1397,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1398],"locationId":196},{"id":1398,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1399],"locationId":196},{"id":1399,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1400],"locationId":196},{"id":1400,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1401],"locationId":196},{"id":1401,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1402],"locationId":196},{"id":1402,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1403],"locationId":196},{"id":1403,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1404],"locationId":196},{"id":1404,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1405],"locationId":196},{"id":1405,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1406],"locationId":196},{"id":1406,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1407],"locationId":196},{"id":1407,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1408],"locationId":196},{"id":1408,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1409],"locationId":196},{"id":1409,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1410],"locationId":196},{"id":1410,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1411],"locationId":196},{"id":1411,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1412],"locationId":196},{"id":1412,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1413],"locationId":196},{"id":1413,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1414],"locationId":196},{"id":1414,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1415],"locationId":196},{"id":1415,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1416],"locationId":196},{"id":1416,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1417],"locationId":196},{"id":1417,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1418],"locationId":196},{"id":1418,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1419],"locationId":196},{"id":1419,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1420],"locationId":196},{"id":1420,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1421],"locationId":196},{"id":1421,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1422],"locationId":196},{"id":1422,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1423],"locationId":196},{"id":1423,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1424],"locationId":196},{"id":1424,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1425],"locationId":196},{"id":1425,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1426],"locationId":196},{"id":1426,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1427],"locationId":196},{"id":1427,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1428],"locationId":196},{"id":1428,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1429],"locationId":196},{"id":1429,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1430],"locationId":196},{"id":1430,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1431],"locationId":196},{"id":1431,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1432],"locationId":196},{"id":1432,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1433],"locationId":196},{"id":1433,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1434],"locationId":196},{"id":1434,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1435],"locationId":196},{"id":1435,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1436],"locationId":196},{"id":1436,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1437],"locationId":196},{"id":1437,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1438],"locationId":196},{"id":1438,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1439],"locationId":196},{"id":1439,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1440],"locationId":196},{"id":1440,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1441],"locationId":196},{"id":1441,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1442],"locationId":196},{"id":1442,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1443],"locationId":196},{"id":1443,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1444],"locationId":196},{"id":1444,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1445],"locationId":196},{"id":1445,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1446],"locationId":196},{"id":1446,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1447],"locationId":196},{"id":1447,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1448],"locationId":196},{"id":1448,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1449],"locationId":196},{"id":1449,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1450],"locationId":196},{"id":1450,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1451],"locationId":196},{"id":1451,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1452],"locationId":196},{"id":1452,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1453],"locationId":196},{"id":1453,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1454],"locationId":196},{"id":1454,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1455],"locationId":196},{"id":1455,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1456],"locationId":196},{"id":1456,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1457],"locationId":196},{"id":1457,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1458],"locationId":196},{"id":1458,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1459],"locationId":196},{"id":1459,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1460],"locationId":196},{"id":1460,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1461],"locationId":196},{"id":1461,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1462],"locationId":196},{"id":1462,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1463],"locationId":196},{"id":1463,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1464],"locationId":196},{"id":1464,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1465],"locationId":196},{"id":1465,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1466],"locationId":196},{"id":1466,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1467],"locationId":196},{"id":1467,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1468],"locationId":196},{"id":1468,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1469],"locationId":196},{"id":1469,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1470],"locationId":196},{"id":1470,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":3373,"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":607,"columnNumber":33},"hitCount":0,"children":[3374],"locationId":9},{"id":3374,"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":47,"columnNumber":39},"hitCount":0,"children":[3375],"locationId":36},{"id":3375,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":0,"children":[3376],"locationId":62},{"id":3376,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3377],"locationId":196},{"id":3377,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3378],"locationId":196},{"id":3378,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3379],"locationId":196},{"id":3379,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3380],"locationId":196},{"id":3380,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3381],"locationId":196},{"id":3381,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3382],"locationId":196},{"id":3382,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3383],"locationId":196},{"id":3383,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3384],"locationId":196},{"id":3384,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3385],"locationId":196},{"id":3385,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3386],"locationId":196},{"id":3386,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3387],"locationId":196},{"id":3387,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3388],"locationId":196},{"id":3388,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3389],"locationId":196},{"id":3389,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3390],"locationId":196},{"id":3390,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3391],"locationId":196},{"id":3391,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3392],"locationId":196},{"id":3392,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3393],"locationId":196},{"id":3393,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3394],"locationId":196},{"id":3394,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3395],"locationId":196},{"id":3395,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3396],"locationId":196},{"id":3396,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3397],"locationId":196},{"id":3397,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3398],"locationId":196},{"id":3398,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3399],"locationId":196},{"id":3399,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3400],"locationId":196},{"id":3400,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3401],"locationId":196},{"id":3401,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3402],"locationId":196},{"id":3402,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3403],"locationId":196},{"id":3403,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3404],"locationId":196},{"id":3404,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3405],"locationId":196},{"id":3405,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3406],"locationId":196},{"id":3406,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3407],"locationId":196},{"id":3407,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3408],"locationId":196},{"id":3408,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3409],"locationId":196},{"id":3409,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3410],"locationId":196},{"id":3410,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3411],"locationId":196},{"id":3411,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3412],"locationId":196},{"id":3412,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3413],"locationId":196},{"id":3413,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3414],"locationId":196},{"id":3414,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3415],"locationId":196},{"id":3415,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3416],"locationId":196},{"id":3416,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3417],"locationId":196},{"id":3417,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3418],"locationId":196},{"id":3418,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3419],"locationId":196},{"id":3419,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3420],"locationId":196},{"id":3420,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3421],"locationId":196},{"id":3421,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3422],"locationId":196},{"id":3422,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3423],"locationId":196},{"id":3423,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3424],"locationId":196},{"id":3424,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3425],"locationId":196},{"id":3425,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3426],"locationId":196},{"id":3426,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3427],"locationId":196},{"id":3427,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3428],"locationId":196},{"id":3428,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3429],"locationId":196},{"id":3429,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3430],"locationId":196},{"id":3430,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3431],"locationId":196},{"id":3431,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3432],"locationId":196},{"id":3432,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3433],"locationId":196},{"id":3433,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3434],"locationId":196},{"id":3434,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3435],"locationId":196},{"id":3435,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3436],"locationId":196},{"id":3436,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3437],"locationId":196},{"id":3437,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3438],"locationId":196},{"id":3438,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3439],"locationId":196},{"id":3439,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3440],"locationId":196},{"id":3440,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3441],"locationId":196},{"id":3441,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3442],"locationId":196},{"id":3442,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3443],"locationId":196},{"id":3443,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3444],"locationId":196},{"id":3444,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3445],"locationId":196},{"id":3445,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3446],"locationId":196},{"id":3446,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3447],"locationId":196},{"id":3447,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3448],"locationId":196},{"id":3448,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3449],"locationId":196},{"id":3449,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3450],"locationId":196},{"id":3450,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3451],"locationId":196},{"id":3451,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3452],"locationId":196},{"id":3452,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3453],"locationId":196},{"id":3453,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3454],"locationId":196},{"id":3454,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3455],"locationId":196},{"id":3455,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3456],"locationId":196},{"id":3456,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3457],"locationId":196},{"id":3457,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3458],"locationId":196},{"id":3458,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3459],"locationId":196},{"id":3459,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3460],"locationId":196},{"id":3460,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3461],"locationId":196},{"id":3461,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3462],"locationId":196},{"id":3462,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3463],"locationId":196},{"id":3463,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3464],"locationId":196},{"id":3464,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3465],"locationId":196},{"id":3465,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3466],"locationId":196},{"id":3466,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3467],"locationId":196},{"id":3467,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3468],"locationId":196},{"id":3468,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3469],"locationId":196},{"id":3469,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3470],"locationId":196},{"id":3470,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3471],"locationId":196},{"id":3471,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3472],"locationId":196},{"id":3472,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3473],"locationId":196},{"id":3473,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3474],"locationId":196},{"id":3474,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3475],"locationId":196},{"id":3475,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3476],"locationId":196},{"id":3476,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3477],"locationId":196},{"id":3477,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3478],"locationId":196},{"id":3478,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3479],"locationId":196},{"id":3479,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3480],"locationId":196},{"id":3480,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3481],"locationId":196},{"id":3481,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3482],"locationId":196},{"id":3482,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3483],"locationId":196},{"id":3483,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3484],"locationId":196},{"id":3484,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3485],"locationId":196},{"id":3485,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3486],"locationId":196},{"id":3486,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3487],"locationId":196},{"id":3487,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3488],"locationId":196},{"id":3488,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3489],"locationId":196},{"id":3489,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3490],"locationId":196},{"id":3490,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3491],"locationId":196},{"id":3491,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3492],"locationId":196},{"id":3492,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3493],"locationId":196},{"id":3493,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3494],"locationId":196},{"id":3494,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3495],"locationId":196},{"id":3495,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3496],"locationId":196},{"id":3496,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3497],"locationId":196},{"id":3497,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3498],"locationId":196},{"id":3498,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3499],"locationId":196},{"id":3499,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3500],"locationId":196},{"id":3500,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3501],"locationId":196},{"id":3501,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3502],"locationId":196},{"id":3502,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3503],"locationId":196},{"id":3503,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3504],"locationId":196},{"id":3504,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3505],"locationId":196},{"id":3505,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3506],"locationId":196},{"id":3506,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3507],"locationId":196},{"id":3507,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3508],"locationId":196},{"id":3508,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3509],"locationId":196},{"id":3509,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3510],"locationId":196},{"id":3510,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3511],"locationId":196},{"id":3511,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3512],"locationId":196},{"id":3512,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3513],"locationId":196},{"id":3513,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3514],"locationId":196},{"id":3514,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3515],"locationId":196},{"id":3515,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3516],"locationId":196},{"id":3516,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3517],"locationId":196},{"id":3517,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3518],"locationId":196},{"id":3518,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3519],"locationId":196},{"id":3519,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3520],"locationId":196},{"id":3520,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3521],"locationId":196},{"id":3521,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3522],"locationId":196},{"id":3522,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3523],"locationId":196},{"id":3523,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3524],"locationId":196},{"id":3524,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3525],"locationId":196},{"id":3525,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3526],"locationId":196},{"id":3526,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3527],"locationId":196},{"id":3527,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3528],"locationId":196},{"id":3528,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3529],"locationId":196},{"id":3529,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3530],"locationId":196},{"id":3530,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3531],"locationId":196},{"id":3531,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3532],"locationId":196},{"id":3532,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3533],"locationId":196},{"id":3533,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3534],"locationId":196},{"id":3534,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3535],"locationId":196},{"id":3535,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3536],"locationId":196},{"id":3536,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3537],"locationId":196},{"id":3537,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3538],"locationId":196},{"id":3538,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3539],"locationId":196},{"id":3539,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3540],"locationId":196},{"id":3540,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3541],"locationId":196},{"id":3541,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3542],"locationId":196},{"id":3542,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3543],"locationId":196},{"id":3543,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3544],"locationId":196},{"id":3544,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3545],"locationId":196},{"id":3545,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3546],"locationId":196},{"id":3546,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3547],"locationId":196},{"id":3547,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3548],"locationId":196},{"id":3548,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3549],"locationId":196},{"id":3549,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3550],"locationId":196},{"id":3550,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3551],"locationId":196},{"id":3551,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3552],"locationId":196},{"id":3552,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3553],"locationId":196},{"id":3553,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3554],"locationId":196},{"id":3554,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3555],"locationId":196},{"id":3555,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3556],"locationId":196},{"id":3556,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3557],"locationId":196},{"id":3557,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3558],"locationId":196},{"id":3558,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3559],"locationId":196},{"id":3559,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3560],"locationId":196},{"id":3560,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3561],"locationId":196},{"id":3561,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3562],"locationId":196},{"id":3562,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3563],"locationId":196},{"id":3563,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3564],"locationId":196},{"id":3564,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3565],"locationId":196},{"id":3565,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3566],"locationId":196},{"id":3566,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3567],"locationId":196},{"id":3567,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3568],"locationId":196},{"id":3568,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3569],"locationId":196},{"id":3569,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3570],"locationId":196},{"id":3570,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3571],"locationId":196},{"id":3571,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3572],"locationId":196},{"id":3572,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3573],"locationId":196},{"id":3573,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3574],"locationId":196},{"id":3574,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3575],"locationId":196},{"id":3575,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3576],"locationId":196},{"id":3576,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3577],"locationId":196},{"id":3577,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3578],"locationId":196},{"id":3578,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3579],"locationId":196},{"id":3579,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3580],"locationId":196},{"id":3580,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3581],"locationId":196},{"id":3581,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3582],"locationId":196},{"id":3582,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3583],"locationId":196},{"id":3583,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3584],"locationId":196},{"id":3584,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3585],"locationId":196},{"id":3585,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3586],"locationId":196},{"id":3586,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3587],"locationId":196},{"id":3587,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3588],"locationId":196},{"id":3588,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3589],"locationId":196},{"id":3589,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3590],"locationId":196},{"id":3590,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3591],"locationId":196},{"id":3591,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3592],"locationId":196},{"id":3592,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3593],"locationId":196},{"id":3593,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3594],"locationId":196},{"id":3594,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3595],"locationId":196},{"id":3595,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3596],"locationId":196},{"id":3596,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3597],"locationId":196},{"id":3597,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3598],"locationId":196},{"id":3598,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3599],"locationId":196},{"id":3599,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3600],"locationId":196},{"id":3600,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3601],"locationId":196},{"id":3601,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3602],"locationId":196},{"id":3602,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3603],"locationId":196},{"id":3603,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3604],"locationId":196},{"id":3604,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3605],"locationId":196},{"id":3605,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3606],"locationId":196},{"id":3606,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3607],"locationId":196},{"id":3607,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3608],"locationId":196},{"id":3608,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3609],"locationId":196},{"id":3609,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3610],"locationId":196},{"id":3610,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3611],"locationId":196},{"id":3611,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3612],"locationId":196},{"id":3612,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3613],"locationId":196},{"id":3613,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3614],"locationId":196},{"id":3614,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3615],"locationId":196},{"id":3615,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3616],"locationId":196},{"id":3616,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3617],"locationId":196},{"id":3617,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3618],"locationId":196},{"id":3618,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3619],"locationId":196},{"id":3619,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3620],"locationId":196},{"id":3620,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3621],"locationId":196},{"id":3621,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3622],"locationId":196},{"id":3622,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3623],"locationId":196},{"id":3623,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3624],"locationId":196},{"id":3624,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3625],"locationId":196},{"id":3625,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1489,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":0,"children":[1490],"locationId":62},{"id":1490,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1491],"locationId":196},{"id":1491,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1492],"locationId":196},{"id":1492,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1493],"locationId":196},{"id":1493,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1494],"locationId":196},{"id":1494,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1495],"locationId":196},{"id":1495,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1496],"locationId":196},{"id":1496,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1497],"locationId":196},{"id":1497,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1498],"locationId":196},{"id":1498,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1499],"locationId":196},{"id":1499,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1500],"locationId":196},{"id":1500,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1501],"locationId":196},{"id":1501,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1502],"locationId":196},{"id":1502,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1503],"locationId":196},{"id":1503,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1504],"locationId":196},{"id":1504,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1505],"locationId":196},{"id":1505,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1506],"locationId":196},{"id":1506,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1507],"locationId":196},{"id":1507,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1508],"locationId":196},{"id":1508,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1509],"locationId":196},{"id":1509,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1510],"locationId":196},{"id":1510,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1511],"locationId":196},{"id":1511,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1512],"locationId":196},{"id":1512,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1513],"locationId":196},{"id":1513,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1514],"locationId":196},{"id":1514,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1515],"locationId":196},{"id":1515,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1516],"locationId":196},{"id":1516,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1517],"locationId":196},{"id":1517,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1518],"locationId":196},{"id":1518,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1519],"locationId":196},{"id":1519,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1520],"locationId":196},{"id":1520,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1521],"locationId":196},{"id":1521,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1522],"locationId":196},{"id":1522,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1523],"locationId":196},{"id":1523,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1524],"locationId":196},{"id":1524,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1525],"locationId":196},{"id":1525,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1526],"locationId":196},{"id":1526,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1527],"locationId":196},{"id":1527,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1528],"locationId":196},{"id":1528,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1529],"locationId":196},{"id":1529,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1530],"locationId":196},{"id":1530,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1531],"locationId":196},{"id":1531,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1532],"locationId":196},{"id":1532,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1533],"locationId":196},{"id":1533,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1534],"locationId":196},{"id":1534,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1535],"locationId":196},{"id":1535,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1536],"locationId":196},{"id":1536,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1537],"locationId":196},{"id":1537,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1538],"locationId":196},{"id":1538,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1539],"locationId":196},{"id":1539,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1540],"locationId":196},{"id":1540,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1541],"locationId":196},{"id":1541,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1542],"locationId":196},{"id":1542,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1543],"locationId":196},{"id":1543,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1544],"locationId":196},{"id":1544,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1545],"locationId":196},{"id":1545,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1546],"locationId":196},{"id":1546,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1547],"locationId":196},{"id":1547,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1548],"locationId":196},{"id":1548,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1549],"locationId":196},{"id":1549,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1550],"locationId":196},{"id":1550,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1551],"locationId":196},{"id":1551,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1552],"locationId":196},{"id":1552,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1553],"locationId":196},{"id":1553,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1554],"locationId":196},{"id":1554,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1555],"locationId":196},{"id":1555,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1556],"locationId":196},{"id":1556,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1557],"locationId":196},{"id":1557,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1558],"locationId":196},{"id":1558,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1559],"locationId":196},{"id":1559,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1560],"locationId":196},{"id":1560,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1561],"locationId":196},{"id":1561,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1562],"locationId":196},{"id":1562,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1563],"locationId":196},{"id":1563,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1564],"locationId":196},{"id":1564,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1565],"locationId":196},{"id":1565,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1566],"locationId":196},{"id":1566,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1567],"locationId":196},{"id":1567,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1568],"locationId":196},{"id":1568,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1569],"locationId":196},{"id":1569,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1570],"locationId":196},{"id":1570,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1571],"locationId":196},{"id":1571,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1572],"locationId":196},{"id":1572,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1573],"locationId":196},{"id":1573,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1574],"locationId":196},{"id":1574,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1575],"locationId":196},{"id":1575,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1576],"locationId":196},{"id":1576,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1577],"locationId":196},{"id":1577,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1578],"locationId":196},{"id":1578,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1579],"locationId":196},{"id":1579,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1580],"locationId":196},{"id":1580,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1581],"locationId":196},{"id":1581,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1582],"locationId":196},{"id":1582,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1583],"locationId":196},{"id":1583,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1584],"locationId":196},{"id":1584,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1585],"locationId":196},{"id":1585,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1586],"locationId":196},{"id":1586,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1587],"locationId":196},{"id":1587,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1588],"locationId":196},{"id":1588,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1589],"locationId":196},{"id":1589,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1590],"locationId":196},{"id":1590,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1591],"locationId":196},{"id":1591,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1592],"locationId":196},{"id":1592,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1593],"locationId":196},{"id":1593,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1594],"locationId":196},{"id":1594,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1595],"locationId":196},{"id":1595,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1596],"locationId":196},{"id":1596,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1597],"locationId":196},{"id":1597,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1598],"locationId":196},{"id":1598,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1599],"locationId":196},{"id":1599,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1600],"locationId":196},{"id":1600,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1601],"locationId":196},{"id":1601,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1602],"locationId":196},{"id":1602,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1603],"locationId":196},{"id":1603,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1604],"locationId":196},{"id":1604,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1605],"locationId":196},{"id":1605,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1606],"locationId":196},{"id":1606,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1607],"locationId":196},{"id":1607,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1608],"locationId":196},{"id":1608,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1609],"locationId":196},{"id":1609,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1610],"locationId":196},{"id":1610,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1611],"locationId":196},{"id":1611,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1612],"locationId":196},{"id":1612,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1613],"locationId":196},{"id":1613,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1614],"locationId":196},{"id":1614,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1615],"locationId":196},{"id":1615,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1616],"locationId":196},{"id":1616,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1617],"locationId":196},{"id":1617,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1618],"locationId":196},{"id":1618,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1619],"locationId":196},{"id":1619,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1620],"locationId":196},{"id":1620,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1621],"locationId":196},{"id":1621,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1622],"locationId":196},{"id":1622,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1623],"locationId":196},{"id":1623,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1624],"locationId":196},{"id":1624,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1625],"locationId":196},{"id":1625,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1626],"locationId":196},{"id":1626,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1627],"locationId":196},{"id":1627,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1628],"locationId":196},{"id":1628,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1629],"locationId":196},{"id":1629,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1630],"locationId":196},{"id":1630,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1631],"locationId":196},{"id":1631,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1632],"locationId":196},{"id":1632,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1633],"locationId":196},{"id":1633,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1634],"locationId":196},{"id":1634,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1635],"locationId":196},{"id":1635,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1636],"locationId":196},{"id":1636,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1637],"locationId":196},{"id":1637,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1638],"locationId":196},{"id":1638,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1639],"locationId":196},{"id":1639,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1640],"locationId":196},{"id":1640,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1641],"locationId":196},{"id":1641,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1642],"locationId":196},{"id":1642,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1643],"locationId":196},{"id":1643,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1644],"locationId":196},{"id":1644,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1645],"locationId":196},{"id":1645,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1646],"locationId":196},{"id":1646,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1647],"locationId":196},{"id":1647,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1648],"locationId":196},{"id":1648,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1649],"locationId":196},{"id":1649,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1650],"locationId":196},{"id":1650,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1651],"locationId":196},{"id":1651,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1652],"locationId":196},{"id":1652,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1653],"locationId":196},{"id":1653,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1654],"locationId":196},{"id":1654,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1655],"locationId":196},{"id":1655,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1656],"locationId":196},{"id":1656,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1657],"locationId":196},{"id":1657,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1658],"locationId":196},{"id":1658,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1659],"locationId":196},{"id":1659,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1660],"locationId":196},{"id":1660,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1661],"locationId":196},{"id":1661,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1662],"locationId":196},{"id":1662,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1663],"locationId":196},{"id":1663,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1664],"locationId":196},{"id":1664,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1665],"locationId":196},{"id":1665,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1666],"locationId":196},{"id":1666,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1667],"locationId":196},{"id":1667,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1668],"locationId":196},{"id":1668,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1669],"locationId":196},{"id":1669,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1670],"locationId":196},{"id":1670,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1671],"locationId":196},{"id":1671,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1672],"locationId":196},{"id":1672,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1673],"locationId":196},{"id":1673,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1674],"locationId":196},{"id":1674,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1675],"locationId":196},{"id":1675,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1676],"locationId":196},{"id":1676,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1677],"locationId":196},{"id":1677,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1678],"locationId":196},{"id":1678,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1679],"locationId":196},{"id":1679,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1680],"locationId":196},{"id":1680,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1681],"locationId":196},{"id":1681,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1682],"locationId":196},{"id":1682,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1683],"locationId":196},{"id":1683,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1684],"locationId":196},{"id":1684,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1685],"locationId":196},{"id":1685,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1686],"locationId":196},{"id":1686,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1687],"locationId":196},{"id":1687,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1688],"locationId":196},{"id":1688,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1689],"locationId":196},{"id":1689,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1690],"locationId":196},{"id":1690,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1691],"locationId":196},{"id":1691,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1692],"locationId":196},{"id":1692,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1693],"locationId":196},{"id":1693,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1694],"locationId":196},{"id":1694,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1695],"locationId":196},{"id":1695,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1696],"locationId":196},{"id":1696,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1697],"locationId":196},{"id":1697,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1698],"locationId":196},{"id":1698,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1699],"locationId":196},{"id":1699,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1700],"locationId":196},{"id":1700,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1701],"locationId":196},{"id":1701,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1702],"locationId":196},{"id":1702,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1703],"locationId":196},{"id":1703,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1704],"locationId":196},{"id":1704,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1705],"locationId":196},{"id":1705,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1706],"locationId":196},{"id":1706,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1707],"locationId":196},{"id":1707,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1708],"locationId":196},{"id":1708,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1709],"locationId":196},{"id":1709,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1710],"locationId":196},{"id":1710,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1711],"locationId":196},{"id":1711,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1712],"locationId":196},{"id":1712,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1713],"locationId":196},{"id":1713,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1714],"locationId":196},{"id":1714,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1715],"locationId":196},{"id":1715,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1716],"locationId":196},{"id":1716,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1717],"locationId":196},{"id":1717,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1718],"locationId":196},{"id":1718,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1719],"locationId":196},{"id":1719,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1720],"locationId":196},{"id":1720,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1721],"locationId":196},{"id":1721,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1722],"locationId":196},{"id":1722,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1723],"locationId":196},{"id":1723,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1724],"locationId":196},{"id":1724,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1725],"locationId":196},{"id":1725,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1726],"locationId":196},{"id":1726,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1727],"locationId":196},{"id":1727,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1728],"locationId":196},{"id":1728,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1729],"locationId":196},{"id":1729,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1730],"locationId":196},{"id":1730,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1731],"locationId":196},{"id":1731,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1732],"locationId":196},{"id":1732,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1733],"locationId":196},{"id":1733,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1734],"locationId":196},{"id":1734,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1735],"locationId":196},{"id":1735,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1736],"locationId":196},{"id":1736,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1737],"locationId":196},{"id":1737,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1738],"locationId":196},{"id":1738,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1739],"locationId":196},{"id":1739,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1740],"locationId":196},{"id":1740,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1741],"locationId":196},{"id":1741,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1742],"locationId":196},{"id":1742,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1743],"locationId":196},{"id":1743,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1801,"callFrame":{"functionName":"evaluate","scriptId":"0","url":"","lineNumber":-1,"columnNumber":-1},"hitCount":0,"children":[1802],"locationId":2},{"id":1802,"callFrame":{"functionName":"","scriptId":"498","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/test/profile.js","lineNumber":-1,"columnNumber":-1},"hitCount":0,"children":[1803],"locationId":3},{"id":1803,"callFrame":{"functionName":"toDDL","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":483,"columnNumber":21},"hitCount":0,"children":[1804],"locationId":4},{"id":1804,"callFrame":{"functionName":"Parsed.getDDL","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":336,"columnNumber":31},"hitCount":0,"children":[1805],"locationId":5},{"id":1805,"callFrame":{"functionName":"toDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":832,"columnNumber":29},"hitCount":0,"children":[1806],"locationId":6},{"id":1806,"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":607,"columnNumber":33},"hitCount":0,"children":[1807,3627],"locationId":9},{"id":1807,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":0,"children":[1808],"locationId":62},{"id":1808,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1809],"locationId":196},{"id":1809,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1810],"locationId":196},{"id":1810,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1811],"locationId":196},{"id":1811,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1812],"locationId":196},{"id":1812,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1813],"locationId":196},{"id":1813,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1814],"locationId":196},{"id":1814,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1815],"locationId":196},{"id":1815,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1816],"locationId":196},{"id":1816,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1817],"locationId":196},{"id":1817,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1818],"locationId":196},{"id":1818,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1819],"locationId":196},{"id":1819,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1820],"locationId":196},{"id":1820,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1821],"locationId":196},{"id":1821,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1822],"locationId":196},{"id":1822,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1823],"locationId":196},{"id":1823,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1824],"locationId":196},{"id":1824,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1825],"locationId":196},{"id":1825,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1826],"locationId":196},{"id":1826,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1827],"locationId":196},{"id":1827,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1828],"locationId":196},{"id":1828,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1829],"locationId":196},{"id":1829,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1830],"locationId":196},{"id":1830,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1831],"locationId":196},{"id":1831,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1832],"locationId":196},{"id":1832,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1833],"locationId":196},{"id":1833,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1834],"locationId":196},{"id":1834,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1835],"locationId":196},{"id":1835,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1836],"locationId":196},{"id":1836,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1837],"locationId":196},{"id":1837,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1838],"locationId":196},{"id":1838,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1839],"locationId":196},{"id":1839,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1840],"locationId":196},{"id":1840,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1841],"locationId":196},{"id":1841,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1842],"locationId":196},{"id":1842,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1843],"locationId":196},{"id":1843,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1844],"locationId":196},{"id":1844,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1845],"locationId":196},{"id":1845,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1846],"locationId":196},{"id":1846,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1847],"locationId":196},{"id":1847,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1848],"locationId":196},{"id":1848,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1849],"locationId":196},{"id":1849,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1850],"locationId":196},{"id":1850,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1851],"locationId":196},{"id":1851,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1852],"locationId":196},{"id":1852,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1853],"locationId":196},{"id":1853,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1854],"locationId":196},{"id":1854,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1855],"locationId":196},{"id":1855,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1856],"locationId":196},{"id":1856,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1857],"locationId":196},{"id":1857,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1858],"locationId":196},{"id":1858,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1859],"locationId":196},{"id":1859,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1860],"locationId":196},{"id":1860,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1861],"locationId":196},{"id":1861,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1862],"locationId":196},{"id":1862,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1863],"locationId":196},{"id":1863,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1864],"locationId":196},{"id":1864,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1865],"locationId":196},{"id":1865,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1866],"locationId":196},{"id":1866,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1867],"locationId":196},{"id":1867,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1868],"locationId":196},{"id":1868,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1869],"locationId":196},{"id":1869,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1870],"locationId":196},{"id":1870,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1871],"locationId":196},{"id":1871,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1872],"locationId":196},{"id":1872,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1873],"locationId":196},{"id":1873,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1874],"locationId":196},{"id":1874,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1875],"locationId":196},{"id":1875,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1876],"locationId":196},{"id":1876,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1877],"locationId":196},{"id":1877,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1878],"locationId":196},{"id":1878,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1879],"locationId":196},{"id":1879,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1880],"locationId":196},{"id":1880,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1881],"locationId":196},{"id":1881,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1882],"locationId":196},{"id":1882,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1883],"locationId":196},{"id":1883,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1884],"locationId":196},{"id":1884,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1885],"locationId":196},{"id":1885,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1886],"locationId":196},{"id":1886,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1887],"locationId":196},{"id":1887,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1888],"locationId":196},{"id":1888,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1889],"locationId":196},{"id":1889,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1890],"locationId":196},{"id":1890,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1891],"locationId":196},{"id":1891,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1892],"locationId":196},{"id":1892,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1893],"locationId":196},{"id":1893,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1894],"locationId":196},{"id":1894,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1895],"locationId":196},{"id":1895,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1896],"locationId":196},{"id":1896,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1897],"locationId":196},{"id":1897,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1898],"locationId":196},{"id":1898,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1899],"locationId":196},{"id":1899,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1900],"locationId":196},{"id":1900,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1901],"locationId":196},{"id":1901,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1902],"locationId":196},{"id":1902,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1903],"locationId":196},{"id":1903,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1904],"locationId":196},{"id":1904,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1905],"locationId":196},{"id":1905,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1906],"locationId":196},{"id":1906,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1907],"locationId":196},{"id":1907,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1908],"locationId":196},{"id":1908,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1909],"locationId":196},{"id":1909,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1910],"locationId":196},{"id":1910,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1911],"locationId":196},{"id":1911,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1912],"locationId":196},{"id":1912,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1913],"locationId":196},{"id":1913,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1914],"locationId":196},{"id":1914,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1915],"locationId":196},{"id":1915,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1916],"locationId":196},{"id":1916,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1917],"locationId":196},{"id":1917,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1918],"locationId":196},{"id":1918,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1919],"locationId":196},{"id":1919,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1920],"locationId":196},{"id":1920,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1921],"locationId":196},{"id":1921,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1922],"locationId":196},{"id":1922,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1923],"locationId":196},{"id":1923,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1924],"locationId":196},{"id":1924,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1925],"locationId":196},{"id":1925,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1926],"locationId":196},{"id":1926,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1927],"locationId":196},{"id":1927,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1928],"locationId":196},{"id":1928,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1929],"locationId":196},{"id":1929,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1930],"locationId":196},{"id":1930,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1931],"locationId":196},{"id":1931,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1932],"locationId":196},{"id":1932,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1933],"locationId":196},{"id":1933,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1934],"locationId":196},{"id":1934,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1935],"locationId":196},{"id":1935,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1936],"locationId":196},{"id":1936,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1937],"locationId":196},{"id":1937,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1938],"locationId":196},{"id":1938,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1939],"locationId":196},{"id":1939,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1940],"locationId":196},{"id":1940,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1941],"locationId":196},{"id":1941,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1942],"locationId":196},{"id":1942,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1943],"locationId":196},{"id":1943,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1944],"locationId":196},{"id":1944,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1945],"locationId":196},{"id":1945,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1946],"locationId":196},{"id":1946,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1947],"locationId":196},{"id":1947,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1948],"locationId":196},{"id":1948,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1949],"locationId":196},{"id":1949,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1950],"locationId":196},{"id":1950,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1951],"locationId":196},{"id":1951,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1952],"locationId":196},{"id":1952,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1953],"locationId":196},{"id":1953,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1954],"locationId":196},{"id":1954,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1955],"locationId":196},{"id":1955,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1956],"locationId":196},{"id":1956,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1957],"locationId":196},{"id":1957,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1958],"locationId":196},{"id":1958,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1959],"locationId":196},{"id":1959,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1960],"locationId":196},{"id":1960,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1961],"locationId":196},{"id":1961,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1962],"locationId":196},{"id":1962,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1963],"locationId":196},{"id":1963,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1964],"locationId":196},{"id":1964,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1965],"locationId":196},{"id":1965,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1966],"locationId":196},{"id":1966,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1967],"locationId":196},{"id":1967,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1968],"locationId":196},{"id":1968,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1969],"locationId":196},{"id":1969,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1970],"locationId":196},{"id":1970,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1971],"locationId":196},{"id":1971,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1972],"locationId":196},{"id":1972,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1973],"locationId":196},{"id":1973,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1974],"locationId":196},{"id":1974,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1975],"locationId":196},{"id":1975,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1976],"locationId":196},{"id":1976,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1977],"locationId":196},{"id":1977,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1978],"locationId":196},{"id":1978,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1979],"locationId":196},{"id":1979,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1980],"locationId":196},{"id":1980,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1981],"locationId":196},{"id":1981,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1982],"locationId":196},{"id":1982,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1983],"locationId":196},{"id":1983,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1984],"locationId":196},{"id":1984,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1985],"locationId":196},{"id":1985,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1986],"locationId":196},{"id":1986,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1987],"locationId":196},{"id":1987,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1988],"locationId":196},{"id":1988,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1989],"locationId":196},{"id":1989,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1990],"locationId":196},{"id":1990,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1991],"locationId":196},{"id":1991,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1992],"locationId":196},{"id":1992,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1993],"locationId":196},{"id":1993,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1994],"locationId":196},{"id":1994,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1995],"locationId":196},{"id":1995,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1996],"locationId":196},{"id":1996,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1997],"locationId":196},{"id":1997,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1998],"locationId":196},{"id":1998,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1999],"locationId":196},{"id":1999,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2000],"locationId":196},{"id":2000,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2001],"locationId":196},{"id":2001,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2002],"locationId":196},{"id":2002,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2003],"locationId":196},{"id":2003,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2004],"locationId":196},{"id":2004,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2005],"locationId":196},{"id":2005,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2006],"locationId":196},{"id":2006,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2007],"locationId":196},{"id":2007,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2008],"locationId":196},{"id":2008,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2009],"locationId":196},{"id":2009,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2010],"locationId":196},{"id":2010,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2011],"locationId":196},{"id":2011,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2012],"locationId":196},{"id":2012,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2013],"locationId":196},{"id":2013,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2014],"locationId":196},{"id":2014,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2015],"locationId":196},{"id":2015,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2016],"locationId":196},{"id":2016,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2017],"locationId":196},{"id":2017,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2018],"locationId":196},{"id":2018,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2019],"locationId":196},{"id":2019,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2020],"locationId":196},{"id":2020,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2021],"locationId":196},{"id":2021,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2022],"locationId":196},{"id":2022,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2023],"locationId":196},{"id":2023,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2024],"locationId":196},{"id":2024,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2025],"locationId":196},{"id":2025,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2026],"locationId":196},{"id":2026,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2027],"locationId":196},{"id":2027,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2028],"locationId":196},{"id":2028,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2029],"locationId":196},{"id":2029,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2030],"locationId":196},{"id":2030,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2031],"locationId":196},{"id":2031,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2032],"locationId":196},{"id":2032,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2033],"locationId":196},{"id":2033,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2034],"locationId":196},{"id":2034,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2035],"locationId":196},{"id":2035,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2036],"locationId":196},{"id":2036,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2037],"locationId":196},{"id":2037,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2038],"locationId":196},{"id":2038,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2039],"locationId":196},{"id":2039,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2040],"locationId":196},{"id":2040,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2041],"locationId":196},{"id":2041,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2042],"locationId":196},{"id":2042,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2043],"locationId":196},{"id":2043,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2044],"locationId":196},{"id":2044,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2045],"locationId":196},{"id":2045,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2046],"locationId":196},{"id":2046,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2047],"locationId":196},{"id":2047,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2048],"locationId":196},{"id":2048,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2049],"locationId":196},{"id":2049,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2050],"locationId":196},{"id":2050,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2051],"locationId":196},{"id":2051,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2052],"locationId":196},{"id":2052,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2053],"locationId":196},{"id":2053,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2054],"locationId":196},{"id":2054,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[4387],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":4387,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":3627,"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":47,"columnNumber":39},"hitCount":0,"children":[3628],"locationId":36},{"id":3628,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":0,"children":[3629],"locationId":62},{"id":3629,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3630],"locationId":196},{"id":3630,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3631],"locationId":196},{"id":3631,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3632],"locationId":196},{"id":3632,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3633],"locationId":196},{"id":3633,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3634],"locationId":196},{"id":3634,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3635],"locationId":196},{"id":3635,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3636],"locationId":196},{"id":3636,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3637],"locationId":196},{"id":3637,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3638],"locationId":196},{"id":3638,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3639],"locationId":196},{"id":3639,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3640],"locationId":196},{"id":3640,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3641],"locationId":196},{"id":3641,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3642],"locationId":196},{"id":3642,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3643],"locationId":196},{"id":3643,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3644],"locationId":196},{"id":3644,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3645],"locationId":196},{"id":3645,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3646],"locationId":196},{"id":3646,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3647],"locationId":196},{"id":3647,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3648],"locationId":196},{"id":3648,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3649],"locationId":196},{"id":3649,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3650],"locationId":196},{"id":3650,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3651],"locationId":196},{"id":3651,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3652],"locationId":196},{"id":3652,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3653],"locationId":196},{"id":3653,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3654],"locationId":196},{"id":3654,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3655],"locationId":196},{"id":3655,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3656],"locationId":196},{"id":3656,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3657],"locationId":196},{"id":3657,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3658],"locationId":196},{"id":3658,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3659],"locationId":196},{"id":3659,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3660],"locationId":196},{"id":3660,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3661],"locationId":196},{"id":3661,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3662],"locationId":196},{"id":3662,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3663],"locationId":196},{"id":3663,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3664],"locationId":196},{"id":3664,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3665],"locationId":196},{"id":3665,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3666],"locationId":196},{"id":3666,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3667],"locationId":196},{"id":3667,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3668],"locationId":196},{"id":3668,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3669],"locationId":196},{"id":3669,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3670],"locationId":196},{"id":3670,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3671],"locationId":196},{"id":3671,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3672],"locationId":196},{"id":3672,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3673],"locationId":196},{"id":3673,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3674],"locationId":196},{"id":3674,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3675],"locationId":196},{"id":3675,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3676],"locationId":196},{"id":3676,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3677],"locationId":196},{"id":3677,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3678],"locationId":196},{"id":3678,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3679],"locationId":196},{"id":3679,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3680],"locationId":196},{"id":3680,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3681],"locationId":196},{"id":3681,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3682],"locationId":196},{"id":3682,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3683],"locationId":196},{"id":3683,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3684],"locationId":196},{"id":3684,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3685],"locationId":196},{"id":3685,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3686],"locationId":196},{"id":3686,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3687],"locationId":196},{"id":3687,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3688],"locationId":196},{"id":3688,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3689],"locationId":196},{"id":3689,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3690],"locationId":196},{"id":3690,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3691],"locationId":196},{"id":3691,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3692],"locationId":196},{"id":3692,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3693],"locationId":196},{"id":3693,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3694],"locationId":196},{"id":3694,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3695],"locationId":196},{"id":3695,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3696],"locationId":196},{"id":3696,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3697],"locationId":196},{"id":3697,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3698],"locationId":196},{"id":3698,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3699],"locationId":196},{"id":3699,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3700],"locationId":196},{"id":3700,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3701],"locationId":196},{"id":3701,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3702],"locationId":196},{"id":3702,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3703],"locationId":196},{"id":3703,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3704],"locationId":196},{"id":3704,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3705],"locationId":196},{"id":3705,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3706],"locationId":196},{"id":3706,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3707],"locationId":196},{"id":3707,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3708],"locationId":196},{"id":3708,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3709],"locationId":196},{"id":3709,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3710],"locationId":196},{"id":3710,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3711],"locationId":196},{"id":3711,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3712],"locationId":196},{"id":3712,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3713],"locationId":196},{"id":3713,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3714],"locationId":196},{"id":3714,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3715],"locationId":196},{"id":3715,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3716],"locationId":196},{"id":3716,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3717],"locationId":196},{"id":3717,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3718],"locationId":196},{"id":3718,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3719],"locationId":196},{"id":3719,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3720],"locationId":196},{"id":3720,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3721],"locationId":196},{"id":3721,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3722],"locationId":196},{"id":3722,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3723],"locationId":196},{"id":3723,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3724],"locationId":196},{"id":3724,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3725],"locationId":196},{"id":3725,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3726],"locationId":196},{"id":3726,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3727],"locationId":196},{"id":3727,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3728],"locationId":196},{"id":3728,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3729],"locationId":196},{"id":3729,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3730],"locationId":196},{"id":3730,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3731],"locationId":196},{"id":3731,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3732],"locationId":196},{"id":3732,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3733],"locationId":196},{"id":3733,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3734],"locationId":196},{"id":3734,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3735],"locationId":196},{"id":3735,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3736],"locationId":196},{"id":3736,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3737],"locationId":196},{"id":3737,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3738],"locationId":196},{"id":3738,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3739],"locationId":196},{"id":3739,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3740],"locationId":196},{"id":3740,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3741],"locationId":196},{"id":3741,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3742],"locationId":196},{"id":3742,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3743],"locationId":196},{"id":3743,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3744],"locationId":196},{"id":3744,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3745],"locationId":196},{"id":3745,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3746],"locationId":196},{"id":3746,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3747],"locationId":196},{"id":3747,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3748],"locationId":196},{"id":3748,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3749],"locationId":196},{"id":3749,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3750],"locationId":196},{"id":3750,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3751],"locationId":196},{"id":3751,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3752],"locationId":196},{"id":3752,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3753],"locationId":196},{"id":3753,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3754],"locationId":196},{"id":3754,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3755],"locationId":196},{"id":3755,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3756],"locationId":196},{"id":3756,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3757],"locationId":196},{"id":3757,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3758],"locationId":196},{"id":3758,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3759],"locationId":196},{"id":3759,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3760],"locationId":196},{"id":3760,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3761],"locationId":196},{"id":3761,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3762],"locationId":196},{"id":3762,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3763],"locationId":196},{"id":3763,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3764],"locationId":196},{"id":3764,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3765],"locationId":196},{"id":3765,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3766],"locationId":196},{"id":3766,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3767],"locationId":196},{"id":3767,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3768],"locationId":196},{"id":3768,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3769],"locationId":196},{"id":3769,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3770],"locationId":196},{"id":3770,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3771],"locationId":196},{"id":3771,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3772],"locationId":196},{"id":3772,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3773],"locationId":196},{"id":3773,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3774],"locationId":196},{"id":3774,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3775],"locationId":196},{"id":3775,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3776],"locationId":196},{"id":3776,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3777],"locationId":196},{"id":3777,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3778],"locationId":196},{"id":3778,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3779],"locationId":196},{"id":3779,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3780],"locationId":196},{"id":3780,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3781],"locationId":196},{"id":3781,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3782],"locationId":196},{"id":3782,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3783],"locationId":196},{"id":3783,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3784],"locationId":196},{"id":3784,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3785],"locationId":196},{"id":3785,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3786],"locationId":196},{"id":3786,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3787],"locationId":196},{"id":3787,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3788],"locationId":196},{"id":3788,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3789],"locationId":196},{"id":3789,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3790],"locationId":196},{"id":3790,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3791],"locationId":196},{"id":3791,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3792],"locationId":196},{"id":3792,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3793],"locationId":196},{"id":3793,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3794],"locationId":196},{"id":3794,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3795],"locationId":196},{"id":3795,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3796],"locationId":196},{"id":3796,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3797],"locationId":196},{"id":3797,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3798],"locationId":196},{"id":3798,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3799],"locationId":196},{"id":3799,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3800],"locationId":196},{"id":3800,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3801],"locationId":196},{"id":3801,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3802],"locationId":196},{"id":3802,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3803],"locationId":196},{"id":3803,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3804],"locationId":196},{"id":3804,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3805],"locationId":196},{"id":3805,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3806],"locationId":196},{"id":3806,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3807],"locationId":196},{"id":3807,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3808],"locationId":196},{"id":3808,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3809],"locationId":196},{"id":3809,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3810],"locationId":196},{"id":3810,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3811],"locationId":196},{"id":3811,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3812],"locationId":196},{"id":3812,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3813],"locationId":196},{"id":3813,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3814],"locationId":196},{"id":3814,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3815],"locationId":196},{"id":3815,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3816],"locationId":196},{"id":3816,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3817],"locationId":196},{"id":3817,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3818],"locationId":196},{"id":3818,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3819],"locationId":196},{"id":3819,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3820],"locationId":196},{"id":3820,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3821],"locationId":196},{"id":3821,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3822],"locationId":196},{"id":3822,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3823],"locationId":196},{"id":3823,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3824],"locationId":196},{"id":3824,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3825],"locationId":196},{"id":3825,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3826],"locationId":196},{"id":3826,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3827],"locationId":196},{"id":3827,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3828],"locationId":196},{"id":3828,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3829],"locationId":196},{"id":3829,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3830],"locationId":196},{"id":3830,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3831],"locationId":196},{"id":3831,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3832],"locationId":196},{"id":3832,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3833],"locationId":196},{"id":3833,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3834],"locationId":196},{"id":3834,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3835],"locationId":196},{"id":3835,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3836],"locationId":196},{"id":3836,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3837],"locationId":196},{"id":3837,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3838],"locationId":196},{"id":3838,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3839],"locationId":196},{"id":3839,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3840],"locationId":196},{"id":3840,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3841],"locationId":196},{"id":3841,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3842],"locationId":196},{"id":3842,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3843],"locationId":196},{"id":3843,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3844],"locationId":196},{"id":3844,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3845],"locationId":196},{"id":3845,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3846],"locationId":196},{"id":3846,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3847],"locationId":196},{"id":3847,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3848],"locationId":196},{"id":3848,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3849],"locationId":196},{"id":3849,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3850],"locationId":196},{"id":3850,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3851],"locationId":196},{"id":3851,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3852],"locationId":196},{"id":3852,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3853],"locationId":196},{"id":3853,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3854],"locationId":196},{"id":3854,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3855],"locationId":196},{"id":3855,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3856],"locationId":196},{"id":3856,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3857],"locationId":196},{"id":3857,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3858],"locationId":196},{"id":3858,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3859],"locationId":196},{"id":3859,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3860],"locationId":196},{"id":3860,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3861],"locationId":196},{"id":3861,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3862],"locationId":196},{"id":3862,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3863],"locationId":196},{"id":3863,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3864],"locationId":196},{"id":3864,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3865],"locationId":196},{"id":3865,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3866],"locationId":196},{"id":3866,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3867],"locationId":196},{"id":3867,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3868],"locationId":196},{"id":3868,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3869],"locationId":196},{"id":3869,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3870],"locationId":196},{"id":3870,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3871],"locationId":196},{"id":3871,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3872],"locationId":196},{"id":3872,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3873],"locationId":196},{"id":3873,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3874],"locationId":196},{"id":3874,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":2060,"callFrame":{"functionName":"toDDL","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":483,"columnNumber":21},"hitCount":0,"children":[2061],"locationId":4},{"id":2061,"callFrame":{"functionName":"Parsed.getDDL","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":336,"columnNumber":31},"hitCount":0,"children":[2062],"locationId":5},{"id":2062,"callFrame":{"functionName":"toDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":832,"columnNumber":29},"hitCount":0,"children":[2063],"locationId":6},{"id":2063,"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":607,"columnNumber":33},"hitCount":0,"children":[2064,2596],"locationId":9},{"id":2064,"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":607,"columnNumber":33},"hitCount":0,"children":[2065],"locationId":9},{"id":2065,"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":47,"columnNumber":39},"hitCount":0,"children":[2066],"locationId":36},{"id":2066,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":0,"children":[2067],"locationId":62},{"id":2067,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2068],"locationId":196},{"id":2068,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2069],"locationId":196},{"id":2069,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2070],"locationId":196},{"id":2070,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2071],"locationId":196},{"id":2071,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2072],"locationId":196},{"id":2072,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2073],"locationId":196},{"id":2073,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2074],"locationId":196},{"id":2074,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2075],"locationId":196},{"id":2075,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2076],"locationId":196},{"id":2076,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2077],"locationId":196},{"id":2077,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2078],"locationId":196},{"id":2078,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2079],"locationId":196},{"id":2079,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2080],"locationId":196},{"id":2080,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2081],"locationId":196},{"id":2081,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2082],"locationId":196},{"id":2082,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2083],"locationId":196},{"id":2083,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2084],"locationId":196},{"id":2084,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2085],"locationId":196},{"id":2085,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2086],"locationId":196},{"id":2086,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2087],"locationId":196},{"id":2087,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2088],"locationId":196},{"id":2088,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2089],"locationId":196},{"id":2089,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2090],"locationId":196},{"id":2090,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2091],"locationId":196},{"id":2091,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2092],"locationId":196},{"id":2092,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2093],"locationId":196},{"id":2093,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2094],"locationId":196},{"id":2094,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2095],"locationId":196},{"id":2095,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2096],"locationId":196},{"id":2096,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2097],"locationId":196},{"id":2097,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2098],"locationId":196},{"id":2098,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2099],"locationId":196},{"id":2099,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2100],"locationId":196},{"id":2100,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2101],"locationId":196},{"id":2101,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2102],"locationId":196},{"id":2102,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2103],"locationId":196},{"id":2103,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2104],"locationId":196},{"id":2104,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2105],"locationId":196},{"id":2105,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2106],"locationId":196},{"id":2106,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2107],"locationId":196},{"id":2107,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2108],"locationId":196},{"id":2108,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2109],"locationId":196},{"id":2109,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2110],"locationId":196},{"id":2110,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2111],"locationId":196},{"id":2111,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2112],"locationId":196},{"id":2112,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2113],"locationId":196},{"id":2113,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2114],"locationId":196},{"id":2114,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2115],"locationId":196},{"id":2115,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2116],"locationId":196},{"id":2116,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2117],"locationId":196},{"id":2117,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2118],"locationId":196},{"id":2118,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2119],"locationId":196},{"id":2119,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2120],"locationId":196},{"id":2120,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2121],"locationId":196},{"id":2121,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2122],"locationId":196},{"id":2122,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2123],"locationId":196},{"id":2123,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2124],"locationId":196},{"id":2124,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2125],"locationId":196},{"id":2125,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2126],"locationId":196},{"id":2126,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2127],"locationId":196},{"id":2127,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2128],"locationId":196},{"id":2128,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2129],"locationId":196},{"id":2129,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2130],"locationId":196},{"id":2130,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2131],"locationId":196},{"id":2131,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2132],"locationId":196},{"id":2132,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2133],"locationId":196},{"id":2133,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2134],"locationId":196},{"id":2134,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2135],"locationId":196},{"id":2135,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2136],"locationId":196},{"id":2136,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2137],"locationId":196},{"id":2137,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2138],"locationId":196},{"id":2138,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2139],"locationId":196},{"id":2139,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2140],"locationId":196},{"id":2140,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2141],"locationId":196},{"id":2141,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2142],"locationId":196},{"id":2142,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2143],"locationId":196},{"id":2143,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2144],"locationId":196},{"id":2144,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2145],"locationId":196},{"id":2145,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2146],"locationId":196},{"id":2146,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2147],"locationId":196},{"id":2147,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2148],"locationId":196},{"id":2148,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2149],"locationId":196},{"id":2149,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2150],"locationId":196},{"id":2150,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2151],"locationId":196},{"id":2151,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2152],"locationId":196},{"id":2152,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2153],"locationId":196},{"id":2153,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2154],"locationId":196},{"id":2154,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2155],"locationId":196},{"id":2155,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2156],"locationId":196},{"id":2156,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2157],"locationId":196},{"id":2157,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2158],"locationId":196},{"id":2158,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2159],"locationId":196},{"id":2159,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2160],"locationId":196},{"id":2160,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2161],"locationId":196},{"id":2161,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2162],"locationId":196},{"id":2162,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2163],"locationId":196},{"id":2163,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2164],"locationId":196},{"id":2164,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2165],"locationId":196},{"id":2165,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2166],"locationId":196},{"id":2166,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2167],"locationId":196},{"id":2167,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2168],"locationId":196},{"id":2168,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2169],"locationId":196},{"id":2169,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2170],"locationId":196},{"id":2170,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2171],"locationId":196},{"id":2171,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2172],"locationId":196},{"id":2172,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2173],"locationId":196},{"id":2173,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2174],"locationId":196},{"id":2174,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2175],"locationId":196},{"id":2175,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2176],"locationId":196},{"id":2176,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2177],"locationId":196},{"id":2177,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2178],"locationId":196},{"id":2178,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2179],"locationId":196},{"id":2179,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2180],"locationId":196},{"id":2180,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2181],"locationId":196},{"id":2181,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2182],"locationId":196},{"id":2182,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2183],"locationId":196},{"id":2183,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2184],"locationId":196},{"id":2184,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2185],"locationId":196},{"id":2185,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2186],"locationId":196},{"id":2186,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2187],"locationId":196},{"id":2187,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2188],"locationId":196},{"id":2188,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2189],"locationId":196},{"id":2189,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2190],"locationId":196},{"id":2190,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2191],"locationId":196},{"id":2191,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2192],"locationId":196},{"id":2192,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2193],"locationId":196},{"id":2193,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2194],"locationId":196},{"id":2194,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2195],"locationId":196},{"id":2195,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2196],"locationId":196},{"id":2196,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2197],"locationId":196},{"id":2197,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2198],"locationId":196},{"id":2198,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2199],"locationId":196},{"id":2199,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2200],"locationId":196},{"id":2200,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2201],"locationId":196},{"id":2201,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2202],"locationId":196},{"id":2202,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2203],"locationId":196},{"id":2203,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2204],"locationId":196},{"id":2204,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2205],"locationId":196},{"id":2205,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2206],"locationId":196},{"id":2206,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2207],"locationId":196},{"id":2207,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2208],"locationId":196},{"id":2208,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2209],"locationId":196},{"id":2209,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2210],"locationId":196},{"id":2210,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2211],"locationId":196},{"id":2211,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2212],"locationId":196},{"id":2212,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2213],"locationId":196},{"id":2213,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2214],"locationId":196},{"id":2214,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2215],"locationId":196},{"id":2215,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2216],"locationId":196},{"id":2216,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2217],"locationId":196},{"id":2217,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2218],"locationId":196},{"id":2218,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2219],"locationId":196},{"id":2219,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2220],"locationId":196},{"id":2220,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2221],"locationId":196},{"id":2221,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2222],"locationId":196},{"id":2222,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2223],"locationId":196},{"id":2223,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2224],"locationId":196},{"id":2224,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2225],"locationId":196},{"id":2225,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2226],"locationId":196},{"id":2226,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2227],"locationId":196},{"id":2227,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2228],"locationId":196},{"id":2228,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2229],"locationId":196},{"id":2229,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2230],"locationId":196},{"id":2230,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2231],"locationId":196},{"id":2231,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2232],"locationId":196},{"id":2232,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2233],"locationId":196},{"id":2233,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2234],"locationId":196},{"id":2234,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2235],"locationId":196},{"id":2235,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2236],"locationId":196},{"id":2236,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2237],"locationId":196},{"id":2237,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2238],"locationId":196},{"id":2238,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2239],"locationId":196},{"id":2239,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2240],"locationId":196},{"id":2240,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2241],"locationId":196},{"id":2241,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2242],"locationId":196},{"id":2242,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2243],"locationId":196},{"id":2243,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2244],"locationId":196},{"id":2244,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2245],"locationId":196},{"id":2245,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2246],"locationId":196},{"id":2246,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2247],"locationId":196},{"id":2247,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2248],"locationId":196},{"id":2248,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2249],"locationId":196},{"id":2249,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2250],"locationId":196},{"id":2250,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2251],"locationId":196},{"id":2251,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2252],"locationId":196},{"id":2252,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2253],"locationId":196},{"id":2253,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2254],"locationId":196},{"id":2254,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2255],"locationId":196},{"id":2255,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2256],"locationId":196},{"id":2256,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2257],"locationId":196},{"id":2257,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2258],"locationId":196},{"id":2258,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2259],"locationId":196},{"id":2259,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2260],"locationId":196},{"id":2260,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2261],"locationId":196},{"id":2261,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2262],"locationId":196},{"id":2262,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2263],"locationId":196},{"id":2263,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2264],"locationId":196},{"id":2264,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2265],"locationId":196},{"id":2265,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2266],"locationId":196},{"id":2266,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2267],"locationId":196},{"id":2267,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2268],"locationId":196},{"id":2268,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2269],"locationId":196},{"id":2269,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2270],"locationId":196},{"id":2270,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2271],"locationId":196},{"id":2271,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2272],"locationId":196},{"id":2272,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2273],"locationId":196},{"id":2273,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2274],"locationId":196},{"id":2274,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2275],"locationId":196},{"id":2275,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2276],"locationId":196},{"id":2276,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2277],"locationId":196},{"id":2277,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2278],"locationId":196},{"id":2278,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2279],"locationId":196},{"id":2279,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2280],"locationId":196},{"id":2280,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2281],"locationId":196},{"id":2281,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2282],"locationId":196},{"id":2282,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2283],"locationId":196},{"id":2283,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2284],"locationId":196},{"id":2284,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2285],"locationId":196},{"id":2285,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2286],"locationId":196},{"id":2286,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2287],"locationId":196},{"id":2287,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2288],"locationId":196},{"id":2288,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2289],"locationId":196},{"id":2289,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2290],"locationId":196},{"id":2290,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2291],"locationId":196},{"id":2291,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2292],"locationId":196},{"id":2292,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2293],"locationId":196},{"id":2293,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2294],"locationId":196},{"id":2294,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2295],"locationId":196},{"id":2295,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2296],"locationId":196},{"id":2296,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2297],"locationId":196},{"id":2297,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2298],"locationId":196},{"id":2298,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2299],"locationId":196},{"id":2299,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2300],"locationId":196},{"id":2300,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2301],"locationId":196},{"id":2301,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2302],"locationId":196},{"id":2302,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2303],"locationId":196},{"id":2303,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2304],"locationId":196},{"id":2304,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2305],"locationId":196},{"id":2305,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2306],"locationId":196},{"id":2306,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2307],"locationId":196},{"id":2307,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2308],"locationId":196},{"id":2308,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2309],"locationId":196},{"id":2309,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2310],"locationId":196},{"id":2310,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2311],"locationId":196},{"id":2311,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2312],"locationId":196},{"id":2312,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2313],"locationId":196},{"id":2313,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2314],"locationId":196},{"id":2314,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2315],"locationId":196},{"id":2315,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":2596,"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":47,"columnNumber":39},"hitCount":0,"children":[2597],"locationId":36},{"id":2597,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":0,"children":[2598],"locationId":62},{"id":2598,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2599],"locationId":196},{"id":2599,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2600],"locationId":196},{"id":2600,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2601],"locationId":196},{"id":2601,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2602],"locationId":196},{"id":2602,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2603],"locationId":196},{"id":2603,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2604],"locationId":196},{"id":2604,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2605],"locationId":196},{"id":2605,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2606],"locationId":196},{"id":2606,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2607],"locationId":196},{"id":2607,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2608],"locationId":196},{"id":2608,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2609],"locationId":196},{"id":2609,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2610],"locationId":196},{"id":2610,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2611],"locationId":196},{"id":2611,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2612],"locationId":196},{"id":2612,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2613],"locationId":196},{"id":2613,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2614],"locationId":196},{"id":2614,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2615],"locationId":196},{"id":2615,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2616],"locationId":196},{"id":2616,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2617],"locationId":196},{"id":2617,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2618],"locationId":196},{"id":2618,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2619],"locationId":196},{"id":2619,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2620],"locationId":196},{"id":2620,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2621],"locationId":196},{"id":2621,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2622],"locationId":196},{"id":2622,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2623],"locationId":196},{"id":2623,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2624],"locationId":196},{"id":2624,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2625],"locationId":196},{"id":2625,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2626],"locationId":196},{"id":2626,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2627],"locationId":196},{"id":2627,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2628],"locationId":196},{"id":2628,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2629],"locationId":196},{"id":2629,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2630],"locationId":196},{"id":2630,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2631],"locationId":196},{"id":2631,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2632],"locationId":196},{"id":2632,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2633],"locationId":196},{"id":2633,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2634],"locationId":196},{"id":2634,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2635],"locationId":196},{"id":2635,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2636],"locationId":196},{"id":2636,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2637],"locationId":196},{"id":2637,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2638],"locationId":196},{"id":2638,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2639],"locationId":196},{"id":2639,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2640],"locationId":196},{"id":2640,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2641],"locationId":196},{"id":2641,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2642],"locationId":196},{"id":2642,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2643],"locationId":196},{"id":2643,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2644],"locationId":196},{"id":2644,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2645],"locationId":196},{"id":2645,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2646],"locationId":196},{"id":2646,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2647],"locationId":196},{"id":2647,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2648],"locationId":196},{"id":2648,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2649],"locationId":196},{"id":2649,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2650],"locationId":196},{"id":2650,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2651],"locationId":196},{"id":2651,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2652],"locationId":196},{"id":2652,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2653],"locationId":196},{"id":2653,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2654],"locationId":196},{"id":2654,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2655],"locationId":196},{"id":2655,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2656],"locationId":196},{"id":2656,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2657],"locationId":196},{"id":2657,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2658],"locationId":196},{"id":2658,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2659],"locationId":196},{"id":2659,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2660],"locationId":196},{"id":2660,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2661],"locationId":196},{"id":2661,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2662],"locationId":196},{"id":2662,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2663],"locationId":196},{"id":2663,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2664],"locationId":196},{"id":2664,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2665],"locationId":196},{"id":2665,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2666],"locationId":196},{"id":2666,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2667],"locationId":196},{"id":2667,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2668],"locationId":196},{"id":2668,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2669],"locationId":196},{"id":2669,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2670],"locationId":196},{"id":2670,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2671],"locationId":196},{"id":2671,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2672],"locationId":196},{"id":2672,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2673],"locationId":196},{"id":2673,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2674],"locationId":196},{"id":2674,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2675],"locationId":196},{"id":2675,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2676],"locationId":196},{"id":2676,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2677],"locationId":196},{"id":2677,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2678],"locationId":196},{"id":2678,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2679],"locationId":196},{"id":2679,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2680],"locationId":196},{"id":2680,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2681],"locationId":196},{"id":2681,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2682],"locationId":196},{"id":2682,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2683],"locationId":196},{"id":2683,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2684],"locationId":196},{"id":2684,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2685],"locationId":196},{"id":2685,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2686],"locationId":196},{"id":2686,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2687],"locationId":196},{"id":2687,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2688],"locationId":196},{"id":2688,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2689],"locationId":196},{"id":2689,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2690],"locationId":196},{"id":2690,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2691],"locationId":196},{"id":2691,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2692],"locationId":196},{"id":2692,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2693],"locationId":196},{"id":2693,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2694],"locationId":196},{"id":2694,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2695],"locationId":196},{"id":2695,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2696],"locationId":196},{"id":2696,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2697],"locationId":196},{"id":2697,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2698],"locationId":196},{"id":2698,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2699],"locationId":196},{"id":2699,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2700],"locationId":196},{"id":2700,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2701],"locationId":196},{"id":2701,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2702],"locationId":196},{"id":2702,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2703],"locationId":196},{"id":2703,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2704],"locationId":196},{"id":2704,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2705],"locationId":196},{"id":2705,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2706],"locationId":196},{"id":2706,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2707],"locationId":196},{"id":2707,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2708],"locationId":196},{"id":2708,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2709],"locationId":196},{"id":2709,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2710],"locationId":196},{"id":2710,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2711],"locationId":196},{"id":2711,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2712],"locationId":196},{"id":2712,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2713],"locationId":196},{"id":2713,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2714],"locationId":196},{"id":2714,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2715],"locationId":196},{"id":2715,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2716],"locationId":196},{"id":2716,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2717],"locationId":196},{"id":2717,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2718],"locationId":196},{"id":2718,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2719],"locationId":196},{"id":2719,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2720],"locationId":196},{"id":2720,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2721],"locationId":196},{"id":2721,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2722],"locationId":196},{"id":2722,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2723],"locationId":196},{"id":2723,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2724],"locationId":196},{"id":2724,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2725],"locationId":196},{"id":2725,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2726],"locationId":196},{"id":2726,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2727],"locationId":196},{"id":2727,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2728],"locationId":196},{"id":2728,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2729],"locationId":196},{"id":2729,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2730],"locationId":196},{"id":2730,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2731],"locationId":196},{"id":2731,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2732],"locationId":196},{"id":2732,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2733],"locationId":196},{"id":2733,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2734],"locationId":196},{"id":2734,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2735],"locationId":196},{"id":2735,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2736],"locationId":196},{"id":2736,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2737],"locationId":196},{"id":2737,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2738],"locationId":196},{"id":2738,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2739],"locationId":196},{"id":2739,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2740],"locationId":196},{"id":2740,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2741],"locationId":196},{"id":2741,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2742],"locationId":196},{"id":2742,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2743],"locationId":196},{"id":2743,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2744],"locationId":196},{"id":2744,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2745],"locationId":196},{"id":2745,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2746],"locationId":196},{"id":2746,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2747],"locationId":196},{"id":2747,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2748],"locationId":196},{"id":2748,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2749],"locationId":196},{"id":2749,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2750],"locationId":196},{"id":2750,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2751],"locationId":196},{"id":2751,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2752],"locationId":196},{"id":2752,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2753],"locationId":196},{"id":2753,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2754],"locationId":196},{"id":2754,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2755],"locationId":196},{"id":2755,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2756],"locationId":196},{"id":2756,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2757],"locationId":196},{"id":2757,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2758],"locationId":196},{"id":2758,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2759],"locationId":196},{"id":2759,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2760],"locationId":196},{"id":2760,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2761],"locationId":196},{"id":2761,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2762],"locationId":196},{"id":2762,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2763],"locationId":196},{"id":2763,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2764],"locationId":196},{"id":2764,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2765],"locationId":196},{"id":2765,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2766],"locationId":196},{"id":2766,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2767],"locationId":196},{"id":2767,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2768],"locationId":196},{"id":2768,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2769],"locationId":196},{"id":2769,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2770],"locationId":196},{"id":2770,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2771],"locationId":196},{"id":2771,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2772],"locationId":196},{"id":2772,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2773],"locationId":196},{"id":2773,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2774],"locationId":196},{"id":2774,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2775],"locationId":196},{"id":2775,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2776],"locationId":196},{"id":2776,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2777],"locationId":196},{"id":2777,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2778],"locationId":196},{"id":2778,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2779],"locationId":196},{"id":2779,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2780],"locationId":196},{"id":2780,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2781],"locationId":196},{"id":2781,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2782],"locationId":196},{"id":2782,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2783],"locationId":196},{"id":2783,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2784],"locationId":196},{"id":2784,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2785],"locationId":196},{"id":2785,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2786],"locationId":196},{"id":2786,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2787],"locationId":196},{"id":2787,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2788],"locationId":196},{"id":2788,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2789],"locationId":196},{"id":2789,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2790],"locationId":196},{"id":2790,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2791],"locationId":196},{"id":2791,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2792],"locationId":196},{"id":2792,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2793],"locationId":196},{"id":2793,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2794],"locationId":196},{"id":2794,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2795],"locationId":196},{"id":2795,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2796],"locationId":196},{"id":2796,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2797],"locationId":196},{"id":2797,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2798],"locationId":196},{"id":2798,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2799],"locationId":196},{"id":2799,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2800],"locationId":196},{"id":2800,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2801],"locationId":196},{"id":2801,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2802],"locationId":196},{"id":2802,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2803],"locationId":196},{"id":2803,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2804],"locationId":196},{"id":2804,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2805],"locationId":196},{"id":2805,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2806],"locationId":196},{"id":2806,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2807],"locationId":196},{"id":2807,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2808],"locationId":196},{"id":2808,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2809],"locationId":196},{"id":2809,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2810],"locationId":196},{"id":2810,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2811],"locationId":196},{"id":2811,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2812],"locationId":196},{"id":2812,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2813],"locationId":196},{"id":2813,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2814],"locationId":196},{"id":2814,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2815],"locationId":196},{"id":2815,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2816],"locationId":196},{"id":2816,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2817],"locationId":196},{"id":2817,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2818],"locationId":196},{"id":2818,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2819],"locationId":196},{"id":2819,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2820],"locationId":196},{"id":2820,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2821],"locationId":196},{"id":2821,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2822],"locationId":196},{"id":2822,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2823],"locationId":196},{"id":2823,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2824],"locationId":196},{"id":2824,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2825],"locationId":196},{"id":2825,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2826],"locationId":196},{"id":2826,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2827],"locationId":196},{"id":2827,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2828],"locationId":196},{"id":2828,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2829],"locationId":196},{"id":2829,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2830],"locationId":196},{"id":2830,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2831],"locationId":196},{"id":2831,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2832],"locationId":196},{"id":2832,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2833],"locationId":196},{"id":2833,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2834],"locationId":196},{"id":2834,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2835],"locationId":196},{"id":2835,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2836],"locationId":196},{"id":2836,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2837],"locationId":196},{"id":2837,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2838],"locationId":196},{"id":2838,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2839],"locationId":196},{"id":2839,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2840],"locationId":196},{"id":2840,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2841],"locationId":196},{"id":2841,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2842],"locationId":196},{"id":2842,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2843],"locationId":196},{"id":2843,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2844],"locationId":196},{"id":2844,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2845],"locationId":196},{"id":2845,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2846],"locationId":196},{"id":2846,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":2337,"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":607,"columnNumber":33},"hitCount":0,"children":[2338,4129],"locationId":9},{"id":2338,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":0,"children":[2339],"locationId":62},{"id":2339,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2340],"locationId":196},{"id":2340,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2341],"locationId":196},{"id":2341,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2342],"locationId":196},{"id":2342,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2343],"locationId":196},{"id":2343,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2344],"locationId":196},{"id":2344,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2345],"locationId":196},{"id":2345,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2346],"locationId":196},{"id":2346,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2347],"locationId":196},{"id":2347,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2348],"locationId":196},{"id":2348,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2349],"locationId":196},{"id":2349,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2350],"locationId":196},{"id":2350,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2351],"locationId":196},{"id":2351,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2352],"locationId":196},{"id":2352,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2353],"locationId":196},{"id":2353,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2354],"locationId":196},{"id":2354,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2355],"locationId":196},{"id":2355,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2356],"locationId":196},{"id":2356,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2357],"locationId":196},{"id":2357,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2358],"locationId":196},{"id":2358,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2359],"locationId":196},{"id":2359,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2360],"locationId":196},{"id":2360,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2361],"locationId":196},{"id":2361,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2362],"locationId":196},{"id":2362,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2363],"locationId":196},{"id":2363,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2364],"locationId":196},{"id":2364,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2365],"locationId":196},{"id":2365,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2366],"locationId":196},{"id":2366,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2367],"locationId":196},{"id":2367,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2368],"locationId":196},{"id":2368,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2369],"locationId":196},{"id":2369,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2370],"locationId":196},{"id":2370,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2371],"locationId":196},{"id":2371,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2372],"locationId":196},{"id":2372,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2373],"locationId":196},{"id":2373,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2374],"locationId":196},{"id":2374,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2375],"locationId":196},{"id":2375,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2376],"locationId":196},{"id":2376,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2377],"locationId":196},{"id":2377,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2378],"locationId":196},{"id":2378,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2379],"locationId":196},{"id":2379,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2380],"locationId":196},{"id":2380,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2381],"locationId":196},{"id":2381,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2382],"locationId":196},{"id":2382,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2383],"locationId":196},{"id":2383,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2384],"locationId":196},{"id":2384,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2385],"locationId":196},{"id":2385,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2386],"locationId":196},{"id":2386,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2387],"locationId":196},{"id":2387,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2388],"locationId":196},{"id":2388,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2389],"locationId":196},{"id":2389,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2390],"locationId":196},{"id":2390,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2391],"locationId":196},{"id":2391,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2392],"locationId":196},{"id":2392,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2393],"locationId":196},{"id":2393,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2394],"locationId":196},{"id":2394,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2395],"locationId":196},{"id":2395,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2396],"locationId":196},{"id":2396,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2397],"locationId":196},{"id":2397,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2398],"locationId":196},{"id":2398,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2399],"locationId":196},{"id":2399,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2400],"locationId":196},{"id":2400,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2401],"locationId":196},{"id":2401,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2402],"locationId":196},{"id":2402,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2403],"locationId":196},{"id":2403,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2404],"locationId":196},{"id":2404,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2405],"locationId":196},{"id":2405,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2406],"locationId":196},{"id":2406,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2407],"locationId":196},{"id":2407,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2408],"locationId":196},{"id":2408,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2409],"locationId":196},{"id":2409,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2410],"locationId":196},{"id":2410,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2411],"locationId":196},{"id":2411,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2412],"locationId":196},{"id":2412,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2413],"locationId":196},{"id":2413,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2414],"locationId":196},{"id":2414,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2415],"locationId":196},{"id":2415,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2416],"locationId":196},{"id":2416,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2417],"locationId":196},{"id":2417,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2418],"locationId":196},{"id":2418,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2419],"locationId":196},{"id":2419,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2420],"locationId":196},{"id":2420,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2421],"locationId":196},{"id":2421,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2422],"locationId":196},{"id":2422,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2423],"locationId":196},{"id":2423,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2424],"locationId":196},{"id":2424,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2425],"locationId":196},{"id":2425,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2426],"locationId":196},{"id":2426,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2427],"locationId":196},{"id":2427,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2428],"locationId":196},{"id":2428,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2429],"locationId":196},{"id":2429,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2430],"locationId":196},{"id":2430,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2431],"locationId":196},{"id":2431,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2432],"locationId":196},{"id":2432,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2433],"locationId":196},{"id":2433,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2434],"locationId":196},{"id":2434,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2435],"locationId":196},{"id":2435,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2436],"locationId":196},{"id":2436,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2437],"locationId":196},{"id":2437,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2438],"locationId":196},{"id":2438,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2439],"locationId":196},{"id":2439,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2440],"locationId":196},{"id":2440,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2441],"locationId":196},{"id":2441,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2442],"locationId":196},{"id":2442,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2443],"locationId":196},{"id":2443,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2444],"locationId":196},{"id":2444,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2445],"locationId":196},{"id":2445,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2446],"locationId":196},{"id":2446,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2447],"locationId":196},{"id":2447,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2448],"locationId":196},{"id":2448,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2449],"locationId":196},{"id":2449,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2450],"locationId":196},{"id":2450,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2451],"locationId":196},{"id":2451,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2452],"locationId":196},{"id":2452,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2453],"locationId":196},{"id":2453,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2454],"locationId":196},{"id":2454,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2455],"locationId":196},{"id":2455,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2456],"locationId":196},{"id":2456,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2457],"locationId":196},{"id":2457,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2458],"locationId":196},{"id":2458,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2459],"locationId":196},{"id":2459,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2460],"locationId":196},{"id":2460,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2461],"locationId":196},{"id":2461,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2462],"locationId":196},{"id":2462,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2463],"locationId":196},{"id":2463,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2464],"locationId":196},{"id":2464,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2465],"locationId":196},{"id":2465,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2466],"locationId":196},{"id":2466,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2467],"locationId":196},{"id":2467,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2468],"locationId":196},{"id":2468,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2469],"locationId":196},{"id":2469,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2470],"locationId":196},{"id":2470,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2471],"locationId":196},{"id":2471,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2472],"locationId":196},{"id":2472,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2473],"locationId":196},{"id":2473,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2474],"locationId":196},{"id":2474,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2475],"locationId":196},{"id":2475,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2476],"locationId":196},{"id":2476,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2477],"locationId":196},{"id":2477,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2478],"locationId":196},{"id":2478,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2479],"locationId":196},{"id":2479,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2480],"locationId":196},{"id":2480,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2481],"locationId":196},{"id":2481,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2482],"locationId":196},{"id":2482,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2483],"locationId":196},{"id":2483,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2484],"locationId":196},{"id":2484,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2485],"locationId":196},{"id":2485,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2486],"locationId":196},{"id":2486,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2487],"locationId":196},{"id":2487,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2488],"locationId":196},{"id":2488,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2489],"locationId":196},{"id":2489,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2490],"locationId":196},{"id":2490,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2491],"locationId":196},{"id":2491,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2492],"locationId":196},{"id":2492,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2493],"locationId":196},{"id":2493,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2494],"locationId":196},{"id":2494,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2495],"locationId":196},{"id":2495,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2496],"locationId":196},{"id":2496,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2497],"locationId":196},{"id":2497,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2498],"locationId":196},{"id":2498,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2499],"locationId":196},{"id":2499,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2500],"locationId":196},{"id":2500,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2501],"locationId":196},{"id":2501,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2502],"locationId":196},{"id":2502,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2503],"locationId":196},{"id":2503,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2504],"locationId":196},{"id":2504,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2505],"locationId":196},{"id":2505,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2506],"locationId":196},{"id":2506,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2507],"locationId":196},{"id":2507,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2508],"locationId":196},{"id":2508,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2509],"locationId":196},{"id":2509,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2510],"locationId":196},{"id":2510,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2511],"locationId":196},{"id":2511,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2512],"locationId":196},{"id":2512,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2513],"locationId":196},{"id":2513,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2514],"locationId":196},{"id":2514,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2515],"locationId":196},{"id":2515,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2516],"locationId":196},{"id":2516,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2517],"locationId":196},{"id":2517,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2518],"locationId":196},{"id":2518,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2519],"locationId":196},{"id":2519,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2520],"locationId":196},{"id":2520,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2521],"locationId":196},{"id":2521,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2522],"locationId":196},{"id":2522,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2523],"locationId":196},{"id":2523,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2524],"locationId":196},{"id":2524,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2525],"locationId":196},{"id":2525,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2526],"locationId":196},{"id":2526,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2527],"locationId":196},{"id":2527,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2528],"locationId":196},{"id":2528,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2529],"locationId":196},{"id":2529,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2530],"locationId":196},{"id":2530,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2531],"locationId":196},{"id":2531,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2532],"locationId":196},{"id":2532,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2533],"locationId":196},{"id":2533,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2534],"locationId":196},{"id":2534,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2535],"locationId":196},{"id":2535,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2536],"locationId":196},{"id":2536,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2537],"locationId":196},{"id":2537,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2538],"locationId":196},{"id":2538,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2539],"locationId":196},{"id":2539,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2540],"locationId":196},{"id":2540,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2541],"locationId":196},{"id":2541,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2542],"locationId":196},{"id":2542,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2543],"locationId":196},{"id":2543,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2544],"locationId":196},{"id":2544,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2545],"locationId":196},{"id":2545,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2546],"locationId":196},{"id":2546,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2547],"locationId":196},{"id":2547,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2548],"locationId":196},{"id":2548,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2549],"locationId":196},{"id":2549,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2550],"locationId":196},{"id":2550,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2551],"locationId":196},{"id":2551,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2552],"locationId":196},{"id":2552,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2553],"locationId":196},{"id":2553,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2554],"locationId":196},{"id":2554,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2555],"locationId":196},{"id":2555,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2556],"locationId":196},{"id":2556,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2557],"locationId":196},{"id":2557,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2558],"locationId":196},{"id":2558,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2559],"locationId":196},{"id":2559,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2560],"locationId":196},{"id":2560,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2561],"locationId":196},{"id":2561,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2562],"locationId":196},{"id":2562,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2563],"locationId":196},{"id":2563,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2564],"locationId":196},{"id":2564,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2565],"locationId":196},{"id":2565,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2566],"locationId":196},{"id":2566,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2567],"locationId":196},{"id":2567,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2568],"locationId":196},{"id":2568,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2569],"locationId":196},{"id":2569,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2570],"locationId":196},{"id":2570,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2571],"locationId":196},{"id":2571,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2572],"locationId":196},{"id":2572,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2573],"locationId":196},{"id":2573,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2574],"locationId":196},{"id":2574,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2575],"locationId":196},{"id":2575,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2576],"locationId":196},{"id":2576,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2577],"locationId":196},{"id":2577,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2578],"locationId":196},{"id":2578,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2579],"locationId":196},{"id":2579,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2580],"locationId":196},{"id":2580,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2581],"locationId":196},{"id":2581,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2582],"locationId":196},{"id":2582,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2583],"locationId":196},{"id":2583,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2584],"locationId":196},{"id":2584,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2585],"locationId":196},{"id":2585,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2586],"locationId":196},{"id":2586,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2587],"locationId":196},{"id":2587,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2588],"locationId":196},{"id":2588,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2589],"locationId":196},{"id":2589,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2590],"locationId":196},{"id":2590,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2591],"locationId":196},{"id":2591,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2592],"locationId":196},{"id":2592,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":4129,"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":47,"columnNumber":39},"hitCount":0,"children":[4130],"locationId":36},{"id":4130,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":0,"children":[4131],"locationId":62},{"id":4131,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4132],"locationId":196},{"id":4132,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4133],"locationId":196},{"id":4133,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4134],"locationId":196},{"id":4134,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4135],"locationId":196},{"id":4135,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4136],"locationId":196},{"id":4136,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4137],"locationId":196},{"id":4137,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4138],"locationId":196},{"id":4138,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4139],"locationId":196},{"id":4139,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4140],"locationId":196},{"id":4140,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4141],"locationId":196},{"id":4141,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4142],"locationId":196},{"id":4142,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4143],"locationId":196},{"id":4143,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4144],"locationId":196},{"id":4144,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4145],"locationId":196},{"id":4145,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4146],"locationId":196},{"id":4146,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4147],"locationId":196},{"id":4147,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4148],"locationId":196},{"id":4148,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4149],"locationId":196},{"id":4149,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4150],"locationId":196},{"id":4150,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4151],"locationId":196},{"id":4151,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4152],"locationId":196},{"id":4152,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4153],"locationId":196},{"id":4153,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4154],"locationId":196},{"id":4154,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4155],"locationId":196},{"id":4155,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4156],"locationId":196},{"id":4156,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4157],"locationId":196},{"id":4157,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4158],"locationId":196},{"id":4158,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4159],"locationId":196},{"id":4159,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4160],"locationId":196},{"id":4160,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4161],"locationId":196},{"id":4161,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4162],"locationId":196},{"id":4162,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4163],"locationId":196},{"id":4163,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4164],"locationId":196},{"id":4164,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4165],"locationId":196},{"id":4165,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4166],"locationId":196},{"id":4166,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4167],"locationId":196},{"id":4167,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4168],"locationId":196},{"id":4168,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4169],"locationId":196},{"id":4169,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4170],"locationId":196},{"id":4170,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4171],"locationId":196},{"id":4171,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4172],"locationId":196},{"id":4172,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4173],"locationId":196},{"id":4173,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4174],"locationId":196},{"id":4174,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4175],"locationId":196},{"id":4175,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4176],"locationId":196},{"id":4176,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4177],"locationId":196},{"id":4177,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4178],"locationId":196},{"id":4178,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4179],"locationId":196},{"id":4179,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4180],"locationId":196},{"id":4180,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4181],"locationId":196},{"id":4181,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4182],"locationId":196},{"id":4182,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4183],"locationId":196},{"id":4183,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4184],"locationId":196},{"id":4184,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4185],"locationId":196},{"id":4185,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4186],"locationId":196},{"id":4186,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4187],"locationId":196},{"id":4187,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4188],"locationId":196},{"id":4188,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4189],"locationId":196},{"id":4189,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4190],"locationId":196},{"id":4190,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4191],"locationId":196},{"id":4191,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4192],"locationId":196},{"id":4192,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4193],"locationId":196},{"id":4193,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4194],"locationId":196},{"id":4194,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4195],"locationId":196},{"id":4195,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4196],"locationId":196},{"id":4196,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4197],"locationId":196},{"id":4197,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4198],"locationId":196},{"id":4198,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4199],"locationId":196},{"id":4199,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4200],"locationId":196},{"id":4200,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4201],"locationId":196},{"id":4201,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4202],"locationId":196},{"id":4202,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4203],"locationId":196},{"id":4203,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4204],"locationId":196},{"id":4204,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4205],"locationId":196},{"id":4205,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4206],"locationId":196},{"id":4206,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4207],"locationId":196},{"id":4207,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4208],"locationId":196},{"id":4208,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4209],"locationId":196},{"id":4209,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4210],"locationId":196},{"id":4210,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4211],"locationId":196},{"id":4211,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4212],"locationId":196},{"id":4212,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4213],"locationId":196},{"id":4213,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4214],"locationId":196},{"id":4214,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4215],"locationId":196},{"id":4215,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4216],"locationId":196},{"id":4216,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4217],"locationId":196},{"id":4217,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4218],"locationId":196},{"id":4218,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4219],"locationId":196},{"id":4219,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4220],"locationId":196},{"id":4220,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4221],"locationId":196},{"id":4221,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4222],"locationId":196},{"id":4222,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4223],"locationId":196},{"id":4223,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4224],"locationId":196},{"id":4224,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4225],"locationId":196},{"id":4225,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4226],"locationId":196},{"id":4226,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4227],"locationId":196},{"id":4227,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4228],"locationId":196},{"id":4228,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4229],"locationId":196},{"id":4229,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4230],"locationId":196},{"id":4230,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4231],"locationId":196},{"id":4231,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4232],"locationId":196},{"id":4232,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4233],"locationId":196},{"id":4233,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4234],"locationId":196},{"id":4234,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4235],"locationId":196},{"id":4235,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4236],"locationId":196},{"id":4236,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4237],"locationId":196},{"id":4237,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4238],"locationId":196},{"id":4238,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4239],"locationId":196},{"id":4239,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4240],"locationId":196},{"id":4240,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4241],"locationId":196},{"id":4241,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4242],"locationId":196},{"id":4242,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4243],"locationId":196},{"id":4243,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4244],"locationId":196},{"id":4244,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4245],"locationId":196},{"id":4245,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4246],"locationId":196},{"id":4246,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4247],"locationId":196},{"id":4247,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4248],"locationId":196},{"id":4248,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4249],"locationId":196},{"id":4249,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4250],"locationId":196},{"id":4250,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4251],"locationId":196},{"id":4251,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4252],"locationId":196},{"id":4252,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4253],"locationId":196},{"id":4253,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4254],"locationId":196},{"id":4254,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4255],"locationId":196},{"id":4255,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4256],"locationId":196},{"id":4256,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4257],"locationId":196},{"id":4257,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4258],"locationId":196},{"id":4258,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4259],"locationId":196},{"id":4259,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4260],"locationId":196},{"id":4260,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4261],"locationId":196},{"id":4261,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4262],"locationId":196},{"id":4262,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4263],"locationId":196},{"id":4263,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4264],"locationId":196},{"id":4264,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4265],"locationId":196},{"id":4265,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4266],"locationId":196},{"id":4266,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4267],"locationId":196},{"id":4267,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4268],"locationId":196},{"id":4268,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4269],"locationId":196},{"id":4269,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4270],"locationId":196},{"id":4270,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4271],"locationId":196},{"id":4271,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4272],"locationId":196},{"id":4272,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4273],"locationId":196},{"id":4273,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4274],"locationId":196},{"id":4274,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4275],"locationId":196},{"id":4275,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4276],"locationId":196},{"id":4276,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4277],"locationId":196},{"id":4277,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4278],"locationId":196},{"id":4278,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4279],"locationId":196},{"id":4279,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4280],"locationId":196},{"id":4280,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4281],"locationId":196},{"id":4281,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4282],"locationId":196},{"id":4282,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4283],"locationId":196},{"id":4283,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4284],"locationId":196},{"id":4284,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4285],"locationId":196},{"id":4285,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4286],"locationId":196},{"id":4286,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4287],"locationId":196},{"id":4287,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4288],"locationId":196},{"id":4288,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4289],"locationId":196},{"id":4289,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4290],"locationId":196},{"id":4290,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4291],"locationId":196},{"id":4291,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4292],"locationId":196},{"id":4292,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4293],"locationId":196},{"id":4293,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4294],"locationId":196},{"id":4294,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4295],"locationId":196},{"id":4295,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4296],"locationId":196},{"id":4296,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4297],"locationId":196},{"id":4297,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4298],"locationId":196},{"id":4298,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4299],"locationId":196},{"id":4299,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4300],"locationId":196},{"id":4300,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4301],"locationId":196},{"id":4301,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4302],"locationId":196},{"id":4302,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4303],"locationId":196},{"id":4303,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4304],"locationId":196},{"id":4304,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4305],"locationId":196},{"id":4305,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4306],"locationId":196},{"id":4306,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4307],"locationId":196},{"id":4307,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4308],"locationId":196},{"id":4308,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4309],"locationId":196},{"id":4309,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4310],"locationId":196},{"id":4310,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4311],"locationId":196},{"id":4311,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4312],"locationId":196},{"id":4312,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4313],"locationId":196},{"id":4313,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4314],"locationId":196},{"id":4314,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4315],"locationId":196},{"id":4315,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4316],"locationId":196},{"id":4316,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4317],"locationId":196},{"id":4317,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4318],"locationId":196},{"id":4318,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4319],"locationId":196},{"id":4319,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4320],"locationId":196},{"id":4320,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4321],"locationId":196},{"id":4321,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4322],"locationId":196},{"id":4322,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4323],"locationId":196},{"id":4323,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4324],"locationId":196},{"id":4324,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4325],"locationId":196},{"id":4325,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4326],"locationId":196},{"id":4326,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4327],"locationId":196},{"id":4327,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4328],"locationId":196},{"id":4328,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4329],"locationId":196},{"id":4329,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4330],"locationId":196},{"id":4330,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4331],"locationId":196},{"id":4331,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4332],"locationId":196},{"id":4332,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4333],"locationId":196},{"id":4333,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4334],"locationId":196},{"id":4334,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4335],"locationId":196},{"id":4335,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4336],"locationId":196},{"id":4336,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4337],"locationId":196},{"id":4337,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4338],"locationId":196},{"id":4338,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4339],"locationId":196},{"id":4339,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4340],"locationId":196},{"id":4340,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4341],"locationId":196},{"id":4341,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4342],"locationId":196},{"id":4342,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4343],"locationId":196},{"id":4343,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4344],"locationId":196},{"id":4344,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4345],"locationId":196},{"id":4345,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4346],"locationId":196},{"id":4346,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4347],"locationId":196},{"id":4347,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4348],"locationId":196},{"id":4348,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4349],"locationId":196},{"id":4349,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4350],"locationId":196},{"id":4350,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4351],"locationId":196},{"id":4351,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4352],"locationId":196},{"id":4352,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4353],"locationId":196},{"id":4353,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4354],"locationId":196},{"id":4354,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4355],"locationId":196},{"id":4355,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4356],"locationId":196},{"id":4356,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4357],"locationId":196},{"id":4357,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4358],"locationId":196},{"id":4358,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4359],"locationId":196},{"id":4359,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4360],"locationId":196},{"id":4360,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4361],"locationId":196},{"id":4361,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4362],"locationId":196},{"id":4362,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4363],"locationId":196},{"id":4363,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4364],"locationId":196},{"id":4364,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4365],"locationId":196},{"id":4365,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4366],"locationId":196},{"id":4366,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4367],"locationId":196},{"id":4367,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4368],"locationId":196},{"id":4368,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4369],"locationId":196},{"id":4369,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4370],"locationId":196},{"id":4370,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4371],"locationId":196},{"id":4371,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4372],"locationId":196},{"id":4372,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4373],"locationId":196},{"id":4373,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4374],"locationId":196},{"id":4374,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4375],"locationId":196},{"id":4375,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4376],"locationId":196},{"id":4376,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4377],"locationId":196},{"id":4377,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4378],"locationId":196},{"id":4378,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4379],"locationId":196},{"id":4379,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4380],"locationId":196},{"id":4380,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4381],"locationId":196},{"id":4381,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4382],"locationId":196},{"id":4382,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":2848,"callFrame":{"functionName":"toDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":832,"columnNumber":29},"hitCount":0,"children":[2849],"locationId":6},{"id":2849,"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":607,"columnNumber":33},"hitCount":0,"children":[2850,3876],"locationId":9},{"id":2850,"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":47,"columnNumber":39},"hitCount":0,"children":[2851],"locationId":36},{"id":2851,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":0,"children":[2852],"locationId":62},{"id":2852,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2853],"locationId":196},{"id":2853,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2854],"locationId":196},{"id":2854,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2855],"locationId":196},{"id":2855,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2856],"locationId":196},{"id":2856,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2857],"locationId":196},{"id":2857,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2858],"locationId":196},{"id":2858,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2859],"locationId":196},{"id":2859,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2860],"locationId":196},{"id":2860,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2861],"locationId":196},{"id":2861,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2862],"locationId":196},{"id":2862,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2863],"locationId":196},{"id":2863,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2864],"locationId":196},{"id":2864,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2865],"locationId":196},{"id":2865,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2866],"locationId":196},{"id":2866,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2867],"locationId":196},{"id":2867,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2868],"locationId":196},{"id":2868,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2869],"locationId":196},{"id":2869,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2870],"locationId":196},{"id":2870,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2871],"locationId":196},{"id":2871,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2872],"locationId":196},{"id":2872,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2873],"locationId":196},{"id":2873,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2874],"locationId":196},{"id":2874,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2875],"locationId":196},{"id":2875,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2876],"locationId":196},{"id":2876,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2877],"locationId":196},{"id":2877,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2878],"locationId":196},{"id":2878,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2879],"locationId":196},{"id":2879,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2880],"locationId":196},{"id":2880,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2881],"locationId":196},{"id":2881,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2882],"locationId":196},{"id":2882,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2883],"locationId":196},{"id":2883,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2884],"locationId":196},{"id":2884,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2885],"locationId":196},{"id":2885,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2886],"locationId":196},{"id":2886,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2887],"locationId":196},{"id":2887,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2888],"locationId":196},{"id":2888,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2889],"locationId":196},{"id":2889,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2890],"locationId":196},{"id":2890,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2891],"locationId":196},{"id":2891,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2892],"locationId":196},{"id":2892,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2893],"locationId":196},{"id":2893,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2894],"locationId":196},{"id":2894,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2895],"locationId":196},{"id":2895,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2896],"locationId":196},{"id":2896,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2897],"locationId":196},{"id":2897,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2898],"locationId":196},{"id":2898,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2899],"locationId":196},{"id":2899,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2900],"locationId":196},{"id":2900,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2901],"locationId":196},{"id":2901,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2902],"locationId":196},{"id":2902,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2903],"locationId":196},{"id":2903,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2904],"locationId":196},{"id":2904,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2905],"locationId":196},{"id":2905,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2906],"locationId":196},{"id":2906,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2907],"locationId":196},{"id":2907,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2908],"locationId":196},{"id":2908,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2909],"locationId":196},{"id":2909,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2910],"locationId":196},{"id":2910,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2911],"locationId":196},{"id":2911,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2912],"locationId":196},{"id":2912,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2913],"locationId":196},{"id":2913,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2914],"locationId":196},{"id":2914,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2915],"locationId":196},{"id":2915,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2916],"locationId":196},{"id":2916,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2917],"locationId":196},{"id":2917,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2918],"locationId":196},{"id":2918,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2919],"locationId":196},{"id":2919,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2920],"locationId":196},{"id":2920,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2921],"locationId":196},{"id":2921,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2922],"locationId":196},{"id":2922,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2923],"locationId":196},{"id":2923,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2924],"locationId":196},{"id":2924,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2925],"locationId":196},{"id":2925,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2926],"locationId":196},{"id":2926,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2927],"locationId":196},{"id":2927,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2928],"locationId":196},{"id":2928,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2929],"locationId":196},{"id":2929,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2930],"locationId":196},{"id":2930,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2931],"locationId":196},{"id":2931,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2932],"locationId":196},{"id":2932,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2933],"locationId":196},{"id":2933,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2934],"locationId":196},{"id":2934,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2935],"locationId":196},{"id":2935,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2936],"locationId":196},{"id":2936,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2937],"locationId":196},{"id":2937,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2938],"locationId":196},{"id":2938,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2939],"locationId":196},{"id":2939,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2940],"locationId":196},{"id":2940,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2941],"locationId":196},{"id":2941,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2942],"locationId":196},{"id":2942,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2943],"locationId":196},{"id":2943,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2944],"locationId":196},{"id":2944,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2945],"locationId":196},{"id":2945,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2946],"locationId":196},{"id":2946,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2947],"locationId":196},{"id":2947,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2948],"locationId":196},{"id":2948,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2949],"locationId":196},{"id":2949,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2950],"locationId":196},{"id":2950,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2951],"locationId":196},{"id":2951,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2952],"locationId":196},{"id":2952,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2953],"locationId":196},{"id":2953,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2954],"locationId":196},{"id":2954,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2955],"locationId":196},{"id":2955,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2956],"locationId":196},{"id":2956,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2957],"locationId":196},{"id":2957,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2958],"locationId":196},{"id":2958,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2959],"locationId":196},{"id":2959,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2960],"locationId":196},{"id":2960,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2961],"locationId":196},{"id":2961,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2962],"locationId":196},{"id":2962,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2963],"locationId":196},{"id":2963,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2964],"locationId":196},{"id":2964,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2965],"locationId":196},{"id":2965,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2966],"locationId":196},{"id":2966,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2967],"locationId":196},{"id":2967,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2968],"locationId":196},{"id":2968,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2969],"locationId":196},{"id":2969,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2970],"locationId":196},{"id":2970,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2971],"locationId":196},{"id":2971,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2972],"locationId":196},{"id":2972,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2973],"locationId":196},{"id":2973,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2974],"locationId":196},{"id":2974,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2975],"locationId":196},{"id":2975,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2976],"locationId":196},{"id":2976,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2977],"locationId":196},{"id":2977,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2978],"locationId":196},{"id":2978,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2979],"locationId":196},{"id":2979,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2980],"locationId":196},{"id":2980,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2981],"locationId":196},{"id":2981,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2982],"locationId":196},{"id":2982,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2983],"locationId":196},{"id":2983,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2984],"locationId":196},{"id":2984,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2985],"locationId":196},{"id":2985,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2986],"locationId":196},{"id":2986,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2987],"locationId":196},{"id":2987,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2988],"locationId":196},{"id":2988,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2989],"locationId":196},{"id":2989,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2990],"locationId":196},{"id":2990,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2991],"locationId":196},{"id":2991,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2992],"locationId":196},{"id":2992,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2993],"locationId":196},{"id":2993,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2994],"locationId":196},{"id":2994,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2995],"locationId":196},{"id":2995,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2996],"locationId":196},{"id":2996,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2997],"locationId":196},{"id":2997,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2998],"locationId":196},{"id":2998,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2999],"locationId":196},{"id":2999,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3000],"locationId":196},{"id":3000,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3001],"locationId":196},{"id":3001,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3002],"locationId":196},{"id":3002,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3003],"locationId":196},{"id":3003,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3004],"locationId":196},{"id":3004,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3005],"locationId":196},{"id":3005,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3006],"locationId":196},{"id":3006,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3007],"locationId":196},{"id":3007,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3008],"locationId":196},{"id":3008,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3009],"locationId":196},{"id":3009,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3010],"locationId":196},{"id":3010,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3011],"locationId":196},{"id":3011,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3012],"locationId":196},{"id":3012,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3013],"locationId":196},{"id":3013,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3014],"locationId":196},{"id":3014,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3015],"locationId":196},{"id":3015,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3016],"locationId":196},{"id":3016,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3017],"locationId":196},{"id":3017,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3018],"locationId":196},{"id":3018,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3019],"locationId":196},{"id":3019,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3020],"locationId":196},{"id":3020,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3021],"locationId":196},{"id":3021,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3022],"locationId":196},{"id":3022,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3023],"locationId":196},{"id":3023,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3024],"locationId":196},{"id":3024,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3025],"locationId":196},{"id":3025,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3026],"locationId":196},{"id":3026,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3027],"locationId":196},{"id":3027,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3028],"locationId":196},{"id":3028,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3029],"locationId":196},{"id":3029,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3030],"locationId":196},{"id":3030,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3031],"locationId":196},{"id":3031,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3032],"locationId":196},{"id":3032,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3033],"locationId":196},{"id":3033,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3034],"locationId":196},{"id":3034,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3035],"locationId":196},{"id":3035,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3036],"locationId":196},{"id":3036,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3037],"locationId":196},{"id":3037,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3038],"locationId":196},{"id":3038,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3039],"locationId":196},{"id":3039,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3040],"locationId":196},{"id":3040,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3041],"locationId":196},{"id":3041,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3042],"locationId":196},{"id":3042,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3043],"locationId":196},{"id":3043,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3044],"locationId":196},{"id":3044,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3045],"locationId":196},{"id":3045,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3046],"locationId":196},{"id":3046,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3047],"locationId":196},{"id":3047,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3048],"locationId":196},{"id":3048,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3049],"locationId":196},{"id":3049,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3050],"locationId":196},{"id":3050,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3051],"locationId":196},{"id":3051,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3052],"locationId":196},{"id":3052,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3053],"locationId":196},{"id":3053,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3054],"locationId":196},{"id":3054,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3055],"locationId":196},{"id":3055,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3056],"locationId":196},{"id":3056,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3057],"locationId":196},{"id":3057,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3058],"locationId":196},{"id":3058,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3059],"locationId":196},{"id":3059,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3060],"locationId":196},{"id":3060,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3061],"locationId":196},{"id":3061,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3062],"locationId":196},{"id":3062,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3063],"locationId":196},{"id":3063,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3064],"locationId":196},{"id":3064,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3065],"locationId":196},{"id":3065,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3066],"locationId":196},{"id":3066,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3067],"locationId":196},{"id":3067,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3068],"locationId":196},{"id":3068,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3069],"locationId":196},{"id":3069,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3070],"locationId":196},{"id":3070,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3071],"locationId":196},{"id":3071,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3072],"locationId":196},{"id":3072,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3073],"locationId":196},{"id":3073,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3074],"locationId":196},{"id":3074,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3075],"locationId":196},{"id":3075,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3076],"locationId":196},{"id":3076,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3077],"locationId":196},{"id":3077,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3078],"locationId":196},{"id":3078,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3079],"locationId":196},{"id":3079,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3080],"locationId":196},{"id":3080,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3081],"locationId":196},{"id":3081,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3082],"locationId":196},{"id":3082,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3083],"locationId":196},{"id":3083,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3084],"locationId":196},{"id":3084,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3085],"locationId":196},{"id":3085,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3086],"locationId":196},{"id":3086,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3087],"locationId":196},{"id":3087,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3088],"locationId":196},{"id":3088,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3089],"locationId":196},{"id":3089,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3090],"locationId":196},{"id":3090,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3091],"locationId":196},{"id":3091,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3092],"locationId":196},{"id":3092,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3093],"locationId":196},{"id":3093,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3094],"locationId":196},{"id":3094,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3095],"locationId":196},{"id":3095,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3096],"locationId":196},{"id":3096,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3097],"locationId":196},{"id":3097,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3098],"locationId":196},{"id":3098,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3099],"locationId":196},{"id":3099,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3100],"locationId":196},{"id":3100,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3101],"locationId":196},{"id":3101,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3102],"locationId":196},{"id":3102,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[3626],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":3626,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":3876,"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":607,"columnNumber":33},"hitCount":0,"children":[3877],"locationId":9},{"id":3877,"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":47,"columnNumber":39},"hitCount":0,"children":[3878],"locationId":36},{"id":3878,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":0,"children":[3879],"locationId":62},{"id":3879,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3880],"locationId":196},{"id":3880,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3881],"locationId":196},{"id":3881,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3882],"locationId":196},{"id":3882,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3883],"locationId":196},{"id":3883,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3884],"locationId":196},{"id":3884,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3885],"locationId":196},{"id":3885,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3886],"locationId":196},{"id":3886,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3887],"locationId":196},{"id":3887,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3888],"locationId":196},{"id":3888,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3889],"locationId":196},{"id":3889,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3890],"locationId":196},{"id":3890,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3891],"locationId":196},{"id":3891,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3892],"locationId":196},{"id":3892,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3893],"locationId":196},{"id":3893,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3894],"locationId":196},{"id":3894,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3895],"locationId":196},{"id":3895,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3896],"locationId":196},{"id":3896,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3897],"locationId":196},{"id":3897,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3898],"locationId":196},{"id":3898,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3899],"locationId":196},{"id":3899,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3900],"locationId":196},{"id":3900,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3901],"locationId":196},{"id":3901,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3902],"locationId":196},{"id":3902,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3903],"locationId":196},{"id":3903,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3904],"locationId":196},{"id":3904,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3905],"locationId":196},{"id":3905,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3906],"locationId":196},{"id":3906,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3907],"locationId":196},{"id":3907,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3908],"locationId":196},{"id":3908,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3909],"locationId":196},{"id":3909,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3910],"locationId":196},{"id":3910,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3911],"locationId":196},{"id":3911,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3912],"locationId":196},{"id":3912,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3913],"locationId":196},{"id":3913,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3914],"locationId":196},{"id":3914,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3915],"locationId":196},{"id":3915,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3916],"locationId":196},{"id":3916,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3917],"locationId":196},{"id":3917,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3918],"locationId":196},{"id":3918,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3919],"locationId":196},{"id":3919,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3920],"locationId":196},{"id":3920,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3921],"locationId":196},{"id":3921,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3922],"locationId":196},{"id":3922,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3923],"locationId":196},{"id":3923,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3924],"locationId":196},{"id":3924,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3925],"locationId":196},{"id":3925,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3926],"locationId":196},{"id":3926,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3927],"locationId":196},{"id":3927,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3928],"locationId":196},{"id":3928,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3929],"locationId":196},{"id":3929,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3930],"locationId":196},{"id":3930,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3931],"locationId":196},{"id":3931,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3932],"locationId":196},{"id":3932,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3933],"locationId":196},{"id":3933,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3934],"locationId":196},{"id":3934,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3935],"locationId":196},{"id":3935,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3936],"locationId":196},{"id":3936,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3937],"locationId":196},{"id":3937,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3938],"locationId":196},{"id":3938,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3939],"locationId":196},{"id":3939,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3940],"locationId":196},{"id":3940,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3941],"locationId":196},{"id":3941,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3942],"locationId":196},{"id":3942,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3943],"locationId":196},{"id":3943,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3944],"locationId":196},{"id":3944,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3945],"locationId":196},{"id":3945,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3946],"locationId":196},{"id":3946,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3947],"locationId":196},{"id":3947,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3948],"locationId":196},{"id":3948,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3949],"locationId":196},{"id":3949,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3950],"locationId":196},{"id":3950,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3951],"locationId":196},{"id":3951,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3952],"locationId":196},{"id":3952,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3953],"locationId":196},{"id":3953,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3954],"locationId":196},{"id":3954,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3955],"locationId":196},{"id":3955,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3956],"locationId":196},{"id":3956,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3957],"locationId":196},{"id":3957,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3958],"locationId":196},{"id":3958,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3959],"locationId":196},{"id":3959,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3960],"locationId":196},{"id":3960,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3961],"locationId":196},{"id":3961,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3962],"locationId":196},{"id":3962,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3963],"locationId":196},{"id":3963,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3964],"locationId":196},{"id":3964,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3965],"locationId":196},{"id":3965,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3966],"locationId":196},{"id":3966,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3967],"locationId":196},{"id":3967,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3968],"locationId":196},{"id":3968,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3969],"locationId":196},{"id":3969,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3970],"locationId":196},{"id":3970,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3971],"locationId":196},{"id":3971,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3972],"locationId":196},{"id":3972,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3973],"locationId":196},{"id":3973,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3974],"locationId":196},{"id":3974,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3975],"locationId":196},{"id":3975,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3976],"locationId":196},{"id":3976,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3977],"locationId":196},{"id":3977,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3978],"locationId":196},{"id":3978,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3979],"locationId":196},{"id":3979,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3980],"locationId":196},{"id":3980,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3981],"locationId":196},{"id":3981,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3982],"locationId":196},{"id":3982,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3983],"locationId":196},{"id":3983,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3984],"locationId":196},{"id":3984,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3985],"locationId":196},{"id":3985,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3986],"locationId":196},{"id":3986,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3987],"locationId":196},{"id":3987,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3988],"locationId":196},{"id":3988,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3989],"locationId":196},{"id":3989,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3990],"locationId":196},{"id":3990,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3991],"locationId":196},{"id":3991,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3992],"locationId":196},{"id":3992,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3993],"locationId":196},{"id":3993,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3994],"locationId":196},{"id":3994,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3995],"locationId":196},{"id":3995,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3996],"locationId":196},{"id":3996,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3997],"locationId":196},{"id":3997,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3998],"locationId":196},{"id":3998,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3999],"locationId":196},{"id":3999,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4000],"locationId":196},{"id":4000,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4001],"locationId":196},{"id":4001,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4002],"locationId":196},{"id":4002,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4003],"locationId":196},{"id":4003,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4004],"locationId":196},{"id":4004,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4005],"locationId":196},{"id":4005,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4006],"locationId":196},{"id":4006,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4007],"locationId":196},{"id":4007,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4008],"locationId":196},{"id":4008,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4009],"locationId":196},{"id":4009,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4010],"locationId":196},{"id":4010,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4011],"locationId":196},{"id":4011,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4012],"locationId":196},{"id":4012,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4013],"locationId":196},{"id":4013,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4014],"locationId":196},{"id":4014,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4015],"locationId":196},{"id":4015,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4016],"locationId":196},{"id":4016,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4017],"locationId":196},{"id":4017,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4018],"locationId":196},{"id":4018,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4019],"locationId":196},{"id":4019,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4020],"locationId":196},{"id":4020,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4021],"locationId":196},{"id":4021,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4022],"locationId":196},{"id":4022,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4023],"locationId":196},{"id":4023,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4024],"locationId":196},{"id":4024,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4025],"locationId":196},{"id":4025,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4026],"locationId":196},{"id":4026,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4027],"locationId":196},{"id":4027,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4028],"locationId":196},{"id":4028,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4029],"locationId":196},{"id":4029,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4030],"locationId":196},{"id":4030,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4031],"locationId":196},{"id":4031,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4032],"locationId":196},{"id":4032,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4033],"locationId":196},{"id":4033,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4034],"locationId":196},{"id":4034,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4035],"locationId":196},{"id":4035,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4036],"locationId":196},{"id":4036,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4037],"locationId":196},{"id":4037,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4038],"locationId":196},{"id":4038,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4039],"locationId":196},{"id":4039,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4040],"locationId":196},{"id":4040,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4041],"locationId":196},{"id":4041,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4042],"locationId":196},{"id":4042,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4043],"locationId":196},{"id":4043,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4044],"locationId":196},{"id":4044,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4045],"locationId":196},{"id":4045,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4046],"locationId":196},{"id":4046,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4047],"locationId":196},{"id":4047,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4048],"locationId":196},{"id":4048,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4049],"locationId":196},{"id":4049,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4050],"locationId":196},{"id":4050,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4051],"locationId":196},{"id":4051,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4052],"locationId":196},{"id":4052,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4053],"locationId":196},{"id":4053,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4054],"locationId":196},{"id":4054,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4055],"locationId":196},{"id":4055,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4056],"locationId":196},{"id":4056,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4057],"locationId":196},{"id":4057,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4058],"locationId":196},{"id":4058,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4059],"locationId":196},{"id":4059,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4060],"locationId":196},{"id":4060,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4061],"locationId":196},{"id":4061,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4062],"locationId":196},{"id":4062,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4063],"locationId":196},{"id":4063,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4064],"locationId":196},{"id":4064,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4065],"locationId":196},{"id":4065,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4066],"locationId":196},{"id":4066,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4067],"locationId":196},{"id":4067,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4068],"locationId":196},{"id":4068,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4069],"locationId":196},{"id":4069,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4070],"locationId":196},{"id":4070,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4071],"locationId":196},{"id":4071,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4072],"locationId":196},{"id":4072,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4073],"locationId":196},{"id":4073,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4074],"locationId":196},{"id":4074,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4075],"locationId":196},{"id":4075,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4076],"locationId":196},{"id":4076,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4077],"locationId":196},{"id":4077,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4078],"locationId":196},{"id":4078,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4079],"locationId":196},{"id":4079,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4080],"locationId":196},{"id":4080,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4081],"locationId":196},{"id":4081,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4082],"locationId":196},{"id":4082,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4083],"locationId":196},{"id":4083,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4084],"locationId":196},{"id":4084,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4085],"locationId":196},{"id":4085,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4086],"locationId":196},{"id":4086,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4087],"locationId":196},{"id":4087,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4088],"locationId":196},{"id":4088,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4089],"locationId":196},{"id":4089,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4090],"locationId":196},{"id":4090,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4091],"locationId":196},{"id":4091,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4092],"locationId":196},{"id":4092,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4093],"locationId":196},{"id":4093,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4094],"locationId":196},{"id":4094,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4095],"locationId":196},{"id":4095,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4096],"locationId":196},{"id":4096,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4097],"locationId":196},{"id":4097,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4098],"locationId":196},{"id":4098,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4099],"locationId":196},{"id":4099,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4100],"locationId":196},{"id":4100,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4101],"locationId":196},{"id":4101,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4102],"locationId":196},{"id":4102,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4103],"locationId":196},{"id":4103,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4104],"locationId":196},{"id":4104,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4105],"locationId":196},{"id":4105,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4106],"locationId":196},{"id":4106,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4107],"locationId":196},{"id":4107,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4108],"locationId":196},{"id":4108,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4109],"locationId":196},{"id":4109,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4110],"locationId":196},{"id":4110,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4111],"locationId":196},{"id":4111,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4112],"locationId":196},{"id":4112,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4113],"locationId":196},{"id":4113,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4114],"locationId":196},{"id":4114,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4115],"locationId":196},{"id":4115,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4116],"locationId":196},{"id":4116,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4117],"locationId":196},{"id":4117,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4118],"locationId":196},{"id":4118,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4119],"locationId":196},{"id":4119,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4120],"locationId":196},{"id":4120,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4121],"locationId":196},{"id":4121,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4122],"locationId":196},{"id":4122,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4123],"locationId":196},{"id":4123,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4124],"locationId":196},{"id":4124,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4125],"locationId":196},{"id":4125,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4126],"locationId":196},{"id":4126,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4127],"locationId":196},{"id":4127,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4128],"locationId":196},{"id":4128,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":3107,"callFrame":{"functionName":"","scriptId":"498","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/test/profile.js","lineNumber":-1,"columnNumber":-1},"hitCount":0,"children":[3108],"locationId":3},{"id":3108,"callFrame":{"functionName":"toDDL","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":483,"columnNumber":21},"hitCount":0,"children":[3109],"locationId":4},{"id":3109,"callFrame":{"functionName":"Parsed.getDDL","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":336,"columnNumber":31},"hitCount":0,"children":[3110],"locationId":5},{"id":3110,"callFrame":{"functionName":"toDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":832,"columnNumber":29},"hitCount":0,"children":[3111],"locationId":6},{"id":3111,"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":607,"columnNumber":33},"hitCount":0,"children":[3112],"locationId":9},{"id":3112,"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":47,"columnNumber":39},"hitCount":0,"children":[3113],"locationId":36},{"id":3113,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":0,"children":[3114],"locationId":62},{"id":3114,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3115],"locationId":196},{"id":3115,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3116],"locationId":196},{"id":3116,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3117],"locationId":196},{"id":3117,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3118],"locationId":196},{"id":3118,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3119],"locationId":196},{"id":3119,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3120],"locationId":196},{"id":3120,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3121],"locationId":196},{"id":3121,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3122],"locationId":196},{"id":3122,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3123],"locationId":196},{"id":3123,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3124],"locationId":196},{"id":3124,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3125],"locationId":196},{"id":3125,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3126],"locationId":196},{"id":3126,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3127],"locationId":196},{"id":3127,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3128],"locationId":196},{"id":3128,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3129],"locationId":196},{"id":3129,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3130],"locationId":196},{"id":3130,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3131],"locationId":196},{"id":3131,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3132],"locationId":196},{"id":3132,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3133],"locationId":196},{"id":3133,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3134],"locationId":196},{"id":3134,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3135],"locationId":196},{"id":3135,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3136],"locationId":196},{"id":3136,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3137],"locationId":196},{"id":3137,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3138],"locationId":196},{"id":3138,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3139],"locationId":196},{"id":3139,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3140],"locationId":196},{"id":3140,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3141],"locationId":196},{"id":3141,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3142],"locationId":196},{"id":3142,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3143],"locationId":196},{"id":3143,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3144],"locationId":196},{"id":3144,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3145],"locationId":196},{"id":3145,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3146],"locationId":196},{"id":3146,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3147],"locationId":196},{"id":3147,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3148],"locationId":196},{"id":3148,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3149],"locationId":196},{"id":3149,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3150],"locationId":196},{"id":3150,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3151],"locationId":196},{"id":3151,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3152],"locationId":196},{"id":3152,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3153],"locationId":196},{"id":3153,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3154],"locationId":196},{"id":3154,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3155],"locationId":196},{"id":3155,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3156],"locationId":196},{"id":3156,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3157],"locationId":196},{"id":3157,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3158],"locationId":196},{"id":3158,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3159],"locationId":196},{"id":3159,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3160],"locationId":196},{"id":3160,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3161],"locationId":196},{"id":3161,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3162],"locationId":196},{"id":3162,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3163],"locationId":196},{"id":3163,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3164],"locationId":196},{"id":3164,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3165],"locationId":196},{"id":3165,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3166],"locationId":196},{"id":3166,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3167],"locationId":196},{"id":3167,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3168],"locationId":196},{"id":3168,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3169],"locationId":196},{"id":3169,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3170],"locationId":196},{"id":3170,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3171],"locationId":196},{"id":3171,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3172],"locationId":196},{"id":3172,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3173],"locationId":196},{"id":3173,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3174],"locationId":196},{"id":3174,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3175],"locationId":196},{"id":3175,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3176],"locationId":196},{"id":3176,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3177],"locationId":196},{"id":3177,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3178],"locationId":196},{"id":3178,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3179],"locationId":196},{"id":3179,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3180],"locationId":196},{"id":3180,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3181],"locationId":196},{"id":3181,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3182],"locationId":196},{"id":3182,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3183],"locationId":196},{"id":3183,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3184],"locationId":196},{"id":3184,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3185],"locationId":196},{"id":3185,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3186],"locationId":196},{"id":3186,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3187],"locationId":196},{"id":3187,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3188],"locationId":196},{"id":3188,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3189],"locationId":196},{"id":3189,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3190],"locationId":196},{"id":3190,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3191],"locationId":196},{"id":3191,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3192],"locationId":196},{"id":3192,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3193],"locationId":196},{"id":3193,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3194],"locationId":196},{"id":3194,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3195],"locationId":196},{"id":3195,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3196],"locationId":196},{"id":3196,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3197],"locationId":196},{"id":3197,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3198],"locationId":196},{"id":3198,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3199],"locationId":196},{"id":3199,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3200],"locationId":196},{"id":3200,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3201],"locationId":196},{"id":3201,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3202],"locationId":196},{"id":3202,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3203],"locationId":196},{"id":3203,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3204],"locationId":196},{"id":3204,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3205],"locationId":196},{"id":3205,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3206],"locationId":196},{"id":3206,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3207],"locationId":196},{"id":3207,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3208],"locationId":196},{"id":3208,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3209],"locationId":196},{"id":3209,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3210],"locationId":196},{"id":3210,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3211],"locationId":196},{"id":3211,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3212],"locationId":196},{"id":3212,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3213],"locationId":196},{"id":3213,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3214],"locationId":196},{"id":3214,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3215],"locationId":196},{"id":3215,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3216],"locationId":196},{"id":3216,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3217],"locationId":196},{"id":3217,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3218],"locationId":196},{"id":3218,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3219],"locationId":196},{"id":3219,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3220],"locationId":196},{"id":3220,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3221],"locationId":196},{"id":3221,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3222],"locationId":196},{"id":3222,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3223],"locationId":196},{"id":3223,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3224],"locationId":196},{"id":3224,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3225],"locationId":196},{"id":3225,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3226],"locationId":196},{"id":3226,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3227],"locationId":196},{"id":3227,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3228],"locationId":196},{"id":3228,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3229],"locationId":196},{"id":3229,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3230],"locationId":196},{"id":3230,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3231],"locationId":196},{"id":3231,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3232],"locationId":196},{"id":3232,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3233],"locationId":196},{"id":3233,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3234],"locationId":196},{"id":3234,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3235],"locationId":196},{"id":3235,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3236],"locationId":196},{"id":3236,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3237],"locationId":196},{"id":3237,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3238],"locationId":196},{"id":3238,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3239],"locationId":196},{"id":3239,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3240],"locationId":196},{"id":3240,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3241],"locationId":196},{"id":3241,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3242],"locationId":196},{"id":3242,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3243],"locationId":196},{"id":3243,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3244],"locationId":196},{"id":3244,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3245],"locationId":196},{"id":3245,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3246],"locationId":196},{"id":3246,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3247],"locationId":196},{"id":3247,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3248],"locationId":196},{"id":3248,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3249],"locationId":196},{"id":3249,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3250],"locationId":196},{"id":3250,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3251],"locationId":196},{"id":3251,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3252],"locationId":196},{"id":3252,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3253],"locationId":196},{"id":3253,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3254],"locationId":196},{"id":3254,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3255],"locationId":196},{"id":3255,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3256],"locationId":196},{"id":3256,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3257],"locationId":196},{"id":3257,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3258],"locationId":196},{"id":3258,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3259],"locationId":196},{"id":3259,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3260],"locationId":196},{"id":3260,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3261],"locationId":196},{"id":3261,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3262],"locationId":196},{"id":3262,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3263],"locationId":196},{"id":3263,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3264],"locationId":196},{"id":3264,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3265],"locationId":196},{"id":3265,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3266],"locationId":196},{"id":3266,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3267],"locationId":196},{"id":3267,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3268],"locationId":196},{"id":3268,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3269],"locationId":196},{"id":3269,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3270],"locationId":196},{"id":3270,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3271],"locationId":196},{"id":3271,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3272],"locationId":196},{"id":3272,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3273],"locationId":196},{"id":3273,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3274],"locationId":196},{"id":3274,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3275],"locationId":196},{"id":3275,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3276],"locationId":196},{"id":3276,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3277],"locationId":196},{"id":3277,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3278],"locationId":196},{"id":3278,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3279],"locationId":196},{"id":3279,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3280],"locationId":196},{"id":3280,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3281],"locationId":196},{"id":3281,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3282],"locationId":196},{"id":3282,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3283],"locationId":196},{"id":3283,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3284],"locationId":196},{"id":3284,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3285],"locationId":196},{"id":3285,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3286],"locationId":196},{"id":3286,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3287],"locationId":196},{"id":3287,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3288],"locationId":196},{"id":3288,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3289],"locationId":196},{"id":3289,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3290],"locationId":196},{"id":3290,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3291],"locationId":196},{"id":3291,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3292],"locationId":196},{"id":3292,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3293],"locationId":196},{"id":3293,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3294],"locationId":196},{"id":3294,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3295],"locationId":196},{"id":3295,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3296],"locationId":196},{"id":3296,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3297],"locationId":196},{"id":3297,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3298],"locationId":196},{"id":3298,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3299],"locationId":196},{"id":3299,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3300],"locationId":196},{"id":3300,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3301],"locationId":196},{"id":3301,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3302],"locationId":196},{"id":3302,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3303],"locationId":196},{"id":3303,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3304],"locationId":196},{"id":3304,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3305],"locationId":196},{"id":3305,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3306],"locationId":196},{"id":3306,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3307],"locationId":196},{"id":3307,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3308],"locationId":196},{"id":3308,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3309],"locationId":196},{"id":3309,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3310],"locationId":196},{"id":3310,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3311],"locationId":196},{"id":3311,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3312],"locationId":196},{"id":3312,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3313],"locationId":196},{"id":3313,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3314],"locationId":196},{"id":3314,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3315],"locationId":196},{"id":3315,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3316],"locationId":196},{"id":3316,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3317],"locationId":196},{"id":3317,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3318],"locationId":196},{"id":3318,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3319],"locationId":196},{"id":3319,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3320],"locationId":196},{"id":3320,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3321],"locationId":196},{"id":3321,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3322],"locationId":196},{"id":3322,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3323],"locationId":196},{"id":3323,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3324],"locationId":196},{"id":3324,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3325],"locationId":196},{"id":3325,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3326],"locationId":196},{"id":3326,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3327],"locationId":196},{"id":3327,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3328],"locationId":196},{"id":3328,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3329],"locationId":196},{"id":3329,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3330],"locationId":196},{"id":3330,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3331],"locationId":196},{"id":3331,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3332],"locationId":196},{"id":3332,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3333],"locationId":196},{"id":3333,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3334],"locationId":196},{"id":3334,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3335],"locationId":196},{"id":3335,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3336],"locationId":196},{"id":3336,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3337],"locationId":196},{"id":3337,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3338],"locationId":196},{"id":3338,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3339],"locationId":196},{"id":3339,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3340],"locationId":196},{"id":3340,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3341],"locationId":196},{"id":3341,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3342],"locationId":196},{"id":3342,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3343],"locationId":196},{"id":3343,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3344],"locationId":196},{"id":3344,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3345],"locationId":196},{"id":3345,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3346],"locationId":196},{"id":3346,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3347],"locationId":196},{"id":3347,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3348],"locationId":196},{"id":3348,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3349],"locationId":196},{"id":3349,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3350],"locationId":196},{"id":3350,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3351],"locationId":196},{"id":3351,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3352],"locationId":196},{"id":3352,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3353],"locationId":196},{"id":3353,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3354],"locationId":196},{"id":3354,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3355],"locationId":196},{"id":3355,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3356],"locationId":196},{"id":3356,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3357],"locationId":196},{"id":3357,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3358],"locationId":196},{"id":3358,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3359],"locationId":196},{"id":3359,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3360],"locationId":196},{"id":3360,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3361],"locationId":196},{"id":3361,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196}],"startTime":1896753265126,"endTime":1896779109292,"samples":[13,12,14,14,15,269,406,408,411,411,271,411,272,409,482,483,408,408,411,411,408,271,408,269,485,485,11,13,13,485,13,13,13,13,9,14,11,10,13,14,486,485,13,10,11,485,485,13,640,518,15,485,485,13,485,13,641,269,642,485,485,13,485,641,14,269,411,409,409,411,641,643,409,269,411,411,411,643,409,483,411,679,13,13,13,11,14,485,11,15,485,642,13,10,485,13,642,708,486,13,485,11,9,13,13,485,11,485,13,10,13,11,11,485,11,710,9,13,485,14,10,485,15,318,411,641,411,711,408,643,483,335,272,643,409,408,411,408,409,408,641,711,411,411,411,408,643,643,641,13,13,712,11,485,11,641,485,10,11,485,485,485,11,485,485,269,641,11,15,11,642,642,642,641,9,13,11,13,642,485,485,641,11,485,642,14,10,642,14,7,711,711,411,411,408,641,411,272,411,408,409,408,641,411,411,483,560,485,11,13,485,485,485,11,532,11,11,13,485,485,485,11,8,641,11,485,485,485,485,642,485,709,13,10,485,9,14,13,13,14,11,14,13,485,11,11,642,642,408,409,641,408,411,409,643,408,643,411,409,411,411,409,411,411,641,13,14,485,13,485,13,14,641,642,485,485,485,13,11,13,808,485,11,11,13,13,13,642,485,13,13,485,485,14,14,485,13,641,13,13,485,11,13,14,809,411,411,408,411,408,408,409,454,411,483,483,408,272,643,409,411,411,411,711,411,711,641,408,409,9,13,642,13,11,11,11,15,13,15,485,13,485,10,13,485,811,14,13,10,13,15,14,11,485,13,14,14,10,485,642,11,11,485,13,14,11,641,10,11,351,408,411,408,411,643,272,411,335,408,711,411,711,643,409,643,813,485,13,13,13,485,13,11,13,641,13,485,485,14,485,10,11,641,669,15,13,13,11,642,11,14,269,13,485,13,13,11,10,9,269,13,13,14,485,14,642,13,641,271,411,711,408,408,411,411,641,643,409,408,410,409,272,408,524,11,485,642,13,13,11,10,709,642,14,13,485,485,11,485,825,839,13,11,13,13,15,485,485,574,13,485,13,485,14,485,13,533,14,13,485,11,14,642,642,411,408,408,408,411,641,411,345,271,409,408,411,411,643,643,710,408,408,641,408,411,411,411,574,485,642,10,11,11,485,11,503,11,13,485,10,13,11,14,641,485,11,485,11,641,485,485,269,485,485,485,11,11,485,11,532,485,641,13,11,14,14,9,409,408,407,408,409,408,409,269,408,409,643,411,408,408,408,852,9,14,485,13,13,11,641,485,485,485,10,485,14,15,14,709,9,485,12,13,485,9,13,542,9,485,14,485,11,10,10,491,11,9,11,485,11,14,269,408,409,411,411,272,408,272,411,409,272,409,411,411,408,409,487,13,485,13,641,13,13,485,624,13,10,14,11,13,13,14,760,842,15,14,485,11,15,642,13,485,642,13,485,485,485,13,13,13,14,13,11,10,485,485,352,411,408,643,411,408,408,711,343,411,411,711,409,411,409,643,641,643,409,272,409,411,409,269,15,11,485,14,14,11,13,14,852,485,485,14,13,11,15,15,269,492,13,641,13,485,485,10,13,269,641,485,14,10,485,11,485,269,485,485,485,485,485,13,11,274,272,408,643,411,408,408,411,643,709,643,409,408,643,408,409,411,411,14,14,11,13,641,10,11,9,13,485,13,641,13,14,13,13,486,563,13,15,485,13,11,485,11,269,13,13,13,485,11,485,13,709,13,11,642,11,13,13,13,642,643,408,408,408,411,408,411,411,272,483,410,411,411,711,483,411,8,642,15,485,11,485,485,14,14,641,13,13,14,11,14,11,14,641,582,13,11,11,11,13,13,15,485,13,9,11,641,11,11,11,13,269,15,641,13,11,10,642,11,336,641,408,409,407,643,711,409,409,641,409,272,409,409,643,411,483,871,409,409,411,408,411,271,643,641,550,11,11,14,11,11,13,10,14,485,13,485,485,485,11,10,919,828,485,14,11,485,13,10,11,11,924,485,11,485,485,14,485,485,269,10,13,13,9,485,641,14,449,409,411,411,408,641,408,272,459,408,409,409,408,411,407,411,925,13,10,15,485,14,485,14,827,641,485,10,11,14,11,485,485,927,642,11,15,9,11,13,13,485,10,485,10,13,485,485,12,14,10,13,641,10,13,13,485,13,709,411,711,411,408,643,483,409,371,411,711,643,272,411,408,643,408,641,13,485,10,485,14,11,485,641,485,485,485,485,13,485,13,13,929,11,641,11,485,9,11,14,15,641,13,13,13,11,485,485,14,641,485,13,485,11,15,642,14,641,711,409,408,409,272,643,409,409,460,408,408,409,408,641,272,411,269,711,408,411,641,483,409,643,709,642,485,641,13,11,14,11,627,13,485,13,12,11,11,485,485,641,675,13,485,10,13,13,485,11,639,15,13,485,14,13,485,484,614,14,485,641,14,14,13,13,381,271,411,643,408,411,409,407,409,411,411,411,711,411,408,411,641,11,13,485,11,13,485,14,641,485,485,11,485,13,13,641,874,269,485,641,485,11,485,15,485,13,10,13,15,14,485,11,11,269,14,485,485,11,485,485,11,269,408,409,411,409,271,408,272,710,643,408,409,408,643,641,411,269,14,13,11,11,14,13,10,13,485,11,485,9,14,485,13,517,11,14,13,485,11,14,11,641,14,13,642,11,11,13,13,269,11,9,13,485,13,14,9,408,408,409,409,408,409,407,411,408,411,641,408,408,272,411,933,408,408,711,411,411,408,408,409,641,12,485,485,13,9,642,13,641,485,485,14,485,15,13,15,709,625,485,485,13,13,13,485,13,13,641,12,485,485,485,9,9,13,11,485,13,13,13,11,269,411,272,272,408,411,271,408,641,272,711,411,411,408,408,408,409,485,485,13,485,11,13,13,550,13,13,14,641,13,11,15,485,810,641,11,13,10,13,13,485,11,641,15,11,9,485,485,11,641,8,13,485,13,11,14,641,14,485,411,409,411,408,411,409,643,411,409,408,483,411,409,409,934,643,935,485,11,11,11,15,11,10,656,641,11,485,642,14,485,13,642,641,669,13,642,13,642,485,15,13,642,13,11,641,485,11,10,485,269,13,641,485,13,485,485,11,269,641,411,411,411,411,643,411,409,641,408,271,407,483,411,408,409,709,483,271,411,409,483,409,408,272,13,485,10,11,13,13,14,13,672,15,485,13,14,485,11,485,269,946,485,485,9,485,15,13,13,269,15,642,485,15,14,485,484,641,13,485,11,485,485,15,485,485,411,408,411,408,409,408,408,408,444,411,411,643,643,411,643,643,709,13,641,10,485,13,485,11,269,13,485,13,10,14,14,485,708,811,485,15,13,13,13,11,485,13,9,11,13,485,13,13,13,11,485,642,641,9,10,13,13,485,856,641,934,408,272,272,411,409,269,411,411,409,408,408,643,411,408,269,485,13,13,485,485,13,14,641,485,13,485,11,485,485,10,485,810,485,641,14,485,485,642,13,485,641,485,485,14,13,11,13,485,641,485,15,485,13,14,484,14,641,411,408,411,408,411,643,641,411,411,272,407,408,411,411,408,643,409,643,411,408,409,411,483,409,674,13,13,642,13,15,13,485,945,485,13,15,13,14,642,10,485,641,269,485,485,15,13,13,14,13,567,485,13,485,641,14,485,13,569,11,13,14,13,485,642,642,321,411,643,408,643,411,411,408,269,409,271,408,483,411,409,408,269,13,14,13,14,9,13,13,13,649,15,13,9,14,485,14,485,269,622,13,13,485,13,14,11,642,588,13,11,15,15,485,13,13,641,11,13,13,485,13,485,13,641,408,411,271,411,711,711,409,409,408,409,411,409,409,641,411,643,538,11,9,13,11,15,14,15,11,15,13,485,11,11,13,11,13,927,641,13,485,947,485,485,11,641,269,642,11,485,13,13,641,485,607,9,13,13,15,11,14,15,11,411,271,643,409,408,411,408,408,408,411,411,271,483,643,409,271,409,408,408,409,411,408,411,408,641,485,485,15,11,642,13,13,641,485,13,484,485,15,485,485,485,927,841,15,641,13,485,484,13,14,939,641,11,11,9,485,485,11,709,15,13,485,485,485,13,14,457,483,411,408,408,483,409,408,641,277,409,643,411,408,409,643,408,14,485,13,485,14,485,9,485,666,485,485,13,13,11,14,11,709,929,11,9,485,485,15,10,485,9,710,485,15,11,11,485,13,485,13,13,13,15,13,13,9,13,485,269,643,411,411,643,483,271,408,269,643,408,411,408,408,408,409,411,15,485,485,485,485,485,14,14,641,485,11,485,485,14,485,13,269,811,11,11,485,485,10,11,485,14,269,9,10,13,11,13,485,485,269,485,13,10,13,10,642,10,9,641,409,411,409,409,643,408,643,269,409,411,408,409,643,408,408,641,409,711,409,483,411,483,641,408,502,13,14,485,15,14,13,485,13,10,485,641,14,485,13,13,810,641,13,642,485,11,484,15,485,14,630,13,485,15,13,13,13,9,269,14,485,485,642,641,14,485,434,408,407,411,643,409,408,408,269,408,272,408,408,411,411,411,948,10,641,13,13,11,485,14,661,485,485,14,485,10,14,13,748,486,509,10,15,485,14,13,485,485,15,485,641,13,13,485,14,9,485,13,13,11,15,14,485,269,409,408,408,408,411,408,408,641,409,409,410,411,409,411,411,269,484,10,11,11,13,641,10,13,485,11,13,485,10,485,13,927,13,15,13,485,14,485,11,269,14,9,15,11,13,13,13,641,10,13,13,642,14,14,11,710,411,408,408,409,641,411,411,409,411,409,643,408,411,408,643,711,408,641,408,711,643,408,270,485,641,13,10,485,13,485,628,642,485,13,11,13,15,13,269,927,485,485,11,11,13,485,10,269,15,485,11,13,13,14,13,11,10,13,485,15,15,485,14,408,411,272,408,408,483,409,710,411,483,643,643,411,483,272,641,15,13,485,485,485,485,14,580,13,485,13,11,11,14,485,269,525,11,13,11,11,11,642,14,641,10,13,10,485,485,485,13,641,485,485,11,11,484,9,13,411,409,643,272,411,641,408,411,411,411,409,643,271,483,272,643,485,485,641,485,642,485,13,616,485,11,11,485,13,642,485,641,585,485,11,14,485,11,14,13,508,485,13,13,641,10,14,15,10,9,13,642,485,485,485,416,409,643,411,408,408,411,408,339,408,408,643,411,411,271,483,391,408,408,483,411,411,408,408,641,10,485,485,11,485,485,642,849,485,11,10,13,10,11,13,692,488,642,15,13,485,11,13,14,641,13,10,13,14,485,13,562,484,485,10,13,10,485,11,14,408,411,643,411,411,408,411,338,411,411,643,641,411,411,408,15,11,13,485,14,10,13,9,485,641,11,485,642,13,13,269,927,642,642,13,485,13,641,485,485,15,642,642,13,13,642,15,1203,485,485,11,15,14,642,14,14,711,409,409,711,408,643,411,408,411,483,411,408,408,408,411,411,13,485,10,485,485,485,15,1204,11,485,13,485,11,642,14,14,927,13,13,11,485,13,14,11,10,641,11,485,485,11,13,14,269,14,14,10,11,10,14,485,641,711,411,408,483,408,408,411,483,411,411,409,643,411,408,408,271,408,408,711,408,408,711,503,13,13,485,11,15,13,13,1214,13,641,642,9,485,485,10,269,927,485,642,13,13,14,641,11,943,11,15,10,13,11,15,13,709,14,485,13,13,485,485,642,300,408,641,643,408,408,408,407,269,408,409,272,411,711,411,272,641,485,485,13,485,485,13,13,1203,11,12,13,11,11,13,11,929,603,13,485,11,485,485,485,485,14,13,485,485,11,13,485,14,556,13,11,485,13,11,485,481,409,272,711,409,408,483,411,272,409,643,408,408,409,408,711,269,485,13,485,14,13,485,485,13,485,485,13,13,11,11,485,929,269,13,13,642,485,485,485,641,485,10,485,485,10,13,13,485,13,485,12,11,641,11,11,14,271,711,411,643,411,643,408,311,411,411,408,408,408,408,408,709,641,411,409,408,409,272,411,641,484,13,484,642,15,9,11,633,13,13,13,13,13,485,9,914,929,11,13,10,11,10,11,13,536,485,642,13,11,13,642,485,641,11,485,11,485,14,10,642,272,408,411,643,272,408,409,272,272,411,408,408,643,641,411,411,13,13,485,10,641,13,11,642,10,13,15,11,642,485,485,269,927,485,13,13,642,485,13,13,485,13,10,11,15,11,485,14,485,14,485,14,14,13,15,642,709,408,408,641,411,643,411,411,407,411,411,411,408,411,408,411,13,485,13,485,485,11,13,642,11,485,13,10,14,13,642,741,929,14,14,13,641,9,14,13,13,14,14,642,13,13,13,10,11,641,13,13,13,485,11,11,709,411,409,711,711,408,643,483,641,271,271,408,409,411,411,641,269,711,411,409,411,408,411,408,13,13,485,13,13,642,13,11,14,485,485,13,13,11,485,485,1215,665,10,485,13,11,14,13,641,921,11,642,485,485,11,485,10,13,13,11,13,641,485,13,485,408,643,271,643,410,409,408,269,483,641,408,408,408,411,408,511,485,485,13,11,13,11,11,587,485,13,485,485,485,13,485,927,526,11,11,485,15,485,11,13,15,485,485,14,13,13,14,1470,13,11,13,485,13,13,14,269,408,411,409,408,411,408,643,269,272,409,411,272,408,643,643,9,11,13,13,11,641,13,14,13,13,13,485,641,13,485,14,810,641,14,15,11,642,10,15,485,641,13,485,14,642,485,485,13,709,15,11,11,13,485,485,485,1488,272,408,409,643,408,272,934,869,411,411,641,411,408,643,272,343,409,411,711,272,483,408,643,11,10,11,485,13,13,13,11,13,485,13,13,14,485,14,743,927,500,13,485,642,11,11,13,13,13,485,485,13,13,485,485,533,641,485,485,13,13,13,642,269,409,271,408,411,411,411,408,8,289,408,411,643,407,408,411,409,13,642,11,15,485,641,13,13,485,485,642,485,9,15,11,269,1215,485,13,13,485,13,15,14,487,485,11,485,14,642,485,13,14,11,13,642,14,14,485,13,13,408,408,483,643,411,483,408,408,711,408,411,408,408,483,408,610,642,641,14,13,485,11,11,269,642,14,14,642,13,485,485,709,810,709,10,12,13,641,10,11,10,269,485,485,641,11,11,485,13,546,485,11,485,14,13,11,13,641,411,483,408,408,408,408,869,409,408,411,411,711,411,272,641,411,483,408,411,408,409,409,13,485,11,485,485,641,485,11,11,485,13,14,13,13,13,485,929,641,13,11,485,485,485,11,14,551,485,15,13,13,14,15,13,10,11,485,13,11,485,13,11,272,411,408,641,272,711,407,860,408,411,271,409,643,411,411,11,641,14,13,485,10,11,11,13,13,13,13,485,14,14,269,811,9,484,11,15,11,11,484,485,14,485,641,485,485,9,13,15,10,485,485,11,13,10,14,269,411,411,411,643,643,408,411,641,272,408,272,409,409,643,483,269,13,485,9,642,14,641,14,560,485,485,13,13,641,485,485,269,810,11,13,642,485,14,485,14,641,485,13,11,11,11,13,14,269,11,15,9,11,14,13,13,1743,408,643,408,408,411,643,411,408,411,711,408,643,272,411,411,411,408,641,411,408,711,408,711,13,13,15,485,10,485,485,14,485,13,485,485,485,11,485,710,486,485,15,13,641,11,13,13,610,485,485,485,11,10,13,485,13,13,9,13,485,485,14,11,457,408,409,408,272,483,411,411,269,483,711,409,272,411,409,408,835,15,13,15,11,642,641,485,836,485,485,10,11,13,14,10,926,8,11,11,13,11,14,642,13,641,13,485,13,9,485,13,13,647,13,485,10,9,485,10,9,411,643,272,411,641,411,408,409,409,408,643,271,409,408,408,8,485,11,13,485,485,13,642,269,641,485,485,14,13,13,14,15,810,269,485,13,13,14,13,10,11,269,485,485,641,14,13,485,485,485,11,13,485,11,13,14,485,14,408,411,408,272,411,483,409,1744,411,408,408,411,411,409,407,269,408,272,711,408,407,483,483,408,13,13,15,13,485,641,11,13,12,485,485,13,485,642,15,709,929,15,13,11,485,13,13,13,269,13,485,13,15,10,485,485,1212,13,13,485,485,642,11,13,409,408,409,272,643,411,408,409,411,411,411,272,711,411,643,639,13,641,15,485,484,15,14,710,15,13,13,15,485,13,13,772,927,10,13,9,13,485,11,12,834,13,13,485,11,15,485,947,485,641,11,11,485,13,11,485,411,711,409,408,409,272,643,710,408,483,483,408,408,409,408,641,13,13,13,13,13,13,485,565,9,11,13,485,641,14,10,927,587,13,485,485,10,15,13,485,641,13,13,485,485,13,485,485,269,11,9,485,485,11,641,642,643,408,643,411,409,643,711,643,411,407,711,641,411,411,408,1472,411,408,411,411,408,409,408,657,641,485,15,485,485,11,11,641,11,13,11,947,485,14,642,811,269,13,14,642,485,485,13,485,269,485,11,485,11,11,485,13,529,641,11,13,485,13,13,485,641,483,643,643,409,408,408,408,444,271,411,409,411,411,409,411,13,642,485,14,485,485,485,485,13,485,13,13,641,10,11,794,929,641,485,11,10,11,485,485,611,642,485,485,11,13,11,13,13,13,485,485,13,485,641,13,269,411,408,411,409,408,411,643,269,408,411,641,643,409,409,408,485,485,641,15,485,15,13,13,485,485,485,13,9,642,642,10,732,566,10,485,13,485,13,13,484,507,13,642,10,11,642,485,13,10,485,10,13,485,10,485,1488,272,271,643,272,409,409,411,641,408,411,411,411,408,411,408,641,409,411,711,409,408,409,643,643,13,13,485,13,14,8,11,14,485,485,13,13,10,642,9,485,927,269,12,13,13,11,14,13,13,641,485,485,485,485,485,13,485,679,13,13,485,11,13,13,13,421,408,408,411,641,409,411,408,272,409,409,408,409,409,408,8,13,641,13,485,13,485,485,269,13,11,642,13,485,15,485,641,927,14,484,11,641,642,642,10,10,11,14,641,14,642,485,13,13,602,641,485,485,8,11,14,15,641,409,408,272,408,411,408,441,411,409,411,408,411,643,409,641,13,8,11,15,485,485,11,269,11,484,484,8,641,13,13,1799,929,11,11,13,485,14,10,14,641,485,13,13,485,13,11,11,485,13,13,485,11,11,485,11,459,711,411,272,408,409,270,408,855,409,411,409,411,408,411,643,408,643,409,409,407,408,409,408,642,485,13,485,13,485,642,269,8,485,14,13,11,13,13,641,810,14,15,13,13,14,13,13,661,13,641,485,485,485,11,485,269,15,485,9,642,642,11,9,641,711,411,409,408,408,408,643,269,271,411,411,411,408,408,409,543,11,9,13,485,641,13,485,13,485,13,11,485,485,642,753,927,576,485,9,11,485,10,485,14,13,14,485,13,485,13,14,485,13,485,485,13,642,14,11,13,408,272,643,643,411,409,409,709,409,411,641,408,483,411,272,540,12,485,13,13,13,11,642,641,9,13,13,13,485,485,876,1215,269,485,485,13,9,11,13,13,11,485,641,13,10,485,485,13,9,485,485,485,485,13,485,269,483,409,409,408,483,411,483,641,411,409,409,483,411,408,408,285,411,643,711,483,483,408,408,10,485,14,11,641,13,13,1800,485,11,13,13,485,11,642,2054,929,13,13,11,485,13,13,13,641,485,485,15,485,13,485,485,13,13,14,485,11,641,13,15,269,409,711,711,271,408,643,408,436,271,641,408,411,408,408,411,485,13,485,13,485,13,13,13,641,485,10,13,11,10,13,642,2059,486,13,485,13,13,485,642,14,709,8,485,14,11,13,485,13,555,14,15,485,485,13,14,11,641,411,408,409,411,408,711,409,388,411,408,483,408,643,483,408,11,14,10,13,13,641,485,11,13,13,9,10,11,9,485,269,810,12,485,11,485,485,485,13,709,10,11,642,485,8,10,14,10,485,14,484,485,485,13,485,269,408,271,411,641,408,643,411,284,272,411,272,643,411,411,409,411,411,483,643,411,411,272,710,11,11,11,13,11,15,11,641,13,13,13,485,14,11,485,726,929,11,11,14,485,642,11,13,614,641,642,485,642,15,485,10,641,485,15,13,13,11,14,485,483,408,408,411,409,411,409,411,408,411,272,408,408,409,408,709,10,13,14,14,11,13,13,485,485,11,641,485,10,13,485,927,641,11,13,485,485,11,13,641,1470,8,11,642,11,10,13,642,13,13,13,8,485,14,13,319,411,408,408,272,411,411,643,1488,411,641,411,408,270,409,271,710,641,13,13,13,642,485,13,269,485,13,14,15,485,485,10,269,927,1205,15,14,485,13,13,485,14,485,13,13,13,10,15,13,485,641,11,485,13,10,11,8,14,408,409,409,409,411,409,643,269,272,711,408,643,408,643,641,411,411,483,408,643,408,409,408,941,10,15,14,641,11,13,485,1209,15,642,641,13,12,14,12,269,8,642,15,14,485,11,8,8,484,11,485,642,485,485,9,485,1208,13,13,485,485,13,13,11,483,411,643,270,411,408,271,411,408,641,271,711,411,411,483,408,13,485,11,15,11,13,13,833,15,14,14,484,10,485,485,680,929,485,485,485,13,13,485,14,947,8,485,13,485,13,485,485,922,13,11,11,9,13,14,13,269,409,411,408,411,410,411,408,2315,408,271,408,408,411,270,408,411,13,485,11,13,641,485,485,13,13,485,485,485,485,485,14,269,927,590,13,485,8,13,485,13,13,485,485,11,13,11,13,485,10,485,13,485,11,14,13,15,313,270,408,641,408,711,409,411,444,411,411,408,408,411,411,411,641,711,408,411,408,643,408,834,485,11,642,485,11,485,14,641,485,485,13,13,947,485,11,696,929,8,485,11,13,13,642,485,650,13,13,15,12,485,642,13,641,11,10,13,13,13,13,11,425,409,411,408,409,409,408,411,411,271,411,711,411,408,711,408,11,13,13,641,13,485,15,269,485,11,13,11,11,13,485,810,641,485,8,13,13,13,8,14,11,485,485,11,13,13,10,485,269,485,485,485,13,13,485,14,411,408,408,711,411,411,408,411,408,411,410,271,411,409,408,271,11,13,485,8,14,485,14,548,485,13,13,13,13,642,485,13,929,269,11,11,13,485,13,485,13,485,12,485,642,13,485,12,10,13,11,13,14,642,15,485,13,409,408,409,411,411,408,643,411,411,271,411,643,643,711,411,813,272,408,408,408,408,409,711,514,485,13,641,13,13,13,14,672,13,485,485,15,485,485,485,641,929,485,485,14,485,485,9,13,13,13,485,13,485,485,642,13,565,485,485,485,13,11,13,485,409,411,408,643,711,411,409,867,411,411,483,411,408,643,408,641,485,13,11,13,11,485,485,601,15,485,485,13,485,11,13,825,927,13,11,485,11,10,11,13,14,13,13,485,15,13,642,15,269,485,11,13,9,642,485,485,485,408,408,271,411,408,641,408,269,411,411,408,408,408,411,483,269,13,13,641,485,13,13,13,13,13,485,485,13,485,485,2318,641,631,14,485,13,11,9,13,485,518,13,13,13,641,14,13,14,485,13,642,14,14,13,13,485,409,641,483,643,643,411,409,382,408,711,409,411,409,411,411,641,408,408,934,408,408,408,408,269,485,485,485,11,13,11,13,533,13,13,485,14,641,485,14,929,810,485,642,485,13,11,13,485,269,485,13,13,485,485,642,11,559,13,13,14,485,13,641,485,711,409,411,408,409,408,270,411,408,409,411,641,408,643,411,411,485,485,485,11,485,13,485,269,641,485,13,11,485,485,13,641,926,13,13,13,15,11,13,642,10,15,13,485,11,14,11,15,1204,13,641,11,485,13,485,14,269,483,483,408,409,409,411,934,437,411,411,711,411,408,408,408,641,485,10,13,485,11,485,485,11,15,13,485,14,641,13,11,927,269,11,485,485,14,11,10,485,641,11,13,485,13,15,13,11,13,485,11,15,485,10,13,10,407,711,271,408,270,411,272,411,271,408,408,641,411,411,408,269,270,409,408,411,409,407,408,11,641,11,13,13,485,13,14,641,13,485,13,485,485,485,785,927,2320,11,13,641,13,13,13,485,666,8,11,10,485,14,485,15,485,14,13,15,485,11,9,9,641,411,409,411,408,408,410,930,409,411,643,408,409,483,408,409,10,485,642,13,13,13,14,269,485,11,11,11,485,14,13,269,929,641,13,15,14,485,14,14,13,269,485,15,11,485,15,641,485,13,9,485,11,14,13,485,9,711,408,271,410,411,408,643,2321,271,411,483,643,408,271,643,562,13,13,13,13,485,13,485,269,485,13,485,11,14,485,9,709,929,269,13,485,11,11,10,10,485,594,485,14,15,485,11,485,13,269,641,13,485,485,642,13,13,641,411,411,411,408,643,408,409,641,411,408,410,408,643,408,408,408,643,411,411,409,271,411,408,485,485,485,11,13,12,642,269,485,11,12,13,484,11,14,269,486,269,13,13,14,14,485,485,13,546,485,642,485,485,15,485,642,710,485,485,485,641,13,13,11,483,271,409,411,409,272,408,411,483,641,408,408,411,408,411,483,485,11,11,642,485,11,11,673,11,485,13,485,14,13,485,641,929,269,13,14,13,485,15,13,13,613,641,13,13,485,484,485,14,709,485,13,13,642,485,485,11,641,643,411,411,643,411,408,641,440,408,711,408,409,408,411,408,484,9,13,11,641,13,11,485,485,642,485,13,13,13,11,269,810,641,485,13,485,9,13,8,8,485,13,642,13,11,11,13,485,13,485,484,11,11,11,15,709,409,483,641,408,271,408,408,269,411,408,411,411,407,272,408,269,408,411,409,643,411,407,408,641,10,13,13,13,14,13,10,641,13,485,13,13,11,485,13,1792,810,485,13,485,13,485,485,13,485,11,11,485,485,485,13,642,2323,485,485,15,13,485,485,13,13,411,411,409,408,411,641,408,709,411,409,483,408,411,643,271,678,485,485,641,13,485,642,13,679,13,641,11,485,13,12,485,269,641,709,8,13,642,14,13,10,485,269,9,15,485,485,13,13,14,485,13,641,485,485,642,642,13,408,411,411,408,408,409,411,710,408,411,643,408,711,409,408,269,14,13,485,485,13,15,15,641,485,10,13,11,484,9,485,750,2324,667,485,485,13,13,485,13,13,641,13,485,485,485,13,11,14,641,11,485,9,13,13,11,641,288,411,711,411,409,411,408,411,408,408,411,409,641,409,409,347,483,272,408,408,409,408,411,709,13,641,13,485,485,485,11,13,13,485,13,10,485,15,14,929,486,642,485,14,641,485,14,13,269,13,10,485,11,11,947,14,13,641,13,485,485,485,485,13,277,411,411,643,411,408,408,269,411,483,411,409,270,408,411,650,13,485,13,13,13,485,641,14,11,485,13,11,11,14,13,11,929,269,15,11,13,13,13,13,15,485,11,15,13,485,14,13,11,8,485,485,13,13,485,641,485,2325,272,411,408,408,409,408,272,269,411,411,411,411,409,408,411,13,13,13,8,13,11,8,11,11,13,13,485,14,485,13,484,641,929,485,13,14,11,13,485,485,15,485,13,10,9,13,485,10,710,11,13,13,14,8,485,13,641,408,407,409,409,408,411,271,641,270,408,411,408,408,409,272,411,408,409,272,408,272,408,930,11,11,14,485,11,642,485,15,14,485,485,641,485,13,13,13,8,269,13,485,13,11,642,13,13,13,642,13,485,485,14,641,13,485,13,12,11,485,11,13,13,269,409,272,641,408,408,483,411,298,409,483,409,271,409,409,408,13,485,13,13,14,485,8,835,485,11,485,13,11,10,485,709,810,929,11,10,485,485,485,642,13,269,11,13,485,485,11,642,14,269,10,13,485,485,14,14,13,641,643,408,408,711,408,409,711,355,411,408,411,411,711,641,408,638,642,11,11,642,13,485,13,9,10,13,641,13,485,13,485,929,269,485,13,485,11,14,485,641,269,13,13,10,14,13,14,13,655,485,485,485,641,11,11,11,411,408,408,411,409,411,643,408,411,641,411,411,411,409,409,269,411,408,411,643,643,411,408,641,11,13,13,11,11,13,14,641,485,12,485,14,11,485,8,269,929,485,641,642,13,642,485,13,13,13,485,485,485,14,8,13,14,11,11,485,10,13,485,8,641,483,409,409,411,411,408,411,709,408,411,411,411,643,408,409,577,13,14,485,13,15,13,13,9,485,13,11,13,14,11,720,929,929,11,11,485,13,13,485,15,574,11,13,13,13,13,11,485,11,485,641,13,485,485,485,15,483,641,408,411,643,408,411,318,641,411,411,411,411,270,409,408,601,13,485,13,8,485,8,1204,11,13,485,485,14,14,641,13,929,514,13,11,11,11,13,485,11,269,13,11,485,14,15,13,9,269,13,11,13,13,485,11,642,709,643,643,409,411,270,641,272,470,411,411,408,408,643,409,411,411,409,411,641,643,643,408,411,13,485,13,485,13,11,15,14,15,11,15,14,485,13,15,14,641,927,13,13,13,11,13,14,485,13,642,485,14,485,11,485,485,13,11,11,13,8,13,485,485,269,411,408,408,408,408,408,411,641,408,408,411,411,411,411,271,920,9,485,485,485,13,13,485,11,485,13,13,9,15,9,15,876,927,269,13,10,13,10,485,485,11,660,13,14,14,485,484,14,13,13,13,13,642,485,641,13,485,408,411,411,411,411,408,411,269,643,411,641,408,409,408,409,269,485,485,13,485,11,13,485,13,485,14,14,14,11,13,15,2324,927,15,11,11,485,13,485,14,269,13,485,485,15,485,485,642,646,641,11,11,485,14,642,485,641,483,643,408,407,409,271,408,306,408,409,409,411,411,409,641,409,483,411,409,408,408,643,643,13,13,13,13,485,485,14,642,485,485,485,14,13,15,485,814,929,269,13,642,13,15,15,14,485,269,13,485,13,15,485,14,14,515,14,485,485,14,14,485,14,643,411,641,411,411,643,272,2327,483,483,411,409,409,408,272,269,485,11,14,485,642,485,15,269,14,485,485,485,642,13,11,641,810,9,13,10,642,11,485,11,13,269,641,13,485,8,13,642,11,641,485,11,13,13,485,11,14,411,711,409,643,409,408,408,408,408,411,411,411,483,641,934,657,485,642,13,15,13,12,13,709,10,9,641,13,485,11,13,1215,927,496,485,485,14,14,485,641,13,485,11,485,13,13,15,14,610,13,11,13,641,11,11,15,14,410,408,408,411,408,408,271,269,408,409,643,408,411,270,411,269,643,408,409,711,411,643,711,641,485,485,11,13,11,13,14,13,13,13,13,485,13,9,485,927,927,485,13,642,10,14,15,13,269,13,12,485,485,485,13,8,641,14,642,485,485,11,13,485,411,411,408,409,270,408,408,408,411,411,643,711,411,409,408,269,11,485,13,13,485,485,485,13,11,11,485,485,13,13,947,641,810,617,15,485,9,11,13,485,14,485,11,485,13,13,485,11,580,485,947,13,9,485,10,485,269,641,272,411,411,272,411,408,641,711,711,411,409,643,409,411,679,11,14,13,9,9,485,484,485,485,13,13,14,641,485,879,486,487,642,13,485,642,485,14,14,269,485,13,11,8,11,14,13,842,485,13,485,13,11,485,15,289,409,409,409,411,409,643,408,411,408,411,641,411,409,408,710,409,272,272,408,408,271,643,13,641,13,11,13,485,485,485,641,13,14,485,485,485,13,485,810,929,13,485,11,485,485,485,485,269,642,15,8,485,11,485,11,585,485,485,485,13,13,11,13,373,408,411,411,408,409,411,411,427,409,408,411,408,411,411,409,538,13,485,13,14,641,485,14,485,10,14,485,13,11,13,13,929,929,13,485,8,13,15,13,13,13,11,11,14,13,15,641,13,709,14,485,15,11,13,11,485,411,408,409,408,408,270,409,409,408,411,408,409,643,408,643,493,641,485,485,13,947,13,13,662,485,12,485,485,13,14,14,641,811,269,13,13,13,14,485,14,485,485,641,15,485,485,11,13,10,641,485,11,485,13,485,485,2329,358,711,271,411,408,411,411,641,409,711,411,409,409,411,408,643,409,411,408,408,641,408,408,269,642,11,485,13,642,13,13,269,484,485,485,485,11,13,485,269,927,8,13,485,642,11,15,9,13,13,13,11,14,641,11,485,13,709,485,642,642,10,13,11,13,409,641,407,411,711,408,411,408,409,271,411,408,411,409,643,269,13,11,11,15,485,13,10,269,485,13,14,485,642,11,485,873,929,485,485,13,13,13,13,11,484,516,485,13,13,11,11,13,269,11,14,13,11,485,13,641,8,711,410,409,408,409,408,483,436,411,411,408,641,411,409,643,485,11,13,15,485,15,485,15,484,641,485,485,642,13,8,269,928,929,11,485,13,11,485,11,485,269,642,13,13,642,485,11,485,13,11,641,485,13,485,11,13,411,411,483,483,409,408,643,408,272,408,408,408,711,711,483,371,408,643,408,483,408,411,411,409,11,14,13,9,14,641,13,269,8,10,485,11,14,13,13,790,811,641,11,13,13,485,13,13,485,269,15,485,485,485,15,485,485,13,13,11,14,485,485,13,15,483,408,711,408,408,409,483,269,409,411,409,408,411,408,411,485,13,485,485,485,11,14,485,516,13,485,485,13,9,13,1768,929,2324,13,11,641,485,14,13,485,7,13,15,13,485,13,485,10,641,11,642,485,9,485,13,13,641,408,411,408,271,411,409,409,455,408,411,270,643,411,641,408,485,13,8,484,13,485,13,13,13,14,15,641,13,11,14,269,927,269,11,642,13,13,15,13,641,269,8,11,485,8,14,11,642,511,13,11,13,641,485,485,485,409,2330,408,411,411,408,270,463,411,272,408,408,411,408,409,409,411,409,409,409,408,270,410,11,485,14,11,13,14,13,269,485,13,11,15,485,485,14,269,927,269,641,13,485,11,13,13,11,641,485,484,11,485,14,13,13,641,485,11,485,642,14,11,13,408,411,411,411,408,411,411,411,284,409,411,411,643,483,408,408,10,13,485,641,13,11,11,13,485,13,485,485,14,11,11,13,641,927,13,9,11,485,13,13,11,485,13,8,485,641,11,11,11,565,13,11,13,11,13,8,14,269,411,408,411,408,483,409,643,641,408,411,411,411,408,409,411,641,14,9,13,11,11,13,641,11,11,13,13,485,10,641,11,14,929,810,9,11,15,13,15,13,485,269,485,14,485,13,10,10,11,641,11,485,14,11,11,8,11,422,411,409,408,411,641,408,411,413,409,411,408,411,409,411,409,409,643,641,408,408,411,409,408,485,11,485,14,9,485,11,269,14,13,485,11,14,13,13,641,811,269,485,13,15,485,12,15,14,712,641,11,485,11,11,14,562,11,485,13,485,13,11,13,269,483,408,411,643,711,411,409,641,411,409,409,411,643,271,409,269,485,10,13,485,641,642,13,590,15,13,485,14,485,10,15,810,927,269,14,485,9,15,14,14,11,11,14,11,13,14,13,485,269,485,13,642,13,13,485,485,354,409,411,411,411,411,408,643,411,711,272,643,643,411,411,411,641,13,8,642,11,14,485,269,13,14,13,485,8,13,10,269,810,2324,8,9,485,485,13,485,13,2331,641,8,11,485,10,485,13,1211,642,10,11,485,13,485,9,641,411,409,408,408,270,411,408,411,643,643,409,409,408,643,408,269,408,411,408,411,408,643,409,574,11,485,641,11,485,485,485,14,485,485,13,485,14,485,815,2324,929,13,13,485,485,641,14,642,485,14,14,13,642,642,485,947,269,10,485,485,13,15,9,485,411,408,409,411,409,711,409,411,641,409,483,411,408,411,409,408,8,485,13,485,11,13,485,13,485,485,13,9,485,641,485,269,810,810,11,13,15,485,485,642,642,269,13,11,11,485,11,11,13,8,13,11,10,11,13,641,14,458,411,408,411,411,641,408,643,269,408,411,411,408,409,408,411,14,485,485,13,485,14,13,13,574,641,485,485,642,485,642,11,641,927,515,485,13,485,641,13,485,13,942,485,485,641,8,13,11,11,560,485,485,15,13,485,485,14,269,409,711,271,409,411,408,408,641,411,411,272,411,483,411,408,340,711,411,409,408,643,411,408,485,485,11,13,13,11,13,14,11,8,11,641,11,13,11,918,929,1215,11,10,485,13,485,13,641,14,10,485,11,13,13,13,10,269,15,15,13,641,9,8,11,415,411,409,408,411,408,409,408,409,641,408,409,643,411,711,408,8,11,485,10,485,14,14,269,11,11,485,11,13,484,10,641,929,810,13,485,15,13,15,485,14,269,13,11,485,485,11,11,485,641,11,11,485,15,485,8,15,416,411,409,411,407,643,409,408,271,411,408,409,408,641,411,409,14,11,485,10,13,14,485,642,485,13,15,13,485,13,13,485,810,641,11,485,14,485,14,11,14,13,13,642,13,8,485,485,11,13,15,485,485,13,13,642,485,269,643,711,272,411,643,272,643,317,483,407,411,408,483,483,271,641,711,408,408,270,411,270,409,11,485,485,13,642,485,14,485,642,13,13,485,485,641,485,13,929,810,641,13,13,485,13,13,11,14,580,13,13,485,485,11,14,13,485,13,11,485,642,13,10,11,409,408,411,643,408,643,409,269,411,408,641,411,411,408,408,13,11,15,485,11,485,13,14,485,11,485,15,11,485,13,11,927,927,269,11,11,641,485,13,14,11,485,13,13,485,13,13,485,485,641,9,13,10,14,13,13,269,409,483,411,483,483,409,272,641,409,408,408,270,411,409,270,709,10,13,485,11,13,641,15,269,485,485,485,485,11,11,485,269,927,8,13,485,13,14,642,14,485,485,485,485,13,14,485,13,642,13,13,11,11,11,13,485,13,269,408,408,408,643,409,411,409,269,272,411,408,408,408,408,270,933,272,408,411,411,411,643,272,269,11,12,485,485,14,11,485,269,13,13,485,13,11,13,642,948,810,927,11,8,485,485,13,14,485,269,485,14,10,14,11,14,14,641,9,485,11,10,485,485,485,370,411,408,411,272,272,408,643,409,411,411,408,641,411,270,411,642,14,485,15,642,485,485,269,484,641,15,642,485,11,485,709,641,929,485,14,485,11,485,10,13,485,485,13,11,11,485,485,485,520,13,641,9,11,13,11,485,408,407,407,407,411,643,408,306,408,271,643,643,411,411,407,269,11,485,485,13,485,11,13,642,485,11,8,947,13,11,14,269,927,810,485,13,13,13,485,485,485,641,13,485,13,13,485,11,14,498,485,10,485,485,485,10,8,408,411,643,483,411,411,411,411,643,408,408,641,643,643,411,269,408,408,411,408,408,411,409,828,641,11,485,13,14,14,13,13,485,10,13,13,642,15,780,811,810,629,13,13,642,485,13,485,485,11,641,13,13,11,13,13,485,9,642,11,11,642,14,11,269,643,408,408,272,408,411,409,1471,411,711,411,411,408,409,643,269,15,642,13,15,9,13,485,485,14,485,13,13,14,13,485,929,929,269,10,485,642,13,13,485,13,524,485,11,15,14,13,485,642,13,485,485,641,485,14,485,269,411,411,411,409,270,411,643,405,641,411,409,643,483,272,411,641,485,11,13,13,11,10,13,485,485,485,13,485,485,13,641,8,927,485,641,13,13,13,13,11,13,485,11,13,485,11,11,485,269,13,15,13,13,13,485,13,1203,408,270,643,408,483,271,408,312,411,408,409,408,643,483,408,329,408,411,643,408,643,408,643,11,13,11,485,14,14,13,13,11,641,13,485,13,485,13,642,927,929,927,13,15,485,641,13,485,13,1210,8,15,485,11,13,13,14,10,14,14,11,11,485,485,269,411,411,410,409,411,711,711,641,411,408,411,411,411,711,408,678,13,642,10,11,13,13,11,842,13,485,11,13,485,15,15,929,927,641,8,13,485,11,15,12,13,943,13,15,14,11,11,10,485,269,13,11,13,485,641,485,11,410,643,408,408,408,411,408,411,411,408,641,409,408,408,409,409,9,641,13,485,11,11,484,269,485,13,13,13,11,14,15,1794,486,810,10,485,641,13,8,13,15,550,11,11,13,485,10,11,15,543,15,13,11,11,10,13,14,641,483,411,408,409,409,483,643,641,408,411,408,408,711,409,408,357,643,409,408,408,641,409,411,579,485,13,14,13,10,11,11,542,9,11,15,13,15,485,13,929,641,929,485,642,485,11,642,485,485,13,11,13,485,641,14,11,485,651,485,642,485,485,485,13,485,407,641,643,272,270,409,407,408,408,411,643,411,643,411,411,614,485,11,15,10,15,13,11,641,485,14,15,485,14,14,485,14,810,927,641,485,485,13,642,14,14,485,496,13,11,13,485,485,11,485,562,13,485,15,14,485,641,13,483,408,408,409,408,411,409,272,411,409,411,408,409,408,411,2323,15,485,485,485,14,485,485,269,13,11,13,8,11,485,14,1748,927,929,15,10,13,641,11,484,14,935,15,485,13,13,13,11,14,269,11,10,13,11,13,485,13,641,411,411,411,409,408,408,2334,643,407,409,409,271,411,272,641,411,411,411,409,411,409,408,847,10,485,13,14,641,14,8,710,485,13,11,10,12,485,14,927,929,641,485,485,11,13,14,642,11,709,13,11,485,11,641,11,11,646,14,13,14,641,13,13,11,269,411,271,409,411,411,408,411,1483,272,409,408,483,408,408,643,593,485,485,13,13,10,11,485,641,11,14,13,485,13,485,8,269,929,927,485,11,11,485,10,485,13,605,11,13,13,485,642,13,485,269,13,13,13,11,14,11,11,641,483,408,409,408,711,408,408,361,408,408,411,408,272,411,408,485,485,9,485,485,13,11,14,485,10,13,485,15,13,642,13,2324,641,929,485,11,11,13,642,485,485,530,14,485,13,15,14,10,11,606,13,485,11,15,13,485,13,408,409,408,711,483,408,643,283,411,409,411,410,411,408,408,269,411,411,411,643,270,409,272,939,485,11,14,485,13,641,485,13,485,485,13,14,15,8,13,929,810,641,13,11,10,485,13,485,8,269,15,642,13,485,485,485,485,485,10,485,485,10,14,14,12,408,411,411,641,411,409,411,269,408,409,483,408,408,409,411,489,13,485,11,485,485,11,485,921,13,485,485,11,13,485,485,641,929,929,13,13,13,14,10,13,13,269,641,14,14,485,485,485,14,504,11,14,13,14,642,11,269,411,411,408,643,711,411,408,408,411,408,408,408,408,408,483,948,13,11,484,11,641,485,13,924,13,485,13,13,485,642,11,269,811,641,10,485,485,11,10,11,485,11,13,485,13,14,641,11,485,269,13,15,11,485,485,8,485,411,483,408,408,411,483,409,643,408,270,409,411,643,643,643,269,408,270,711,408,411,408,483,641,13,11,485,485,485,14,14,592,10,11,642,11,485,485,10,699,929,590,11,15,13,13,10,485,11,641,13,13,485,642,485,642,485,485,15,11,10,11,641,13,308,272,408,411,411,409,409,409,1476,411,408,641,411,408,408,411,13,13,485,13,13,485,485,15,641,11,11,11,485,10,10,269,927,929,269,8,485,13,11,642,13,10,485,14,8,10,11,14,11,485,485,485,485,13,13,14,485,11,411,408,411,409,711,411,270,269,408,408,643,711,408,409,409,643,15,13,15,485,13,641,485,13,10,642,13,15,484,13,13,269,810,929,13,642,485,10,11,642,485,11,11,13,13,10,13,13,642,11,13,485,485,13,641,11,485,485,711,408,411,411,408,410,409,300,411,641,409,408,409,409,643,862,411,408,483,271,411,643,643,676,485,485,13,11,13,13,13,641,642,13,13,485,13,485,641,269,927,927,485,15,13,11,11,11,485,269,13,13,13,485,14,13,11,269,13,13,485,485,15,642,13,2336,409,411,408,408,641,408,409,409,272,408,271,483,411,408,643,13,13,641,9,13,11,13,13,948,641,485,485,13,13,13,1771,929,929,1470,11,15,13,11,13,11,9,485,13,13,13,13,13,485,13,13,641,13,14,13,13,485,11,641,411,411,409,711,411,411,272,422,410,711,643,411,408,409,522,13,8,10,13,485,13,485,14,13,10,13,485,641,13,13,269,927,929,534,11,12,13,10,14,13,641,14,13,485,11,14,13,641,10,269,13,485,13,485,641,485,8,9,408,411,934,641,409,408,411,409,269,411,408,411,643,408,411,408,411,483,641,408,272,408,711,408,409,593,492,14,485,11,14,14,8,13,641,485,13,13,14,485,10,485,641,927,810,269,641,13,13,13,10,14,485,269,13,485,485,13,485,485,14,641,485,13,485,485,13,13,11,481,408,411,407,408,411,409,643,337,408,643,483,408,272,408,407,269,11,485,485,485,14,15,485,630,14,641,485,485,13,11,13,929,810,927,13,11,642,485,641,13,14,13,485,485,642,15,485,14,15,269,485,641,13,14,485,15,9,408,409,408,411,711,411,411,930,641,409,408,483,411,408,411,411,269,13,485,485,8,13,15,641,269,13,13,8,14,13,10,485,688,929,810,15,485,13,11,11,11,485,269,13,13,11,15,485,11,485,642,14,15,13,485,485,641,485,13,408,409,408,411,643,408,411,409,408,411,411,408,483,411,409,408,411,641,411,272,411,409,411,269,13,10,13,485,13,13,11,651,13,13,485,14,13,14,13,641,811,1215,485,11,485,9,485,13,485,13,641,484,485,10,13,14,8,642,15,485,642,14,485,14,11,269,483,409,408,270,411,483,409,269,643,411,411,271,483,643,411,830,14,13,13,11,11,485,13,11,13,13,485,11,485,15,888,486,929,827,13,11,11,11,485,8,11,485,14,11,485,11,13,13,13,485,8,641,14,13,11,14,13,408,409,409,711,409,410,411,269,270,409,409,411,408,409,408,411,269,642,11,642,13,13,485,11,641,484,13,13,11,14,11,485,269,929,810,641,15,485,13,485,642,14,485,641,14,11,11,485,485,485,641,485,13,14,485,485,13,485,485,411,409,408,408,409,411,411,643,711,408,408,641,408,411,411,273,408,409,641,409,408,411,407,408,15,485,484,13,9,12,11,485,641,485,485,485,485,642,642,15,796,929,2324,511,14,485,13,10,485,485,13,13,485,485,12,15,11,11,13,15,11,485,485,11,13,485,485,13,641,408,411,411,411,407,643,641,269,408,408,409,411,408,409,271,408,624,485,485,14,13,15,11,485,8,485,485,641,13,485,485,485,2592,1215,641,709,9,485,642,13,485,13,485,526,11,13,485,13,11,485,13,485,485,11,13,13,485,13,8,485,272,711,408,411,408,410,411,411,411,408,409,711,409,408,272,409,641,15,642,642,15,14,485,15,641,13,485,14,13,13,485,641,269,927,2324,641,13,485,485,485,10,13,485,641,13,484,10,11,15,485,485,641,485,485,485,8,485,15,485,485,709,483,408,643,411,410,408,408,933,272,407,711,483,641,643,270,409,269,408,408,641,409,408,408,409,2323,13,641,13,10,15,10,485,13,641,9,485,13,14,10,642,15,641,927,8,269,485,10,13,13,14,8,485,13,837,641,14,485,14,13,15,485,677,13,485,11,11,13,11,13,13,1483,411,271,409,408,411,711,409,358,408,408,408,272,408,409,408,408,485,14,11,485,13,8,13,2593,650,11,13,13,641,485,13,14,13,807,810,927,810,485,11,14,8,485,14,15,484,13,11,485,485,641,14,14,15,11,11,14,641,11,13,14,485,411,408,411,409,408,411,408,408,1484,641,271,411,411,411,408,408,408,641,13,485,15,13,485,13,13,14,13,13,485,14,15,9,11,927,929,709,9,12,8,13,11,14,13,677,485,642,14,485,13,14,8,269,485,15,484,10,13,13,485,339,409,411,408,270,643,408,483,277,411,643,643,641,408,711,408,411,409,411,411,643,408,643,569,13,641,485,13,485,485,14,269,13,13,11,485,485,15,13,2059,927,927,269,13,13,641,11,13,13,13,9,485,641,13,11,13,14,14,11,485,15,14,10,14,14,13,709,271,411,643,409,411,409,409,641,408,408,483,411,643,408,411,847,485,11,11,15,14,15,13,943,13,13,13,485,485,9,485,15,486,929,641,485,13,11,15,485,8,13,11,11,11,11,13,641,14,642,11,10,14,13,641,14,11,485,13,411,411,411,408,643,711,411,269,711,411,409,483,411,408,409,641,15,485,642,485,642,10,15,641,484,485,13,13,14,11,8,269,810,927,485,642,9,485,14,13,485,13,485,485,10,14,12,485,15,269,11,13,485,642,485,485,11,8,408,411,271,411,483,409,408,643,408,408,408,711,641,711,408,411,408,411,643,641,643,409,643,711,13,13,15,485,485,13,11,13,485,13,485,642,14,485,11,13,728,811,810,10,485,641,485,14,11,485,269,13,10,13,13,14,485,14,532,11,11,13,14,14,13,14,641,411,409,408,483,408,643,409,409,411,483,411,411,483,408,408,485,11,13,13,11,641,485,485,13,485,642,13,485,13,485,816,927,927,641,485,11,12,485,13,13,11,560,13,14,485,15,11,11,13,13,642,485,641,13,13,15,370,411,411,641,643,411,272,411,1203,409,643,411,408,411,272,411,529,485,14,15,11,11,13,11,653,15,13,485,485,485,13,803,1215,810,927,485,485,13,11,485,642,13,666,642,10,485,485,11,11,13,641,485,485,13,485,11,13,11,409,408,411,271,408,410,483,408,411,411,272,411,408,408,409,269,270,409,408,643,711,409,408,592,485,641,13,13,11,13,11,11,13,485,485,642,485,485,485,742,810,927,485,485,13,485,8,11,485,2594,14,641,485,13,11,485,14,944,11,11,13,11,13,11,11,641,411,411,409,411,409,408,362,411,408,643,408,411,411,411,409,15,13,13,13,8,641,14,13,13,485,11,13,10,642,485,269,2324,927,641,485,14,13,13,13,11,641,13,13,13,11,13,485,641,14,11,485,13,10,15,485,11,642,13,411,408,411,711,411,411,411,409,409,641,411,409,411,711,711,8,13,13,13,15,14,485,485,269,8,13,14,13,484,13,11,641,927,929,269,641,485,485,642,485,485,15,836,11,13,11,485,13,13,11,618,485,10,13,14,11,484,641,411,411,483,409,408,643,711,273,411,411,483,409,641,411,411,2595,411,409,408,408,409,409,411,832,485,641,14,485,9,642,485,13,13,13,484,15,13,11,897,1215,929,810,485,11,641,13,13,10,485,547,485,641,13,13,485,11,484,485,641,8,11,13,11,14,485,461,643,409,408,411,643,411,643,641,411,411,271,643,411,643,641,673,13,13,485,11,642,485,14,2846,485,485,13,642,642,12,485,702,810,927,679,11,11,14,10,13,641,485,8,485,13,485,8,14,13,493,8,10,14,641,15,485,13,408,408,409,409,272,711,411,411,411,641,409,643,711,643,411,269,485,13,485,485,642,10,11,641,485,13,13,485,14,11,13,770,8,927,10,485,11,485,485,11,11,485,485,485,642,485,485,485,11,709,485,13,13,13,485,485,11,709,408,272,271,408,411,641,408,269,408,409,409,409,643,408,411,643,408,411,641,483,483,643,643,13,11,13,8,485,14,15,562,641,10,485,8,642,13,13,794,927,2324,269,13,13,641,13,13,485,642,493,14,485,10,13,14,14,10,641,485,13,485,15,13,15,367,408,270,408,408,411,408,411,269,408,483,411,483,408,643,641,2847,13,485,485,12,13,485,11,851,485,11,485,641,14,642,11,927,929,927,8,13,12,485,485,485,641,13,15,14,485,485,8,14,14,635,13,9,11,13,15,13,485,451,409,408,408,408,411,411,483,711,272,411,483,483,408,408,933,11,10,13,15,485,485,485,641,485,485,15,485,485,13,14,709,927,2324,530,11,485,10,11,485,13,485,641,485,485,485,485,13,13,485,13,11,642,15,10,642,11,15,408,411,411,711,643,483,408,269,272,643,411,407,411,410,408,295,411,711,641,408,411,408,711,484,13,11,11,13,8,485,485,641,13,10,13,14,485,10,269,927,927,269,13,485,13,11,642,10,485,519,485,13,13,485,485,11,13,485,9,13,14,11,13,642,709,483,643,408,411,483,411,272,641,411,411,408,409,409,643,641,408,13,485,13,11,485,13,13,1211,485,15,10,485,13,485,13,14,1215,928,927,13,13,13,642,11,13,485,11,485,15,485,485,641,642,13,547,485,10,11,13,14,11,485,290,411,641,711,407,409,409,411,408,711,711,270,408,409,643,711,641,485,11,8,14,13,11,8,485,485,485,13,8,13,13,485,269,929,927,485,8,15,14,13,14,485,485,13,13,9,13,485,15,485,610,8,485,485,13,10,11,485,14,408,411,711,411,410,483,272,289,409,409,411,643,411,643,643,1475,711,711,641,409,411,408,409,583,10,13,485,13,485,485,485,641,11,10,13,485,10,642,797,810,929,929,11,485,9,485,8,485,485,709,11,13,642,13,14,11,13,641,485,13,484,485,485,485,485,411,411,643,408,272,409,411,641,408,411,411,408,411,643,272,546,14,11,485,14,641,11,485,668,485,642,13,14,14,485,13,269,810,929,942,15,13,11,485,13,15,14,269,13,13,10,13,11,11,485,556,485,11,641,13,13,13,13,411,711,643,411,271,411,643,643,641,643,408,411,411,643,408,709,15,9,14,13,485,11,2593,641,13,13,642,11,485,485,13,2324,929,929,11,13,485,15,11,485,2593,269,11,13,485,485,485,485,11,632,11,485,11,13,14,11,13,449,270,407,408,643,411,643,643,408,711,408,270,408,408,408,711,411,483,641,411,411,408,411,272,642,15,485,485,8,13,485,1210,485,13,13,10,13,485,8,641,929,927,628,485,485,15,13,485,11,11,13,15,13,10,8,10,13,269,11,11,13,485,485,13,13,641,272,408,408,483,408,411,641,474,483,411,411,411,408,411,272,560,13,10,642,641,11,14,485,567,13,485,12,8,11,13,11,810,8,1215,485,485,485,15,11,14,13,13,15,13,11,13,13,485,13,13,11,485,641,9,13,13,13,13,408,411,408,408,411,411,408,409,408,643,408,409,409,408,409,269,642,642,13,13,642,10,485,641,13,485,11,11,485,15,13,13,810,810,8,11,485,642,10,11,13,485,269,13,13,14,13,485,485,485,13,11,11,11,485,15,485,13,14,408,411,409,408,641,411,411,408,272,409,483,408,408,411,408,643,408,408,408,411,408,408,411,639,641,485,485,13,485,485,9,920,485,10,11,13,11,8,14,641,929,929,9,641,642,15,485,485,485,14,485,11,485,13,485,485,14,269,11,14,11,13,13,11,485,269,409,411,409,409,271,409,408,411,408,411,711,409,711,408,408,13,13,11,641,13,485,485,269,485,15,13,485,485,485,485,1749,2324,929,269,8,11,14,13,9,485,485,2846,13,14,641,11,10,485,15,647,11,641,15,11,485,13,13,1478,643,411,411,411,409,483,643,641,270,411,408,411,408,411,711,13,11,11,13,14,13,13,485,485,11,485,11,13,13,13,485,811,929,486,595,13,485,485,9,11,14,15,13,13,485,11,485,13,641,10,13,14,13,485,485,13,14,269,408,408,411,641,408,408,408,467,411,643,643,410,409,408,409,411,641,272,711,411,411,409,711,485,485,13,11,485,13,485,642,498,485,485,485,11,15,485,641,927,486,927,641,13,485,642,9,11,8,3102,10,13,15,485,11,14,13,675,13,14,485,642,642,14,8,13,411,409,271,409,408,641,411,858,270,408,411,643,409,408,483,600,11,485,641,14,11,485,485,8,8,13,13,642,485,11,14,929,927,486,485,642,485,485,10,13,10,13,11,11,641,8,485,11,485,710,485,485,13,485,13,14,9,641,408,271,409,711,408,483,408,411,411,711,643,411,411,411,641,485,13,10,485,485,14,13,269,485,11,13,10,485,13,8,485,3105,927,929,641,11,642,485,485,13,13,11,13,13,485,13,13,484,641,15,590,13,485,13,13,14,13,13,14,411,408,272,408,272,270,408,269,408,641,411,409,411,408,408,409,411,411,407,408,408,643,813,485,13,11,11,11,13,13,641,9,11,485,14,13,14,641,1754,1215,486,710,13,8,485,14,10,14,8,641,13,13,485,14,14,485,485,520,485,14,11,13,485,641,485,408,408,272,411,270,408,270,643,409,411,408,409,711,411,411,269,14,13,485,485,13,485,485,521,641,13,11,13,13,13,485,641,929,811,710,485,13,485,10,8,11,12,9,12,13,14,12,485,14,549,485,485,13,11,13,485,11,480,411,411,411,411,411,408,409,641,408,408,643,643,643,643,408,12,485,485,13,14,641,11,485,13,13,14,8,14,485,485,269,929,927,2324,485,11,14,485,11,641,485,269,13,11,485,14,485,11,485,485,13,14,641,11,11,13,13,272,408,408,408,409,409,408,1471,641,408,411,408,411,643,409,641,408,711,411,408,409,408,3106,13,13,485,485,485,485,13,14,15,8,13,485,485,485,485,734,929,1215,710,14,13,11,642,15,11,9,641,485,485,13,13,14,11,8,3361,10,14,13,13,14,485,9,269,711,409,270,409,408,409,643,408,271,270,411,411,408,271,643,485,641,13,485,13,11,485,10,9,9,485,485,11,485,14,485,927,811,929,485,14,485,9,485,485,485,269,641,13,485,14,15,13,13,641,15,485,11,13,485,13,13,434,411,272,408,643,408,409,411,411,411,408,408,411,409,408,408,485,485,13,13,485,485,485,709,14,11,11,10,485,11,485,269,1215,641,927,642,10,485,13,641,14,13,269,14,11,485,485,12,13,485,1212,13,11,13,15,13,13,11,411,641,411,408,411,483,408,643,641,411,409,408,409,272,408,408,641,408,409,643,411,409,408,411,485,8,13,11,14,13,13,13,485,11,485,14,13,15,13,13,810,929,2324,13,15,11,11,485,11,14,11,11,14,485,485,14,641,15,11,13,10,13,485,14,8,13,485,408,411,272,410,411,643,643,317,411,641,409,409,411,409,408,647,485,11,485,13,11,13,15,641,13,13,485,11,485,13,485,641,929,1215,1209,641,13,13,13,485,14,484,641,13,485,15,13,14,11,11,13,485,642,15,13,485,13,14,483,411,411,409,409,411,643,269,411,408,711,411,270,643,409,851,485,15,13,13,12,13,11,485,485,641,485,10,485,13,13,811,927,811,485,14,484,11,11,13,14,485,13,11,641,485,14,14,15,269,11,485,11,485,485,13,642,319,409,711,409,408,409,409,411,641,711,408,643,643,408,408,643,411,408,711,270,408,408,408,3363,13,485,13,11,14,13,485,676,485,485,8,11,15,13,642,929,929,641,654,11,13,11,13,485,15,13,485,13,642,10,641,485,13,523,642,15,8,8,485,485,12,14,410,270,411,411,408,409,411,403,641,411,271,270,408,408,408,8,13,13,10,14,485,14,485,678,13,485,485,13,485,11,485,13,8,811,929,11,11,13,485,485,485,11,269,485,11,9,13,9,14,14,641,642,14,15,642,13,485,14,1480,711,411,270,711,409,411,643,386,411,408,711,409,411,643,408,269,485,13,13,13,485,13,13,13,484,485,485,15,485,14,485,641,810,927,542,13,13,485,642,485,642,13,14,641,13,13,485,13,13,632,10,11,485,11,10,14,13,269,411,270,643,411,272,411,411,641,411,408,409,409,409,411,408,269,411,409,711,408,641,411,411,269,15,13,13,641,642,485,485,636,15,14,485,642,485,485,8,811,1215,486,929,13,13,8,642,642,485,10,485,8,642,11,642,642,485,11,485,13,485,11,14,13,485,15,709,641,643,408,411,411,411,408,641,408,409,411,483,411,643,408,641,485,485,14,11,13,14,641,269,485,485,11,485,485,14,13,929,928,929,834,13,13,485,10,485,14,641,14,485,485,13,13,485,13,13,15,485,8,642,641,10,485,273,409,411,409,408,407,643,408,269,409,411,408,643,643,711,711,577,641,14,11,14,13,13,485,269,11,13,11,485,13,11,13,641,927,1215,929,485,13,14,10,13,11,14,642,485,15,13,8,13,485,485,269,485,485,13,14,13,485,13,641,643,408,411,408,272,408,408,866,409,411,411,411,641,411,483,408,408,272,411,711,408,409,8,13,11,13,11,14,13,485,269,15,13,11,13,13,13,13,641,927,2324,709,13,10,641,13,485,14,13,11,485,11,485,485,11,13,2329,641,485,13,10,13,14,485,641,408,409,711,408,411,411,408,354,411,411,483,408,272,643,411,491,485,14,485,13,11,13,11,485,11,15,13,641,485,11,485,927,1215,929,11,13,13,485,485,13,14,13,485,642,10,642,485,14,13,1211,14,14,485,485,11,13,9,411,411,408,711,408,408,411,643,411,483,483,408,411,408,408,3364,11,9,11,485,13,11,642,269,13,13,485,15,13,15,13,816,929,810,1215,485,11,13,13,13,485,10,269,485,13,485,642,485,642,14,641,11,485,485,485,13,13,13,269,408,411,643,272,408,408,270,272,408,643,270,411,271,409,411,272,411,641,409,711,409,409,411,13,13,485,11,11,10,13,1800,485,14,485,485,485,14,13,641,929,927,606,485,11,485,13,485,485,642,659,11,13,9,9,13,15,14,709,15,9,485,11,13,10,13,641,411,409,408,408,411,411,408,269,711,271,409,409,408,643,643,408,662,13,13,642,641,485,13,485,509,485,10,13,642,8,15,14,928,641,927,269,13,485,13,15,485,485,485,548,13,11,641,485,14,11,10,485,485,11,9,485,14,13,13,408,408,408,272,411,411,408,269,409,408,408,411,643,408,411,641,13,13,485,13,14,485,641,269,485,13,485,13,8,641,13,642,1215,811,929,504,13,15,13,485,11,642,641,13,11,13,485,11,11,10,11,13,13,11,9,641,485,10,485,408,270,408,411,408,409,643,269,411,408,408,408,409,711,411,483,408,643,409,408,408,408,411,642,485,14,15,13,11,485,485,587,11,13,13,11,14,485,641,927,927,1215,944,13,11,642,485,11,15,13,641,13,485,485,485,485,485,14,8,10,11,13,11,11,11,11,408,271,643,408,641,408,409,864,411,408,411,408,410,410,643,11,13,641,485,485,485,485,579,13,485,8,485,10,14,14,641,927,810,927,14,15,641,10,485,14,13,269,13,11,13,11,13,15,14,11,642,11,485,12,13,11,14,641,711,408,711,409,408,408,408,338,411,409,711,409,408,641,483,485,13,13,14,13,14,14,13,9,485,13,14,485,13,15,894,927,929,927,13,485,712,11,14,641,13,14,13,13,13,485,485,485,642,269,13,13,641,485,11,13,11,408,411,411,409,409,411,643,711,641,271,408,408,483,411,411,269,411,408,409,711,411,271,408,641,13,642,485,11,642,13,485,485,13,485,14,13,8,13,14,811,928,929,641,13,642,485,13,485,642,641,518,485,13,15,13,13,485,485,11,485,485,13,13,642,485,269,410,411,643,408,408,408,711,408,408,409,408,409,408,408,3365,485,13,485,13,485,485,14,269,13,10,15,485,11,11,15,269,810,811,928,485,485,485,485,485,11,642,3366,14,13,11,15,485,14,8,269,642,13,485,13,11,485,485,641,411,409,409,411,409,483,270,869,408,408,483,411,641,643,272,269,11,14,485,11,485,13,485,11,15,641,485,9,485,484,680,927,810,929,517,13,485,484,13,13,11,13,642,485,641,485,13,13,485,709,11,13,11,11,11,485,11,269,408,411,483,408,409,408,411,641,411,408,711,711,411,411,408,411,711,711,711,643,711,641,409,13,11,485,11,485,485,11,13,11,13,485,641,485,485,485,1783,929,927,927,642,13,15,13,11,10,13,485,15,13,13,641,11,485,14,627,13,13,485,13,10,485,13,411,641,409,411,411,408,411,709,411,711,643,411,411,411,643,641,8,485,485,11,13,12,485,584,13,15,14,485,485,14,13,810,810,929,641,11,13,15,485,642,11,8,13,8,8,8,13,8,15,485,485,13,13,15,485,641,14,485,411,408,408,270,411,408,408,269,411,483,641,408,409,408,411,269,12,641,13,10,14,13,13,13,485,8,12,14,642,13,14,724,929,3367,269,13,641,485,10,13,485,14,485,485,11,485,11,485,485,485,574,485,485,13,13,13,13,3368,408,408,411,409,408,411,643,408,643,409,411,408,643,411,408,411,409,408,408,272,271,407,711,269,485,10,15,11,9,485,8,484,485,485,485,485,485,11,485,810,927,811,269,14,9,14,485,485,9,10,11,485,641,485,11,11,8,13,485,11,947,13,14,13,485,454,408,711,409,411,643,411,643,641,411,408,408,411,483,407,411,554,485,13,13,485,485,485,485,13,485,485,11,641,11,15,10,1215,928,929,269,11,485,485,14,11,641,13,13,11,14,642,11,14,11,9,485,485,15,641,947,11,13,466,411,409,271,409,409,643,411,269,643,408,411,411,643,408,409,641,13,11,13,13,485,485,13,641,485,14,11,13,13,13,14,929,929,929,923,11,12,13,14,485,13,15,922,485,13,15,10,485,11,712,269,10,485,13,14,11,11,13,269,711,409,270,408,411,411,411,269,408,411,272,641,408,411,408,269,408,408,408,411,408,411,411,13,641,15,485,13,10,485,11,641,11,11,11,485,10,13,13,696,1215,810,2319,10,641,485,485,14,485,14,710,485,13,13,485,10,485,11,641,485,14,485,485,13,485,11,343,408,411,408,411,409,408,409,339,409,409,409,408,641,411,711,485,484,485,14,8,13,485,11,14,13,641,14,13,13,642,269,486,929,929,11,13,485,11,485,11,11,10,13,13,641,8,13,485,14,269,11,13,10,13,13,14,14,269,411,408,409,272,408,411,409,641,408,408,411,408,643,409,411,11,8,11,13,11,642,641,485,12,15,485,485,8,13,11,13,929,929,486,269,485,13,13,485,14,13,485,13,485,485,485,485,641,485,11,485,15,13,11,13,11,11,269,409,272,641,408,643,411,408,643,408,411,483,483,409,411,409,272,272,409,409,408,643,411,270,615,485,13,11,485,14,11,269,485,13,485,13,14,15,485,728,486,927,926,485,15,485,485,485,14,13,485,485,13,485,485,10,13,485,485,15,13,14,485,13,11,485,269,408,483,411,408,643,409,408,408,411,411,411,411,411,643,643,485,485,11,642,485,485,13,269,15,13,485,485,13,484,14,641,927,927,927,485,13,13,11,13,13,11,710,641,10,11,485,485,11,14,657,13,485,485,10,11,14,11,269,408,483,409,411,643,643,641,711,408,411,408,272,411,643,408,11,13,15,11,642,14,485,485,11,485,13,14,13,15,9,15,929,929,929,811,11,485,485,13,641,11,13,510,13,14,485,485,9,642,14,709,485,13,15,13,13,13,13,269,641,409,271,411,408,711,270,269,408,409,272,409,409,409,408,641,408,270,408,409,411,408,409,269,15,13,485,11,14,13,13,13,11,11,11,641,13,13,14,927,929,2324,269,485,14,13,13,642,641,13,493,15,15,14,485,11,14,11,485,642,485,11,485,485,485,809,272,270,643,411,409,411,408,379,641,408,408,643,408,409,411,641,485,485,11,12,484,485,485,11,485,485,11,13,14,485,8,486,811,929,641,485,485,11,13,15,14,485,13,485,11,13,14,485,485,565,485,485,13,8,10,641,485,298,408,408,411,411,483,643,411,409,408,411,641,408,411,409,269,15,485,13,11,642,14,13,269,641,13,13,14,13,485,15,641,810,1215,929,13,13,13,11,485,11,13,710,947,13,13,14,485,13,10,542,13,485,485,13,485,14,13,641,408,411,409,408,483,408,641,409,409,411,408,408,483,408,411,411,408,483,411,641,270,409,269,485,642,14,13,11,14,13,549,13,641,13,13,10,485,642,929,927,810,811,485,642,485,642,11,13,485,8,13,485,11,14,14,14,485,485,8,11,11,15,14,642,14,483,408,408,408,411,409,408,269,643,409,408,643,408,408,643,576,11,9,485,11,13,641,14,577,485,485,485,485,14,11,485,927,3369,929,641,642,11,642,15,10,14,13,709,485,11,13,10,641,13,13,585,485,13,13,485,10,11,484,409,407,641,643,272,410,408,408,411,271,411,411,409,643,408,269,13,485,485,11,485,485,485,641,485,14,13,13,13,13,13,769,810,927,927,642,13,13,9,13,485,13,269,11,13,485,485,13,11,8,555,15,11,13,13,13,10,13,326,408,934,411,643,641,411,409,326,408,408,407,408,411,411,408,409,408,641,408,483,411,408,2321,485,485,13,485,485,13,10,590,642,8,13,485,13,9,14,269,928,929,929,13,641,642,11,13,13,14,13,641,13,13,13,485,10,14,13,642,642,11,11,14,485,485,641,270,411,408,409,409,411,483,1744,411,643,270,408,641,272,408,710,11,11,11,484,485,642,485,269,13,11,11,13,13,8,14,797,641,2324,486,485,10,485,485,485,485,13,537,8,11,14,11,485,485,485,563,641,14,11,11,11,15,485,641,272,409,409,411,409,408,411,711,411,408,411,411,408,483,641,485,485,13,13,485,13,642,269,485,8,14,8,641,485,14,810,8,810,641,11,13,13,485,10,14,11,556,485,9,13,13,641,11,13,562,485,11,13,14,11,485,8,411,408,641,408,411,408,711,711,408,641,411,271,408,409,408,278,411,411,411,411,271,408,408,269,11,11,10,15,485,13,10,669,485,13,13,485,13,14,13,269,1215,929,811,485,485,13,485,13,13,13,641,485,642,11,14,10,11,485,596,13,13,485,485,641,13,14,269,408,409,409,411,643,408,483,408,411,409,409,408,409,408,643,11,641,15,485,13,13,10,15,641,485,11,10,14,485,485,897,486,811,810,269,13,13,485,11,13,485,13,641,485,485,14,13,12,14,826,11,485,11,485,13,485,642,710,271,411,411,643,409,641,643,274,408,271,409,408,408,408,409,13,9,11,641,13,13,642,269,10,485,11,13,11,485,14,486,927,810,929,13,485,13,641,11,11,13,269,485,485,485,8,485,485,14,13,13,13,11,485,14,485,709,408,411,711,271,409,711,408,641,272,408,711,407,411,643,408,397,411,408,409,411,409,408,408,13,13,11,14,485,14,485,527,13,13,10,11,485,11,13,269,810,810,810,269,13,13,11,13,15,13,11,14,13,485,641,485,485,485,542,14,485,11,485,485,485,13,269,408,411,411,409,408,643,408,389,408,272,643,483,409,409,411,641,8,14,484,11,13,12,641,13,13,14,12,485,10,13,13,810,810,927,641,485,14,485,13,8,15,13,269,13,485,485,485,13,13,485,14,13,484,13,13,485,13,642,409,643,408,711,408,411,643,709,409,411,643,411,408,411,408,485,8,485,485,11,13,11,13,485,8,485,14,13,485,10,13,811,928,929,269,485,13,485,14,13,485,11,269,8,485,11,13,13,13,13,641,485,13,14,11,14,485,641,411,409,643,643,411,408,643,643,408,408,411,411,272,408,408,269,408,408,408,643,711,272,483,485,9,485,13,485,15,11,485,13,642,485,13,13,9,485,881,8,810,2324,924,15,641,13,485,485,485,485,13,485,485,15,13,11,485,642,526,485,13,485,14,485,11,469,411,408,408,409,643,411,411,3372,408,411,411,408,411,411,409,937,485,485,11,485,11,11,13,11,11,13,11,13,13,485,13,929,810,927,810,485,14,485,11,14,9,485,610,642,485,641,642,13,13,14,516,13,15,14,642,14,485,13,483,271,409,408,411,411,408,3625,411,408,411,643,408,411,408,641,485,14,485,485,485,11,641,676,13,485,14,13,13,485,13,927,927,1215,709,10,11,485,10,13,14,641,269,642,11,14,13,13,13,11,8,13,13,485,641,485,485,13,483,411,411,411,411,411,408,269,408,641,411,411,411,411,411,269,408,409,408,411,411,272,408,641,13,13,485,13,13,13,14,679,485,11,13,485,485,11,13,810,927,2324,269,11,13,11,485,642,13,485,641,13,13,13,15,485,15,641,269,9,13,13,13,485,10,11,408,270,410,272,408,408,411,342,643,411,410,643,408,409,271,269,14,485,11,485,485,13,13,485,642,11,9,13,485,485,13,927,929,927,269,485,641,11,10,14,485,13,663,485,13,11,485,15,485,9,269,485,485,11,13,11,13,13,641,408,409,411,270,643,408,408,269,643,409,408,408,641,408,411,13,642,485,14,641,13,14,10,508,485,485,13,485,11,8,14,929,641,8,927,642,13,485,10,485,485,11,269,15,484,11,9,485,11,14,485,641,485,11,485,13,484,13,483,409,272,408,408,643,411,269,411,411,643,272,483,410,272,641,408,270,408,272,408,408,408,542,12,13,11,13,641,485,13,13,485,13,485,13,14,485,1777,810,8,641,619,15,485,642,13,13,14,11,662,14,485,13,641,14,11,14,532,13,11,15,14,14,10,14,643,641,411,408,411,411,643,409,643,408,483,411,411,643,411,8,485,485,13,9,11,15,485,641,485,642,642,485,13,14,641,13,757,929,2324,929,485,13,13,13,485,13,13,641,9,485,14,485,14,14,11,269,13,13,15,13,641,485,485,269,408,408,408,483,409,408,408,397,409,272,641,643,408,409,643,411,13,485,485,11,485,11,11,14,11,485,13,13,485,15,13,269,929,810,929,269,641,485,485,13,14,485,14,641,13,13,9,13,13,9,590,485,642,13,11,13,14,13,485,408,408,409,408,408,411,408,269,408,643,411,409,272,711,643,364,411,411,272,411,411,483,411,13,11,14,11,14,13,485,14,13,485,11,485,11,485,485,269,929,929,927,810,13,485,485,13,485,485,15,15,13,8,485,11,13,8,13,3626,11,485,485,485,485,13,485,641,411,483,408,408,411,411,641,415,411,643,408,411,408,408,408,11,13,11,485,13,485,14,13,11,14,642,485,11,485,10,485,927,486,1215,645,8,10,485,15,13,11,14,3874,13,11,641,11,15,13,15,560,485,13,485,11,13,11,13,344,408,272,408,409,483,643,411,641,408,408,271,409,408,408,271,641,642,485,13,485,13,8,641,269,11,13,13,15,485,485,15,685,810,927,929,641,11,13,10,13,11,642,13,632,13,485,13,485,15,13,14,13,13,13,13,15,8,11,13,411,411,711,411,411,411,409,269,643,408,409,408,408,408,408,641,408,643,409,272,411,411,411,485,10,14,13,15,13,13,641,15,10,11,13,485,13,641,709,929,927,929,641,13,10,14,14,642,485,11,511,485,13,11,13,11,641,14,642,485,13,13,13,14,485,11,409,411,643,409,643,409,408,711,384,408,934,411,411,408,411,411,579,9,11,11,485,642,14,14,632,485,13,11,485,11,10,485,1791,929,2324,929,844,641,485,485,485,13,13,642,641,13,485,13,13,11,15,11,13,11,13,485,13,10,13,641,411,411,408,643,411,272,409,269,409,408,409,408,409,408,411,11,10,13,485,13,14,485,14,485,13,13,485,485,13,9,269,927,929,927,269,485,13,14,485,13,14,13,485,13,485,10,485,13,14,2329,14,8,485,13,13,485,8,709,643,408,411,409,409,409,408,641,270,409,411,411,409,711,408,387,411,408,411,408,408,641,411,623,13,11,11,642,485,14,485,11,11,8,641,10,485,11,2317,2324,929,1215,614,11,13,13,485,13,13,14,847,485,13,641,485,485,13,8,485,484,8,13,485,485,13,11,641,411,408,411,643,408,270,269,408,408,643,272,643,411,409,669,13,11,485,14,485,9,11,532,11,11,13,642,485,10,642,873,927,929,810,641,15,11,11,11,11,13,13,485,485,485,485,485,641,485,14,485,13,13,13,13,11,13,14,711,409,409,711,408,711,409,3875,272,641,711,408,643,408,270,269,485,485,485,13,14,14,485,641,15,485,11,8,13,14,13,641,811,927,929,269,15,13,485,11,485,8,485,641,485,485,11,11,14,13,15,943,485,642,485,485,485,13,13,269,411,272,411,711,641,711,411,269,409,408,408,641,408,408,408,643,413,408,483,408,711,409,409,409,269,484,13,12,485,11,11,485,269,13,8,15,11,13,485,485,269,929,811,927,269,641,947,10,14,485,13,485,630,485,485,485,11,13,13,485,641,14,642,485,485,14,485,641,408,408,408,270,643,408,408,272,411,408,409,643,641,411,411,8,485,13,13,947,13,13,485,485,11,11,13,13,14,642,9,269,929,929,929,810,13,13,13,11,15,13,13,269,13,11,13,485,14,642,14,658,641,10,642,10,11,13,13,269,408,643,643,409,411,408,409,269,408,408,411,643,408,408,408,483,11,11,13,14,13,641,2593,530,13,485,485,10,485,13,13,709,927,927,641,674,642,13,14,13,11,485,485,3874,642,485,485,641,11,642,13,485,13,485,485,485,642,11,14,411,641,408,408,411,643,411,855,409,408,711,408,643,408,411,464,411,411,711,408,408,411,409,641,13,13,11,13,13,485,11,669,13,12,10,13,641,14,485,927,2324,810,927,13,10,485,13,13,485,641,13,485,485,11,13,13,11,12,269,13,485,10,484,11,485,13,270,272,408,411,408,411,411,711,411,641,643,408,408,410,272,8,15,485,485,12,13,10,8,269,485,13,485,11,10,642,13,641,927,927,927,1214,642,8,485,13,14,8,14,269,485,10,485,485,485,485,13,641,13,11,15,8,11,13,485,485,411,411,408,408,411,408,643,408,408,483,409,409,711,411,411,8,642,14,485,9,12,485,485,1800,641,11,14,13,2593,642,11,641,8,927,927,269,13,485,13,11,485,11,14,13,11,13,485,13,485,15,485,523,13,13,13,11,15,485,8,411,408,409,409,408,272,643,408,411,408,408,411,411,641,270,408,411,411,643,408,409,408,411,411,485,13,485,13,13,13,485,656,485,641,485,13,13,13,13,722,641,929,810,2324,13,485,641,15,485,11,14,11,13,641,14,485,14,485,485,489,485,10,13,13,485,11,485,269,411,408,408,643,408,408,411,641,408,411,408,408,409,411,641,411,11,11,13,13,11,485,13,11,13,13,10,11,485,11,11,269,2324,810,929,810,485,485,13,15,14,484,485,562,485,15,11,13,485,13,8,710,13,14,15,14,13,485,13,312,641,408,411,643,411,411,408,641,411,408,409,408,409,408,411,13,485,9,485,10,642,13,13,12,13,13,13,13,485,14,11,1215,1215,929,710,15,10,485,10,13,11,485,269,485,485,13,10,13,12,13,10,485,13,13,641,485,11,8,483,408,408,483,409,711,483,411,411,409,711,409,408,643,411,483,641,411,408,411,411,411,409,8,485,13,13,8,13,485,13,641,13,13,11,485,13,11,13,825,927,810,1215,269,11,11,15,13,485,8,485,641,13,484,13,11,485,14,11,269,485,13,15,10,485,10,15,481,409,411,409,641,411,408,270,269,272,272,411,483,408,643,408,547,485,485,13,485,485,13,11,641,10,13,12,13,14,11,9,810,927,927,927,485,485,485,485,11,13,11,590,13,485,13,13,485,11,485,641,13,15,15,13,642,13,485,370,483,408,270,411,483,641,408,483,270,410,483,411,711,711,408,14,13,642,485,15,13,13,269,13,485,11,642,13,485,485,929,927,927,810,654,485,13,641,485,14,14,485,485,484,641,642,642,10,11,11,13,13,485,13,642,484,14,14,485,641,271,408,408,272,409,409,411,4128,388,272,409,270,408,408,411,641,1744,411,407,408,711,483,411,711,408,269,10,11,11,13,13,11,11,11,9,485,642,641,10,11,14,10,269,927,641,927,929,485,642,485,13,641,485,485,485,642,642,15,642,11,11,485,11,15,503,642,11,15,485,485,13,14,297,411,411,272,409,408,408,409,409,641,411,409,411,271,408,643,408,641,13,485,485,14,11,485,641,485,485,13,485,485,11,641,13,13,269,929,927,928,641,485,12,485,485,13,9,641,13,269,485,11,8,13,13,11,14,1211,13,11,485,13,13,13,15,385,411,411,409,411,408,272,408,269,934,409,411,272,408,411,411,643,13,11,485,15,485,485,14,10,923,485,485,485,14,13,13,15,710,927,929,929,269,642,485,13,11,13,642,485,641,485,11,13,11,9,15,13,14,485,485,13,11,11,641,642,485,408,411,408,410,641,408,411,408,409,408,411,408,643,408,483,643,409,272,411,411,408,408,643,408,642,485,485,13,485,13,13,13,641,485,13,13,13,13,14,485,641,8,810,927,927,641,485,14,10,13,13,485,485,641,11,14,485,13,13,14,13,641,13,485,13,13,485,485,641,11,270,409,934,408,411,408,410,711,409,411,408,641,643,411,411,409,11,13,641,10,13,13,9,14,942,13,11,13,11,11,485,11,729,929,486,927,810,848,485,641,13,8,14,14,13,485,10,485,8,11,485,13,485,709,485,15,13,14,13,485,10,15,641,270,411,643,411,408,272,408,641,409,408,408,411,408,408,483,483,659,11,15,485,13,485,485,14,269,13,13,11,13,485,11,14,773,2324,927,929,929,11,13,10,14,641,485,642,15,4382,485,14,13,13,10,14,11,269,485,11,485,13,485,11,9,269,409,411,483,408,411,711,411,274,411,408,408,643,408,408,411,411,269,409,643,270,409,411,409,411,269,10,13,11,11,11,13,11,4385,642,11,11,13,10,14,14,485,929,811,641,927,269,11,14,13,485,641,10,13,269,14,15,485,485,11,485,485,485,12,11,13,13,8,13,10,642,408,409,408,411,408,409,411,643,641,408,411,408,411,409,408,483,641,8,485,14,485,485,13,14,269,14,485,485,13,485,13,13,907,927,2324,486,522,13,10,13,485,11,11,11,485,11,485,13,10,14,485,485,11,496,485,485,15,641,11,14,13,269,270,409,641,411,408,408,272,300,411,641,411,408,272,411,643,656,641,484,13,14,13,485,11,833,485,485,642,485,9,13,485,642,875,486,810,810,554,13,485,485,642,485,642,13,269,10,485,485,9,11,14,485,2323,13,11,485,485,10,13,641,10,408,411,409,408,408,641,411,408,709,408,409,411,409,483,271,711,269,411,409,411,409,408,411,409,485,13,13,11,485,14,13,11,641,485,15,642,11,485,15,13,738,929,929,929,496,485,13,485,642,13,485,14,641,13,15,485,13,10,485,2329,12,13,485,13,11,14,13,12,408,483,411,409,272,641,408,269,409,411,411,409,411,411,643,671,8,642,641,485,14,485,13,642,485,485,10,485,15,485,13,486,929,929,2324,269,9,485,641,11,14,14,485,269,13,13,14,11,485,14,485,641,13,11,13,13,11,13,9,459,411,411,643,411,409,408,411,269,409,408,411,411,270,408,411,710,13,11,13,13,641,9,485,503,485,13,11,11,11,13,485,927,1215,641,8,627,13,15,13,10,485,485,485,11,11,485,641,642,485,485,10,485,13,13,15,485,11,11,14,409,408,411,411,411,409,408,409,411,483,411,711,411,408,408,415,483,408,271,408,643,408,411,2319,15,485,485,11,13,485,11,827,13,485,11,11,485,8,11,810,927,929,929,269,11,485,485,14,641,485,485,13,11,642,11,9,485,14,485,13,14,641,13,485,13,642,324,483,483,408,408,408,271,409,433,411,409,408,643,411,643,411,269,11,642,485,642,11,13,13,641,15,13,485,485,485,485,13,269,811,927,927,269,485,15,9,13,642,485,13,269,642,11,15,13,13,641,15,851,14,485,15,485,13,485,485,711,411,408,641,408,408,271,411,411,483,408,411,409,408,934,569,641,11,485,485,11,13,11,269,14,13,11,14,14,13,13,641,486,1215,929,269,13,13,8,485,14,11,642,269,10,11,13,15,642,485,485,269,642,11,485,11,15,13,641,14,409,408,409,411,411,411,408,711,409,408,271,641,409,409,643,3368,411,409,411,408,409,643,408,840,642,485,13,485,11,485,10,269,15,642,485,15,13,12,13,641,486,929,929,648,641,13,13,485,14,485,10,607,485,10,14,14,13,13,10,641,13,485,13,14,485,10,641,430,408,411,411,408,408,272,409,408,643,272,711,641,408,411,408,485,13,13,13,9,13,485,13,14,485,485,11,11,485,14,269,641,927,810,929,15,485,485,641,642,13,642,13,13,485,641,13,642,9,13,11,642,641,13,15,10,8,14,13,642,641,711,411,483,408,483,408,411,641,411,408,411,411,411,411,410,634,11,13,485,9,641,13,11,669,10,485,11,13,485,13,14,810,927,641,1215,269,13,13,14,485,13,642,485,269,485,13,13,13,13,11,485,13,11,13,10,485,13,485,642,411,408,407,483,411,643,408,643,280,408,408,411,410,711,411,362,643,711,411,409,411,411,411,3363,11,13,13,485,13,641,485,269,485,13,485,485,8,485,14,899,810,2324,641,4386,11,485,485,485,641,13,485,269,15,485,485,9,14,13,642,269,485,485,13,13,485,485,485,332,408,408,411,272,483,272,411,641,409,272,408,408,411,408,8,11,11,485,8,11,485,485,669,565,9,642,13,13,13,641,13,810,927,929,810,641,9,485,13,11,13,485,641,529,13,485,13,11,13,485,13,642,485,484,14,641,13,15,485,408,411,408,411,408,411,409,709,408,641,270,711,411,270,643,9,11,485,485,13,11,13,8,9,10,11,485,15,14,485,4387,929,811,927,929,641,15,9,13,13,13,15,485,522,13,485,13,642,15,14,2323,485,13,11,13,11,11,13,11,411,409,643,270,408,643,272,411,411,408,272,641,408,272,408,344,409,409,411,643,411,408,409,269,9,485,13,485,11,484,485,269,10,485,11,13,13,13,13,641,927,929,810,269,13,13,11,485,11,13,485,626,485,485,14,485,642,485,485,641,13,485,15,11,13,485,8,409,409,411,408,408,641,408,711,408,409,270,408,408,408,411,501,485,13,641,15,485,11,8,269,13,485,9,485,10,13,13,1776,810,927,2324,929,485,485,641,9,11,13,14,14,11,11,485,485,13,9,13,1209,485,485,13,11,485,13,11,641,411,408,408,643,408,408,643,396,411,408,411,408,483,641,408,269,13,485,485,10,15,11,485,556,485,642,13,14,13,10,14,810,2324,641,810,593,8,11,13,641,485,13,11,14,485,485,11,13,11,485,485,13,15,13,485,9,13,14,485,408,408,411,411,409,409,483,408,408,411,410,409,408,408,408,411,711,409,408,408,411,408,408,409,827,11,485,485,485,485,14,13,485,485,10,485,13,13,14,13,486,927,810,929,710,485,485,13,9,13,15,13,15,485,13,641,485,642,13,11,485,13,485,13,11,485,485,709,641,411,407,411,711,410,411,855,411,410,411,711,272,408,411,641,13,15,13,485,642,485,641,269,485,11,485,485,485,641,14,14,929,810,927,810,641,11,11,11,11,13,485,13,269,485,11,485,11,641,13,485,632,13,485,485,641,485,485,485,367,408,408,643,409,408,272,411,269,408,711,483,409,411,408,483,641,14,485,485,485,11,10,13,11,13,485,485,13,8,11,11,927,810,810,929,269,11,485,485,485,14,12,11,641,14,13,14,485,485,11,642,510,11,485,485,485,13,10,14,411,409,272,408,641,411,411,643,408,711,411,409,408,411,408,408,270,409,411,408,411,411,643,522,641,13,13,14,11,14,13,641,11,13,947,14,485,485,11,903,927,929,927,269,13,11,13,11,485,485,13,641,12,485,13,13,485,10,13,518,485,15,13,11,11,641,13,408,409,411,411,409,643,411,643,411,408,409,408,409,411,483,709,13,13,485,11,11,14,15,269,641,14,14,485,13,13,13,1747,929,811,810,1215,13,641,14,13,485,11,485,269,15,11,13,11,11,11,13,641,14,15,11,10,11,485,485,641,409,409,408,408,643,411,409,709,408,411,411,711,408,411,408,709,485,485,14,641,485,11,13,623,13,10,13,485,13,13,13,927,641,929,1215,940,485,11,11,15,13,11,15,577,13,641,485,485,11,10,485,8,642,485,11,13,485,14,485,272,643,643,711,411,408,408,1482,408,411,270,408,643,411,272,409,643,411,408,2330,411,641,408,572,485,13,12,11,8,13,15,269,485,13,641,13,13,13,13,1215,929,929,929,1214,11,11,10,485,13,485,11,269,11,485,485,13,13,13,13,14,485,11,15,13,11,485,485,709,408,270,409,410,411,643,711,269,483,411,411,643,409,408,411,511,485,485,485,485,14,13,14,485,485,11,11,485,13,13,12,485,929,929,927,641,269,13,11,485,13,13,13,485,618,13,15,9,14,14,13,14,485,14,485,13,485,13,485,10,274,408,641,411,408,643,408,411,408,641,408,408,411,411,643,411,408,641,14,485,13,485,485,11,13,269,642,485,485,13,13,642,641,485,927,486,927,810,269,485,8,11,485,485,15,11,641,624,485,485,11,13,485,13,13,544,485,13,485,485,10,485,642,351,408,409,641,411,411,411,408,300,408,411,408,643,272,408,411,483,409,411,643,408,272,483,643,560,485,15,11,485,11,485,523,485,13,11,13,9,485,13,485,486,927,810,810,641,9,642,13,13,13,485,485,485,642,8,11,13,485,13,11,11,485,8,13,641,13,485,366,411,407,411,409,408,483,411,271,409,641,408,411,408,408,411,13,642,485,14,11,10,14,13,15,485,485,13,15,14,13,269,486,1215,927,929,641,11,13,13,13,642,13,485,569,485,11,13,947,8,15,11,13,13,13,14,15,485,641,4388,411,408,270,409,643,411,408,308,643,409,408,711,643,408,411,269,484,8,13,485,485,485,485,269,9,485,485,485,11,11,485,724,927,810,2324,929,13,13,13,642,642,11,485,485,641,13,13,13,485,485,485,14,485,485,485,10,13,11,485,269,411,409,408,408,408,408,641,422,409,272,408,483,408,411,408,393,408,408,411,641,408,409,643,485,14,13,14,485,10,11,14,13,13,13,485,13,485,8,14,927,486,486,929,269,484,641,13,11,14,13,13,13,13,11,485,9,485,14,485,13,11,10,11,13,13,13,269,407,411,408,411,408,409,408,345,408,408,411,643,411,641,411,269,13,15,485,485,11,485,13,709,11,485,641,485,15,14,13,927,929,927,3369,927,13,11,11,8,485,11,485,2329,485,13,641,485,485,485,14,269,14,485,485,9,11,485,8,474,711,411,409,411,408,408,408,641,272,409,408,408,408,411,407,269,11,11,642,15,11,14,14,485,14,10,13,11,15,14,485,1215,929,927,641,618,15,485,13,14,13,641,485,10,642,485,11,15,13,485,485,269,485,485,641,13,485,11,13,269,411,411,409,483,643,408,409,269,483,411,408,411,409,411,408,641,411,409,411,483,643,409,411,641,485,13,485,14,485,642,13,10,13,485,11,485,641,485,13,929,810,486,2324,269,485,11,11,485,15,14,11,503,14,15,11,10,485,485,485,485,14,14,641,485,485,15,13,643,411,411,271,411,411,411,930,641,411,270,409,408,271,408,939,10,485,485,13,485,13,15,641,13,13,9,11,10,13,641,929,1215,810,929,269,11,485,11,13,13,13,9,632,11,11,14,642,485,11,485,269,485,485,485,14,485,13,485,13,409,411,411,409,272,408,272,272,409,408,641,409,643,409,411,643,485,641,485,642,485,14,13,13,513,9,15,14,14,13,642,767,929,486,927,811,641,14,13,13,14,11,13,13,641,14,11,485,13,11,13,485,710,485,13,13,11,947,485,485,288,408,409,711,409,272,411,408,411,411,411,408,270,643,411,411,643,483,643,272,272,409,270,411,13,13,9,14,11,485,485,485,485,485,485,485,11,11,15,789,773,1215,927,929,927,641,11,642,485,11,485,485,642,641,13,485],"timeDeltas":[608250,1375,1208,1333,1209,1333,1042,1166,1250,1209,1250,1250,1166,1292,1250,1250,1250,1250,1250,1250,1292,1250,1291,1250,1042,1250,1292,1208,1250,1292,1250,1250,1291,1250,1292,1250,1292,1333,1250,1292,1250,1291,1250,1250,1292,1208,1292,1250,1250,1083,1250,1250,1292,1250,1292,1250,1250,1291,1292,1250,1292,1208,1250,1292,1250,1250,1250,1250,1250,1291,1250,1250,1292,1292,1250,1250,1291,1209,1250,1208,1083,1250,1250,1209,1291,1250,1292,1292,1041,1292,1292,1250,1291,1250,1209,1250,1291,1250,1292,1292,1291,1209,1291,1292,1250,1333,1375,1250,1250,1292,1292,1250,1250,1291,1250,1292,1250,1250,1250,1083,1292,1250,1292,1250,1208,1250,1292,1250,1291,1250,1292,1292,1291,1209,1291,1209,1208,1250,1292,1250,1291,1167,1292,1250,1250,1291,1250,1250,1292,1292,1208,1208,1084,1291,1250,1292,1250,1250,1292,1250,1250,1250,1250,1291,1250,1292,1292,1250,1250,1208,1292,1250,1250,1291,1084,1291,1292,1250,1292,1250,1291,1250,1292,1250,1292,1291,1209,1250,1291,1250,1292,1250,1250,1292,1250,1291,1250,1292,1292,1250,1250,1291,1250,1250,1250,1292,1292,1250,1250,1250,1291,1250,1209,1250,1250,1291,1292,1208,1250,1250,1250,1250,1292,1292,1250,1250,1250,1250,1291,1250,1250,1292,1208,1250,1292,1292,1250,1250,1250,1250,1250,1250,1166,1250,1292,1250,1250,1167,1250,1250,1291,1250,1250,1292,1250,1292,1291,1250,1167,1292,1250,1291,1250,1292,1250,1292,1250,1291,1292,1250,1250,1250,1292,1291,1250,1250,1292,1250,1292,1250,1291,1250,1250,1250,1209,1250,1250,1291,1250,1250,1250,1292,1292,1250,1333,1208,1250,1292,1250,1292,1250,1291,1209,1250,1250,1250,1250,1291,1250,1292,1250,1250,1292,1208,1125,1333,1250,1250,1250,1250,1292,1250,1292,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1250,1292,1208,1250,1250,1292,1250,1291,1042,1292,1250,1291,1250,1250,1292,1167,1291,1209,1291,1209,1250,1291,1250,1209,1291,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1084,1250,1291,1292,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1083,1292,1208,1292,1291,1250,1250,1250,1250,1250,1125,1250,1292,1250,1250,1250,1250,1292,1250,1291,1042,1250,1292,1250,1041,1250,1250,1000,1250,1209,1291,1250,1250,1250,1250,1292,1167,1291,1292,1250,1250,1250,1292,1250,1250,1250,1291,1125,1250,1292,1250,1250,1292,1250,1250,1291,1250,1250,1250,1292,1292,1250,1250,1208,1250,1292,1250,1041,1250,1250,1292,1083,1250,1250,1292,1250,1250,1292,1208,1250,1250,1250,1250,1250,1292,1208,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1291,1250,1292,1083,1292,1250,1250,1250,1292,1250,1250,1208,1292,1250,1250,1250,1291,1209,1250,1250,1250,1291,1042,1250,1292,1250,1250,1250,1250,1291,1042,1292,1208,1250,1250,1292,1250,1250,1041,1292,1292,1291,1250,1292,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1291,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1292,1250,1291,1250,1250,1292,1167,1250,1250,1291,1250,1250,1250,1125,1292,1250,1292,1208,1250,1042,1250,1250,1291,1250,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1292,1208,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1292,1208,1208,1292,1208,1292,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1125,1250,1250,1292,1208,1292,1250,1250,1291,1250,1250,1250,1250,1250,1250,1292,1292,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1292,1208,1167,1291,1209,1291,1250,1250,1292,1250,1250,1292,1291,1250,1250,1250,1292,1250,1292,1250,1291,1292,1208,1250,1292,1250,1250,1250,1292,1250,1250,1291,1292,1250,1250,1292,1250,1250,1291,1250,1250,1250,1292,1250,1125,1292,1250,1333,1250,1292,1208,1292,1250,1250,1291,1250,1250,1250,1292,1125,1250,1292,1208,1250,1292,1250,1250,1250,1250,1250,1291,1250,1292,1292,1208,1292,1208,1208,1250,1292,1125,1208,1250,1292,1250,1292,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1291,1209,1250,1250,1125,1125,1250,1291,1250,1250,1292,1250,1292,1291,1250,1250,1292,1250,1292,1250,1291,1250,1250,1292,1292,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1292,1291,1250,1209,1291,1209,1291,1209,1250,1250,1291,1334,1291,1167,1167,1250,1291,1292,1250,1292,1250,1208,1292,1291,1250,1250,1292,1292,1291,1209,1291,1292,1250,1292,1250,1125,1291,1250,1292,1250,1292,1041,1250,1084,1291,1250,1250,1292,1250,1250,1250,1000,1208,1334,1250,1291,1250,1250,1250,1250,1209,1208,1250,1250,1292,1250,1333,1292,1291,1292,1250,1208,1292,1208,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1167,1250,1292,1250,1250,1250,1291,1167,1250,1250,1250,1250,1250,1250,1292,1250,1291,1292,1250,1292,1250,1250,1291,1250,1292,1292,1250,1250,1291,1292,1250,1250,1250,1042,1291,1292,1250,1250,1292,1291,1250,1250,1292,1292,1208,1250,1250,1292,1291,1250,1042,1292,1291,1250,1084,1291,1250,1292,1250,1083,1250,1292,1000,1292,1208,1250,1250,1167,1250,1250,1250,1250,1291,1250,1250,1250,1209,1250,1250,1250,1291,1250,1292,1292,1208,1167,1250,1250,1250,1083,1292,1250,1250,1250,1250,1291,1250,1250,1292,1250,1167,1291,1250,1250,1292,1250,1083,1250,1084,1250,1250,1291,1375,1209,1291,1292,1208,1250,1250,1292,1208,1209,1250,1291,1292,1208,1292,1250,1250,1292,1208,1250,1250,1292,1250,1250,1250,1291,1292,1292,1291,1250,1250,1292,1208,1209,1250,1250,1291,1250,1125,1250,1250,1292,1250,1250,1292,1250,1291,1250,1250,1250,1292,1250,1042,1208,1292,1250,1250,1291,1125,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1292,1208,1292,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1209,1291,1250,1042,1167,1250,1250,1250,1291,1209,1250,1208,1250,1208,1292,1250,1292,1291,1250,1292,1250,1292,1250,1250,1208,1292,1250,1250,1291,1250,1250,1292,1250,1250,1083,1250,1084,1291,1250,1292,1167,1208,1250,1250,1000,1250,1292,1208,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1167,1291,1250,1250,1250,1250,1167,1250,1292,1291,1250,1292,1250,1292,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1292,1208,1250,1250,1292,1250,1250,1250,1292,1083,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1209,1250,1250,1250,1291,1250,1292,1250,1292,1250,1250,1250,1250,1250,1041,1250,1125,1292,1250,1292,1041,1250,1250,1250,1292,1208,1167,1250,1292,1166,1209,1291,1250,1250,1250,1292,1250,1208,1250,1250,1250,1250,1292,1250,1292,1250,1250,1250,1291,1084,1250,1250,1250,1291,1250,1250,1292,1250,1250,1292,1208,1208,1292,1250,1292,1250,1250,1291,1250,1292,1250,1250,1250,1250,1250,1250,1292,1291,1250,1292,1208,1292,1250,1250,1250,1292,1250,1250,1291,1292,1250,1250,1250,1042,1291,1292,1292,1250,1250,1250,1250,1041,1250,1250,1250,1250,1292,1250,1292,1250,1250,1250,1041,1292,1292,1208,1250,1250,1208,1292,1292,1250,1250,1291,1292,1208,1334,1250,1208,1250,1250,1250,1250,1292,1083,1250,1292,1250,1291,1250,1084,1208,1292,1208,1250,1250,1208,1292,1250,1250,1250,1292,1291,1292,1208,1292,1250,1250,1292,1250,1250,1250,1291,1250,1292,1250,1250,1292,1291,1250,1292,1292,1250,1291,1292,1292,1291,1292,1208,1250,1250,1292,1250,1292,1291,1250,1250,1209,1250,1291,1292,1292,1208,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1291,1292,1250,1292,1250,1250,1291,1209,1291,1209,1208,1292,1291,1292,1292,1166,1292,1250,1292,1250,1291,1250,1250,1292,1208,1292,1292,1250,1250,1250,1250,1250,1250,1291,1250,1167,1250,1250,1292,1250,1291,1250,1250,1250,1292,1250,1167,1250,1250,1291,1250,1250,1250,1292,1292,1250,1250,1250,1291,1250,1084,1250,1250,1291,1250,1209,1291,1250,1250,1292,1292,1250,1250,1250,1250,1250,1250,1291,1250,1250,1334,1250,1250,1250,1250,1250,1291,1250,1250,1292,1292,1250,1291,1292,1208,1250,1292,1250,1250,1250,1250,1292,1250,1250,1291,1375,1209,1250,1291,1292,1250,1250,1292,1208,1292,1208,1167,1291,1292,1292,1250,1250,1250,1250,1291,1209,1291,1250,1209,1291,1250,1292,1292,1250,1291,1209,1208,1250,1250,1292,1250,1250,1250,1250,1291,1209,1250,1250,1291,1209,1250,1250,1291,1250,1250,1334,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1292,1250,1291,1250,1292,1250,1292,1125,1208,1250,1250,1250,1292,1250,1250,1291,1250,1084,1291,1292,1250,1250,1292,1250,1291,1250,1292,1250,1292,1083,1292,1250,1291,1250,1167,1250,1292,1250,1250,1291,1250,1292,1250,1250,1250,1292,1208,1292,1000,1250,1291,1250,1250,1292,1208,1250,1292,1250,1250,1250,1292,1250,1250,1291,1250,1209,1250,1291,1250,1250,1292,1292,1208,1167,1291,1209,1083,1250,1250,1250,1292,1250,1250,1333,1250,1250,1333,1125,1250,1292,1208,1292,1208,1209,1250,1250,1250,1250,1250,1250,1291,1250,1292,1208,1250,1250,1250,1250,1250,1292,1208,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1291,1250,1250,1084,1250,1291,1250,1292,1250,1250,1250,1250,1250,1292,1250,1250,1166,1250,1292,1250,1250,1292,1125,1291,1292,1250,1292,1250,1250,1291,1250,1250,1250,1292,1250,1042,1250,1291,1250,1292,1250,1292,1250,1250,1291,1250,1167,1250,1250,1250,1292,1250,1291,1292,1292,1250,1166,1292,1250,1292,1250,1250,1291,1292,1250,1250,1292,1250,1333,1208,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1291,1250,1292,1292,1166,1250,1292,1292,1041,1292,1125,1292,1208,1250,1250,1292,1250,1250,1250,1250,1250,1250,1291,1209,1291,1250,1292,1208,1292,1250,1167,1250,1291,1250,1292,1250,1292,1250,1250,1291,1250,1167,1250,1250,1292,1291,1250,1250,1250,1292,1250,1292,1291,1250,1250,1250,1250,1250,1292,1250,1250,1125,1250,1125,1292,1250,1250,1291,1250,1292,1250,1250,1250,1250,1292,1250,1208,1250,1292,1250,1291,1292,1250,1292,1250,1250,1250,1250,1291,1292,1250,1292,1333,1292,1250,1291,1292,1250,1250,1250,1292,1250,1250,1291,1292,1208,1250,1250,1250,1250,1292,1250,1250,1292,1250,1291,1209,1250,1250,1250,1291,1250,1292,1250,1250,1292,1208,1167,1250,1291,1250,1292,1042,1250,1250,1291,1292,1250,1292,1250,1250,1291,1250,1292,1333,1292,1208,1292,1208,1209,1250,1291,1084,1250,1250,1291,1250,1292,1250,1208,1209,1250,1250,1291,1250,1209,1250,1250,1250,1250,1291,1250,1250,1292,1250,1292,1291,1250,1250,1292,1208,1292,1250,1292,1250,1291,1292,1250,1292,1250,1250,1250,1291,1250,1167,1250,1250,1292,1250,1291,1292,1250,1250,1250,1250,1250,1250,1292,1208,1250,1250,1250,1292,1125,1250,1291,1209,1250,1250,1291,1250,1250,1292,1292,1250,1250,1250,1166,1292,1292,1208,1292,1250,1250,1250,1291,1209,1250,1250,1250,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1291,1209,1208,1250,1250,1292,1250,1291,1250,1250,1250,1292,1250,1292,1250,1291,1250,1292,1250,1083,1250,1209,1291,1250,1292,1250,1208,1292,1292,1208,1292,1291,1167,1250,1208,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1291,1209,1208,1250,1250,1250,1250,1292,1166,1292,1250,1292,1208,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1208,1292,1083,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1292,1250,1250,1042,1250,1250,1291,1250,1250,1250,1250,1209,1291,1250,1292,1250,1250,1292,1250,1250,1291,1250,1084,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1208,1292,1291,1250,1292,1250,1250,1250,1208,1292,1250,1250,1292,1208,1292,1250,1250,1250,1250,1291,1292,1250,1250,1292,1250,1291,1250,1250,1250,1167,1208,1292,1250,1292,1250,1333,1208,1250,1292,1250,1250,1250,1250,1250,1250,1208,1292,1250,1250,1250,1250,1250,1083,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1208,1250,1250,1250,1209,1291,1209,1250,1250,1250,1250,1291,1250,1292,1250,1250,1333,1250,1250,1292,1250,1250,1292,1250,1291,1250,1250,1250,1292,1250,1042,1250,1250,1250,1250,1291,1250,1250,1292,1250,1292,1000,1291,1250,1250,1292,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1291,1209,1250,1291,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1167,1250,1208,1250,1292,1250,1291,1250,1250,1250,1250,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1209,1250,1250,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1250,1291,1250,1250,1250,1250,1292,1208,1292,1167,1291,1250,1209,1250,1250,1291,1250,1292,1292,1250,1333,1250,1250,1292,1208,1292,1250,1250,1250,1083,1250,1250,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1292,1291,1167,1250,1292,1291,1209,1208,1250,1250,1250,1292,1208,1250,1292,1250,1250,1250,1250,1250,1208,1292,1250,1250,1250,1291,1209,1250,1250,1250,1291,1042,1250,1250,1292,1291,1167,1292,1291,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1292,1208,1250,1250,1292,1250,1291,1209,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1166,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1292,1208,1292,1208,1250,1292,1250,1250,1250,1083,1250,1292,1291,1292,1250,1250,1292,1291,1250,1250,1292,1167,1291,1167,1250,1292,1250,1250,1291,1250,1250,1250,1250,1292,1000,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1291,1292,1250,1250,1292,1291,1250,1292,1208,1292,1208,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1292,1292,1250,1250,1250,1083,1250,1250,1292,1250,1291,1209,1250,1250,1250,1250,1250,1250,1250,1250,1291,1209,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1292,1250,1250,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1083,1250,1250,1250,1250,1292,1292,1250,1250,1208,1292,1083,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1084,1291,1250,1250,1292,1292,1166,1250,1125,1250,1250,1250,1250,1292,1250,1292,1208,1250,1292,1291,1250,1250,1250,1292,1250,1250,1292,1250,1250,1250,1208,1292,1250,1250,1291,1250,1250,1292,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1292,1291,1250,1292,1250,1250,1292,1208,1000,1292,1250,1250,1250,1250,1291,1250,1250,1292,1292,1291,1125,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1083,1250,1250,1292,1250,1292,1291,1292,1250,1250,1292,1291,1250,1250,1167,1292,1291,1250,1167,1292,1250,1291,1250,1250,1250,1209,1291,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1292,1167,1291,1250,1292,1208,1292,1250,1250,1250,1250,1208,1292,1083,1250,1250,1250,1250,1250,1292,1250,1125,1250,1292,1250,1291,1292,1208,1084,1291,1250,1292,1208,1292,1250,1250,1250,1250,1250,1292,1250,1291,1250,1250,1292,1250,1042,1291,1250,1250,1292,1250,1292,1250,1291,1209,1250,1250,1291,1292,1292,1250,1208,1250,1250,1250,1083,1250,1292,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1125,1291,1250,1292,1250,1250,1250,1250,1292,1250,1291,1250,1084,1291,1209,1250,1291,1250,1250,1250,1250,1250,1167,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1291,1250,1250,1250,1250,1292,1208,1084,1250,1250,1291,1250,1334,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1125,1250,1292,1250,1250,1292,1291,1250,1250,1292,1167,1291,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1250,1292,1250,1208,1250,1250,1209,1208,1250,1292,1208,1208,1250,1250,1292,1292,1250,1291,1292,1250,1250,1250,1292,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1291,1250,1250,1250,1250,1167,1250,1167,1291,1250,1292,1250,1250,1125,1250,1292,1250,1250,1250,1250,1291,1292,1250,1292,1000,1291,1250,1250,1292,1250,1250,1250,1250,1250,1250,1000,1250,1333,1250,1292,1250,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1292,1208,1250,1208,1292,1250,1292,1250,1250,1250,1250,1291,1250,1292,1208,1084,1250,1291,1250,1250,1292,1208,1292,1250,1250,1125,1250,1292,1208,1250,1250,1250,1292,1250,1250,1291,1250,1250,1292,1292,1250,1250,1291,1250,1292,1250,958,1292,1292,1250,1291,1209,1291,1250,1250,1292,1250,1292,1208,1250,1250,1250,1250,1292,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1208,1250,1292,1250,1250,1333,1250,1250,1292,1250,1250,1250,1250,1291,1292,1250,1208,1250,1292,1250,1250,1292,1250,1250,1291,1250,1292,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1292,1166,1250,1292,1292,1291,1250,1250,1250,1292,1167,1291,1209,1250,1250,1250,1291,1250,1250,1250,1250,1375,1167,1250,1125,1292,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1292,1208,1292,1250,1292,1291,1250,1292,1208,1250,1292,1250,1125,1250,1250,1292,1250,1250,1250,1250,1250,1291,1125,1292,1208,1250,1250,1292,1250,1250,1250,1167,1291,1250,1250,1292,1250,1250,1292,1291,1292,1250,1250,1292,1250,1250,1250,1291,1125,1250,1250,1292,1250,1250,1292,1291,1250,1250,1250,1250,1250,1250,1292,1292,1250,1166,1250,1292,1250,1292,1250,1250,1250,1166,1250,1250,1250,1250,1250,1292,1292,1250,1333,1208,1209,1250,1250,1250,1291,1250,1209,1250,1250,1291,1292,1292,1250,1291,1250,1250,1250,1292,1250,1250,1292,1208,1250,1125,1250,1250,1250,1250,1250,1250,1250,1292,1250,1291,1250,1209,1291,1042,1250,1250,1292,1250,1291,1250,1250,1250,1250,1250,1250,1292,1208,1292,1208,1209,1208,1208,1042,1250,1292,1208,1292,1208,1292,1208,1250,1250,1208,1292,1250,1208,1250,1250,1250,1250,1292,1208,1250,1250,1292,1250,1250,1208,1292,1250,1250,1292,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1292,1250,1250,1292,1250,1250,1250,1250,1291,1250,1292,1250,1250,1250,1292,1041,1250,1250,1084,1208,1292,1250,1250,1250,1250,1250,1250,1250,1166,1292,1208,1209,1291,1209,1250,1250,1250,1208,1292,1250,1250,1250,1291,1209,1250,1250,1250,1250,1125,1291,1250,1250,1292,1250,1333,1250,1250,1250,1084,1291,1250,1292,1000,1292,1250,1291,1250,1292,1250,1292,1208,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1209,1291,1250,1250,1250,1292,1250,1208,1250,1250,1250,1250,1250,1292,1167,1291,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1250,1292,1291,1250,1250,1292,1292,1250,1250,1250,1041,1250,1292,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1166,1292,1208,1250,1250,1250,1250,1292,1250,1250,1250,1250,1292,1208,1250,1250,1292,1250,1250,1291,1250,1250,1250,1250,1250,1250,1292,1167,1250,1208,1292,1250,1291,1209,1250,1291,1167,1292,1291,1250,1250,1292,1250,1292,1291,1250,1250,1292,1250,1250,1250,1292,1208,1208,1250,1250,1042,1250,1250,1292,1250,1250,1250,1291,1250,1250,1292,1250,1250,1250,1250,1125,1167,1250,1291,1250,1250,1250,1250,1334,1250,1291,1042,1250,1250,1292,1250,1250,1291,1250,1292,1250,1250,1292,1208,1250,1292,1291,1209,1250,1291,1250,1042,1292,1250,1250,1291,1250,1250,1292,1250,1250,1250,1125,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1292,1166,1292,1250,1250,1250,1000,1250,1250,1167,1250,1291,1250,1292,1208,1250,1250,1292,1250,1250,1292,1208,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1292,1208,1250,1167,1292,1291,1250,1250,1250,1292,1208,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1000,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1042,1291,1209,1250,1250,1250,1208,1250,1292,1250,1250,1125,1250,1250,1291,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1292,1250,1292,1250,1083,1292,1041,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1084,1291,1209,1250,1250,1250,1291,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1208,1250,1250,1292,1250,1250,1292,1250,1291,1250,1250,1292,1250,1292,1250,1250,1208,1292,1250,1250,1083,1250,1208,1334,1291,1250,1250,1292,1208,1167,1250,1000,1292,1250,1291,1250,1250,1292,1250,1292,1208,1292,1208,1250,1292,1250,1250,1250,1291,1250,1250,1292,1208,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1209,1250,1250,1250,1291,1250,1250,1292,1250,1250,1250,1042,1291,1209,958,1250,1250,1292,1208,1250,1333,1292,1250,1250,1208,1209,1291,1250,1250,1292,1208,1209,1250,1250,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1167,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1292,1208,1250,1292,1250,1250,1250,1250,1291,1250,1292,1250,1250,1292,1125,1291,1250,1250,1292,1250,1250,1292,1250,1250,1250,1250,1166,1250,1292,1167,1250,1250,1291,1250,1292,1250,1250,1250,1292,1208,1250,1250,1250,1250,1250,1250,1250,1250,1167,1083,1292,1250,1250,1250,1250,1250,1000,1291,1209,1250,1250,1250,1291,1250,1292,1250,1292,1208,1250,1250,1292,1250,1250,1250,1250,1250,1291,1209,1250,1291,1250,1250,1250,1292,1250,1292,1250,1250,1291,1250,1250,1292,1167,1250,1291,1250,1125,1250,1292,1250,1208,1250,1292,1250,1292,1250,1250,1250,1041,1250,1167,1208,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1291,1250,1292,1250,1250,1292,1166,1250,1250,1292,1250,1250,1208,1250,1250,1250,1250,1250,1250,1292,1042,1250,1250,1250,1250,1291,1250,1250,1250,1292,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1208,1292,1250,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1292,1125,1208,1250,1250,1083,1250,1292,1250,1250,1250,1250,1250,1292,1125,1250,1250,1250,1250,1291,1250,1209,1291,1292,1250,1250,1292,1208,1250,1292,1250,1291,1292,1125,1250,1333,1250,1292,1250,1250,1292,1250,1250,1250,1166,1292,1250,1292,1125,1291,1250,1292,1250,1250,1250,1125,1250,1292,1208,1250,1250,1292,1208,1250,1250,1250,1208,1250,1250,1292,1250,1250,1292,1291,1250,1292,1250,1250,1333,1250,1292,1208,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1209,1208,1208,1209,1250,1250,1250,1291,1250,1250,1292,1250,1292,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1291,1250,1292,1250,1208,1250,1250,1250,1209,1250,1250,1250,1166,1292,1208,1250,1042,1250,1250,1292,1250,1250,1291,1250,1250,1250,1292,1167,1250,1250,1250,1250,1250,1291,1250,1250,1292,1167,1291,1250,1250,1250,1292,1292,1250,1250,1250,1291,1209,1250,1250,1250,1291,1250,1250,1250,1292,1208,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1292,1250,1250,1250,1291,1167,1208,1292,1250,1250,1250,1292,1083,1250,1292,1250,1250,1291,1250,1125,1250,1250,1250,1084,1250,1250,1250,1250,1250,1250,1250,1250,1166,1209,1250,1291,1250,1292,1208,1250,1250,1292,1250,1250,1292,1250,1291,1250,1250,1292,1292,1250,1291,1250,1250,1292,1250,1250,1292,1208,1250,1250,1250,1250,1292,1250,1041,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1250,1208,1209,1250,1250,1250,1250,1291,1292,1250,1292,1250,1291,1250,1250,1250,1292,1250,1292,1291,1250,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1291,1125,1250,1250,1292,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1292,1208,1250,1334,1250,1250,1291,1250,1292,1250,1250,1250,1250,1292,1291,1250,1292,1250,1250,1250,1292,1250,1250,1041,1292,1250,1250,1292,1250,1291,1250,1250,1292,1250,1250,1250,1292,1291,1250,1250,1292,1208,1292,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1250,1250,1250,1292,1208,1250,1250,1292,1167,1208,1208,1292,1208,1167,1292,1250,1291,1250,1209,1291,1292,1208,1250,1042,1250,1208,1250,1292,1250,1250,1250,1250,1250,1083,1292,1250,1333,1209,1208,1250,1250,1292,1250,1250,1166,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1292,1291,1084,1250,1250,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1292,1291,1250,1209,1291,1209,1250,1250,1250,1291,1167,1250,1292,1291,1250,1250,1250,1292,1250,1250,1250,1250,1125,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1292,1041,1292,1208,1250,1250,1250,1292,1250,1292,1166,1250,1250,1250,1250,1334,1250,1208,1250,1250,1250,1250,1250,1292,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1125,1209,1250,1208,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1291,1250,1292,1208,1250,1292,1250,1250,1292,1250,1250,1250,1291,1250,1209,1250,1250,1041,1250,1292,1208,1209,1250,1250,1250,1208,1250,1250,1292,1250,1250,1291,1250,1250,1292,1292,1291,1250,1167,1250,1292,1250,1250,1250,1291,1084,1291,1209,1083,1250,1125,1250,1250,1292,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1292,1250,1291,1250,1250,1250,1250,1250,1209,1291,1250,1250,1292,1250,1250,1292,1291,1250,1334,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1167,1291,1250,1250,1292,1250,1125,1250,1042,1250,1250,1291,1250,1292,1208,1209,1250,1250,1250,1250,1291,1250,1292,1250,1250,1292,1208,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1084,1250,1250,1250,1291,1250,1250,1250,1292,1292,1291,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1292,1208,1250,1250,1250,1250,1292,1291,1167,1250,1250,1250,1250,1292,1208,1250,1208,1250,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1000,1292,1292,1291,1209,1250,1250,1250,1083,1250,1292,1208,1292,1250,1291,1209,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1167,1291,1334,1291,1209,1208,1167,1250,1083,1250,1250,1208,1292,1292,1208,1250,1125,1250,1250,1250,1250,1292,1250,1250,1250,1291,1292,1208,1292,1208,1250,1292,1250,1250,1250,1042,1250,1250,1250,1250,1208,1292,1208,1250,1292,1250,1166,1250,1250,1292,1250,1250,1292,1291,1209,1250,1250,1291,1250,1250,1250,1292,1250,1208,1250,1292,1250,1250,1250,1292,1291,1250,1292,1292,1250,1250,1250,1291,1250,1292,1250,1292,1083,1250,1250,1250,1250,1292,1208,1250,1250,1292,1291,1250,1292,1208,1250,1292,1250,1167,1291,1167,1250,1083,1292,1250,1292,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1292,1208,1250,1250,1250,1209,1291,1250,1292,1250,1250,1167,1250,1250,1250,1041,1250,1250,1292,1208,1250,1250,1250,1292,1167,1166,1292,1250,1250,1292,1208,1250,1250,1250,1167,1291,1250,1292,1292,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1250,1250,1083,1250,1250,1292,1250,1250,1250,1250,1291,1209,1291,1250,1292,1250,1292,1250,1250,1250,1250,1250,1250,1333,1208,1250,1250,1250,1250,1250,1292,1250,1250,1250,1208,1292,1250,1250,1292,1250,1250,1083,1250,1292,1250,1250,1291,1292,1250,1000,1292,1250,1291,1292,1250,1292,1291,1250,1250,1250,1292,1250,1292,1250,1250,1250,1166,1250,1250,1292,1208,1250,1250,1250,1292,1250,1292,1083,1292,1250,1291,1250,1292,1250,1292,1250,1291,1250,1250,1250,1292,1083,1250,1250,1250,1292,1250,1250,1292,1291,1250,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1250,1292,1250,1292,1291,1250,1250,1292,1208,1250,1250,1125,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1292,1208,1209,1291,1250,1250,1250,1292,1292,1250,1250,1250,1125,1250,1250,1250,1291,1250,1292,1208,1292,1208,1250,1250,1292,1250,1250,1250,1292,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1292,1291,1250,1250,1250,1250,1209,1250,1291,1250,1250,1292,1250,1208,1292,1250,1250,1292,1250,1250,1250,1250,1291,1167,1250,1250,1292,1250,1291,1209,1250,1250,1291,1167,1292,1291,1292,1292,1250,1250,1166,1209,1250,1250,1250,1250,1291,1292,1250,1292,1291,1250,1250,1292,1292,1250,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1208,1125,1208,1209,1250,1250,1250,1250,1250,1250,1291,1292,1208,1292,1208,1250,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1125,1250,1292,1250,1250,1250,1292,1250,1041,1250,1250,1292,1250,1250,1250,1208,1292,1208,1250,1250,1250,1250,1250,1292,1208,1209,1250,1250,1250,1291,1250,1084,1250,1250,1291,1000,1292,1208,1250,1250,1292,1292,1250,1250,1125,1250,1250,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1292,1291,1250,1292,1250,1250,1250,1292,958,1250,1292,1250,1250,1250,1250,1291,1250,1250,1292,1250,1167,1250,1250,1250,1250,1166,1250,1250,1292,1208,1292,1250,1250,1250,1292,1250,1250,1250,1291,1209,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1250,1250,1292,1208,1250,1250,1250,1250,1250,1167,1250,1292,1250,1250,1333,1208,1250,1250,1167,1292,1250,1291,1250,1250,1250,1250,1292,1250,1292,1000,1250,1250,1208,1250,1292,1250,1250,1250,1250,1166,1250,1250,1250,1292,1250,1250,1250,1250,1208,1250,1292,1250,1292,1250,1250,1250,1250,1250,1250,1250,1291,1250,1292,1208,1250,1250,1250,1209,1291,1209,1291,1250,1209,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1292,1292,1250,1291,1167,1292,1250,1250,1250,1250,1250,1250,1291,1250,1292,1208,1250,1292,1292,1291,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1292,1250,1250,1292,1250,1250,1291,1292,1250,1292,1250,1250,1250,1250,1291,1250,1250,1250,1209,1250,1250,1291,1250,1250,1292,1250,1250,1208,1292,1208,1250,1250,1209,1291,1250,1250,1250,1250,1250,1292,1000,1292,1250,1291,1250,1292,1250,1250,1250,1125,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1125,1250,1250,1292,1250,1250,1291,1250,1292,1250,1292,1250,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1167,1250,1250,1291,1250,1250,1292,1250,1250,1292,1291,1250,1250,1250,1292,1208,1250,1042,1292,1250,1250,1291,1250,1292,1208,1250,1250,1292,1125,1250,1250,1250,1250,1250,1292,1166,1250,1292,1250,1250,1250,1250,1292,1250,1250,1291,1209,1250,1291,1250,1292,1250,1167,1250,1250,1291,1084,1291,1250,1292,1250,1250,1250,1250,1208,1084,1250,1291,1250,1250,1250,1250,1250,1250,1292,1042,1291,1209,1125,1208,1167,1291,1250,1250,1292,1167,1250,1250,1250,1250,1250,1125,1291,1209,1250,1250,1291,1209,1250,1250,1250,1250,1250,1250,1291,1209,1250,1125,1250,1291,1250,1250,1250,1292,1208,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1292,1292,1250,1250,1291,1292,1250,1292,1125,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1208,1250,1292,1250,1291,1250,1250,1250,1292,1250,1208,1292,1333,1209,1250,1291,1292,1250,1250,1292,1208,1292,1291,1250,1250,1292,1167,1250,1291,1250,1250,1250,1250,1209,1250,1291,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1250,1291,1250,1250,1292,1250,1250,1208,1292,1250,1250,1292,1250,1208,1250,1250,1250,1292,1250,1250,1250,1250,1208,1292,1208,1250,1208,1250,1292,1250,1250,1292,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1209,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1291,1250,1292,1292,1250,1250,1250,1291,1250,1250,1292,1250,1167,1250,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1042,1250,1250,1250,1250,1250,1292,1166,1250,1292,1250,1292,1291,1250,1250,1042,1250,1292,1291,1209,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1041,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1292,1291,1292,1250,1250,1292,1125,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1292,1208,1084,1250,1250,1291,1292,1250,1250,1292,1208,1292,1208,1250,1250,1250,1250,1292,1250,1250,1208,1125,1250,1292,1250,1250,1291,1250,1250,1250,1250,1292,1250,1250,1292,1250,1250,1250,1250,1250,1250,1291,1250,1250,1292,1250,1250,1167,1250,1083,1250,1250,1250,1250,1250,1250,1292,1208,1250,1250,1167,1250,1291,1292,1250,1292,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1125,1250,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1208,1292,1250,1250,1250,1250,1292,1250,1250,1250,1291,1209,1250,1250,1250,1250,1250,1291,1292,1250,1292,1166,1250,1167,1208,1209,1250,1250,1083,1292,1250,1250,1291,1250,1250,1250,1167,1042,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1167,1250,1250,1292,1250,1250,1250,1250,1291,1250,1250,1250,1209,1291,1292,1250,1292,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1292,1167,1250,1250,1291,1250,1250,1250,1209,1291,1250,1250,1250,1292,1250,1250,1250,1292,1291,1250,1250,1250,1292,1250,1250,1333,1292,1250,1250,1125,1292,1208,1250,1250,1250,1250,1250,1250,1250,1333,1209,1250,1166,1250,1250,1250,1209,1291,1125,1209,1250,1250,1250,1250,1250,1291,1250,1250,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1209,1291,1209,1125,1208,1208,1042,1250,1250,1250,1292,1250,1291,1250,1250,1250,1292,1083,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1000,1250,1166,1209,1291,1250,1292,1250,1250,1292,1291,1250,1250,1292,1250,1250,1250,1250,1167,1250,1291,1292,1250,1250,1250,1250,1250,1083,1250,1250,1167,1250,1250,1292,1208,1250,1208,1084,1250,1291,1167,1250,1250,1250,1250,1167,1250,1250,1291,1250,1250,1250,1250,1250,1250,1292,1208,1250,1250,1250,1250,1292,1208,1250,1250,1250,1292,1208,1250,1209,1291,1250,1250,1125,1250,1292,1250,1250,1250,1292,1250,1250,1291,1292,1250,1292,1250,1291,1209,1250,1250,1291,1250,1250,1292,1250,1250,1250,1292,1291,1250,1292,1167,1291,1250,1250,1292,1250,1292,1250,1250,1291,1250,1042,1250,1250,1250,1250,1292,1250,1250,1250,1250,1208,1208,1292,1292,1250,1250,1250,1291,1250,1250,1292,1250,1292,1291,1209,1250,1250,1291,1292,1292,1291,1042,1250,1250,1292,1250,1291,1250,1250,1292,1250,1292,1250,1250,1291,1042,1250,1250,1250,1292,1250,1291,1250,1250,1292,1292,1291,1250,1250,1292,1250,1250,1083,1250,1250,1125,1250,1292,1250,1292,1208,1250,1250,1250,1250,1083,1250,1250,1250,1292,1208,1250,1250,1250,1250,1250,1250,1250,1292,1250,1292,1250,1083,1292,1250,1291,1250,1292,1292,1250,1250,1250,1250,1291,1209,1250,1291,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1125,1250,1250,1250,1250,1250,1291,1250,1250,1250,1292,1083,1292,1250,1000,1292,1250,1208,1292,1208,1292,1250,1250,1291,1125,1250,1250,1250,1042,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1167,1250,1292,1250,1250,1250,1250,1250,1250,1291,1250,1292,1250,1292,1250,1125,1250,1291,1250,1250,1292,1250,1292,1291,1250,1250,1292,1250,1250,1250,1250,1250,1125,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1209,1333,1292,1291,1292,1292,1250,1250,1291,1209,1250,1250,1250,1291,1250,1167,1250,1250,1250,1167,1041,1250,1292,1292,1250,1250,1291,1250,1250,1292,1250,1208,1084,1250,1250,1291,1250,1250,1250,1250,1250,1292,1292,1208,1250,1292,1250,1250,1291,1209,1208,1250,1250,1250,1250,1292,1208,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1292,1250,1292,1291,1250,1250,1292,1250,1208,1292,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1292,1250,1250,1250,1250,1250,1250,1083,1333,1250,1250,1250,1250,1292,1250,1250,1292,1250,1291,1167,1208,1209,1250,1250,1291,1209,1250,1208,1292,1250,1250,1250,1291,1250,1292,1250,1250,1292,1166,1209,1250,1250,1291,1250,1250,1250,1292,1250,1250,1167,1250,1250,1250,1291,1292,1250,1250,1083,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1291,1292,1250,1292,1291,1209,1250,1250,1291,1209,1250,1250,1291,1250,1125,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1208,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1250,1209,1291,1250,1292,1250,1292,1208,1250,1250,1292,1250,1291,1250,1292,1250,1292,1250,1250,1250,1250,1250,1250,1125,1250,1250,1250,1291,1292,1250,1250,1208,1250,1250,1292,1250,1250,1250,1250,1250,1292,1291,1250,1250,1292,1250,1250,1250,1250,1292,1208,1250,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1250,1250,1292,1208,1250,1292,1250,1250,1291,1250,1250,1250,1250,1084,1291,1209,1166,1250,1250,1292,1250,1250,1250,1292,1291,1209,1208,1292,1250,1250,1291,1250,1292,1292,1208,1250,1292,1291,1167,1250,1292,1250,1250,1250,1250,1250,1250,1291,1250,1292,1250,1250,1250,1292,1208,1208,1250,1250,1250,1209,1291,1209,1250,1250,1250,1250,1083,1292,1250,1250,1250,1250,1250,1250,1291,1209,1250,1250,1250,1291,1250,1250,1250,1250,1250,1084,1291,1209,1250,1291,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1292,1208,1250,1209,1291,1250,1292,1250,1042,1291,1209,1291,1250,1292,1250,1250,1292,1250,1250,1291,1292,1250,1292,1250,1291,1292,1333,1250,1084,1250,1250,1291,1250,1250,1250,1292,1250,1292,1250,1291,1209,1250,1041,1292,1250,1292,1250,1083,1250,1250,1208,1292,1250,1250,1250,1042,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1208,1167,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1250,1292,1250,1250,1292,1250,1125,1250,1250,1291,1209,1250,1291,1250,1250,1292,1250,1250,1208,1292,1208,1250,1250,1250,1250,1167,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1292,1291,1250,1250,1250,1292,1042,1250,1250,1250,1250,1250,1291,1250,1250,1250,1209,1166,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1292,1250,1250,1167,1250,1250,1250,1250,1333,1250,1292,1208,1250,1292,1041,1292,1250,1250,1250,1292,1291,1209,1250,1250,1250,1083,1292,1250,1291,1292,1250,1292,1250,1250,1291,1250,1292,1250,1250,1042,1250,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1292,1250,1292,1250,1250,1250,1208,1167,1250,1291,1250,1250,1250,1292,1208,1250,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1167,1250,1292,1250,1250,1250,1208,1292,1250,1250,1291,1125,1250,1250,1292,1250,1250,1250,1250,1083,1250,1292,1250,1250,1292,1250,1250,1250,1250,1250,1291,1292,1250,1250,1250,1250,1250,1250,1250,1083,1292,1250,1292,1250,1291,1250,1250,1292,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1125,1292,1250,1291,1250,1250,1292,1208,1292,1250,1250,1250,1333,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1208,1292,1250,1250,1291,1250,1084,1250,1250,1291,1250,1250,1292,1208,1292,1208,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1291,1292,1250,1292,1250,1250,1291,1250,1292,1250,1250,1250,1250,1250,1333,1250,1250,1209,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1208,1292,1042,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1333,1250,1292,1250,1125,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1292,1250,1292,1250,1291,1250,1292,1250,1250,1250,1250,1250,1292,1208,1208,1250,1292,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1292,1167,1291,1209,1208,1208,1209,1250,1250,1250,1291,1209,1250,1250,1250,1250,1250,1250,1083,1292,1250,1291,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1208,1250,1250,1250,1292,1208,1250,1250,1292,1250,1250,1292,1250,1250,1291,1209,1166,1250,1292,1167,1250,1291,1250,1250,1250,1334,1125,1250,1250,1291,1125,1209,1250,1250,1250,1291,1209,1250,1291,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1000,1292,1250,1250,1292,1250,1250,1291,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1209,1250,1250,1291,1292,1250,1250,1292,1250,1250,1250,1291,1292,1250,1250,1292,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1125,1250,1250,1292,1250,1291,1250,1292,1208,1250,1250,1125,1292,1250,1292,1291,1209,1250,1250,1250,1291,1250,1292,1292,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1208,1250,1250,1250,1250,1292,1250,1292,1291,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1291,1209,1291,1209,1250,1250,1250,1250,1250,1250,1250,1250,1291,1292,1250,1042,1250,1250,1291,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1042,1292,1250,1041,1292,1250,1292,1208,1250,1250,1333,1250,1250,1042,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1291,1209,1250,1291,1250,1292,1125,1250,1250,1292,1250,1291,1250,1250,1292,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1209,1250,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1250,1250,1209,1291,1250,1250,1250,1250,1167,1250,1250,1250,1292,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1250,1292,1208,1084,1250,1291,1292,1250,1250,1250,1250,1292,1250,1250,1083,1250,1250,1250,1292,1250,1250,1291,1292,1125,1250,1250,1292,1250,1291,1250,1250,1250,1209,1250,1250,1291,1250,1250,1334,1000,1250,1250,1250,1250,1250,1250,1291,1209,1208,1292,1250,1250,1291,1250,1250,1250,1084,1250,1291,1250,1292,1250,1250,1292,1250,1291,1209,1250,1166,1292,1250,1250,1250,1250,1250,1083,1250,1250,1250,1250,1209,1166,1250,1042,1250,1250,1292,1250,1125,1250,1291,1250,1167,1292,1250,1250,1250,1291,1250,1250,1250,1250,1167,1292,1250,1250,1250,1291,1250,1292,1208,1250,1292,1250,1250,1292,1208,1250,1292,1250,1250,1250,1125,1250,1125,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1292,1208,1250,1292,1250,1250,1291,1250,1292,1250,1250,1250,1250,1250,1292,1250,1250,1250,1166,1292,1292,1291,1042,1292,1250,1250,1291,1250,1250,1250,1292,1250,1292,1208,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1292,1291,1209,1250,1291,1250,1250,1250,1250,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1167,1292,1208,1208,1250,1250,1250,1250,1167,1292,1250,1250,1250,1291,1250,1250,1084,1250,1166,1250,1250,1292,1208,1250,1292,1250,1292,1250,1125,1166,1250,1125,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1292,1208,1250,1250,1292,1208,1250,1250,1250,1292,1250,1125,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1167,1250,1291,1334,1250,1250,1291,1250,1250,1292,1208,1250,1250,1250,1209,1250,1250,1291,1250,1250,1250,1250,1292,1292,1250,1250,1250,1291,1250,1292,1250,1208,1250,1250,1250,1042,1292,1250,1250,1166,1250,1167,1292,1250,1291,1209,1250,1250,1291,1250,1292,1250,1292,1250,1250,1250,1208,1250,1292,1250,1250,1250,1291,1250,1250,1167,1250,1250,1250,1292,1250,1291,1250,1250,1250,1250,1292,1250,1292,1250,1000,1291,1292,1208,1250,1250,1250,1292,1208,1250,1250,1292,1167,1250,1250,1291,1209,1250,1291,1250,1250,1250,1250,1250,1292,1250,1250,1292,1250,1291,1250,1250,1250,1292,1250,1125,1250,1250,1292,1250,1250,1291,1167,1250,1250,1250,1250,1250,1250,1208,1250,1250,1292,1208,1167,1208,1292,1042,1250,1250,1250,1250,1166,1292,1292,1208,1250,1250,1208,1250,1292,1292,1250,1250,1250,1291,1292,1250,1250,1292,1291,1250,1042,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1208,1292,1167,1250,1250,1166,1292,1250,1250,1292,1125,1208,1292,1208,1292,1250,1125,1208,1208,1209,1250,1250,1125,1291,1250,1292,1250,1250,1250,1167,1250,1291,1167,1292,1291,1209,1250,1208,1250,1250,1292,1291,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1291,1167,1292,1250,1250,1291,1250,1250,1292,1208,1209,1250,1250,1250,1291,1250,1292,1208,1292,1250,1250,1250,1292,1250,1291,1250,1250,1250,1209,1291,1250,1250,1250,1292,1292,1250,1250,1291,1042,1250,1250,1083,1250,1209,1250,1250,1291,1250,1292,1250,1292,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1208,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1208,1167,1042,1250,1250,1333,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1291,1292,1250,1250,1292,1250,1250,1250,1291,1292,1208,1209,1208,1250,1292,1250,1250,1250,1083,1250,1292,1250,1250,1250,1250,1291,1250,1292,1083,1250,1250,1250,1250,1250,1250,1292,1083,1292,1250,1250,1292,1250,1250,1291,1292,1250,1292,1250,1041,1250,1292,1250,1250,1333,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1292,1042,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1291,1209,1208,1250,1250,1250,1250,1292,1291,1250,1167,1292,1250,1250,1291,1209,1250,1250,1250,1083,1250,1292,1250,1208,1292,1208,1250,1250,1250,1292,1250,1250,1250,1291,1250,1292,1292,1250,1250,1250,1125,1291,1250,1250,1292,1250,1250,1292,1250,1291,1250,1292,1292,1125,1250,1291,1250,1250,1250,1292,1167,1250,1291,1250,1250,1250,1292,1250,1292,1250,1250,1125,1250,1291,1209,1250,1250,1291,1250,1250,1209,1291,1250,1250,1250,1167,1250,1333,1250,1250,1250,1292,1250,1250,1292,1250,1291,1250,1292,1250,1292,1250,1291,1250,1209,1291,1250,1250,1292,1250,1250,1250,1292,1208,1250,1250,1250,1250,1292,1250,1250,1333,1292,1250,1250,1291,1250,1250,1250,1209,1250,1250,1250,1250,1250,1250,1291,1209,1208,1208,1209,1291,1250,1250,1250,1250,1250,1292,1167,1291,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1292,1208,1250,1083,1250,1292,1250,1292,1250,1291,1250,1250,1292,1250,1250,1292,1291,1292,1208,1250,1292,1250,1292,1250,1250,1291,1250,1250,1292,1250,1292,1208,1250,1250,1250,1250,1250,1250,1250,1292,1000,1250,1250,1166,1250,1250,1250,1250,1125,1292,1250,1292,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1292,1250,1167,1291,1250,1250,1292,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1292,1083,1250,1250,1250,1042,1292,1208,1250,1250,1292,1166,1250,1250,1250,1292,1250,1250,1250,1292,1250,1291,1292,1167,1250,1291,1250,1250,1250,1250,1250,1125,1292,1292,1250,1250,1291,1292,1250,1250,1250,1292,1250,1250,1250,1208,1292,1250,1250,1208,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1292,1250,1250,1041,1250,1292,1250,1250,1250,1292,1208,1083,1250,1250,1250,1292,1208,1125,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1083,1292,1250,1250,1250,1125,1042,1291,1209,1250,1041,1292,1208,1250,1250,1250,1250,1250,1250,1250,1292,1250,1292,1250,1083,1292,1250,1250,1208,1292,1250,1291,1250,1250,1167,1250,1292,1250,1250,1291,1042,1292,1250,1250,1291,1250,1292,1250,1250,1292,1208,1250,1250,1250,1292,1291,1250,1209,1291,1250,1292,1250,1250,1292,1208,1250,1250,1292,1250,1250,1250,1250,1250,1291,1042,1250,1208,1292,1292,1041,1250,1250,1292,1250,1292,1250,1083,1292,1250,1250,1250,1291,1250,1209,1291,1250,1250,1250,1250,1250,1250,1292,1250,1250,1292,1333,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1291,1125,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1292,1208,1209,1250,1291,1250,1084,1250,1291,1292,1167,1250,1291,1292,1250,1250,1292,1250,1291,1250,1250,1250,1250,1292,1250,1125,1250,1292,1250,1250,1250,1291,1250,1250,1125,1250,1250,1292,1083,1250,1292,1208,1292,1250,1250,1042,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1250,1250,1292,1208,1250,1250,1250,1250,1209,1125,1291,1250,1292,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1291,1209,1291,1167,1250,1208,1292,1250,1250,1250,1083,1292,1250,1250,1292,1250,1125,1250,1250,1250,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1166,1250,1209,1291,1250,1250,1250,1250,1250,1292,1208,1292,1250,1292,1250,1291,1250,1250,1250,1250,1250,1167,1292,1250,1250,1291,1250,1292,1250,1250,1292,1250,1250,1250,1208,1250,1292,1250,1250,1250,1291,1084,1250,1250,1291,1250,1250,1042,1250,1125,1250,1250,1292,1166,1250,1250,1250,1250,1292,1250,1125,1292,1250,1250,1291,1209,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1208,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1292,1167,1250,1291,1250,1250,1125,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1167,1292,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1292,1208,1250,1250,1250,1250,1250,1292,1250,1250,1250,1083,1250,1250,1250,1250,1292,1250,1250,1291,1167,1292,1250,1250,1333,1250,1167,1291,1292,1250,1250,1292,1250,1250,1291,1250,1250,1250,1334,1250,1291,1250,1250,1250,1292,1292,1208,1208,1250,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1250,1250,1250,1292,1250,1292,1291,1292,1250,1250,1250,1250,1292,1291,1250,1250,1250,1292,1292,1208,1250,1250,1292,1250,1083,1250,1292,1041,1250,1250,1250,1250,1250,1250,1292,1208,1292,1250,1250,1250,1250,1125,1292,1250,1291,1292,1292,1250,1250,1250,1291,1250,1250,1292,1083,1250,1250,1292,1208,1250,1292,1292,1250,1291,1292,1250,1250,1250,1292,1250,1250,1250,1291,1292,1250,1167,1291,1250,1292,1250,1292,1250,1291,1250,1292,1250,1250,1250,1292,1166,1250,1250,1250,1250,1250,1292,1250,1250,1250,1292,1083,1208,1292,1250,1250,1250,1250,1250,1250,1292,1208,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1292,1250,1250,1292,1166,1250,1250,1250,1250,1292,1208,1209,1250,1291,1250,1250,1250,1250,1250,1209,1291,1250,1167,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1292,1292,1250,1250,1250,1250,1250,1291,1209,1250,1250,1250,1250,1250,1250,1250,1208,1125,1250,1250,1292,1291,1250,1292,1250,1292,1291,1209,1250,1291,1250,1250,1292,1250,1250,1292,1291,1250,1250,1250,1292,1208,1250,1000,1250,1292,1250,1250,1292,1250,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1292,1208,1250,1292,1250,1292,1083,1250,1167,1250,1291,1250,1250,1167,1292,1250,1250,1250,1250,1291,1292,1250,1250,1292,1250,1250,1291,1209,1166,1209,1291,1167,1250,1250,1250,1292,1250,1291,1042,1250,1250,1292,958,1250,1292,1291,1250,1292,1208,1292,1250,1125,1250,1208,1250,1292,1292,1250,1250,1250,1250,1250,1291,1250,1250,1292,1250,1250,1333,1292,1208,1250,1292,1250,1250,1250,1292,1291,1250,1250,1250,1250,1250,1209,1291,1250,1292,1250,1083,1250,1250,1250,1042,1250,1250,1292,1125,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1125,1250,1250,1250,1250,1292,1250,1291,1250,1250,1250,1250,1292,1250,1292,1291,1250,1250,1292,1083,1167,1250,1250,1083,1209,1250,1291,1250,1292,1250,1292,1208,1250,1250,1250,1250,1250,1250,1250,1250,1250,1333,1250,1250,1250,1292,1292,1166,1292,1292,1208,1250,1292,1208,1250,1250,1250,1250,1208,1209,1291,1250,1250,1250,1292,1250,1292,1250,1041,1292,1333,1250,1209,1208,1250,1292,1166,1292,1250,1292,1291,1292,1292,1291,1250,1250,1292,1250,1292,1208,1125,1167,1208,1250,1292,1166,1250,1250,1250,1250,1084,1083,1292,1166,1292,1208,1250,1292,1250,1292,1250,1291,1334,1250,1291,1209,1250,1250,1291,1250,1250,1250,1292,1250,1250,1042,1291,1250,1292,1250,1042,1250,1250,1250,1250,1250,1291,1125,1250,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1209,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1250,1208,1250,1292,1250,1250,1208,1250,1250,1250,1292,1250,1250,1250,1291,1292,1083,1250,1292,1250,1250,1292,1208,1042,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1292,1250,1250,1250,1292,1125,1250,1250,1250,1250,1291,1250,1209,1291,1250,1250,1250,1292,1250,1250,1292,1291,1209,1291,1125,1250,1292,1250,1333,1250,1250,1084,1208,1250,1250,1250,1250,1250,1292,1208,1292,1208,1333,1209,1208,1167,1291,1250,1292,1250,1292,1250,1250,1291,1209,1208,1208,1250,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1292,1208,1250,1250,1209,1291,1250,1292,1250,1250,1292,1208,1250,1250,1292,1208,1292,1208,1250,1292,1250,1250,1250,1250,1291,1209,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1292,1208,1209,1250,1041,1250,1250,1250,1209,1250,1250,1291,1250,1250,1250,1292,1208,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1291,1250,1250,1292,1292,1250,1291,1250,1250,1250,1250,1250,1292,1250,1208,1292,1250,1250,1292,1250,1291,1292,1250,1250,1292,1291,1209,1250,1041,1167,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1250,1292,1208,1042,1250,1250,1292,1250,1250,1291,1209,1250,1291,1250,1042,1292,1250,1250,1250,1250,1250,1291,1125,1250,1250,1292,1333,1209,1250,1291,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1208,1209,1125,1250,1250,1291,1084,1250,1250,1291,1042,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1166,1084,1291,1250,1292,1250,1250,1292,1250,1333,1208,1292,1250,1250,1292,1250,1291,1292,1250,1292,1250,1250,1250,1291,1250,1292,1250,1333,1209,1250,1291,1292,1250,1208,1250,1250,1250,1292,1250,1292,1291,1209,1125,1333,1208,1250,1292,1250,1250,1250,1250,1292,1291,1250,1292,1250,1292,1291,1250,1292,1208,1292,1250,1250,1250,1083,1292,1208,1334,1250,1250,1250,1250,1250,1291,1209,1250,1291,1250,1250,1292,1250,1208,1292,1208,1292,1208,1292,1250,1250,1292,1125,1291,1292,1292,1208,1250,1292,1250,1208,1292,1208,1208,1292,1250,1333,1250,1292,1250,1250,1292,1250,1291,1250,1250,1250,1167,1250,1208,1292,1250,1292,1250,1166,1250,1250,1250,1250,1250,1250,1250,1250,1292,1333,1250,1042,1250,1292,1250,1250,1250,1208,1292,1250,1291,1250,1125,1292,1208,1250,1250,1292,1250,1250,1250,1292,1250,1166,1250,1292,1292,1291,1292,1250,1208,1042,1292,1291,1292,1250,1292,1291,1250,1292,1292,1250,1208,1292,1291,1292,1292,1250,1041,1292,1000,1250,1250,1292,1250,1291,1292,1292,1291,1292,1250,1292,1291,1209,1291,1209,1291,1292,1250,1292,1250,1250,1250,1250,1250,1166,1292,1292,1291,1209,1250,1291,1209,1208,1292,1208,1292,1208,1292,1291,1250,1334,1250,1291,1209,1291,1250,1167,1292,1250,1291,1250,1250,1250,1292,1292,1333,1292,1250,1291,1250,1250,1292,1250,1208,1250,1292,1250,1250,1250,1167,1250,1291,1250,1250,1250,1292,1250,1083,1250,1292,1292,1166,1209,1208,1292,1041,1292,1333,1209,1250,1250,1291,1209,1083,1125,1292,1291,1250,1250,1292,1292,1000,1291,1250,1292,1292,1250,1250,1125,1250,1250,1250,1166,1292,1292,1250,1291,1334,1208,1250,1250,1250,1292,1250,1291,1209,1291,1209,1291,1209,1250,1250,1291,1292,1250,1292,1291,1209,1250,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1250,1292,1208,1250,1250,1250,1250,1292,1250,1250,1083,1292,1291,1167,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1291,1209,1250,1250,1250,1291,1250,1292,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1292,1208,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1250,1292,1250,1250,1042,1291,1209,1250,1291,1250,1250,1250,1250,1250,1209,1250,1291,1084,1250,1291,1250,1250,1250,1292,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1292,1208,1167,1292,1208,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1291,1167,1250,1250,1292,1250,1250,1291,1209,1250,1250,1291,1292,1250,1292,1041,1292,1292,1250,1250,1250,1291,1250,1250,1292,1292,1250,1250,1250,1250,1125,1250,1250,1250,1291,1250,1292,1250,1292,1250,1250,1250,1250,1250,1041,1292,1208,1250,1250,1250,1250,1250,1250,1250,1250,1250,1209,1291,1250,1292,1250,1250,1250,1292,1250,1250,1291,1292,1250,1292,1291,1250,1250,1250,1292,1208,1292,1250,1125,1250,1250,1250,1250,1250,1250,1292,1208,1250,1250,1250,1292,1250,1291,1250,1250,1292,1250,1250,1250,1167,1333,1250,1208,1292,1250,1292,1250,1041,1125,1250,1209,1250,1083,1250,1292,1291,1292,1292,1208,1250,1250,1083,1292,1208,1250,1250,1292,1208,1209,1250,1291,1292,1250,1250,1292,1250,1291,1084,1250,1166,1250,1250,1250,1292,1208,1250,1292,1250,1250,1250,1292,1250,1291,1250,1250,1250,1167,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1042,1292,1250,1250,1250,1250,1250,1250,1250,1250,1291,1209,1291,1250,1042,1292,1041,1250,1292,1250,1250,1292,1208,1167,1250,1250,1250,1208,1250,1250,1250,1292,1250,1291,1250,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1208,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1291,1000,1250,1250,1250,1042,1250,1250,1333,1250,1292,1250,1292,1166,1250,1292,1250,1292,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1083,1250,1250,1250,1292,1250,1250,1291,1250,1250,1250,1292,1208,1292,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1292,1250,1083,1250,1250,1292,1250,1208,1292,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1292,1250,1250,1250,1250,1250,1250,1125,1250,1250,1250,1250,1250,1250,1250,1250,1208,1292,1208,1292,1250,1250,1250,1292,1250,1250,1166,1292,1250,1208,1250,1292,1250,1250,1125,1250,1250,1250,1292,1250,1291,1250,1250,1292,1250,1208,1292,1250,1250,1250,1250,1125,1250,1292,1250,1291,1250,1250,1250,1292,1042,1291,1209,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1292,1250,1291,1250,1167,1292,1250,1250,1250,1250,1250,1250,1250,1291,1250,1084,1291,1209,1291,1250,1292,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1292,1250,1250,1292,1250,1250,1291,1250,1292,1250,1125,1292,1208,1208,1209,1250,1250,1250,1250,1250,1250,1291,1250,1084,1250,1250,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1250,1250,1292,1208,1250,1250,1292,1250,1250,1291,1250,1292,1250,1167,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1291,1209,1208,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1292,1250,1291,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1292,1291,1209,1291,1250,1292,1250,1250,1250,1292,1291,1250,1292,1250,1208,1292,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1209,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1292,1250,1291,1250,1167,1250,1208,1250,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1292,1208,1250,1250,1250,1292,1208,1250,1250,1250,1292,1250,1292,1291,1250,1250,1209,1250,1208,1250,1250,1250,1250,1292,1250,1291,1250,1292,1250,1292,1250,1250,1250,1250,1291,1250,1250,1250,1292,1292,1250,1250,1291,1250,1292,1250,1167,1250,1250,1250,1291,1250,1292,1250,1042,1250,1250,1291,1250,1250,1292,1292,1250,1291,1250,1250,1250,1209,1250,1250,1250,1291,1250,1292,1250,1250,1250,1250,1208,1125,1292,1250,1250,1250,1250,1250,1292,1250,1250,1208,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1125,1250,1292,1250,1291,1292,1208,1125,1209,1208,1250,1250,1250,1292,1250,1250,1250,1291,1250,1125,1250,1250,1292,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1291,1084,1250,1208,1208,1292,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1208,1292,1250,1250,1250,1292,1250,1250,1250,1291,1292,1292,1250,1250,1250,1250,1250,1250,1250,1125,1291,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1167,1250,1291,1250,1250,1292,1250,1250,1292,1125,1250,1291,1292,1250,1250,1250,1292,1250,1250,1250,1250,1291,1250,1209,1291,1209,1250,1250,1250,1250,1291,1292,1208,1209,1291,1250,1209,1291,1250,1250,1292,1250,1250,1292,1166,1209,1291,1250,1125,1292,1250,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1291,1250,1209,1291,1209,1291,1209,1250,1291,1292,1250,1250,1125,1292,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1292,1250,1250,1292,1250,1125,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1209,1291,1250,1250,1250,1292,1250,1250,1250,1292,1083,1250,1250,1292,1250,1250,1250,1250,1291,1292,1292,1250,1250,1250,1291,1250,1250,1250,1292,1208,1250,1250,1292,1250,1250,1250,1083,1292,1250,1292,1250,1250,1291,1250,1292,1250,1292,1250,1291,1209,1250,1250,1250,1083,1292,1250,1291,1250,1250,1292,1208,1292,1208,1250,1292,1250,1292,1250,1250,1250,1250,1250,1041,1292,1250,1292,1250,1250,1291,1250,1250,1250,1292,958,1250,1250,1209,1250,1250,1250,1250,1250,1250,1291,1084,1250,1250,1083,1250,1125,1292,1250,1291,1250,1250,1292,1250,1250,1292,1083,1208,1250,1250,1292,1250,1250,1250,1292,1291,1250,1292,1250,1250,1250,1083,1250,1292,1208,1209,1250,1250,1250,1250,1250,1208,1250,1250,1250,1292,1166,1250,1250,1250,1250,1250,1250,1250,1250,1292,1292,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1167,1250,1208,1250,1292,1250,1250,1292,1250,1291,1209,1250,1291,1250,1250,1292,1250,1167,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1125,1250,1250,1291,1250,1292,1250,1292,1250,1250,1250,1083,1250,1208,1250,1250,1250,1209,1291,1167,1042,1250,1291,1250,1250,1209,1208,1000,1250,1250,1292,1291,1209,1250,1291,1292,1250,1250,1250,1292,1250,1250,1250,1291,1167,1250,1208,1292,1250,1250,1292,1291,1250,1292,1250,1083,1250,1250,1250,1209,1291,1292,1250,1250,1333,1209,1291,1250,1292,1250,1250,1292,1250,1291,1250,1250,1292,1250,1292,1250,1250,1250,1250,1250,1291,1250,1250,1292,1250,1042,1291,1292,1208,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1292,1250,1083,1292,1292,1125,1250,1250,1291,1250,1125,1250,1292,1292,1250,1291,1250,1250,1292,1250,1250,1042,1291,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1291,1250,1292,1208,1167,1250,1208,1292,1208,1250,1250,1292,1208,1250,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1291,1209,1250,1291,1209,1250,1166,1250,1250,1292,1250,1292,1250,1250,1250,1250,1291,1209,1250,1250,1291,1250,1292,1250,1292,1250,1250,1291,1209,1250,1291,1209,1250,1291,1292,1250,1250,1250,1250,1250,1208,1292,1250,1167,1250,1250,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1292,1292,1250,1166,1292,1250,1125,1250,1250,1292,1250,1291,1250,1292,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1250,1208,1292,1208,1250,1250,1209,1125,1166,1250,1167,1292,1250,1250,1250,1250,1291,1250,1084,1250,1250,1250,1250,1250,1250,1291,1042,1250,1250,1250,1292,1250,1250,1250,1291,1250,1292,1125,1292,1250,1250,1250,1250,1250,1250,1250,1291,1250,1125,1292,1250,1250,1292,1208,1250,1250,1250,1292,1250,1250,1291,1292,1250,1292,1250,1250,1250,1291,1250,1292,1250,1292,1250,1250,1208,1250,1292,1250,1291,1250,1250,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1250,1250,1292,1208,1250,1250,1292,1250,1250,1250,1292,1291,1250,1250,1250,1209,1250,1250,1291,1209,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1209,1291,1209,1250,1250,1250,1208,1250,1208,1292,1292,1291,1292,1208,1292,1292,1250,1250,1291,1250,1250,1209,1291,1250,1250,1250,1292,1250,1208,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1292,1208,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1083,1250,1250,1250,1292,1250,1291,1250,1250,1250,1250,1084,1250,1250,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1292,1083,1250,1250,1250,1292,1250,1292,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1250,1041,1250,1250,1125,1250,1084,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1291,1250,1209,1291,1250,1250,1084,1250,1208,1250,1292,1250,1250,1291,1250,1250,1250,1292,1250,1250,1292,1250,1250,1291,1292,1250,1250,1250,1208,1292,1250,1250,1250,1250,1292,1250,1291,1250,1250,1250,1250,1250,1250,1292,1250,1125,1208,1250,1292,1250,1250,1250,1292,1083,1250,1250,1250,1250,1167,1250,1250,1250,1250,1291,1292,1250,1292,1208,1250,1292,1208,1250,1292,1250,1250,1250,1250,1250,1291,1250,1292,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1292,1291,1209,1250,1291,1292,1083,1209,1291,1250,1250,1292,1250,1250,1250,1250,1208,1334,1166,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1291,1250,1084,1208,1250,1292,1250,1250,1250,1250,1291,1250,1250,1292,1208,1209,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1291,1250,1292,1250,1250,1292,1250,1250,1291,1292,1250,1250,1292,1166,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1209,1291,1250,1250,1250,1250,1250,1292,1250,1292,1250,1250,1250,1250,1250,1250,1291,1167,1250,1250,1292,1250,1250,1250,1250,1250,1291,1209,1250,1250,1291,1250,1292,1250,1250,1167,1250,1250,1250,1291,1250,1250,1250,1250,1292,1250,1250,1292,1250,1291,1209,1250,1250,1291,1250,1250,1250,1209,1250,1250,1250,1250,1291,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1125,1250,1291,1250,1250,1292,1250,1250,1292,1208,1250,1250,1292,1208,1250,1250,1250,1292,1291,1250,1250,1292,1292,1250,1250,1250,1250,1208,1292,1250,1250,1250,1250,1291,1167,1250,1250,1292,1250,1250,1250,1291,1209,1250,1250,1250,1250,1291,1250,1250,1292,1083,1250,1250,1292,1250,1250,1292,1250,1291,1250,1250,1250,1250,1292,1250,1292,1250,1166,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1125,1250,1042,1291,1250,1250,1292,1292,1291,1292,1250,1292,1250,1250,1291,1042,1167,1208,1292,1208,1250,1250,1292,1250,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1208,1292,1292,1250,1250,1291,1292,1250,1292,1250,1291,1250,1250,1250,1292,1208,1250,1250,1292,1250,1042,1250,1250,1250,1250,1250,1333,1208,1250,1250,1250,1292,1292,1291,1250,1250,1250,1250,1292,1250,1292,1250,1291,1250,1250,1292,1208,1250,1250,1250,1250,1292,1292,1250,1250,1291,1250,1250,1292,1333,1250,1250,1042,1292,1250,1250,1291,1250,1292,1250,1250,1292,1250,1250,1291,1250,1209,1250,1250,1250,1208,1292,1291,1250,1250,1250,1250,1250,1250,1292,1250,1292,1250,1166,1250,1250,1250,1250,1250,1084,1208,1250,1250,1250,1250,1250,1208,1292,1208,1250,1250,1250,1250,1250,1292,1250,1292,1208,1250,1250,1250,1250,1208,1292,1292,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1125,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1292,1250,1291,1250,1250,1292,1292,1250,1250,1166,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1292,1292,1250,1250,1291,1250,1292,1250,1250,1250,1250,1250,1292,1250,1250,1125,1291,1250,1292,1250,1250,1292,1250,1250,1250,1208,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1292,1250,1292,1250,1041,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1292,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1166,1250,1292,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1250,1167,1291,1250,1292,1250,1250,1250,1250,1250,1250,1250,1292,1250,1291,1209,1291,1250,1250,1250,1250,1250,1292,1042,1208,1250,1250,1250,1292,1250,1250,1291,1292,1250,1292,1250,1250,1250,1250,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1291,1250,1250,1250,1250,1250,1250,1250,1125,1250,1250,1250,1250,1250,1292,1250,1292,1291,1250,1250,1292,1292,1250,1291,1250,1292,1250,1250,1292,1250,1250,1250,1250,1291,1250,1250,1292,1167,1250,1250,1250,1250,1125,1250,1250,1291,1209,1208,1167,1291,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1291,1125,1167,1292,1250,1291,1209,1250,1250,1083,1292,1291,1250,1250,1292,1250,1292,1250,1291,1250,1250,1292,1208,1250,1292,1250,1292,1208,1292,1291,1250,1250,1292,1250,1250,1292,1291,1250,1250,1250,1250,1292,1250,1167,1291,1250,1292,1208,1250,1250,1250,1250,1250,1292,1250,1292,1291,1250,1292,1250,1250,1292,1250,1291,1250,1250,1292,1250,1250,1042,1250,1250,1291,1250,1292,1250,1167,1291,1292,1250,1083,1250,1292,1292,1250,1250,1291,1250,1292,1250,1250,1167,1250,1250,1250,1250,1291,1250,1292,1042,1250,1291,1209,1250,1250,1250,1291,1250,1250,1250,1209,1291,1292,1250,1292,1250,1166,1250,1250,1250,1250,1250,1209,1291,1250,1250,1292,1250,1250,1042,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1208,1250,1250,1250,1209,1291,1250,1167,1250,1292,1291,1250,1250,1292,1250,1250,1250,1292,1000,1250,1291,1250,1250,1292,1250,1250,1250,1250,1208,1292,1250,1250,1292,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1292,1208,1250,1250,1250,1292,1208,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1125,1250,1291,1292,1250,1250,1250,1250,1292,1250,1250,1250,1250,1291,1209,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1292,1250,1291,1250,1250,1292,1250,1292,1250,1250,1083,1208,1125,1250,1292,1250,1292,1250,1291,1292,1250,1292,1250,1291,1250,1250,1250,1209,1291,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1291,1250,1250,1292,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1250,1291,1209,1208,1250,1292,1250,1250,1291,1250,1250,1250,1250,1292,1250,1292,1208,1250,1250,1292,1041,1250,1250,1250,1250,1292,1250,1250,1292,1083,1250,1083,1250,1292,1292,1250,1250,1208,1292,1250,1250,1250,1291,1292,1250,1250,1250,1250,1292,1250,1250,1291,1250,1292,1250,1250,1250,1292,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1250,1291,1250,1250,1250,1250,1292,1125,1250,1250,1250,1042,1250,1250,1250,1291,1250,1292,1292,1250,1250,1208,1292,1250,1250,1083,1250,1250,1250,1250,1250,1250,1250,1292,1125,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1208,1250,1292,1250,1125,1250,1208,1292,1250,1208,1250,1250,1292,1250,1250,1250,1250,1208,1292,1250,1250,1250,1250,1250,1250,1250,1292,1291,1000,1250,1250,1292,1250,1292,1291,1250,1250,1250,1292,1042,1250,1250,1250,1250,1250,1291,1250,1250,1292,1250,1250,1250,1208,1292,1208,1250,1250,1292,1208,1167,1250,1250,1208,1250,1250,1250,1292,1250,1292,1291,1250,1250,1292,1250,1250,1292,1250,1291,1250,1292,1292,1250,1291,1250,1250,1167,1292,1250,1291,1209,1208,1250,1250,1250,1250,1250,1292,1250,1291,1250,1250,1250,1292,1208,1292,1208,1209,1250,1250,1291,1292,1250,1250,1250,1250,1250,1250,1083,1250,1250,1250,1250,1250,1292,1208,1250,1250,1250,1292,1250,1250,1292,1166,1250,1250,1250,1250,1250,1292,1250,1250,1292,1250,1166,1250,1292,1292,1250,1291,1209,1291,1250,1250,1292,1292,1250,1333,1292,1250,1250,1250,1250,1291,1209,1250,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1250,1291,1292,1250,1250,1250,1292,1250,1250,1291,1250,1250,1292,1292,1250,1291,1209,1250,1250,1291,1167,1250,1250,1250,1250,1292,1250,1250,1250,1208,1250,1250,1292,1250,1250,1250,1291,1250,1250,1292,1250,1250,1042,1291,1250,1292,1250,1250,1250,1292,1208,1292,1250,1250,1250,1291,1125,1250,1250,1125,1250,1250,1250,1209,1250,1291,1292,1250,1292,1208,1250,1250,1292,1250,1250,1208,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1292,1250,1167,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1083,1375,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1292,1250,1208,1292,1208,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1334,1250,1250,1250,1291,1250,1250,1250,1209,1291,1209,1250,1250,1250,1291,1209,1291,1292,1250,1250,1292,1250,1291,1250,1250,1250,1250,1292,1250,1250,1292,1208,1208,1250,1292,1208,1292,1250,1250,1250,1250,1292,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1292,1250,1250,1250,1166,1250,1250,1292,1250,1292,1250,1250,1291,1250,1292,1250,1250,1292,1166,1209,1291,1250,1250,1209,1291,1250,1292,1250,1208,1292,1250,1250,1292,1250,1250,1083,1208,1250,1250,1292,1250,1292,1250,1250,1250,1250,1083,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1292,1292,1250,1291,1250,1250,1209,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1291,1250,1250,1292,1208,1250,1250,1292,1208,1250,1250,1250,1292,1167,1083,1250,1250,1167,1291,1209,1250,1208,1292,1250,1291,1209,1250,1250,1250,1250,1291,1250,1250,1167,1250,1292,1250,1250,1250,1291,1292,1250,1250,1250,1042,1250,1250,1208,1250,1292,1250,1250,1125,1250,1250,1291,1250,1250,1292,1250,1250,1292,1291,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1167,1250,1125,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1333,1250,1292,1166,1209,1291,1250,1292,1208,1250,1250,1250,1250,1292,1250,1250,1250,1292,1291,1209,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1250,1084,1250,1166,1209,1250,1291,1250,1250,1250,1250,1250,1250,1250,1292,1167,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1250,1292,1250,1292,1250,1250,1291,1250,1250,1250,1292,1250,1250,1292,1250,1291,1250,1250,1167,1208,1292,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1208,1292,1250,1250,1250,1291,1250,1250,1209,1250,1250,1291,1250,1292,1292,1291,1250,1292,1250,1250,1250,1292,1250,1250,1250,1083,1292,1250,1250,1250,1291,959,1291,1250,1250,1250,1292,1250,1125,1250,1250,1292,1250,1250,1291,1167,1250,1250,1167,1250,1250,1083,1250,1292,1250,1291,1209,1250,1291,1209,1208,1250,1250,1250,1292,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1083,1250,1250,1292,1250,1250,1250,1250,1291,1292,1208,1250,1084,1250,1250,1291,1209,1250,1291,1209,1250,1291,1084,1250,1250,1291,1292,1250,1292,1250,1250,1250,1208,1208,1250,1250,1250,1250,1250,1292,1250,1250,1125,1250,1250,1250,1292,1250,1250,1250,1291,1250,1209,1291,1250,1250,1250,1292,1083,1250,1292,1250,1292,1250,1291,1250,1250,1292,1250,1250,1250,1292,1291,1250,1250,1250,1209,1250,1291,1209,1291,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1209,1208,1250,1250,1292,1166,1209,1291,1250,1250,1250,1209,1291,1209,1208,1250,1250,1125,1250,1250,1250,1292,1250,1250,1291,1250,1250,1250,1292,1292,1250,1291,1209,1250,1250,1250,1250,1291,1250,1292,1208,1250,1250,1209,1291,1209,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1291,1209,1250,1250,1250,1291,1250,1250,1292,1250,1208,1250,1250,1292,1208,1250,1209,1291,1250,1292,1250,1250,1292,1250,1250,1250,1250,1291,1250,1250,1250,1250,1042,1042,1291,1250,1250,1084,1208,1292,1208,1250,1250,1250,1250,1167,1250,1250,1291,1209,1250,1291,1250,1292,1208,1250,1250,1250,1292,1292,1291,1250,1250,1250,1292,1000,1292,1250,1250,1291,1084,1250,1250,1041,1292,1292,1250,1250,1250,1250,1250,1291,1250,1084,1250,1291,1250,1250,1292,1208,1250,1292,1292,1208,1250,1292,1250,1250,1291,1250,1250,1250,1292,1292,1250,1250,1291,1250,1250,1250,1167,1292,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1209,1250,1250,1291,1250,1042,1250,1250,1125,1292,1208,1250,1250,1292,1250,1250,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1292,1250,1250,1291,1292,1250,1250,1167,1208,1167,1250,1250,1250,1291,1209,1250,1291,1250,1250,1250,1084,1250,1291,1250,1250,1250,1250,1292,1167,1250,1250,1250,1250,1250,1250,1250,1291,1250,1292,1250,1250,1208,1292,1208,1250,1250,1250,1167,1250,1292,1083,1250,1250,1250,1208,1292,1250,1250,1292,1250,1250,1250,1291,1125,1250,1250,1250,1292,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1000,1250,1250,1291,1292,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1208,1292,1250,1250,1208,1250,1292,1250,1083,1250,1292,1291,1250,1250,1292,1250,1292,1208,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1250,1250,1250,1250,1125,1250,1250,1292,1250,1250,1250,1250,1292,1250,1291,1125,1250,1250,1292,1250,1250,1250,1167,1250,1291,1250,1209,1291,1209,1208,1292,1250,1291,1250,1250,1292,1292,1250,1208,1292,1250,1250,1250,1250,1291,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1042,1000,1250,1250,1292,1125,1250,1250,1291,1292,1292,1208,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1291,1250,1292,1208,1250,1292,1250,1250,1250,1292,1083,1250,1250,1250,1250,1250,1292,1291,1250,1250,1250,1084,1291,1250,1209,1250,1291,1250,1250,1250,1292,1167,1250,1291,1292,1208,1250,1250,1292,1250,1292,1250,1250,1250,1250,1250,1250,1291,1209,1250,1250,1250,1250,1250,1250,1250,1250,1166,1250,1209,1291,1250,1250,1292,1250,1292,1250,1291,1000,1250,1292,1208,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1292,1250,1250,1292,1291,1250,1250,1250,1292,1250,1125,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1333,1292,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1125,1250,1250,1250,1250,1250,1250,1291,1084,1250,1291,1250,1250,1292,1208,1292,1250,1250,1250,1292,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1041,1250,1250,1292,1250,1250,1292,1250,1291,1250,1250,1292,1208,1292,1250,1250,1292,1250,1250,1250,1208,1292,1250,1250,1250,1291,1292,1292,1250,1250,1291,1209,1250,1250,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1209,1250,1291,1250,1250,1250,1250,1250,1250,1250,1292,1250,1083,1250,1250,1250,1250,1250,1250,1250,1250,1292,1292,1166,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1292,1208,1208,1250,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1292,1250,1250,1250,1083,1292,1208,1167,1083,1167,1292,1250,1250,1291,1250,1209,1291,1334,1250,1250,1250,1291,1250,1250,1250,1209,1208,1250,1250,1292,1250,1250,1291,1250,1292,1250,1292,1250,1250,1250,1291,1250,1167,1250,1292,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1166,1209,1250,1250,1250,1291,1167,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1292,1125,1208,1250,1292,1250,1292,1250,1125,1250,1250,1250,1291,1250,1292,1292,1291,1250,1250,1292,1250,1250,1250,1292,1250,1083,1250,1250,1292,1208,1250,1292,1250,1250,1250,1291,1209,1250,1291,1250,1250,1292,1208,1292,1250,1208,1292,1250,1250,1250,1292,1250,1250,1250,1291,1292,1167,1250,1291,1209,1250,1250,1291,1209,1125,1250,1250,1250,1250,1333,1250,1292,1208,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1000,1292,1208,1250,1292,1208,1292,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1292,1291,1250,1250,1250,1250,1250,1250,1292,1167,1250,1250,1250,1291,1250,1250,1209,1291,1250,1292,1250,1292,1250,1250,1291,1292,1250,1250,1292,1250,1250,1291,1250,1042,1250,1250,1292,1250,1291,1250,1250,1209,1291,1250,1292,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1292,1250,1292,1250,1250,1250,1250,1291,1250,1084,1250,1250,1250,1250,1291,1250,1250,1250,1209,1291,1250,1250,1250,1292,1250,1000,1250,1292,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1083,1250,1042,1250,1250,1291,1209,1250,1291,1250,1209,1291,1292,1250,1292,1250,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1292,1250,1250,1041,1250,1250,1250,1250,1250,1292,1208,1292,1250,1250,1292,1250,1250,1250,1208,1250,1250,1250,1250,1250,1250,1292,1208,1292,1250,1250,1125,1291,1250,1084,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1209,1291,1292,1292,1250,1208,1292,1250,1250,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1333,1209,1250,1250,1250,1250,1250,1250,1250,1250,1291,1292,1250,1250,1250,1292,1208,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1292,1250,1250,1292,1250,1250,1250,1208,1292,1250,1250,1291,1250,1250,1250,1292,1208,1250,1250,1250,1250,1250,1209,1291,1250,1250,1250,1250,1292,1250,1292,1041,1209,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1250,1291,1209,1250,1250,1250,1250,1291,1250,1250,1250,1292,1083,1292,1292,1250,1291,1209,1250,1250,1250,1083,1292,1250,1250,1041,1292,1250,1208,1292,1250,1250,1250,1250,1292,1250,1250,1250,1250,1291,1250,1250,1292,1292,1291,1250,1250,1209,1291,1250,1292,1250,1250,1292,1208,1250,1250,1250,1292,1208,1292,1250,1291,1250,1292,1250,1250,1292,1208,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1292,1292,1291,1250,1250,1250,1250,1292,1208,1250,1125,1250,1292,1250,1250,1250,1292,1166,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1042,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1292,1291,1292,1250,1250,1250,1250,1250,1250,1250,1292,1250,1291,1209,1208,1250,1250,1292,1250,1041,1250,1250,1209,1291,1209,1250,1250,1250,1291,1209,1291,1250,1250,1250,1250,1292,1250,1250,1250,1333,1250,1250,1250,1334,1250,1250,1250,1291,1292,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1292,1292,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1292,1250,1083,1292,1250,1292,1250,1250,1250,1250,1250,1291,1250,1167,1250,1250,1250,1250,1250,1250,1167,1250,1291,1250,1167,1292,1250,1333,1250,1250,1292,1250,1250,1250,1291,1209,1208,1292,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1208,1250,1250,1250,1250,1292,1167,1250,1250,1250,1250,1250,1291,1209,1250,1250,1250,1208,1292,1250,1250,1291,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1042,1250,1250,1250,1250,1250,1291,1250,1292,1208,1292,1250,1250,1250,1292,1250,1250,1250,1208,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1292,1292,1250,1250,1291,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1083,1292,1250,1250,1250,1291,1250,1250,1042,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1125,1292,1250,1250,1250,1083,1250,1250,1125,1250,1250,1250,1292,1250,1291,1250,1250,1250,1042,1250,1208,1292,1250,1250,1250,1250,1292,1250,1250,1291,1250,1292,1250,1292,1250,1208,1250,1250,1250,1083,1292,1167,1250,1250,1250,1250,1291,1000,1250,1292,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1292,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1292,1166,1292,1208,1250,1250,1292,1292,1250,1250,1250,1291,1250,1250,1292,1208,1250,1250,1292,1250,1292,1250,1291,1292,1250,1250,1333,1209,1291,1250,1250,1292,1250,1208,1084,1250,1250,1250,1291,1250,1250,1209,1291,1292,1250,1250,1292,1291,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1042,1250,1000,1250,1292,1208,1250,1250,1250,1250,1292,1208,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1291,1250,1292,1292,1208,1208,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1292,1208,1250,1209,1250,1250,1250,1291,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1291,1292,1250,1250,1250,1250,1292,1291,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1083,1250,1292,1250,1292,1000,1250,1250,1291,1292,1292,1250,1291,1000,1250,1292,1083,1250,1250,1250,1250,1250,1250,1292,1250,1250,1083,1250,1250,1250,1250,1250,1042,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1042,1250,1292,1250,1291,1250,1250,1292,1250,1250,1250,1250,1250,1292,1250,1291,1250,1292,1292,1250,1291,1250,1250,1250,1250,1250,1292,1250,1250,1250,1125,1250,1292,1250,1250,1250,1250,1208,1250,1292,1250,1291,1292,1250,1250,1250,1292,1166,1292,1250,1292,1208,1292,1250,1291,1250,1292,1250,1250,1250,1292,1250,1083,1292,1291,1250,1250,1250,1292,1250,1250,1250,1250,1292,1291,1292,1208,1250,1250,1250,1250,1167,1292,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1291,1292,1208,1125,1250,1292,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1209,1250,1291,1250,1250,1292,1250,1250,1250,1250,1250,1208,1250,1292,1250,1250,1083,1250,1292,1250,1292,1250,1250,1250,1333,1250,1208,1250,1250,1292,1292,1208,1250,1250,1250,1292,1250,1250,1250,1291,1292,1208,1250,1292,1250,1292,1250,1291,1250,1292,1250,1292,1250,1291,1250,1250,1125,1292,1250,1292,1250,1250,1291,1292,1250,1250,1292,1250,1083,1292,1000,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1167,1250,1292,1250,1250,1291,1250,1250,1250,1167,1250,1208,1292,1292,1250,1291,1250,1209,1250,1291,1250,1250,1292,1042,1250,1291,1292,1250,1250,1292,1041,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1083,1250,1250,1292,1250,1250,1292,1250,1291,1250,1250,1250,1250,1250,1209,1250,1291,1209,1125,1291,1250,1250,1125,1250,1250,1250,1209,1291,1250,1250,1292,1042,1250,1125,1250,1250,1250,1250,1250,1291,1209,1250,1250,1291,1250,1292,1208,1250,1250,1250,1334,1250,1250,1291,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1291,1250,1292,1208,1250,1209,1291,1250,1292,1250,1250,1250,1250,1250,1083,1250,1250,1292,1250,1250,1250,1250,1250,1250,1292,1125,1291,1250,1250,1250,1250,1250,1250,1292,1292,1250,1250,1291,1209,1250,1208,1250,1250,1250,1292,1250,1250,1291,1209,1208,1250,1292,1250,1000,1291,1167,1250,1292,1250,1250,1250,1291,1292,1250,1208,1209,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1208,1250,1250,1250,1292,1250,1083,1250,1292,1208,1250,1292,1250,1250,1292,1291,1250,1250,1250,1084,1291,1292,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1208,1292,1250,1250,1250,1208,1292,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1292,1083,1208,1292,1250,1250,1292,1291,1250,1250,1125,1292,1250,1292,1250,1250,1250,1291,1209,1208,1292,1083,1292,1291,1250,1250,1250,1292,1208,1209,1250,1125,1291,1292,1250,1250,1250,1292,1208,1250,1250,1250,1250,1292,1208,1250,1250,1250,1042,1250,1250,1291,1292,1250,1250,1250,1292,1250,1250,1291,1209,1291,1125,1250,1250,1209,1291,1250,1209,1250,1250,1291,1250,1250,1250,1250,1209,1291,1250,1250,1250,1250,1250,1250,1209,1291,1250,1250,1250,1292,1125,1292,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1042,1250,1292,1208,1167,1041,1250,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1292,1250,1250,1291,1042,1250,1292,1250,1291,1209,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1208,1292,1250,1250,1250,1250,1208,1250,1209,1250,1291,1250,1250,1292,1250,1292,1250,1291,1292,1208,1250,1250,1250,1250,1250,1209,1208,1250,1250,1250,1292,1250,1208,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1209,1291,1167,1083,1292,1292,1208,1250,1250,1292,1000,1250,1291,1250,1250,1250,1125,1250,1250,1250,1250,1292,1250,1250,1292,1250,1250,1291,1292,1208,1250,1209,1250,1250,1291,1209,1208,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1291,1209,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1125,1292,1250,1250,1250,1291,1292,1250,1250,1292,1250,1291,1250,1250,1250,1292,1250,1042,1250,1291,1209,1250,1250,1291,1250,1250,1084,1250,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1209,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1291,1292,1250,1250,1292,1208,1208,1250,1292,1250,1250,1250,1125,1250,1292,1208,1250,1292,1250,1250,1250,1166,1250,1292,1250,1250,1250,1250,1250,1250,1292,1208,1250,1250,1292,1250,1250,1208,1250,1250,1292,1250,1250,1291,1250,1250,1292,1292,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1250,1084,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1291,1209,1250,1250,1291,1292,1250,1292,1291,1250,1292,1250,1250,1250,1292,1166,1250,1250,1209,1250,1250,1291,1209,1291,1250,1250,1292,1250,1250,1250,1250,1250,1250,1292,1166,1209,1291,1250,1250,1250,1292,1208,1209,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1292,1208,1250,1292,1250,1250,1208,1250,1167,1250,1291,1209,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1250,1291,1292,1250,1250,1250,1292,1291,1250,1250,1334,1250,1250,1291,1209,1250,1250,1250,1291,1209,1291,1250,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1292,1250,1250,1250,1292,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1042,1250,1250,1208,1292,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1042,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1208,1292,1250,1250,1250,1250,1250,1125,1250,1250,1250,1250,1292,1250,1250,1250,1250,1291,1250,1292,1250,1167,1250,1250,1250,1250,1250,1291,1292,1208,1250,1250,1250,1209,1291,1292,1250,1292,1250,1250,1291,1167,1292,1250,1250,1291,1084,1250,1250,1250,1291,1209,1250,1250,1125,1250,1250,1291,1250,1292,1292,1250,1250,1291,1250,1250,1292,1250,1250,1208,1250,1250,1292,1250,1250,1292,1250,1250,1250,1166,1250,1250,1334,1208,1292,1250,1250,1250,1250,1250,1083,1167,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1250,1292,1250,1250,1208,1292,1250,1250,1250,1291,1250,1250,1250,1167,1250,1208,1292,1000,1250,1292,1250,1291,1250,1292,1250,1292,1291,1292,1208,1209,1250,1291,1250,1250,1125,1292,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1250,1292,1208,1250,1208,1250,1250,1292,1250,1250,1250,1250,1083,1250,1292,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1208,1292,1250,1250,1250,1250,1000,1208,1292,1250,1292,1208,1292,1166,1292,1292,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1292,1291,1250,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1084,1291,1209,1250,1291,1250,1250,1292,1250,1250,1250,1292,1000,1291,1250,1250,1250,1250,1250,1167,1042,1250,1250,1291,1250,1250,1084,1250,1041,1250,1292,1250,1250,1250,1292,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1291,1250,1292,1250,1292,1291,1292,1208,1250,1209,1250,1250,1250,1250,1250,1291,1292,1250,1292,1250,1250,1333,1292,1250,1250,1291,1250,1292,1250,1250,1292,1250,1125,1250,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1291,1292,1250,1250,1250,1208,1292,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1125,1250,1250,1125,1250,1250,1250,1291,1250,1250,1292,1292,1250,1291,1250,1292,1292,1250,1250,1250,1250,1291,1250,1292,1250,1042,1291,1209,1291,1250,1250,1292,1250,1292,1250,1250,1291,1292,1208,1209,1291,1250,1292,1250,1250,1292,1208,1250,1292,1250,1250,1291,1209,1291,1042,1250,1250,1250,1292,1208,1292,1291,1250,1250,1292,1292,1250,1250,1291,1209,1250,1291,1042,1292,1208,1250,1292,1250,1291,1250,1292,1250,1250,1292,1208,1250,1042,1291,1209,1250,1291,1250,1292,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1167,1250,1292,1250,1291,1250,1292,1250,1042,1250,1250,1291,1209,1250,1250,1250,1250,1291,1209,1250,1291,1292,1208,1250,1292,1250,1250,1250,1042,1208,1250,1208,1250,1292,1208,1250,1250,1292,1250,1250,1250,1292,1291,1250,1209,1291,1334,1250,1291,1250,1292,1250,1250,1250,1042,1291,1250,1250,1250,1250,1292,1208,1125,1292,1250,1292,1250,1250,1291,1250,1292,1250,1292,1166,1250,1292,1250,1250,1250,1250,1250,1250,1292,1250,1291,1250,1250,1167,1250,1250,1292,1291,1209,1250,1291,1209,1250,1250,1291,1250,1250,1250,1292,1250,1292,1208,1250,1250,1292,1083,1250,1250,1250,1292,1291,1209,1291,1250,1292,1250,1250,1250,1250,1250,1292,1250,1125,1250,1291,1250,1250,1250,1250,1292,1292,1291,1292,1250,1292,1250,1250,1250,1291,1209,1291,1084,1250,1291,1250,1250,1292,1250,1250,1292,1250,1125,1291,1292,1250,1000,1250,1292,1208,1250,1292,1291,1209,1125,1291,1250,1250,1250,1250,1209,1166,1292,1250,1250,1125,1292,1291,1250,1292,1250,1292,1250,1291,1292,1250,1292,1291,1250,1292,1250,1292,1083,1250,1292,1291,1292,1250,1250,1292,1291,1292,1250,1250,1125,1250,1208,1250,1292,1208,1250,1250,1292,1208,1125,1250,1292,1292,1250,1291,1292,1250,1250,1250,1250,1167,1291,1250,1250,1292,1292,1250,1250,1250,1041,1000,1250,1250,1167,1250,1292,1208,1292,1250,1250,1250,1250,1250,1083,1250,1292,1291,1250,1292,1250,1250,1250,1250,1250,1250,1083,1292,1250,1083,1250,1250,1292,1167,1291,1250,1250,1125,1250,1250,1292,1292,1250,1250,1291,1250,1250,1209,1291,1292,1250,1083,1292,1250,1167,1250,1250,1250,1291,1250,1250,1250,1250,1292,1208,1292,1250,1292,1208,1042,1250,1250,1291,1250,1292,1250,1292,1250,1166,1292,1250,1292,1208,1250,1250,1292,1208,1250,1250,1167,1291,1292,1250,1292,1250,1250,1250,1000,1291,1292,1250,1250,1250,1250,1250,1250,1292,1250,1291,1250,1292,1250,1250,1250,1083,1250,1250,1292,1250,1250,1292,1250,1291,1250,1209,1250,1250,1250,1250,1250,1250,1250,1250,1291,1042,1250,1250,1250,1250,1250,1292,1208,1250,1292,1250,1250,1125,1291,1209,1291,1209,1250,1250,1250,1291,1250,1292,1250,1250,1292,1250,1291,1250,1292,1250,1250,1250,1292,1166,1250,1292,1208,1250,1250,1250,1250,1292,1208,1250,1125,1250,1292,1250,1292,1250,1291,1250,1042,1292,1250,1250,1291,1250,1125,1292,1250,1292,1291,1125,1250,1292,1250,1250,1250,1292,1250,1291,1000,1292,1250,1292,1208,1250,1292,1250,1291,1250,1250,1250,1292,1292,1250,1250,1291,1250,1250,1250,1250,1292,1042,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1250,1292,1083,1292,1083,1209,1208,1292,1250,1250,1250,1250,1250,1291,1250,1250,1250,1292,1167,1291,1250,1292,1250,1250,1083,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1291,1292,1250,1042,1291,1209,1250,1250,1291,1292,1250,1250,1333,1250,1250,1334,1291,1250,1292,1208,1250,1292,1250,1250,1250,1292,1041,1250,1250,1292,1292,1166,1292,1250,1250,1292,1250,1250,1250,1250,1291,1209,1291,1250,1250,1292,1250,1250,1250,1292,1083,1250,1250,1250,1292,1291,1250,1209,1291,1250,1250,1292,1042,1291,1250,1250,1250,1292,1250,1250,1083,1250,1292,1250,1250,1292,1250,1250,1250,1250,1125,1291,1209,1250,1041,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1292,1250,1250,1083,1209,1250,1291,1250,1250,1292,1250,1292,1291,1250,1250,1292,1250,1292,1208,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1291,1209,1208,1250,1250,1250,1292,1250,1250,1250,1250,1291,1209,1291,1250,1250,1292,1250,1250,1208,1250,1250,1250,1292,1292,1291,1042,1250,1250,1292,1208,1250,1042,1291,1209,1250,1291,1292,1208,1250,1250,1250,1084,1250,1291,1084,1291,1167,1292,1250,1250,1291,1250,1250,1250,1292,1250,1292,1250,1250,1250,1291,1292,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1292,1250,1292,1291,1250,1250,1250,1292,1250,1250,1250,1250,1292,1208,1250,1250,1292,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1291,1250,1292,1250,1250,1250,1250,1250,1250,1250,1167,1250,1291,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1292,1291,1209,1291,1250,1292,1167,1291,1084,1250,1291,1250,1250,1292,1208,1250,1292,1292,1250,1291,1250,1292,1208,1250,1250,1250,1250,1250,1292,1250,1292,1208,1250,1250,1250,1250,1292,1291,1250,1250,1250,1292,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1208,1250,1250,1292,1250,1292,1250,1250,1291,1250,1250,1292,1292,1250,1250,1125,1166,1250,1250,1250,1250,1250,1292,1250,1083,1250,1292,1250,1125,1250,1292,1250,1250,1291,1292,1250,1250,1250,1292,1291,1209,1291,1250,1250,1250,1125,1292,1250,1250,1292,1250,1250,1291,1209,1291,1209,1250,1250,1250,1250,1291,1250,1250,1250,1250,1209,1250,1291,1209,1250,1291,1250,1250,1292,1250,1250,1292,1250,1291,1209,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1291,1250,1250,1125,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1083,1250,1292,1250,1291,1250,1292,1250,1250,1250,1250,1208,1292,1250,1250,1250,1083,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1291,1292,1292,1250,1291,1292,1000,1250,1292,1250,1250,1250,1250,1208,1292,1250,1250,1291,1250,1292,1083,1292,1250,1250,1292,1250,1291,1250,1292,1250,1250,1250,1250,1250,1083,1292,1250,1250,1250,1292,1208,1208,1250,1250,1292,1167,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1292,1250,1250,1292,1208,1250,1250,1250,1292,1250,1250,1250,1125,1250,1208,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1209,1041,1250,1250,1250,1292,1208,1250,1250,1250,1292,1250,1083,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1292,1208,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1291,1209,1208,1250,1208,1292,1250,1250,1250,1292,1250,1291,1250,1250,1292,1208,1250,1292,1167,1291,1250,1250,1250,1084,1166,1250,1167,1250,1292,1208,1208,1250,1292,1250,1167,1291,1209,1250,1250,1250,1291,1250,1250,1292,1292,1250,1291,1250,1250,1250,1292,1250,1250,1125,1250,1292,1250,1041,1250,1250,1292,1250,1250,1250,1292,1250,1083,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1250,1084,1291,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1292,1250,1250,1250,1167,1250,1291,1250,1250,1250,1292,1208,1250,1250,1292,1208,1250,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1209,1208,1250,1292,1208,1208,1250,1292,1250,1250,1292,1250,1250,1250,1250,1291,1209,1250,1250,1250,1333,1208,1209,1208,1125,1250,1250,1292,1250,1250,1250,1250,1250,1250,1291,1209,1250,1250,1291,1209,1250,1250,1250,1250,1291,1250,1292,1250,1250,1250,1250,1250,1042,1250,1291,1250,1292,1250,1250,1250,1250,1292,1250,1291,1250,1292,1250,1292,1250,1250,1208,1292,1208,1250,1250,1250,1292,1250,1250,1250,1250,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1250,1250,1209,1250,1250,1250,1291,1250,1209,1291,1250,1250,1250,1250,1250,1292,1042,1250,1208,1292,1291,1250,1292,1125,1167,1208,1292,1083,1292,1250,1250,1250,1250,1291,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1083,1292,1250,1250,1292,1208,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1292,1083,1250,1250,1250,1250,1250,1250,1250,1250,1292,1292,1250,1291,1292,1250,1208,1209,1250,1291,1250,1250,1167,1292,1250,1291,1250,1250,1292,1250,1250,1292,1250,1291,1250,1125,1292,1292,1250,1083,1250,1250,1292,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1292,1250,1250,1333,1250,1208,1250,1292,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1000,1292,1250,1292,1250,1208,1292,1250,1250,1291,1250,1250,1292,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1209,1208,1250,1292,1250,1250,1291,1250,1250,1250,1250,1292,1292,1250,1291,1250,1292,1250,1208,1250,1250,1250,1292,1167,1250,1250,1291,1209,1250,1250,1250,1291,1250,1167,1250,1292,1291,1250,1250,1292,1250,1250,1250,1292,1250,1250,1291,1167,1292,1250,1250,1291,1250,1250,1250,1084,1250,1250,1291,1250,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1208,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1292,1208,1208,1250,1250,1250,1250,1250,1250,1250,1250,1292,1208,1250,1250,1250,1292,1250,1292,1208,1250,1292,1250,1291,1250,1250,1292,1250,1250,1292,1250,1291,1250,1292,1167,1250,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1291,1250,1125,1250,1250,1292,1250,1250,1292,1250,1041,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1292,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1292,1292,1250,1250,1291,1250,1292,1250,1250,1292,1208,1250,1250,1250,1250,1250,1292,1291,1250,1250,1250,1292,1250,1250,1250,1292,1083,1292,1000,1250,1291,1250,1292,1250,1292,1250,1250,1291,1209,1125,1250,1250,1041,1292,1250,1250,1250,1208,1250,1250,1167,1250,1292,1291,1250,1250,1250,1292,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1292,1208,1250,1250,1250,1292,1250,1250,1250,1208,1292,1250,1250,1292,1250,1291,1250,1250,1292,1250,1250,1250,1250,1250,1292,1250,1083,1250,1250,1250,1250,1250,1250,1208,1292,1250,1250,1208,1292,1042,1250,1291,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1167,1250,1250,1292,1291,1250,1292,1208,1209,958,1292,1250,1250,1166,1209,1291,1250,1250,1292,1250,1167,1250,1291,1292,1208,1167,1125,1167,1208,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1167,1208,1208,1292,1250,1292,1208,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1250,1250,1083,1292,1292,1333,1250,1292,1250,1291,1084,1291,1250,1084,1291,1209,1250,1250,1250,1250,1291,1209,1250,1125,1291,1250,1292,1250,1292,1083,1292,1250,1291,1209,1250,1250,1250,1250,1291,1292,1208,1250,1250,1084,1250,1291,1292,1250,1292,1291,1209,1291,1292,1250,1167,1250,1291,1250,1292,1250,1292,1208,1250,1250,1250,1292,1250,1250,1166,1250,1250,1334,1250,1250,1250,1250,1250,1250,1250,1041,1250,1292,1250,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1291,1250,1250,1250,1292,1292,1250,1291,1292,1083,1250,1250,1292,1250,1250,1250,1250,1250,1292,1250,1291,1250,1250,1292,1250,1250,1292,1250,1250,1250,1250,1250,1291,1250,1250,1292,1250,1292,1250,1291,1250,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1083,1292,1250,1291,1292,1208,1209,1250,1250,1250,1291,1125,1250,1250,1250,1250,1292,1208,1209,1291,1250,1250,1292,1250,1250,1292,1291,1250,1250,1250,1250,1292,1208,1042,1292,1250,1250,1250,1250,1291,1209,1250,1250,1250,1250,1250,1291,1292,1250,1250,1292,1291,1250,1250,1292,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1250,1292,1041,1292,1292,1041,1209,1250,1250,1291,1250,1250,1250,1292,1250,1083,1250,1292,1250,1250,1250,1292,1208,1208,1250,1250,1250,1250,1250,1292,1250,1250,1125,1250,1250,1250,1250,1292,1041,1292,1042,1291,1292,1250,1292,1250,1250,1291,1250,1250,1250,1250,1250,1250,1334,1291,1292,1208,1292,1250,1250,1292,1250,1250,1250,1291,1250,1292,1250,1292,1250,1291,1209,1208,1250,1250,1250,1250,1250,1208,1209,1250,1250,1291,1250,1084,1250,1250,1291,1292,1250,1208,1125,1209,1208,1250,1292,1250,1250,1250,1250,1291,1209,1250,1250,1333,1250,1250,1292,1250,1291,1250,1250,1292,1250,1250,1250,1292,1208,1250,1250,1292,1208,1042,1250,1250,1250,1125,1208,1250,1250,1292,1208,1208,1167,1167,1291,1292,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1292,1250,1250,1292,1041,1292,1250,1042,1083,1292,1250,1250,1291,1209,1291,1209,1250,1250,1250,1250,1291,1125,1250,1250,1292,1250,1250,1292,1250,1041,1250,1250,1125,1292,1250,1250,1292,1250,1250,1291,1292,1250,1250,1250,1250,1292,1250,1250,1250,1166,1250,1250,1292,1250,1250,1250,1292,1208,1292,1166,1250,1292,1250,1250,1292,1125,1291,1250,1292,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1083,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1291,1167,1250,1167,1250,1250,1250,1250,1291,1209,1250,1250,1250,1250,1250,1291,1209,1250,1250,1291,1250,1250,1250,1292,1208,1250,1250,1250,1209,1291,1250,1334,1250,1250,1208,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1250,1208,1292,1042,1250,1250,1291,1209,1250,1250,1291,1292,1250,1250,1292,1208,1208,1250,1250,1250,1292,1250,1125,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1292,1291,1250,1250,1250,1292,1250,1250,1250,1208,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1292,1250,1250,1292,1208,1250,1292,1250,1291,1292,1250,1250,1250,1250,1250,1250,1250,1250,1125,1250,1292,1250,1250,1291,1250,1250,1292,1292,1208,1083,1250,1292,1250,1250,1292,1250,1291,1209,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1250,1292,1167,1250,1291,1250,1250,1292,1292,1250,1250,1291,1250,1292,1208,1250,1292,1250,1292,1083,1250,1042,1250,1250,1250,1291,1250,1250,1292,1167,1291,1250,1167,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1209,1291,1042,1250,1250,1292,1250,1375,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1208,1292,1208,1250,1250,1250,1292,1250,1292,1208,1292,1250,1250,1250,1208,1292,1291,1250,1250,1250,1209,1208,1250,1250,1250,1292,1250],"$vscode":{"rootPath":"/Users/VTROPASH/Documents/GitHub/quicksql","locations":[{"callFrame":{"functionName":"(root)","scriptId":"0","url":"","lineNumber":-1,"columnNumber":-1},"locations":[]},{"callFrame":{"functionName":"run","scriptId":"442","url":"node:internal/modules/esm/module_job","lineNumber":187,"columnNumber":11},"locations":[]},{"callFrame":{"functionName":"evaluate","scriptId":"0","url":"","lineNumber":-1,"columnNumber":-1},"locations":[]},{"callFrame":{"functionName":"","scriptId":"498","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/test/profile.js","lineNumber":-1,"columnNumber":-1},"locations":[]},{"callFrame":{"functionName":"toDDL","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":483,"columnNumber":21},"locations":[]},{"callFrame":{"functionName":"Parsed.getDDL","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":336,"columnNumber":31},"locations":[]},{"callFrame":{"functionName":"toDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":832,"columnNumber":29},"locations":[]},{"callFrame":{"functionName":"toDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":839,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"toDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":840,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":607,"columnNumber":33},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":617,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":618,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":677,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":678,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":691,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":692,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":662,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":663,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":718,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":719,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":649,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":650,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":726,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":727,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":698,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":699,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":689,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":690,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":623,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":624,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":679,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":680,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":707,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":708,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":674,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":675,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":47,"columnNumber":39},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":51,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":52,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":80,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":81,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":57,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":58,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":147,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":148,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":68,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":69,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":82,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":150,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":151,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":59,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":54,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":55,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":83,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":60,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":149,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":56,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":62,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":63,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":84,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":72,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":73,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":57,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":58,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":54,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":55,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":76,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":77,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":56,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":59,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":70,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":71,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":60,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":62,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":63,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":150,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":151,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":150,"columnNumber":34},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":200,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":201,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":152,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":153,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":183,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":184,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":215,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":216,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":118,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":119,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":217,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":120,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":169,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":170,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":72,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":73,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":179,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":180,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":168,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":175,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":176,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":58,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":59,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":207,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":208,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":174,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":177,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":178,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":83,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":84,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":68,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":69,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":51,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":52,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1747,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1748,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":188,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":189,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":204,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":205,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":197,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":198,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1749,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1750,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":154,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":155,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":57,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":199,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":70,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":71,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":164,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":165,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":210,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":211,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":187,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":172,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":173,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":219,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":220,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":60,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":56,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":190,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":191,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":7,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":8,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":202,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":206,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":62,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":63,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":159,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":160,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":54,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":55,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":194,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":195,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1746,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":182,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":81,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":82,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":186,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":192,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":75,"columnNumber":35},"locations":[]},{"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":81,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":82,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":83,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":84,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":78,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":79,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":34,"columnNumber":24},"locations":[]},{"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":57,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":58,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":68,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":69,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":59,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":56,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":130,"columnNumber":38},"locations":[]},{"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":130,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":131,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":132,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":133,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":145,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":146,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":134,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":135,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":139,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":140,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"amend_reserved_word","scriptId":"508","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/reserved_words.js","lineNumber":0,"columnNumber":28},"locations":[]},{"callFrame":{"functionName":"amend_reserved_word","scriptId":"508","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/reserved_words.js","lineNumber":118,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"amend_reserved_word","scriptId":"508","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/reserved_words.js","lineNumber":119,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"amend_reserved_word","scriptId":"508","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/reserved_words.js","lineNumber":120,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"replaceTrailing","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1745,"columnNumber":29},"locations":[]},{"callFrame":{"functionName":"replaceTrailing","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1746,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"replaceTrailing","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1747,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"replaceTrailing","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1749,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"replaceTrailing","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1750,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"replaceTrailing","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1748,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"replaceTrailing","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1745,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"locations":[]},{"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":43,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":44,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":42,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":150,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":151,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.optionEQvalue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":94,"columnNumber":37},"locations":[]},{"callFrame":{"functionName":"Parsed.optionEQvalue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":95,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.optionEQvalue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":96,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.getOptionValue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":77,"columnNumber":38},"locations":[]},{"callFrame":{"functionName":"Parsed.getOptionValue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":82,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.getOptionValue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":83,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"normalize","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":50,"columnNumber":22},"locations":[]},{"callFrame":{"functionName":"normalize","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":55,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"normalize","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":56,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.additionalColumns","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":193,"columnNumber":41},"locations":[]},{"callFrame":{"functionName":"Parsed.additionalColumns","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":195,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.additionalColumns","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":196,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.getOptionValue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":80,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.getOptionValue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":81,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":612,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":613,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":88,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":89,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":78,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":79,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":72,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":73,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":148,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":149,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":40,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":78,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":79,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":209,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.getOptionValue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":79,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"normalize","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":57,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"normalize","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":58,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseType","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":221,"columnNumber":33},"locations":[]},{"callFrame":{"functionName":"parseType","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":354,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseType","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":355,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseType","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":243,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseType","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":244,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseType","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":373,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseType","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":374,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"concatNames","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":88,"columnNumber":27},"locations":[]},{"callFrame":{"functionName":"concatNames","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":92,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"concatNames","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":93,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"concatNames","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":108,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"concatNames","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":109,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"indexOf","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":115,"columnNumber":31},"locations":[]},{"callFrame":{"functionName":"indexOf","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":117,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"indexOf","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":118,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"occursBeforeOption","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":125,"columnNumber":42},"locations":[]},{"callFrame":{"functionName":"occursBeforeOption","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":126,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"occursBeforeOption","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":127,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.semantics","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":137,"columnNumber":33},"locations":[]},{"callFrame":{"functionName":"normalize","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":60,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"normalize","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":61,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"apparentDepth","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":553,"columnNumber":37},"locations":[]},{"callFrame":{"functionName":"apparentDepth","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":554,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"apparentDepth","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":555,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":68,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":69,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"refId","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":459,"columnNumber":29},"locations":[]},{"callFrame":{"functionName":"refId","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":461,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"refId","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":462,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"refId","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":493,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"refId","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":494,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"findChild","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":32,"columnNumber":33},"locations":[]},{"callFrame":{"functionName":"getGenIdColName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":580,"columnNumber":40},"locations":[]},{"callFrame":{"functionName":"Parsed.optionEQvalue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":90,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.optionEQvalue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":91,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":41,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":45,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"(garbage collector)","scriptId":"0","url":"","lineNumber":-1,"columnNumber":-1},"locations":[]}]}} \ No newline at end of file From a452dfc0f2e54168c1fd2871026c57bd1534da9c Mon Sep 17 00:00:00 2001 From: Vadim Tropashko Date: Thu, 8 Feb 2024 17:17:23 -0800 Subject: [PATCH 21/22] another 50% performance improvement --- dist/quick-sql.js | 4 ++-- dist/quick-sql.umd.cjs | 2 +- src/naming.js | 18 +++++++++++------- test/profile.js | 4 ++-- test/regression_test.js | 2 +- vscode-profile-2024-02-08-10-16-54.cpuprofile | 1 - 6 files changed, 17 insertions(+), 14 deletions(-) delete mode 100644 vscode-profile-2024-02-08-10-16-54.cpuprofile diff --git a/dist/quick-sql.js b/dist/quick-sql.js index 43beedd..3876f11 100644 --- a/dist/quick-sql.js +++ b/dist/quick-sql.js @@ -12,9 +12,9 @@ function fe(d, h) { if (x.length > 0 && "0" <= x[0] && x[0] <= "9") D = !0; else - for (let b in x) { + for (let b = 0; b < x.length; b++) { const g = x[b]; - if (I.indexOf(g) < 0 && (g < "0" || "9" < g && g < "A" || "Z" < g && g < "a" || "z" < g)) { + if (!("a" <= g && g <= "z") && !("A" <= g && g <= "Z") && !("0" <= g && g <= "9") && !(0 <= I.indexOf(g))) { D = !0; break; } diff --git a/dist/quick-sql.umd.cjs b/dist/quick-sql.umd.cjs index 1ba0cfb..93bffd0 100644 --- a/dist/quick-sql.umd.cjs +++ b/dist/quick-sql.umd.cjs @@ -1,4 +1,4 @@ -(function(V,W){typeof exports=="object"&&typeof module<"u"?W(exports):typeof define=="function"&&define.amd?define(["exports"],W):(V=typeof globalThis<"u"?globalThis:V||self,W(V.quickSQL={}))})(this,function(V){"use strict";function W(d){return d==null?d:d.toUpperCase().endsWith("IES")?d.substring(0,d.length-3)+"y":d.toUpperCase().endsWith("ES")||d.toUpperCase().endsWith("S")?d.substring(0,d.length-1):d}function ve(d,h){let k='"';if(d==null)return null;let D=!1;const I="$#_ ";if(!d.startsWith(k)&&!D){const x=d;if(x.length>0&&"0"<=x[0]&&x[0]<="9")D=!0;else for(let b in x){const g=x[b];if(I.indexOf(g)<0&&(g<"0"||"9""u"&&(e[n]=a[n]);return e}function i(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var s=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?s=btoa:typeof Buffer=="function"&&(s=function(a){return new Buffer(a).toString("base64")})})(),r.prototype.bool=function(e){return e=o(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100c,"Chance: Max specified is out of range with fixed. Max should be, at most, "+c),e=o(e,{min:m,max:c}),a=this.integer({min:e.min*n,max:e.max*n});var C=(a/n).toFixed(e.fixed);return parseFloat(C)},r.prototype.integer=function(e){return e=o(e,{min:D,max:k}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},r.prototype.natural=function(e){if(e=o(e,{min:0,max:k}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),c=e.exclude.sort();for(var m in c){if(ne.max,"Chance: Min cannot be greater than Max.");var a=E.primes[E.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&E.primes.push(n);var c=E.primes.filter(function(m){return m>=e.min&&m<=e.max});return this.pick(c)},r.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},r.prototype.hex=function(e){e=o(e,{min:0,max:k,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},r.prototype.letter=function(e){e=o(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},r.prototype.string=function(e){e=o(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function u(e){this.c=e}u.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function p(e){this.c=e}p.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:b})},a:function(e){return e.character({pool:x})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function T(e){for(var a=[],n="identity",c=0;c"u")throw new M("Sorry, the buffer() function is not supported on your platform");e=o(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},r.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},r.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},r.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var c=function(y,_){return y.indexOf(_)!==-1};n&&(c=n.comparator||c);for(var m=[],C=0,P,f=a*50,A=B.call(arguments,2);m.lengthf)throw new RangeError("Chance: num is likely too large for sample set")}return m},r.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,c=[],m=B.call(arguments,2);for(n=Math.max(0,n),null;n--;null)c.push(e.apply(this,m));return c},r.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},r.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},r.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},r.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),c=n.length;return this.n(function(){var m=this.natural({max:--c}),C=n[m];return n[m]=n[c],C},Math.min(c,a))},r.prototype.shuffle=function(e){for(var a=[],n=0,c=Number(e.length),m=i(c),C=c-1,P,f=0;f0&&(c+=m)}if(c===0)throw new RangeError("Chance: No valid entries in array weights");var P=this.random()*c,f=0,A=-1,v;for(C=0;C0){if(P<=f){v=C;break}A=C}C===a.length-1&&(v=A)}var y=e[v];return n=typeof n>"u"?!1:n,n&&(e.splice(v,1),a.splice(v,1)),y},r.prototype.paragraph=function(e){e=o(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),c=e.linebreak===!0?` +(function(V,W){typeof exports=="object"&&typeof module<"u"?W(exports):typeof define=="function"&&define.amd?define(["exports"],W):(V=typeof globalThis<"u"?globalThis:V||self,W(V.quickSQL={}))})(this,function(V){"use strict";function W(d){return d==null?d:d.toUpperCase().endsWith("IES")?d.substring(0,d.length-3)+"y":d.toUpperCase().endsWith("ES")||d.toUpperCase().endsWith("S")?d.substring(0,d.length-1):d}function ve(d,h){let k='"';if(d==null)return null;let D=!1;const I="$#_ ";if(!d.startsWith(k)&&!D){const x=d;if(x.length>0&&"0"<=x[0]&&x[0]<="9")D=!0;else for(let b=0;b"u"&&(e[n]=a[n]);return e}function i(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var s=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?s=btoa:typeof Buffer=="function"&&(s=function(a){return new Buffer(a).toString("base64")})})(),r.prototype.bool=function(e){return e=o(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100c,"Chance: Max specified is out of range with fixed. Max should be, at most, "+c),e=o(e,{min:m,max:c}),a=this.integer({min:e.min*n,max:e.max*n});var C=(a/n).toFixed(e.fixed);return parseFloat(C)},r.prototype.integer=function(e){return e=o(e,{min:D,max:k}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},r.prototype.natural=function(e){if(e=o(e,{min:0,max:k}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),c=e.exclude.sort();for(var m in c){if(ne.max,"Chance: Min cannot be greater than Max.");var a=E.primes[E.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&E.primes.push(n);var c=E.primes.filter(function(m){return m>=e.min&&m<=e.max});return this.pick(c)},r.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},r.prototype.hex=function(e){e=o(e,{min:0,max:k,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},r.prototype.letter=function(e){e=o(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},r.prototype.string=function(e){e=o(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function u(e){this.c=e}u.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function p(e){this.c=e}p.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:b})},a:function(e){return e.character({pool:x})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function T(e){for(var a=[],n="identity",c=0;c"u")throw new M("Sorry, the buffer() function is not supported on your platform");e=o(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},r.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},r.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},r.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var c=function(y,_){return y.indexOf(_)!==-1};n&&(c=n.comparator||c);for(var m=[],C=0,P,f=a*50,A=B.call(arguments,2);m.lengthf)throw new RangeError("Chance: num is likely too large for sample set")}return m},r.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,c=[],m=B.call(arguments,2);for(n=Math.max(0,n),null;n--;null)c.push(e.apply(this,m));return c},r.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},r.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},r.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},r.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),c=n.length;return this.n(function(){var m=this.natural({max:--c}),C=n[m];return n[m]=n[c],C},Math.min(c,a))},r.prototype.shuffle=function(e){for(var a=[],n=0,c=Number(e.length),m=i(c),C=c-1,P,f=0;f0&&(c+=m)}if(c===0)throw new RangeError("Chance: No valid entries in array weights");var P=this.random()*c,f=0,A=-1,v;for(C=0;C0){if(P<=f){v=C;break}A=C}C===a.length-1&&(v=A)}var y=e[v];return n=typeof n>"u"?!1:n,n&&(e.splice(v,1),a.splice(v,1)),y},r.prototype.paragraph=function(e){e=o(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),c=e.linebreak===!0?` `:" ";return n.join(c)},r.prototype.sentence=function(e){e=o(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,c,m=this.n(this.word,a);return c=m.join(" "),c=this.capitalize(c),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(c+=n),c},r.prototype.syllable=function(e){e=o(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",c="aeiou",m=n+c,C="",P,f=0;fe.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var P=e.minAge!==void 0?e.minAge:0,f=e.maxAge!==void 0?e.maxAge:100,A=new Date(c-f-1,n.getMonth(),n.getDate()),v=new Date(c-P,n.getMonth(),n.getDate());A.setDate(A.getDate()+1),v.setDate(v.getDate()+1),v.setMilliseconds(v.getMilliseconds()-1),e=o(e,{min:A,max:v})}else e=o(e,{year:c-a});return this.date(e)},r.prototype.cpf=function(e){e=o(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var c=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;c=11-c%11,c>=10&&(c=0);var m=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},r.prototype.cnpj=function(e){e=o(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var c=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;c=11-c%11,c<2&&(c=0);var m=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},r.prototype.first=function(e){return e=o(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},r.prototype.profession=function(e){return e=o(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},r.prototype.company=function(){return this.pick(this.get("company"))},r.prototype.gender=function(e){return e=o(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},r.prototype.last=function(e){if(e=o(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(c){a=a.concat(n[c])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},r.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},r.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},r.prototype.tld=function(){return this.pick(this.tlds())},r.prototype.twitter=function(){return"@"+this.word()},r.prototype.url=function(e){e=o(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},r.prototype.port=function(){return this.integer({min:0,max:65535})},r.prototype.locale=function(e){return e=o(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},r.prototype.locales=function(e){return e=o(e),e.region?this.get("locale_regions"):this.get("locale_languages")},r.prototype.loremPicsum=function(e){e=o(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},r.prototype.address=function(e){return e=o(e),this.natural({min:5,max:2e3})+" "+this.street(e)},r.prototype.altitude=function(e){return e=o(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.areacode=function(e){e=o(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},r.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},r.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},r.prototype.countries=function(){return this.get("countries")},r.prototype.country=function(e){e=o(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},r.prototype.depth=function(e){return e=o(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.geohash=function(e){return e=o(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},r.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},r.prototype.latitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=o(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.longitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=o(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.phone=function(e){var a=this,n,c=function(_){var F=[];return _.sections.forEach(function(z){F.push(a.string({pool:"0123456789",length:z}))}),_.area+F.join(" ")};e=o(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var m;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),m=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),m=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n);break;case"us":var C=this.areacode(e).toString(),P=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),f=this.natural({min:1e3,max:9999}).toString();m=e.formatted?C+" "+P+"-"+f:C+P+f;break;case"br":var A=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),v;e.mobile?v="9"+a.string({pool:"0123456789",length:4}):v=this.natural({min:2e3,max:5999}).toString();var y=a.string({pool:"0123456789",length:4});m=e.formatted?"("+A+") "+v+"-"+y:A+v+y;break}return m},r.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},r.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",c=e+a+n,m=this.natural({max:9}),C=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),P=m+C;return c+" "+P},r.prototype.counties=function(e){return e=o(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},r.prototype.county=function(e){return this.pick(this.counties(e)).name},r.prototype.provinces=function(e){return e=o(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},r.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},r.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},r.prototype.states=function(e){e=o(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),c=this.get("territories"),m=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(c)),e.armed_forces&&(a=a.concat(m));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},r.prototype.street=function(e){e=o(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},r.prototype.street_suffix=function(e){return e=o(e,{country:"us"}),this.pick(this.street_suffixes(e))},r.prototype.street_suffixes=function(e){return e=o(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},r.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},r.prototype.ampm=function(){return this.bool()?"am":"pm"},r.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=o(e,{american:!0,string:!1});var c=typeof e.min<"u"?e.min.getTime():1,m=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:c,max:m}))}else{var C=this.month({raw:!0}),P=C.days;e&&e.month&&(P=this.get("months")[(e.month%12+12)%12].days),e=o(e,{year:parseInt(this.year(),10),month:C.numeric-1,day:this.natural({min:1,max:P}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},r.prototype.hammertime=function(e){return this.date(e).getTime()},r.prototype.hour=function(e){return e=o(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.millisecond=function(){return this.natural({max:999})},r.prototype.minute=r.prototype.second=function(e){return e=o(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.month=function(e){e=o(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},r.prototype.months=function(){return this.get("months")},r.prototype.second=function(){return this.natural({max:59})},r.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},r.prototype.weekday=function(e){e=o(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},r.prototype.year=function(e){return e=o(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},r.prototype.cc=function(e){e=o(e);var a,n,c;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),c=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,c,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},r.prototype.cc_types=function(){return this.get("cc_types")},r.prototype.cc_type=function(e){e=o(e);var a=this.cc_types(),n=null;if(e.name){for(var c=0;c3&&(_?F=F.substr(0,3):F=F[0]+F.substr(2,2)),F.length<3&&(z=F,F=y.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+F),z},A=function(y,_,F){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return y.getFullYear().toString().substr(2)+z[y.getMonth()]+F.pad(y.getDate()+(_.toLowerCase()==="female"?40:0),2)},v=function(y){for(var _="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",F="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(F[_.indexOf(y[U])]):K+=j.indexOf(F[_.indexOf(y[U])]);return z[K%26]};return P=P.concat(f(c,!0),f(n),A(m,a,this),C.toUpperCase().split("")).join(""),P+=v(P.toUpperCase()),P.toUpperCase()},r.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;m--)c[m-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?c.reduce(function(C,P){return C+P}):c}else throw new RangeError("Chance: A type of die roll must be included")},r.prototype.guid=function(e){e=o(e,{version:5});var a="abcdef1234567890",n="ab89",c=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return c},r.prototype.hash=function(e){e=o(e,{length:40,casing:"lower"});var a=e.casing==="upper"?g.toUpperCase():g;return this.string({pool:a,length:e.length})},r.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},r.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,c,m=0,C=a.length;C>m;++m)c=+a[m],m%2===0&&(c*=2,c>9&&(c-=9)),n+=c;return n*9%10},r.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=o(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},r.prototype.file=function(e){var a=e||{},n="fileExtension",c=Object.keys(this.get("fileExtension")),m,C;if(m=this.word({length:a.length}),a.extension)return C=a.extension,m+"."+C;if(a.extensions){if(Array.isArray(a.extensions))return C=this.pickone(a.extensions),m+"."+C;if(a.extensions.constructor===Object){var P=a.extensions,f=Object.keys(P);return C=this.pickone(P[this.pickone(f)]),m+"."+C}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var A=a.fileType;if(c.indexOf(A)!==-1)return C=this.pickone(this.get(n)[A]),m+"."+C;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return C=this.pickone(this.get(n)[this.pickone(c)]),m+"."+C},r.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var c={fileData:this.buffer({length:a.fileSize}),fileName:n};return c};var E={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},w=Object.prototype.hasOwnProperty,N=Object.keys||function(e){var a=[];for(var n in e)w.call(e,n)&&a.push(n);return a};function L(e,a){for(var n=N(e),c,m=0,C=n.length;m0)return this.normal_pool(e);var a,n,c,m,C=e.mean,P=e.dev;do n=this.random()*2-1,c=this.random()*2-1,a=n*n+c*c;while(a>=1);return m=n*Math.sqrt(-2*Math.log(a)/a),P*m+C},r.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},r.prototype.radio=function(e){e=o(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},r.prototype.set=function(e,a){typeof e=="string"?E[e]=a:E=R(e,E)},r.prototype.tv=function(e){return this.radio(e)},r.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},r.prototype.emotion=function(){return this.pick(this.get("emotions"))},r.prototype.mersenne_twister=function(e){return new H(e)},r.prototype.blueimp_md5=function(){return new G};var H=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};H.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},H.prototype.init_by_array=function(e,a){var n=1,c=0,m,C;for(this.init_genrand(19650218),m=this.N>a?this.N:a;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1664525<<16)+(C&65535)*1664525)+e[c]+c,this.mt[n]>>>=0,n++,c++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),c>=a&&(c=0);for(m=this.N-1;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1566083941<<16)+(C&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},H.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},H.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},H.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},H.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},H.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},H.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var G=function(){};G.prototype.VERSION="1.0.1",G.prototype.safe_add=function(a,n){var c=(a&65535)+(n&65535),m=(a>>16)+(n>>16)+(c>>16);return m<<16|c&65535},G.prototype.bit_roll=function(e,a){return e<>>32-a},G.prototype.md5_cmn=function(e,a,n,c,m,C){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(c,C)),m),n)},G.prototype.md5_ff=function(e,a,n,c,m,C,P){return this.md5_cmn(a&n|~a&c,e,a,m,C,P)},G.prototype.md5_gg=function(e,a,n,c,m,C,P){return this.md5_cmn(a&c|n&~c,e,a,m,C,P)},G.prototype.md5_hh=function(e,a,n,c,m,C,P){return this.md5_cmn(a^n^c,e,a,m,C,P)},G.prototype.md5_ii=function(e,a,n,c,m,C,P){return this.md5_cmn(n^(a|~c),e,a,m,C,P)},G.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,c,m,C,P,f=1732584193,A=-271733879,v=-1732584194,y=271733878;for(n=0;n>5]>>>a%32&255);return n},G.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(c=this.binl_md5(c,e.length*8)),n=0;n<16;n+=1)m[n]=c[n]^909522486,C[n]=c[n]^1549556828;return P=this.binl_md5(m.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(C.concat(P),512+128))},G.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",c,m;for(m=0;m>>4&15)+a.charAt(c&15);return n},G.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},G.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},G.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},G.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},G.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},G.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},d.exports&&(h=d.exports=r),h.Chance=r,typeof importScripts<"u"&&(chance=new r,self.Chance=r),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=r,window.chance=new r)})()})(ne,ne.exports);var ye=ne.exports;const Se=Ae(ye);function ue(d,h,k,D){var I=new Se(ie);k==null&&console.log();let x=k.toUpperCase(),b=d.toUpperCase(),g=h.toUpperCase();if(D!=null&&0":o=="["?"]":o=="{"?"}":o=="("?")":o}}function h(I,x,b){for(var g=[],M=`(){}[]^-|!*+.><='",;:%@?/\\#~`+b,B=` \r `,r=$(I,M+B),o=0,i=0,t=0,s=0;s0&&(u=g[g.length-1]),l==` `?(i++,t=0):s>0&&r[s-1]!==` diff --git a/src/naming.js b/src/naming.js index 76440c1..0df52ed 100644 --- a/src/naming.js +++ b/src/naming.js @@ -55,16 +55,20 @@ function quoteIdentifier(/*String*/ s, /*char*/ quoteChar ) { //s.getChars(0, chars.length, chars, 0); if( chars.length > 0 && '0' <= chars[0] && chars[0] <= '9' ) quote = true; - else for ( let i in chars ) { - const c = chars[i]; - if( legitimateChars.indexOf(c) < 0 && ( - c < '0' || '9' < c && c < 'A' || 'Z' < c && c < 'a' || 'z' < c - )) { + else { + for ( let i = 0; i < chars.length; i++ ) { + const c = chars[i]; + if( 'a' <= c && c <= 'z' ) + continue; + if( 'A' <= c && c <= 'Z' ) + continue; + if( '0' <= c && c <= '9' ) + continue; + if( 0 <= legitimateChars.indexOf(c) ) + continue; quote = true; break; } - // wierd case with double quote inside - // ... } } if( s.startsWith("_") || s.startsWith("$") || s.startsWith("#") ) diff --git a/test/profile.js b/test/profile.js index 558cf24..7e1f563 100644 --- a/test/profile.js +++ b/test/profile.js @@ -1,7 +1,7 @@ import {quicksql,fromJSON} from "../src/ddl.js"; let input = "table\n"; -for( let i = 0; i < 1000; i++) +for( let i = 0; i < 2000; i++) input += ' '.repeat((i/10)*3+3)+'attr'+i+'\n'; console.log('input='+input.substring(0,1000)); @@ -12,5 +12,5 @@ console.log("length="+output.length); console.log(output.substring(0,1000)); console.log("Time = "+(Date.now()-t1)); -console.log("Compared with 13367 ms for i < 1000"); +console.log("Compared with 32000 ms for i < 2000"); diff --git a/test/regression_test.js b/test/regression_test.js index 86cbe81..36d98e2 100755 --- a/test/regression_test.js +++ b/test/regression_test.js @@ -166,7 +166,7 @@ console.log("Time = "+(Date.now()-t1)); console.log("Compared with 364-412 ms as of 10/2/2023"); console.log(" 506 ms as of 11/8/2023"); console.log(" 800 ms as of 1/24/2024"); -console.log(" 631 ms as of 2/8/2024"); +console.log(" 590 ms as of 2/8/2024"); import {quicksql} from '../dist/quick-sql.js'; diff --git a/vscode-profile-2024-02-08-10-16-54.cpuprofile b/vscode-profile-2024-02-08-10-16-54.cpuprofile deleted file mode 100644 index 55982cb..0000000 --- a/vscode-profile-2024-02-08-10-16-54.cpuprofile +++ /dev/null @@ -1 +0,0 @@ -{"nodes":[{"id":1,"callFrame":{"functionName":"(root)","scriptId":"0","url":"","lineNumber":-1,"columnNumber":-1},"hitCount":0,"children":[2,16,641,949,1216,1489,1801,2060,2337,2848,3107],"locationId":0},{"id":2,"callFrame":{"functionName":"run","scriptId":"442","url":"node:internal/modules/esm/module_job","lineNumber":187,"columnNumber":11},"hitCount":0,"children":[3],"locationId":1},{"id":3,"callFrame":{"functionName":"evaluate","scriptId":"0","url":"","lineNumber":-1,"columnNumber":-1},"hitCount":0,"children":[4],"locationId":2},{"id":4,"callFrame":{"functionName":"","scriptId":"498","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/test/profile.js","lineNumber":-1,"columnNumber":-1},"hitCount":0,"children":[5],"locationId":3},{"id":5,"callFrame":{"functionName":"toDDL","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":483,"columnNumber":21},"hitCount":0,"children":[6],"locationId":4},{"id":6,"callFrame":{"functionName":"Parsed.getDDL","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":336,"columnNumber":31},"hitCount":0,"children":[7],"locationId":5},{"id":7,"callFrame":{"functionName":"toDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":832,"columnNumber":29},"hitCount":2,"children":[8],"positionTicks":[{"line":840,"ticks":2,"startLocationId":7,"endLocationId":8}],"locationId":6},{"id":8,"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":607,"columnNumber":33},"hitCount":257,"children":[9,270,486,809,948,2316,2594,3106,4383,4388],"positionTicks":[{"line":618,"ticks":1,"startLocationId":10,"endLocationId":11},{"line":678,"ticks":17,"startLocationId":12,"endLocationId":13},{"line":692,"ticks":49,"startLocationId":14,"endLocationId":15},{"line":663,"ticks":47,"startLocationId":16,"endLocationId":17},{"line":719,"ticks":1,"startLocationId":18,"endLocationId":19},{"line":650,"ticks":40,"startLocationId":20,"endLocationId":21},{"line":727,"ticks":3,"startLocationId":22,"endLocationId":23},{"line":699,"ticks":2,"startLocationId":24,"endLocationId":25},{"line":690,"ticks":43,"startLocationId":26,"endLocationId":27},{"line":624,"ticks":9,"startLocationId":28,"endLocationId":29},{"line":680,"ticks":1,"startLocationId":30,"endLocationId":31},{"line":708,"ticks":43,"startLocationId":32,"endLocationId":33},{"line":675,"ticks":1,"startLocationId":34,"endLocationId":35}],"locationId":9},{"id":9,"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":47,"columnNumber":39},"hitCount":234,"children":[10,1204,2319,2325],"positionTicks":[{"line":52,"ticks":3,"startLocationId":37,"endLocationId":38},{"line":81,"ticks":1,"startLocationId":39,"endLocationId":40},{"line":58,"ticks":11,"startLocationId":41,"endLocationId":42},{"line":148,"ticks":1,"startLocationId":43,"endLocationId":44},{"line":69,"ticks":10,"startLocationId":45,"endLocationId":46},{"line":82,"ticks":2,"startLocationId":40,"endLocationId":47},{"line":151,"ticks":7,"startLocationId":48,"endLocationId":49},{"line":59,"ticks":9,"startLocationId":42,"endLocationId":50},{"line":55,"ticks":6,"startLocationId":51,"endLocationId":52},{"line":83,"ticks":2,"startLocationId":47,"endLocationId":53},{"line":60,"ticks":56,"startLocationId":50,"endLocationId":54},{"line":149,"ticks":4,"startLocationId":44,"endLocationId":55},{"line":57,"ticks":47,"startLocationId":56,"endLocationId":41},{"line":63,"ticks":7,"startLocationId":57,"endLocationId":58},{"line":84,"ticks":5,"startLocationId":53,"endLocationId":59},{"line":73,"ticks":63,"startLocationId":60,"endLocationId":61}],"locationId":36},{"id":10,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":474,"children":[11,484,487,712,2593],"positionTicks":[{"line":58,"ticks":3,"startLocationId":63,"endLocationId":64},{"line":55,"ticks":1,"startLocationId":65,"endLocationId":66},{"line":77,"ticks":2,"startLocationId":67,"endLocationId":68},{"line":57,"ticks":11,"startLocationId":69,"endLocationId":63},{"line":59,"ticks":3,"startLocationId":64,"endLocationId":70},{"line":71,"ticks":1,"startLocationId":71,"endLocationId":72},{"line":60,"ticks":14,"startLocationId":70,"endLocationId":73},{"line":63,"ticks":1,"startLocationId":74,"endLocationId":75},{"line":151,"ticks":438,"startLocationId":76,"endLocationId":77}],"locationId":62},{"id":11,"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":150,"columnNumber":34},"hitCount":1745,"children":[12,14,15,642,947],"positionTicks":[{"line":201,"ticks":2,"startLocationId":79,"endLocationId":80},{"line":153,"ticks":1,"startLocationId":81,"endLocationId":82},{"line":184,"ticks":2,"startLocationId":83,"endLocationId":84},{"line":216,"ticks":3,"startLocationId":85,"endLocationId":86},{"line":119,"ticks":6,"startLocationId":87,"endLocationId":88},{"line":217,"ticks":1,"startLocationId":86,"endLocationId":89},{"line":120,"ticks":4,"startLocationId":88,"endLocationId":90},{"line":170,"ticks":19,"startLocationId":91,"endLocationId":92},{"line":73,"ticks":4,"startLocationId":93,"endLocationId":94},{"line":180,"ticks":14,"startLocationId":95,"endLocationId":96},{"line":169,"ticks":9,"startLocationId":97,"endLocationId":91},{"line":176,"ticks":16,"startLocationId":98,"endLocationId":99},{"line":59,"ticks":9,"startLocationId":100,"endLocationId":101},{"line":208,"ticks":14,"startLocationId":102,"endLocationId":103},{"line":175,"ticks":19,"startLocationId":104,"endLocationId":98},{"line":178,"ticks":10,"startLocationId":105,"endLocationId":106},{"line":84,"ticks":3,"startLocationId":107,"endLocationId":108},{"line":69,"ticks":13,"startLocationId":109,"endLocationId":110},{"line":177,"ticks":17,"startLocationId":99,"endLocationId":105},{"line":52,"ticks":3,"startLocationId":111,"endLocationId":112},{"line":1748,"ticks":4,"startLocationId":113,"endLocationId":114},{"line":189,"ticks":60,"startLocationId":115,"endLocationId":116},{"line":205,"ticks":59,"startLocationId":117,"endLocationId":118},{"line":198,"ticks":250,"startLocationId":119,"endLocationId":120},{"line":1750,"ticks":1,"startLocationId":121,"endLocationId":122},{"line":155,"ticks":24,"startLocationId":123,"endLocationId":124},{"line":58,"ticks":8,"startLocationId":125,"endLocationId":100},{"line":199,"ticks":97,"startLocationId":120,"endLocationId":126},{"line":71,"ticks":1,"startLocationId":127,"endLocationId":128},{"line":165,"ticks":18,"startLocationId":129,"endLocationId":130},{"line":211,"ticks":18,"startLocationId":131,"endLocationId":132},{"line":188,"ticks":69,"startLocationId":133,"endLocationId":115},{"line":173,"ticks":11,"startLocationId":134,"endLocationId":135},{"line":220,"ticks":14,"startLocationId":136,"endLocationId":137},{"line":174,"ticks":22,"startLocationId":135,"endLocationId":104},{"line":60,"ticks":48,"startLocationId":101,"endLocationId":138},{"line":57,"ticks":46,"startLocationId":139,"endLocationId":125},{"line":154,"ticks":79,"startLocationId":82,"endLocationId":123},{"line":191,"ticks":307,"startLocationId":140,"endLocationId":141},{"line":8,"ticks":43,"startLocationId":142,"endLocationId":143},{"line":202,"ticks":1,"startLocationId":80,"endLocationId":144},{"line":207,"ticks":52,"startLocationId":145,"endLocationId":102},{"line":63,"ticks":1,"startLocationId":146,"endLocationId":147},{"line":160,"ticks":36,"startLocationId":148,"endLocationId":149},{"line":206,"ticks":57,"startLocationId":118,"endLocationId":145},{"line":55,"ticks":3,"startLocationId":150,"endLocationId":151},{"line":195,"ticks":2,"startLocationId":152,"endLocationId":153},{"line":1747,"ticks":8,"startLocationId":154,"endLocationId":113},{"line":183,"ticks":16,"startLocationId":155,"endLocationId":83},{"line":82,"ticks":3,"startLocationId":156,"endLocationId":157},{"line":179,"ticks":12,"startLocationId":106,"endLocationId":95},{"line":187,"ticks":69,"startLocationId":158,"endLocationId":133},{"line":192,"ticks":137,"startLocationId":141,"endLocationId":159}],"locationId":78},{"id":12,"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":75,"columnNumber":35},"hitCount":77,"children":[13],"positionTicks":[{"line":82,"ticks":10,"startLocationId":161,"endLocationId":162},{"line":84,"ticks":49,"startLocationId":163,"endLocationId":164},{"line":79,"ticks":18,"startLocationId":165,"endLocationId":166}],"locationId":160},{"id":13,"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":34,"columnNumber":24},"hitCount":3230,"positionTicks":[{"line":58,"ticks":43,"startLocationId":168,"endLocationId":169},{"line":69,"ticks":2,"startLocationId":170,"endLocationId":171},{"line":59,"ticks":95,"startLocationId":169,"endLocationId":172},{"line":57,"ticks":3090,"startLocationId":173,"endLocationId":168}],"locationId":167},{"id":14,"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":130,"columnNumber":38},"hitCount":1068,"positionTicks":[{"line":131,"ticks":2,"startLocationId":175,"endLocationId":176},{"line":133,"ticks":14,"startLocationId":177,"endLocationId":178},{"line":146,"ticks":15,"startLocationId":179,"endLocationId":180},{"line":135,"ticks":3,"startLocationId":181,"endLocationId":182},{"line":140,"ticks":34,"startLocationId":183,"endLocationId":184},{"line":132,"ticks":1000,"startLocationId":176,"endLocationId":177}],"locationId":174},{"id":15,"callFrame":{"functionName":"amend_reserved_word","scriptId":"508","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/reserved_words.js","lineNumber":0,"columnNumber":28},"hitCount":549,"positionTicks":[{"line":119,"ticks":67,"startLocationId":186,"endLocationId":187},{"line":120,"ticks":482,"startLocationId":187,"endLocationId":188}],"locationId":185},{"id":642,"callFrame":{"functionName":"replaceTrailing","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1745,"columnNumber":29},"hitCount":503,"positionTicks":[{"line":1747,"ticks":13,"startLocationId":190,"endLocationId":191},{"line":1750,"ticks":213,"startLocationId":192,"endLocationId":193},{"line":1748,"ticks":265,"startLocationId":191,"endLocationId":194},{"line":1746,"ticks":12,"startLocationId":195,"endLocationId":190}],"locationId":189},{"id":947,"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":150,"columnNumber":34},"hitCount":19,"positionTicks":[{"line":199,"ticks":2,"startLocationId":120,"endLocationId":126},{"line":192,"ticks":17,"startLocationId":141,"endLocationId":159}],"locationId":78},{"id":484,"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":75,"columnNumber":35},"hitCount":81,"children":[485],"positionTicks":[{"line":82,"ticks":13,"startLocationId":161,"endLocationId":162},{"line":79,"ticks":13,"startLocationId":165,"endLocationId":166},{"line":84,"ticks":55,"startLocationId":163,"endLocationId":164}],"locationId":160},{"id":485,"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":34,"columnNumber":24},"hitCount":3436,"positionTicks":[{"line":69,"ticks":1,"startLocationId":170,"endLocationId":171},{"line":59,"ticks":157,"startLocationId":169,"endLocationId":172},{"line":58,"ticks":57,"startLocationId":168,"endLocationId":169},{"line":57,"ticks":3221,"startLocationId":173,"endLocationId":168}],"locationId":167},{"id":487,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[488],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":488,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[489],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":489,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[490],"positionTicks":[{"line":43,"ticks":1,"startLocationId":199,"endLocationId":197},{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":490,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[491],"locationId":196},{"id":491,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[492],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":492,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[493],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":493,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":4,"children":[494],"positionTicks":[{"line":44,"ticks":4,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":494,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[495],"locationId":196},{"id":495,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[496],"locationId":196},{"id":496,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":4,"children":[497],"positionTicks":[{"line":44,"ticks":4,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":497,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[498],"locationId":196},{"id":498,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[499],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":499,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[500],"locationId":196},{"id":500,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[501],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":501,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[502],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":502,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[503],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":503,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":5,"children":[504],"positionTicks":[{"line":44,"ticks":5,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":504,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[505],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":505,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[506],"locationId":196},{"id":506,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[507],"locationId":196},{"id":507,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[508],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":508,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[509],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":509,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[510],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":510,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[511],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":511,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":5,"children":[512],"positionTicks":[{"line":44,"ticks":5,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":512,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[513],"locationId":196},{"id":513,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[514],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":514,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[515],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":515,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[516],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":516,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[517],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":517,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[518],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":518,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":4,"children":[519],"positionTicks":[{"line":44,"ticks":4,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":519,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[520],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":520,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[521],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":521,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[522],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":522,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":4,"children":[523],"positionTicks":[{"line":44,"ticks":4,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":523,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[524],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":524,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[525],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":525,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[526],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":526,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[527],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":527,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[528],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":528,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[529],"locationId":196},{"id":529,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[530],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":530,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[531],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":531,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[532],"locationId":196},{"id":532,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":5,"children":[533],"positionTicks":[{"line":44,"ticks":5,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":533,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[534],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":534,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[535],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":535,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[536],"locationId":196},{"id":536,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[537],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":537,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[538],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":538,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[539],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":539,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[540],"locationId":196},{"id":540,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[541],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":541,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[542],"locationId":196},{"id":542,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":6,"children":[543],"positionTicks":[{"line":44,"ticks":6,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":543,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[544],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":544,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[545],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":545,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[546],"locationId":196},{"id":546,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[547],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":547,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[548],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":548,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[549],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":549,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[550],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":550,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[551],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":551,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[552],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":552,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[553],"locationId":196},{"id":553,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[554],"locationId":196},{"id":554,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[555],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":555,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[556],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":556,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":4,"children":[557],"positionTicks":[{"line":44,"ticks":4,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":557,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[558],"locationId":196},{"id":558,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[559],"locationId":196},{"id":559,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[560],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":560,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":7,"children":[561],"positionTicks":[{"line":44,"ticks":7,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":561,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[562],"locationId":196},{"id":562,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":7,"children":[563],"positionTicks":[{"line":44,"ticks":7,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":563,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[564],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":564,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[565],"locationId":196},{"id":565,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":5,"children":[566],"positionTicks":[{"line":44,"ticks":5,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":566,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[567],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":567,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[568],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":568,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[569],"locationId":196},{"id":569,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":4,"children":[570],"positionTicks":[{"line":44,"ticks":4,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":570,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[571],"locationId":196},{"id":571,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[572],"locationId":196},{"id":572,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[573],"positionTicks":[{"line":43,"ticks":1,"startLocationId":199,"endLocationId":197}],"locationId":196},{"id":573,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[574],"locationId":196},{"id":574,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":6,"children":[575],"positionTicks":[{"line":44,"ticks":6,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":575,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[576],"locationId":196},{"id":576,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[577],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":577,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":4,"children":[578],"positionTicks":[{"line":44,"ticks":4,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":578,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[579],"locationId":196},{"id":579,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[580],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":580,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[581],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":581,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[582],"locationId":196},{"id":582,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[583],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":583,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[584],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":584,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[585],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":585,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[586],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":586,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[587],"locationId":196},{"id":587,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[588],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":588,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[589],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":589,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[590],"locationId":196},{"id":590,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":7,"children":[591],"positionTicks":[{"line":44,"ticks":7,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":591,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[592],"locationId":196},{"id":592,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[593],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":593,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[594],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":594,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[595],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":595,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[596],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":596,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[597],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":597,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[598],"locationId":196},{"id":598,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[599],"locationId":196},{"id":599,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[600],"locationId":196},{"id":600,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[601],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":601,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[602],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":602,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[603],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":603,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[604],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":604,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[605],"locationId":196},{"id":605,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[606],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":606,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[607],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":607,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[608],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":608,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[609],"locationId":196},{"id":609,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[610],"locationId":196},{"id":610,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":5,"children":[611],"positionTicks":[{"line":44,"ticks":5,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":611,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[612],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":612,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[613],"locationId":196},{"id":613,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[614],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":614,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":4,"children":[615],"positionTicks":[{"line":44,"ticks":4,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":615,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[616],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":616,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[617],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":617,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[618],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":618,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[619],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":619,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[620],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":620,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[621],"locationId":196},{"id":621,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[622],"locationId":196},{"id":622,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[623],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":623,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[624],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":624,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[625],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":625,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[626],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":626,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[627],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":627,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[628],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":628,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[629],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":629,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[630],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":630,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[631],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":631,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[632],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":632,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":6,"children":[633],"positionTicks":[{"line":44,"ticks":6,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":633,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[634],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":634,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[635],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":635,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[636],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":636,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[637],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":637,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[638],"locationId":196},{"id":638,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[639],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":639,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[640],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":640,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[644],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":644,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[645],"locationId":196},{"id":645,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[646],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":646,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[647],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":647,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[648],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":648,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[649],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":649,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[650],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":650,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[651],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":651,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[652],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":652,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[653],"locationId":196},{"id":653,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[654],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":654,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[655],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":655,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[656],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":656,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[657],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":657,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[658],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":658,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[659],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":659,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[660],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":660,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[661],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":661,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[662],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":662,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[663],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":663,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[664],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":664,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[665],"locationId":196},{"id":665,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[666],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":666,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[667],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":667,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[668],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":668,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[669],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":669,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":7,"children":[670],"positionTicks":[{"line":44,"ticks":7,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":670,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[671],"locationId":196},{"id":671,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[672],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":672,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[673],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":673,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[674],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":674,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[675],"positionTicks":[{"line":43,"ticks":1,"startLocationId":199,"endLocationId":197},{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":675,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[676],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":676,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[677],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":677,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[678],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":678,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[679],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":679,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":6,"children":[826],"positionTicks":[{"line":44,"ticks":6,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":826,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[827],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":827,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":4,"children":[828],"positionTicks":[{"line":44,"ticks":4,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":828,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[829],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":829,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[830],"locationId":196},{"id":830,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[831],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":831,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[832],"locationId":196},{"id":832,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[833],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":833,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[834],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":834,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[835],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":835,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[836],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":836,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[837],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":837,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[838],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":838,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[839],"locationId":196},{"id":839,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[840],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":840,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[841],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":841,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[842],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":842,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[843],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":843,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[844],"locationId":196},{"id":844,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[845],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":845,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[846],"locationId":196},{"id":846,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[847],"locationId":196},{"id":847,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[848],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":848,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[849],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":849,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[850],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":850,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[851],"locationId":196},{"id":851,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[852],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":852,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[920],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":920,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[921],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":921,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[922],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":922,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[923],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":923,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[924],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":924,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[935],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":935,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[936],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":936,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[937],"locationId":196},{"id":937,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[938],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":938,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[939],"locationId":196},{"id":939,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[940],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":940,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[941],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":941,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[942],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":942,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[943],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198},{"line":43,"ticks":2,"startLocationId":199,"endLocationId":197}],"locationId":196},{"id":943,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":4,"children":[944],"positionTicks":[{"line":44,"ticks":4,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":944,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[945],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":945,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[946],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":946,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1205],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1205,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1206],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1206,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1207],"locationId":196},{"id":1207,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1208],"locationId":196},{"id":1208,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1209],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1209,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[1210],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1210,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[1211],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1211,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":4,"children":[1212],"positionTicks":[{"line":44,"ticks":4,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1212,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[1213],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1213,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1214],"locationId":196},{"id":1214,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[1800],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1800,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":712,"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":130,"columnNumber":38},"hitCount":4,"positionTicks":[{"line":131,"ticks":2,"startLocationId":175,"endLocationId":176},{"line":146,"ticks":2,"startLocationId":179,"endLocationId":180}],"locationId":174},{"id":2593,"callFrame":{"functionName":"replaceTrailing","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1745,"columnNumber":29},"hitCount":5,"positionTicks":[{"line":1750,"ticks":5,"startLocationId":192,"endLocationId":193}],"locationId":189},{"id":1204,"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":150,"columnNumber":34},"hitCount":3,"children":[2328,2331],"positionTicks":[{"line":60,"ticks":1,"startLocationId":101,"endLocationId":138},{"line":151,"ticks":1,"startLocationId":200,"endLocationId":201},{"line":189,"ticks":1,"startLocationId":115,"endLocationId":116}],"locationId":78},{"id":2328,"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":75,"columnNumber":35},"hitCount":0,"children":[2329],"locationId":160},{"id":2329,"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":34,"columnNumber":24},"hitCount":5,"positionTicks":[{"line":59,"ticks":1,"startLocationId":169,"endLocationId":172},{"line":57,"ticks":4,"startLocationId":173,"endLocationId":168}],"locationId":167},{"id":2331,"callFrame":{"functionName":"amend_reserved_word","scriptId":"508","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/reserved_words.js","lineNumber":0,"columnNumber":28},"hitCount":1,"positionTicks":[{"line":120,"ticks":1,"startLocationId":187,"endLocationId":188}],"locationId":185},{"id":2319,"callFrame":{"functionName":"Parsed.optionEQvalue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":94,"columnNumber":37},"hitCount":2,"children":[2320,4386],"positionTicks":[{"line":96,"ticks":2,"startLocationId":203,"endLocationId":204}],"locationId":202},{"id":2320,"callFrame":{"functionName":"Parsed.getOptionValue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":77,"columnNumber":38},"hitCount":1,"positionTicks":[{"line":83,"ticks":1,"startLocationId":206,"endLocationId":207}],"locationId":205},{"id":4386,"callFrame":{"functionName":"normalize","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":50,"columnNumber":22},"hitCount":1,"positionTicks":[{"line":56,"ticks":1,"startLocationId":209,"endLocationId":210}],"locationId":208},{"id":2325,"callFrame":{"functionName":"Parsed.additionalColumns","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":193,"columnNumber":41},"hitCount":1,"children":[3366],"positionTicks":[{"line":196,"ticks":1,"startLocationId":212,"endLocationId":213}],"locationId":211},{"id":3366,"callFrame":{"functionName":"Parsed.getOptionValue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":77,"columnNumber":38},"hitCount":1,"positionTicks":[{"line":81,"ticks":1,"startLocationId":214,"endLocationId":215}],"locationId":205},{"id":270,"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":607,"columnNumber":33},"hitCount":97,"children":[271,930,2332,3368],"positionTicks":[{"line":613,"ticks":97,"startLocationId":216,"endLocationId":217}],"locationId":9},{"id":271,"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":47,"columnNumber":39},"hitCount":113,"children":[272,812,2321,2326],"positionTicks":[{"line":52,"ticks":1,"startLocationId":37,"endLocationId":38},{"line":84,"ticks":1,"startLocationId":53,"endLocationId":59},{"line":55,"ticks":4,"startLocationId":51,"endLocationId":52},{"line":82,"ticks":2,"startLocationId":40,"endLocationId":47},{"line":151,"ticks":5,"startLocationId":48,"endLocationId":49},{"line":59,"ticks":4,"startLocationId":42,"endLocationId":50},{"line":69,"ticks":3,"startLocationId":45,"endLocationId":46},{"line":58,"ticks":7,"startLocationId":41,"endLocationId":42},{"line":89,"ticks":1,"startLocationId":218,"endLocationId":219},{"line":60,"ticks":34,"startLocationId":50,"endLocationId":54},{"line":79,"ticks":2,"startLocationId":220,"endLocationId":221},{"line":57,"ticks":21,"startLocationId":56,"endLocationId":41},{"line":73,"ticks":28,"startLocationId":60,"endLocationId":61}],"locationId":36},{"id":272,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":223,"children":[273,407,409,2330],"positionTicks":[{"line":73,"ticks":1,"startLocationId":222,"endLocationId":223},{"line":149,"ticks":1,"startLocationId":224,"endLocationId":225},{"line":55,"ticks":2,"startLocationId":65,"endLocationId":66},{"line":58,"ticks":2,"startLocationId":63,"endLocationId":64},{"line":151,"ticks":206,"startLocationId":76,"endLocationId":77},{"line":63,"ticks":2,"startLocationId":74,"endLocationId":75},{"line":60,"ticks":4,"startLocationId":70,"endLocationId":73},{"line":57,"ticks":5,"startLocationId":69,"endLocationId":63}],"locationId":62},{"id":273,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[274],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":274,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":4,"children":[275],"positionTicks":[{"line":44,"ticks":4,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":275,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[276],"locationId":196},{"id":276,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[277],"locationId":196},{"id":277,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[278],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":278,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[279],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":279,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[280],"locationId":196},{"id":280,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[281],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":281,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[282],"locationId":196},{"id":282,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[283],"locationId":196},{"id":283,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[284],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":284,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[285],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":285,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[286],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":286,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[287],"locationId":196},{"id":287,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[288],"locationId":196},{"id":288,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[289],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":289,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[290],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":290,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[291],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":291,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[292],"locationId":196},{"id":292,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[293],"locationId":196},{"id":293,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[294],"locationId":196},{"id":294,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[295],"locationId":196},{"id":295,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[296],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":296,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[297],"locationId":196},{"id":297,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[298],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":298,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[299],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":299,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[300],"locationId":196},{"id":300,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":4,"children":[301],"positionTicks":[{"line":44,"ticks":4,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":301,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[302],"locationId":196},{"id":302,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[303],"locationId":196},{"id":303,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[304],"locationId":196},{"id":304,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[305],"locationId":196},{"id":305,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[306],"locationId":196},{"id":306,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[307],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":307,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[308],"locationId":196},{"id":308,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[309],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":309,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[310],"locationId":196},{"id":310,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[311],"locationId":196},{"id":311,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[312],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":312,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[313],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":313,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[314],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":314,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[315],"locationId":196},{"id":315,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[316],"locationId":196},{"id":316,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[317],"locationId":196},{"id":317,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[318],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":318,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[319],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":319,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[320],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":320,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[321],"locationId":196},{"id":321,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[322],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":322,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[323],"locationId":196},{"id":323,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[324],"locationId":196},{"id":324,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[325],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":325,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[326],"locationId":196},{"id":326,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[327],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":327,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[328],"locationId":196},{"id":328,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[329],"locationId":196},{"id":329,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[330],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":330,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[331],"locationId":196},{"id":331,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[332],"locationId":196},{"id":332,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[333],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":333,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[334],"locationId":196},{"id":334,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[335],"locationId":196},{"id":335,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[336],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":336,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[337],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":337,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[338],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":338,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[339],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":339,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[340],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":340,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[341],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":341,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[342],"locationId":196},{"id":342,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[343],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":343,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[344],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":344,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[345],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":345,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[346],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":346,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[347],"locationId":196},{"id":347,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[348],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":348,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[349],"locationId":196},{"id":349,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[350],"locationId":196},{"id":350,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[351],"locationId":196},{"id":351,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[352],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":352,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[353],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":353,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[354],"locationId":196},{"id":354,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[355],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":355,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[356],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":356,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[357],"locationId":196},{"id":357,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[358],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":358,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[359],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":359,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[360],"locationId":196},{"id":360,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[361],"locationId":196},{"id":361,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[362],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":362,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[363],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":363,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[364],"locationId":196},{"id":364,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[365],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":365,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[366],"locationId":196},{"id":366,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[367],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":367,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[368],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":368,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[369],"locationId":196},{"id":369,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[370],"locationId":196},{"id":370,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[371],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":371,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[372],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":372,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[373],"locationId":196},{"id":373,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[374],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":374,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[375],"locationId":196},{"id":375,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[376],"locationId":196},{"id":376,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[377],"locationId":196},{"id":377,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[378],"locationId":196},{"id":378,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[379],"locationId":196},{"id":379,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[380],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":380,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[381],"locationId":196},{"id":381,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[382],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":382,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[383],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":383,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[384],"locationId":196},{"id":384,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[385],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":385,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[386],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":386,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[387],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":387,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[388],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":388,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[389],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":389,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[390],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":390,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[391],"locationId":196},{"id":391,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[392],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":392,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[393],"locationId":196},{"id":393,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[394],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":394,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[395],"locationId":196},{"id":395,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[396],"locationId":196},{"id":396,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[397],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":397,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[398],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":398,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[399],"locationId":196},{"id":399,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[400],"locationId":196},{"id":400,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[401],"locationId":196},{"id":401,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[402],"locationId":196},{"id":402,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[403],"locationId":196},{"id":403,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[404],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":404,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[405],"locationId":196},{"id":405,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[406],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":406,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[412],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":412,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[413],"locationId":196},{"id":413,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[414],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":414,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[415],"locationId":196},{"id":415,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[416],"positionTicks":[{"line":40,"ticks":1,"startLocationId":226,"endLocationId":227},{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":416,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[417],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":417,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[418],"locationId":196},{"id":418,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[419],"locationId":196},{"id":419,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[420],"locationId":196},{"id":420,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[421],"locationId":196},{"id":421,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[422],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":422,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[423],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":423,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[424],"locationId":196},{"id":424,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[425],"locationId":196},{"id":425,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[426],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":426,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[427],"locationId":196},{"id":427,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[428],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":428,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[429],"locationId":196},{"id":429,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[430],"locationId":196},{"id":430,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[431],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":431,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[432],"locationId":196},{"id":432,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[433],"locationId":196},{"id":433,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[434],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":434,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[435],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":435,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[436],"locationId":196},{"id":436,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[437],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":437,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[438],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":438,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[439],"locationId":196},{"id":439,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[440],"locationId":196},{"id":440,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[441],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":441,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[442],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":442,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[443],"locationId":196},{"id":443,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[444],"locationId":196},{"id":444,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[445],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":445,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[446],"locationId":196},{"id":446,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[447],"locationId":196},{"id":447,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[448],"locationId":196},{"id":448,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[449],"locationId":196},{"id":449,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[450],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":450,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[451],"locationId":196},{"id":451,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[452],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":452,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[453],"locationId":196},{"id":453,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[454],"locationId":196},{"id":454,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[455],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":455,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[456],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":456,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[457],"locationId":196},{"id":457,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[458],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":458,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[459],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":459,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[460],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198},{"line":43,"ticks":1,"startLocationId":199,"endLocationId":197}],"locationId":196},{"id":460,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[461],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":461,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[462],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":462,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[463],"locationId":196},{"id":463,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[464],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":464,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[465],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":465,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[466],"locationId":196},{"id":466,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[467],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":467,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[468],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":468,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[469],"locationId":196},{"id":469,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[470],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":470,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[471],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":471,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[472],"locationId":196},{"id":472,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[473],"locationId":196},{"id":473,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[474],"locationId":196},{"id":474,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[475],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":475,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[476],"locationId":196},{"id":476,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[477],"locationId":196},{"id":477,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[478],"locationId":196},{"id":478,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[479],"locationId":196},{"id":479,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[480],"locationId":196},{"id":480,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[481],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":481,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[482],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":482,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[853],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":853,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[854],"locationId":196},{"id":854,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[855],"locationId":196},{"id":855,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[856],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":856,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[857],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":857,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[858],"locationId":196},{"id":858,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[859],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":859,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[860],"locationId":196},{"id":860,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[861],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":861,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[862],"locationId":196},{"id":862,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[863],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":863,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[864],"locationId":196},{"id":864,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[865],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":865,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[866],"locationId":196},{"id":866,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[867],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":867,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[868],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":868,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[869],"locationId":196},{"id":869,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[870],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":870,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[871],"locationId":196},{"id":871,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1471],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1471,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[1472],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1472,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1473],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1473,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1474],"locationId":196},{"id":1474,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1475],"locationId":196},{"id":1475,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1476],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1476,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1477],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1477,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1478],"locationId":196},{"id":1478,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1479],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1479,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1480],"locationId":196},{"id":1480,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1481],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1481,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1482],"locationId":196},{"id":1482,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1483],"positionTicks":[{"line":43,"ticks":1,"startLocationId":199,"endLocationId":197}],"locationId":196},{"id":1483,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[1484],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1484,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1485],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1485,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1486],"locationId":196},{"id":1486,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1487],"locationId":196},{"id":1487,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1488],"locationId":196},{"id":1488,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[2335],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":2335,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2336],"locationId":196},{"id":2336,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":407,"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":75,"columnNumber":35},"hitCount":53,"children":[408],"positionTicks":[{"line":82,"ticks":8,"startLocationId":161,"endLocationId":162},{"line":79,"ticks":7,"startLocationId":165,"endLocationId":166},{"line":84,"ticks":38,"startLocationId":163,"endLocationId":164}],"locationId":160},{"id":408,"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":34,"columnNumber":24},"hitCount":1568,"positionTicks":[{"line":58,"ticks":18,"startLocationId":168,"endLocationId":169},{"line":59,"ticks":56,"startLocationId":169,"endLocationId":172},{"line":57,"ticks":1494,"startLocationId":173,"endLocationId":168}],"locationId":167},{"id":409,"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":150,"columnNumber":34},"hitCount":814,"children":[410,483,643,711,934],"positionTicks":[{"line":216,"ticks":1,"startLocationId":85,"endLocationId":86},{"line":201,"ticks":2,"startLocationId":79,"endLocationId":80},{"line":211,"ticks":3,"startLocationId":131,"endLocationId":132},{"line":1747,"ticks":4,"startLocationId":154,"endLocationId":113},{"line":195,"ticks":3,"startLocationId":152,"endLocationId":153},{"line":52,"ticks":1,"startLocationId":111,"endLocationId":112},{"line":177,"ticks":9,"startLocationId":99,"endLocationId":105},{"line":183,"ticks":4,"startLocationId":155,"endLocationId":83},{"line":179,"ticks":4,"startLocationId":106,"endLocationId":95},{"line":82,"ticks":1,"startLocationId":156,"endLocationId":157},{"line":79,"ticks":1,"startLocationId":228,"endLocationId":229},{"line":176,"ticks":7,"startLocationId":98,"endLocationId":99},{"line":69,"ticks":2,"startLocationId":109,"endLocationId":110},{"line":210,"ticks":1,"startLocationId":230,"endLocationId":131},{"line":174,"ticks":4,"startLocationId":135,"endLocationId":104},{"line":175,"ticks":6,"startLocationId":104,"endLocationId":98},{"line":178,"ticks":10,"startLocationId":105,"endLocationId":106},{"line":160,"ticks":19,"startLocationId":148,"endLocationId":149},{"line":63,"ticks":1,"startLocationId":146,"endLocationId":147},{"line":180,"ticks":2,"startLocationId":95,"endLocationId":96},{"line":169,"ticks":5,"startLocationId":97,"endLocationId":91},{"line":165,"ticks":7,"startLocationId":129,"endLocationId":130},{"line":155,"ticks":6,"startLocationId":123,"endLocationId":124},{"line":58,"ticks":4,"startLocationId":125,"endLocationId":100},{"line":199,"ticks":36,"startLocationId":120,"endLocationId":126},{"line":198,"ticks":121,"startLocationId":119,"endLocationId":120},{"line":1750,"ticks":2,"startLocationId":121,"endLocationId":122},{"line":120,"ticks":1,"startLocationId":88,"endLocationId":90},{"line":217,"ticks":1,"startLocationId":86,"endLocationId":89},{"line":170,"ticks":5,"startLocationId":91,"endLocationId":92},{"line":8,"ticks":18,"startLocationId":142,"endLocationId":143},{"line":202,"ticks":4,"startLocationId":80,"endLocationId":144},{"line":151,"ticks":1,"startLocationId":200,"endLocationId":201},{"line":154,"ticks":48,"startLocationId":82,"endLocationId":123},{"line":57,"ticks":18,"startLocationId":139,"endLocationId":125},{"line":153,"ticks":4,"startLocationId":81,"endLocationId":82},{"line":59,"ticks":7,"startLocationId":100,"endLocationId":101},{"line":173,"ticks":8,"startLocationId":134,"endLocationId":135},{"line":220,"ticks":6,"startLocationId":136,"endLocationId":137},{"line":187,"ticks":22,"startLocationId":158,"endLocationId":133},{"line":208,"ticks":7,"startLocationId":102,"endLocationId":103},{"line":189,"ticks":30,"startLocationId":115,"endLocationId":116},{"line":191,"ticks":167,"startLocationId":140,"endLocationId":141},{"line":188,"ticks":25,"startLocationId":133,"endLocationId":115},{"line":205,"ticks":24,"startLocationId":117,"endLocationId":118},{"line":60,"ticks":33,"startLocationId":101,"endLocationId":138},{"line":55,"ticks":2,"startLocationId":150,"endLocationId":151},{"line":192,"ticks":69,"startLocationId":141,"endLocationId":159},{"line":206,"ticks":23,"startLocationId":118,"endLocationId":145},{"line":207,"ticks":17,"startLocationId":145,"endLocationId":102},{"line":1748,"ticks":8,"startLocationId":113,"endLocationId":114}],"locationId":78},{"id":410,"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":75,"columnNumber":35},"hitCount":43,"children":[411],"positionTicks":[{"line":82,"ticks":6,"startLocationId":161,"endLocationId":162},{"line":79,"ticks":6,"startLocationId":165,"endLocationId":166},{"line":84,"ticks":31,"startLocationId":163,"endLocationId":164}],"locationId":160},{"id":411,"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":34,"columnNumber":24},"hitCount":1522,"positionTicks":[{"line":58,"ticks":21,"startLocationId":168,"endLocationId":169},{"line":69,"ticks":2,"startLocationId":170,"endLocationId":171},{"line":59,"ticks":45,"startLocationId":169,"endLocationId":172},{"line":57,"ticks":1454,"startLocationId":173,"endLocationId":168}],"locationId":167},{"id":483,"callFrame":{"functionName":"amend_reserved_word","scriptId":"508","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/reserved_words.js","lineNumber":0,"columnNumber":28},"hitCount":241,"positionTicks":[{"line":119,"ticks":34,"startLocationId":186,"endLocationId":187},{"line":120,"ticks":207,"startLocationId":187,"endLocationId":188}],"locationId":185},{"id":643,"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":130,"columnNumber":38},"hitCount":506,"positionTicks":[{"line":131,"ticks":1,"startLocationId":175,"endLocationId":176},{"line":146,"ticks":10,"startLocationId":179,"endLocationId":180},{"line":133,"ticks":9,"startLocationId":177,"endLocationId":178},{"line":140,"ticks":12,"startLocationId":183,"endLocationId":184},{"line":132,"ticks":474,"startLocationId":176,"endLocationId":177}],"locationId":174},{"id":711,"callFrame":{"functionName":"replaceTrailing","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1745,"columnNumber":29},"hitCount":245,"positionTicks":[{"line":1746,"ticks":10,"startLocationId":195,"endLocationId":190},{"line":1747,"ticks":6,"startLocationId":190,"endLocationId":191},{"line":1750,"ticks":96,"startLocationId":192,"endLocationId":193},{"line":1748,"ticks":133,"startLocationId":191,"endLocationId":194}],"locationId":189},{"id":934,"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":150,"columnNumber":34},"hitCount":12,"positionTicks":[{"line":199,"ticks":2,"startLocationId":120,"endLocationId":126},{"line":192,"ticks":10,"startLocationId":141,"endLocationId":159}],"locationId":78},{"id":2330,"callFrame":{"functionName":"replaceTrailing","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1745,"columnNumber":29},"hitCount":2,"positionTicks":[{"line":1750,"ticks":2,"startLocationId":192,"endLocationId":193}],"locationId":189},{"id":812,"callFrame":{"functionName":"Parsed.additionalColumns","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":193,"columnNumber":41},"hitCount":0,"children":[813],"locationId":211},{"id":813,"callFrame":{"functionName":"Parsed.getOptionValue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":77,"columnNumber":38},"hitCount":3,"positionTicks":[{"line":80,"ticks":1,"startLocationId":231,"endLocationId":214},{"line":83,"ticks":2,"startLocationId":206,"endLocationId":207}],"locationId":205},{"id":2321,"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":150,"columnNumber":34},"hitCount":2,"children":[3362],"positionTicks":[{"line":191,"ticks":1,"startLocationId":140,"endLocationId":141},{"line":176,"ticks":1,"startLocationId":98,"endLocationId":99}],"locationId":78},{"id":3362,"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":75,"columnNumber":35},"hitCount":0,"children":[3363],"locationId":160},{"id":3363,"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":34,"columnNumber":24},"hitCount":2,"positionTicks":[{"line":57,"ticks":2,"startLocationId":173,"endLocationId":168}],"locationId":167},{"id":2326,"callFrame":{"functionName":"Parsed.optionEQvalue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":94,"columnNumber":37},"hitCount":0,"children":[2327],"locationId":202},{"id":2327,"callFrame":{"functionName":"normalize","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":50,"columnNumber":22},"hitCount":1,"positionTicks":[{"line":58,"ticks":1,"startLocationId":232,"endLocationId":233}],"locationId":208},{"id":930,"callFrame":{"functionName":"parseType","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":221,"columnNumber":33},"hitCount":4,"children":[931,1744,2595,3365,3370],"positionTicks":[{"line":355,"ticks":2,"startLocationId":235,"endLocationId":236},{"line":244,"ticks":1,"startLocationId":237,"endLocationId":238},{"line":374,"ticks":1,"startLocationId":239,"endLocationId":240}],"locationId":234},{"id":931,"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":150,"columnNumber":34},"hitCount":0,"children":[932],"locationId":78},{"id":932,"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":75,"columnNumber":35},"hitCount":0,"children":[933],"locationId":160},{"id":933,"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":34,"columnNumber":24},"hitCount":4,"positionTicks":[{"line":57,"ticks":4,"startLocationId":173,"endLocationId":168}],"locationId":167},{"id":1744,"callFrame":{"functionName":"concatNames","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":88,"columnNumber":27},"hitCount":3,"positionTicks":[{"line":93,"ticks":1,"startLocationId":242,"endLocationId":243},{"line":109,"ticks":2,"startLocationId":244,"endLocationId":245}],"locationId":241},{"id":2595,"callFrame":{"functionName":"indexOf","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":115,"columnNumber":31},"hitCount":1,"positionTicks":[{"line":118,"ticks":1,"startLocationId":247,"endLocationId":248}],"locationId":246},{"id":3365,"callFrame":{"functionName":"occursBeforeOption","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":125,"columnNumber":42},"hitCount":1,"positionTicks":[{"line":127,"ticks":1,"startLocationId":250,"endLocationId":251}],"locationId":249},{"id":3370,"callFrame":{"functionName":"Parsed.semantics","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":137,"columnNumber":33},"hitCount":0,"children":[3371],"locationId":252},{"id":3371,"callFrame":{"functionName":"Parsed.optionEQvalue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":94,"columnNumber":37},"hitCount":0,"children":[3372],"locationId":202},{"id":3372,"callFrame":{"functionName":"normalize","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":50,"columnNumber":22},"hitCount":1,"positionTicks":[{"line":61,"ticks":1,"startLocationId":253,"endLocationId":254}],"locationId":208},{"id":2332,"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":150,"columnNumber":34},"hitCount":0,"children":[2333,3875],"locationId":78},{"id":2333,"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":75,"columnNumber":35},"hitCount":0,"children":[2334],"locationId":160},{"id":2334,"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":34,"columnNumber":24},"hitCount":1,"positionTicks":[{"line":57,"ticks":1,"startLocationId":173,"endLocationId":168}],"locationId":167},{"id":3875,"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":130,"columnNumber":38},"hitCount":1,"positionTicks":[{"line":132,"ticks":1,"startLocationId":176,"endLocationId":177}],"locationId":174},{"id":3368,"callFrame":{"functionName":"apparentDepth","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":553,"columnNumber":37},"hitCount":2,"positionTicks":[{"line":555,"ticks":2,"startLocationId":256,"endLocationId":257}],"locationId":255},{"id":486,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":39,"children":[680,810,926,3367],"positionTicks":[{"line":57,"ticks":3,"startLocationId":69,"endLocationId":63},{"line":151,"ticks":31,"startLocationId":76,"endLocationId":77},{"line":59,"ticks":2,"startLocationId":64,"endLocationId":70},{"line":69,"ticks":1,"startLocationId":258,"endLocationId":259},{"line":60,"ticks":2,"startLocationId":70,"endLocationId":73}],"locationId":62},{"id":680,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[681],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":681,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[682],"locationId":196},{"id":682,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[683],"locationId":196},{"id":683,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[684],"locationId":196},{"id":684,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[685],"locationId":196},{"id":685,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[686],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":686,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[687],"locationId":196},{"id":687,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[688],"locationId":196},{"id":688,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[689],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":689,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[690],"locationId":196},{"id":690,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[691],"locationId":196},{"id":691,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[692],"locationId":196},{"id":692,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[693],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":693,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[694],"locationId":196},{"id":694,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[695],"locationId":196},{"id":695,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[696],"locationId":196},{"id":696,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[697],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":697,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[698],"locationId":196},{"id":698,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[699],"locationId":196},{"id":699,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[700],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":700,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[701],"locationId":196},{"id":701,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[702],"locationId":196},{"id":702,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[703],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":703,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[704],"locationId":196},{"id":704,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[705],"locationId":196},{"id":705,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[706],"locationId":196},{"id":706,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[707],"locationId":196},{"id":707,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[708],"locationId":196},{"id":708,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[713],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":713,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[714],"locationId":196},{"id":714,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[715],"locationId":196},{"id":715,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[716],"locationId":196},{"id":716,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[717],"locationId":196},{"id":717,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[718],"locationId":196},{"id":718,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[719],"locationId":196},{"id":719,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[720],"locationId":196},{"id":720,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[721],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":721,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[722],"locationId":196},{"id":722,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[723],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":723,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[724],"locationId":196},{"id":724,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[725],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":725,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[726],"locationId":196},{"id":726,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[727],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":727,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[728],"locationId":196},{"id":728,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[729],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":729,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[730],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":730,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[731],"locationId":196},{"id":731,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[732],"locationId":196},{"id":732,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[733],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":733,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[734],"locationId":196},{"id":734,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[735],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":735,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[736],"locationId":196},{"id":736,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[737],"locationId":196},{"id":737,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[738],"locationId":196},{"id":738,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[739],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":739,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[740],"locationId":196},{"id":740,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[741],"locationId":196},{"id":741,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[742],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":742,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[743],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":743,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[744],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":744,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[745],"locationId":196},{"id":745,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[746],"locationId":196},{"id":746,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[747],"locationId":196},{"id":747,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[748],"locationId":196},{"id":748,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[749],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":749,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[750],"locationId":196},{"id":750,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[751],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":751,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[752],"locationId":196},{"id":752,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[753],"locationId":196},{"id":753,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[754],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":754,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[755],"locationId":196},{"id":755,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[756],"locationId":196},{"id":756,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[757],"locationId":196},{"id":757,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[758],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":758,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[759],"locationId":196},{"id":759,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[760],"locationId":196},{"id":760,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[761],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":761,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[762],"locationId":196},{"id":762,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[763],"locationId":196},{"id":763,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[764],"locationId":196},{"id":764,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[765],"locationId":196},{"id":765,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[766],"locationId":196},{"id":766,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[767],"locationId":196},{"id":767,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[768],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":768,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[769],"locationId":196},{"id":769,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[770],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":770,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[771],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":771,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[772],"locationId":196},{"id":772,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[773],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":773,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[774],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":774,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[775],"locationId":196},{"id":775,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[776],"locationId":196},{"id":776,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[777],"locationId":196},{"id":777,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[778],"locationId":196},{"id":778,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[779],"locationId":196},{"id":779,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[780],"locationId":196},{"id":780,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[781],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":781,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[782],"locationId":196},{"id":782,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[783],"locationId":196},{"id":783,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[784],"locationId":196},{"id":784,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[785],"locationId":196},{"id":785,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[786],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":786,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[787],"locationId":196},{"id":787,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[788],"locationId":196},{"id":788,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[789],"locationId":196},{"id":789,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[790],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":790,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[791],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":791,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[792],"locationId":196},{"id":792,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[793],"locationId":196},{"id":793,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[794],"locationId":196},{"id":794,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[795],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":795,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[796],"locationId":196},{"id":796,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[797],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":797,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[798],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":798,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[799],"locationId":196},{"id":799,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[800],"locationId":196},{"id":800,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[801],"locationId":196},{"id":801,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[802],"locationId":196},{"id":802,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[803],"locationId":196},{"id":803,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[804],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":804,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[805],"locationId":196},{"id":805,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[806],"locationId":196},{"id":806,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[807],"locationId":196},{"id":807,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[808],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":808,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[814],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":814,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[815],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":815,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[816],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":816,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[817],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":817,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[818],"locationId":196},{"id":818,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[819],"locationId":196},{"id":819,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[820],"locationId":196},{"id":820,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[821],"locationId":196},{"id":821,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[822],"locationId":196},{"id":822,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[823],"locationId":196},{"id":823,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[824],"locationId":196},{"id":824,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[825],"locationId":196},{"id":825,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"children":[872],"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":872,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[873],"locationId":196},{"id":873,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[874],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":874,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[875],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":875,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[876],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":876,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[877],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":877,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[878],"locationId":196},{"id":878,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[879],"locationId":196},{"id":879,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[880],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":880,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[881],"locationId":196},{"id":881,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[882],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":882,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[883],"locationId":196},{"id":883,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[884],"locationId":196},{"id":884,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[885],"locationId":196},{"id":885,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[886],"locationId":196},{"id":886,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[887],"locationId":196},{"id":887,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[888],"locationId":196},{"id":888,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[889],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":889,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[890],"locationId":196},{"id":890,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[891],"locationId":196},{"id":891,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[892],"locationId":196},{"id":892,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[893],"locationId":196},{"id":893,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[894],"locationId":196},{"id":894,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[895],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":895,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[896],"locationId":196},{"id":896,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[897],"locationId":196},{"id":897,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[898],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":898,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[899],"locationId":196},{"id":899,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[900],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":900,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[901],"locationId":196},{"id":901,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[902],"locationId":196},{"id":902,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[903],"locationId":196},{"id":903,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[904],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":904,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[905],"locationId":196},{"id":905,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[906],"locationId":196},{"id":906,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[907],"locationId":196},{"id":907,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[908],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":908,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[909],"locationId":196},{"id":909,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[910],"locationId":196},{"id":910,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[911],"locationId":196},{"id":911,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[912],"locationId":196},{"id":912,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[913],"locationId":196},{"id":913,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[914],"locationId":196},{"id":914,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[915],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":915,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[916],"locationId":196},{"id":916,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[917],"locationId":196},{"id":917,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[918],"locationId":196},{"id":918,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[919],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":919,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1745],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1745,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1746],"locationId":196},{"id":1746,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1747],"locationId":196},{"id":1747,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1748],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1748,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1749],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1749,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1750],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1750,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1751],"locationId":196},{"id":1751,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1752],"locationId":196},{"id":1752,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1753],"locationId":196},{"id":1753,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1754],"locationId":196},{"id":1754,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1755],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1755,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1756],"locationId":196},{"id":1756,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1757],"locationId":196},{"id":1757,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1758],"locationId":196},{"id":1758,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1759],"locationId":196},{"id":1759,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1760],"locationId":196},{"id":1760,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1761],"locationId":196},{"id":1761,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1762],"locationId":196},{"id":1762,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1763],"locationId":196},{"id":1763,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1764],"locationId":196},{"id":1764,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1765],"locationId":196},{"id":1765,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1766],"locationId":196},{"id":1766,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1767],"locationId":196},{"id":1767,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1768],"locationId":196},{"id":1768,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1769],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1769,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1770],"locationId":196},{"id":1770,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1771],"locationId":196},{"id":1771,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1772],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1772,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1773],"locationId":196},{"id":1773,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1774],"locationId":196},{"id":1774,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1775],"locationId":196},{"id":1775,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1776],"locationId":196},{"id":1776,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1777],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1777,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1778],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1778,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1779],"locationId":196},{"id":1779,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1780],"locationId":196},{"id":1780,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1781],"locationId":196},{"id":1781,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1782],"locationId":196},{"id":1782,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1783],"locationId":196},{"id":1783,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1784],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1784,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1785],"locationId":196},{"id":1785,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1786],"locationId":196},{"id":1786,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1787],"locationId":196},{"id":1787,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1788],"locationId":196},{"id":1788,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1789],"locationId":196},{"id":1789,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1790],"locationId":196},{"id":1790,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1791],"locationId":196},{"id":1791,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1792],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1792,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1793],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1793,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1794],"locationId":196},{"id":1794,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[1795],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1795,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1796],"locationId":196},{"id":1796,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1797],"locationId":196},{"id":1797,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1798],"locationId":196},{"id":1798,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1799],"locationId":196},{"id":1799,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[2055],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":2055,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2056],"locationId":196},{"id":2056,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2057],"locationId":196},{"id":2057,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2058],"locationId":196},{"id":2058,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2059],"locationId":196},{"id":2059,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"children":[3103],"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":3103,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3104],"locationId":196},{"id":3104,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3105],"locationId":196},{"id":3105,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":810,"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":150,"columnNumber":34},"hitCount":114,"children":[811,928,1215,2324,3369],"positionTicks":[{"line":195,"ticks":1,"startLocationId":152,"endLocationId":153},{"line":1748,"ticks":1,"startLocationId":113,"endLocationId":114},{"line":69,"ticks":1,"startLocationId":109,"endLocationId":110},{"line":153,"ticks":1,"startLocationId":81,"endLocationId":82},{"line":59,"ticks":1,"startLocationId":100,"endLocationId":101},{"line":189,"ticks":2,"startLocationId":115,"endLocationId":116},{"line":198,"ticks":20,"startLocationId":119,"endLocationId":120},{"line":57,"ticks":2,"startLocationId":139,"endLocationId":125},{"line":187,"ticks":5,"startLocationId":158,"endLocationId":133},{"line":180,"ticks":2,"startLocationId":95,"endLocationId":96},{"line":173,"ticks":1,"startLocationId":134,"endLocationId":135},{"line":205,"ticks":4,"startLocationId":117,"endLocationId":118},{"line":170,"ticks":4,"startLocationId":91,"endLocationId":92},{"line":217,"ticks":1,"startLocationId":86,"endLocationId":89},{"line":207,"ticks":5,"startLocationId":145,"endLocationId":102},{"line":160,"ticks":2,"startLocationId":148,"endLocationId":149},{"line":206,"ticks":2,"startLocationId":118,"endLocationId":145},{"line":55,"ticks":1,"startLocationId":150,"endLocationId":151},{"line":8,"ticks":1,"startLocationId":142,"endLocationId":143},{"line":192,"ticks":9,"startLocationId":141,"endLocationId":159},{"line":165,"ticks":2,"startLocationId":129,"endLocationId":130},{"line":188,"ticks":2,"startLocationId":133,"endLocationId":115},{"line":58,"ticks":1,"startLocationId":125,"endLocationId":100},{"line":199,"ticks":5,"startLocationId":120,"endLocationId":126},{"line":60,"ticks":7,"startLocationId":101,"endLocationId":138},{"line":154,"ticks":5,"startLocationId":82,"endLocationId":123},{"line":175,"ticks":1,"startLocationId":104,"endLocationId":98},{"line":191,"ticks":25,"startLocationId":140,"endLocationId":141}],"locationId":78},{"id":811,"callFrame":{"functionName":"amend_reserved_word","scriptId":"508","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/reserved_words.js","lineNumber":0,"columnNumber":28},"hitCount":36,"positionTicks":[{"line":120,"ticks":26,"startLocationId":187,"endLocationId":188},{"line":119,"ticks":10,"startLocationId":186,"endLocationId":187}],"locationId":185},{"id":928,"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":75,"columnNumber":35},"hitCount":10,"children":[929],"positionTicks":[{"line":82,"ticks":1,"startLocationId":161,"endLocationId":162},{"line":79,"ticks":4,"startLocationId":165,"endLocationId":166},{"line":84,"ticks":5,"startLocationId":163,"endLocationId":164}],"locationId":160},{"id":929,"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":34,"columnNumber":24},"hitCount":199,"positionTicks":[{"line":59,"ticks":8,"startLocationId":169,"endLocationId":172},{"line":58,"ticks":3,"startLocationId":168,"endLocationId":169},{"line":57,"ticks":188,"startLocationId":173,"endLocationId":168}],"locationId":167},{"id":1215,"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":130,"columnNumber":38},"hitCount":41,"positionTicks":[{"line":146,"ticks":1,"startLocationId":179,"endLocationId":180},{"line":140,"ticks":1,"startLocationId":183,"endLocationId":184},{"line":132,"ticks":39,"startLocationId":176,"endLocationId":177}],"locationId":174},{"id":2324,"callFrame":{"functionName":"replaceTrailing","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1745,"columnNumber":29},"hitCount":34,"positionTicks":[{"line":1747,"ticks":1,"startLocationId":190,"endLocationId":191},{"line":1750,"ticks":15,"startLocationId":192,"endLocationId":193},{"line":1748,"ticks":18,"startLocationId":191,"endLocationId":194}],"locationId":189},{"id":3369,"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":150,"columnNumber":34},"hitCount":2,"positionTicks":[{"line":192,"ticks":1,"startLocationId":141,"endLocationId":159},{"line":199,"ticks":1,"startLocationId":120,"endLocationId":126}],"locationId":78},{"id":926,"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":75,"columnNumber":35},"hitCount":3,"children":[927],"positionTicks":[{"line":79,"ticks":1,"startLocationId":165,"endLocationId":166},{"line":84,"ticks":2,"startLocationId":163,"endLocationId":164}],"locationId":160},{"id":927,"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":34,"columnNumber":24},"hitCount":183,"positionTicks":[{"line":58,"ticks":1,"startLocationId":168,"endLocationId":169},{"line":57,"ticks":173,"startLocationId":173,"endLocationId":168},{"line":59,"ticks":9,"startLocationId":169,"endLocationId":172}],"locationId":167},{"id":3367,"callFrame":{"functionName":"replaceTrailing","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1745,"columnNumber":29},"hitCount":1,"positionTicks":[{"line":1750,"ticks":1,"startLocationId":192,"endLocationId":193}],"locationId":189},{"id":809,"callFrame":{"functionName":"refId","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":459,"columnNumber":29},"hitCount":2,"children":[925],"positionTicks":[{"line":462,"ticks":1,"startLocationId":261,"endLocationId":262},{"line":494,"ticks":1,"startLocationId":263,"endLocationId":264}],"locationId":260},{"id":925,"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":130,"columnNumber":38},"hitCount":1,"positionTicks":[{"line":133,"ticks":1,"startLocationId":177,"endLocationId":178}],"locationId":174},{"id":948,"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":150,"columnNumber":34},"hitCount":4,"children":[2322,2847,3364],"positionTicks":[{"line":151,"ticks":2,"startLocationId":200,"endLocationId":201},{"line":198,"ticks":2,"startLocationId":119,"endLocationId":120}],"locationId":78},{"id":2322,"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":75,"columnNumber":35},"hitCount":0,"children":[2323],"locationId":160},{"id":2323,"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":34,"columnNumber":24},"hitCount":5,"positionTicks":[{"line":57,"ticks":5,"startLocationId":173,"endLocationId":168}],"locationId":167},{"id":2847,"callFrame":{"functionName":"replaceTrailing","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1745,"columnNumber":29},"hitCount":1,"positionTicks":[{"line":1748,"ticks":1,"startLocationId":191,"endLocationId":194}],"locationId":189},{"id":3364,"callFrame":{"functionName":"amend_reserved_word","scriptId":"508","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/reserved_words.js","lineNumber":0,"columnNumber":28},"hitCount":1,"positionTicks":[{"line":120,"ticks":1,"startLocationId":187,"endLocationId":188}],"locationId":185},{"id":2316,"callFrame":{"functionName":"findChild","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":32,"columnNumber":33},"hitCount":0,"children":[2317],"locationId":265},{"id":2317,"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":150,"columnNumber":34},"hitCount":1,"children":[2318],"positionTicks":[{"line":199,"ticks":1,"startLocationId":120,"endLocationId":126}],"locationId":78},{"id":2318,"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":130,"columnNumber":38},"hitCount":1,"positionTicks":[{"line":132,"ticks":1,"startLocationId":176,"endLocationId":177}],"locationId":174},{"id":2594,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"positionTicks":[{"line":40,"ticks":1,"startLocationId":226,"endLocationId":227}],"locationId":196},{"id":3106,"callFrame":{"functionName":"Parsed.additionalColumns","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":193,"columnNumber":41},"hitCount":1,"positionTicks":[{"line":196,"ticks":1,"startLocationId":212,"endLocationId":213}],"locationId":211},{"id":4383,"callFrame":{"functionName":"getGenIdColName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":580,"columnNumber":40},"hitCount":0,"children":[4384],"locationId":266},{"id":4384,"callFrame":{"functionName":"Parsed.optionEQvalue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":94,"columnNumber":37},"hitCount":0,"children":[4385],"locationId":202},{"id":4385,"callFrame":{"functionName":"Parsed.getOptionValue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":77,"columnNumber":38},"hitCount":1,"positionTicks":[{"line":83,"ticks":1,"startLocationId":206,"endLocationId":207}],"locationId":205},{"id":4388,"callFrame":{"functionName":"Parsed.optionEQvalue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":94,"columnNumber":37},"hitCount":1,"positionTicks":[{"line":91,"ticks":1,"startLocationId":267,"endLocationId":268}],"locationId":202},{"id":16,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[17],"locationId":196},{"id":17,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[18],"locationId":196},{"id":18,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[19],"locationId":196},{"id":19,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[20],"locationId":196},{"id":20,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[21],"locationId":196},{"id":21,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[22],"locationId":196},{"id":22,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[23],"locationId":196},{"id":23,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[24],"locationId":196},{"id":24,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[25],"locationId":196},{"id":25,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[26],"locationId":196},{"id":26,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[27],"locationId":196},{"id":27,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[28],"locationId":196},{"id":28,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[29],"locationId":196},{"id":29,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[30],"locationId":196},{"id":30,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[31],"locationId":196},{"id":31,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[32],"locationId":196},{"id":32,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[33],"locationId":196},{"id":33,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[34],"locationId":196},{"id":34,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[35],"locationId":196},{"id":35,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[36],"locationId":196},{"id":36,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[37],"locationId":196},{"id":37,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[38],"locationId":196},{"id":38,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[39],"locationId":196},{"id":39,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[40],"locationId":196},{"id":40,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[41],"locationId":196},{"id":41,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[42],"locationId":196},{"id":42,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[43],"locationId":196},{"id":43,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[44],"locationId":196},{"id":44,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[45],"locationId":196},{"id":45,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[46],"locationId":196},{"id":46,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[47],"locationId":196},{"id":47,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[48],"locationId":196},{"id":48,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[49],"locationId":196},{"id":49,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[50],"locationId":196},{"id":50,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[51],"locationId":196},{"id":51,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[52],"locationId":196},{"id":52,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[53],"locationId":196},{"id":53,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[54],"locationId":196},{"id":54,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[55],"locationId":196},{"id":55,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[56],"locationId":196},{"id":56,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[57],"locationId":196},{"id":57,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[58],"locationId":196},{"id":58,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[59],"locationId":196},{"id":59,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[60],"locationId":196},{"id":60,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[61],"locationId":196},{"id":61,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[62],"locationId":196},{"id":62,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[63],"locationId":196},{"id":63,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[64],"locationId":196},{"id":64,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[65],"locationId":196},{"id":65,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[66],"locationId":196},{"id":66,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[67],"locationId":196},{"id":67,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[68],"locationId":196},{"id":68,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[69],"locationId":196},{"id":69,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[70],"locationId":196},{"id":70,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[71],"locationId":196},{"id":71,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[72],"locationId":196},{"id":72,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[73],"locationId":196},{"id":73,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[74],"locationId":196},{"id":74,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[75],"locationId":196},{"id":75,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[76],"locationId":196},{"id":76,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[77],"locationId":196},{"id":77,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[78],"locationId":196},{"id":78,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[79],"locationId":196},{"id":79,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[80],"locationId":196},{"id":80,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[81],"locationId":196},{"id":81,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[82],"locationId":196},{"id":82,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[83],"locationId":196},{"id":83,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[84],"locationId":196},{"id":84,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[85],"locationId":196},{"id":85,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[86],"locationId":196},{"id":86,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[87],"locationId":196},{"id":87,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[88],"locationId":196},{"id":88,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[89],"locationId":196},{"id":89,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[90],"locationId":196},{"id":90,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[91],"locationId":196},{"id":91,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[92],"locationId":196},{"id":92,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[93],"locationId":196},{"id":93,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[94],"locationId":196},{"id":94,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[95],"locationId":196},{"id":95,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[96],"locationId":196},{"id":96,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[97],"locationId":196},{"id":97,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[98],"locationId":196},{"id":98,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[99],"locationId":196},{"id":99,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[100],"locationId":196},{"id":100,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[101],"locationId":196},{"id":101,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[102],"locationId":196},{"id":102,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[103],"locationId":196},{"id":103,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[104],"locationId":196},{"id":104,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[105],"locationId":196},{"id":105,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[106],"locationId":196},{"id":106,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[107],"locationId":196},{"id":107,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[108],"locationId":196},{"id":108,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[109],"locationId":196},{"id":109,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[110],"locationId":196},{"id":110,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[111],"locationId":196},{"id":111,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[112],"locationId":196},{"id":112,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[113],"locationId":196},{"id":113,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[114],"locationId":196},{"id":114,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[115],"locationId":196},{"id":115,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[116],"locationId":196},{"id":116,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[117],"locationId":196},{"id":117,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[118],"locationId":196},{"id":118,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[119],"locationId":196},{"id":119,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[120],"locationId":196},{"id":120,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[121],"locationId":196},{"id":121,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[122],"locationId":196},{"id":122,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[123],"locationId":196},{"id":123,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[124],"locationId":196},{"id":124,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[125],"locationId":196},{"id":125,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[126],"locationId":196},{"id":126,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[127],"locationId":196},{"id":127,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[128],"locationId":196},{"id":128,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[129],"locationId":196},{"id":129,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[130],"locationId":196},{"id":130,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[131],"locationId":196},{"id":131,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[132],"locationId":196},{"id":132,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[133],"locationId":196},{"id":133,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[134],"locationId":196},{"id":134,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[135],"locationId":196},{"id":135,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[136],"locationId":196},{"id":136,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[137],"locationId":196},{"id":137,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[138],"locationId":196},{"id":138,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[139],"locationId":196},{"id":139,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[140],"locationId":196},{"id":140,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[141],"locationId":196},{"id":141,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[142],"locationId":196},{"id":142,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[143],"locationId":196},{"id":143,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[144],"locationId":196},{"id":144,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[145],"locationId":196},{"id":145,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[146],"locationId":196},{"id":146,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[147],"locationId":196},{"id":147,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[148],"locationId":196},{"id":148,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[149],"locationId":196},{"id":149,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[150],"locationId":196},{"id":150,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[151],"locationId":196},{"id":151,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[152],"locationId":196},{"id":152,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[153],"locationId":196},{"id":153,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[154],"locationId":196},{"id":154,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[155],"locationId":196},{"id":155,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[156],"locationId":196},{"id":156,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[157],"locationId":196},{"id":157,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[158],"locationId":196},{"id":158,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[159],"locationId":196},{"id":159,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[160],"locationId":196},{"id":160,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[161],"locationId":196},{"id":161,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[162],"locationId":196},{"id":162,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[163],"locationId":196},{"id":163,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[164],"locationId":196},{"id":164,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[165],"locationId":196},{"id":165,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[166],"locationId":196},{"id":166,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[167],"locationId":196},{"id":167,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[168],"locationId":196},{"id":168,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[169],"locationId":196},{"id":169,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[170],"locationId":196},{"id":170,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[171],"locationId":196},{"id":171,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[172],"locationId":196},{"id":172,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[173],"locationId":196},{"id":173,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[174],"locationId":196},{"id":174,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[175],"locationId":196},{"id":175,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[176],"locationId":196},{"id":176,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[177],"locationId":196},{"id":177,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[178],"locationId":196},{"id":178,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[179],"locationId":196},{"id":179,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[180],"locationId":196},{"id":180,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[181],"locationId":196},{"id":181,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[182],"locationId":196},{"id":182,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[183],"locationId":196},{"id":183,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[184],"locationId":196},{"id":184,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[185],"locationId":196},{"id":185,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[186],"locationId":196},{"id":186,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[187],"locationId":196},{"id":187,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[188],"locationId":196},{"id":188,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[189],"locationId":196},{"id":189,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[190],"locationId":196},{"id":190,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[191],"locationId":196},{"id":191,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[192],"locationId":196},{"id":192,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[193],"locationId":196},{"id":193,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[194],"locationId":196},{"id":194,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[195],"locationId":196},{"id":195,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[196],"locationId":196},{"id":196,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[197],"locationId":196},{"id":197,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[198],"locationId":196},{"id":198,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[199],"locationId":196},{"id":199,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[200],"locationId":196},{"id":200,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[201],"locationId":196},{"id":201,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[202],"locationId":196},{"id":202,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[203],"locationId":196},{"id":203,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[204],"locationId":196},{"id":204,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[205],"locationId":196},{"id":205,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[206],"locationId":196},{"id":206,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[207],"locationId":196},{"id":207,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[208],"locationId":196},{"id":208,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[209],"locationId":196},{"id":209,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[210],"locationId":196},{"id":210,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[211],"locationId":196},{"id":211,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[212],"locationId":196},{"id":212,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[213],"locationId":196},{"id":213,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[214],"locationId":196},{"id":214,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[215],"locationId":196},{"id":215,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[216],"locationId":196},{"id":216,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[217],"locationId":196},{"id":217,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[218],"locationId":196},{"id":218,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[219],"locationId":196},{"id":219,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[220],"locationId":196},{"id":220,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[221],"locationId":196},{"id":221,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[222],"locationId":196},{"id":222,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[223],"locationId":196},{"id":223,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[224],"locationId":196},{"id":224,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[225],"locationId":196},{"id":225,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[226],"locationId":196},{"id":226,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[227],"locationId":196},{"id":227,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[228],"locationId":196},{"id":228,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[229],"locationId":196},{"id":229,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[230],"locationId":196},{"id":230,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[231],"locationId":196},{"id":231,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[232],"locationId":196},{"id":232,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[233],"locationId":196},{"id":233,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[234],"locationId":196},{"id":234,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[235],"locationId":196},{"id":235,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[236],"locationId":196},{"id":236,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[237],"locationId":196},{"id":237,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[238],"locationId":196},{"id":238,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[239],"locationId":196},{"id":239,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[240],"locationId":196},{"id":240,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[241],"locationId":196},{"id":241,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[242],"locationId":196},{"id":242,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[243],"locationId":196},{"id":243,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[244],"locationId":196},{"id":244,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[245],"locationId":196},{"id":245,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[246],"locationId":196},{"id":246,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[247],"locationId":196},{"id":247,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[248],"locationId":196},{"id":248,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[249],"locationId":196},{"id":249,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[250],"locationId":196},{"id":250,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[251],"locationId":196},{"id":251,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[252],"locationId":196},{"id":252,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[253],"locationId":196},{"id":253,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[254],"locationId":196},{"id":254,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[255],"locationId":196},{"id":255,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[256],"locationId":196},{"id":256,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[257],"locationId":196},{"id":257,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[258],"locationId":196},{"id":258,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[259],"locationId":196},{"id":259,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[260],"locationId":196},{"id":260,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[261],"locationId":196},{"id":261,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[262],"locationId":196},{"id":262,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[263],"locationId":196},{"id":263,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[264],"locationId":196},{"id":264,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[265],"locationId":196},{"id":265,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[266],"locationId":196},{"id":266,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[267],"locationId":196},{"id":267,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[268],"locationId":196},{"id":268,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[269],"locationId":196},{"id":269,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":488,"children":[709],"positionTicks":[{"line":44,"ticks":488,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":709,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":72,"children":[710],"positionTicks":[{"line":44,"ticks":72,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":710,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":31,"positionTicks":[{"line":41,"ticks":1,"startLocationId":227,"endLocationId":269},{"line":42,"ticks":2,"startLocationId":269,"endLocationId":199},{"line":43,"ticks":14,"startLocationId":199,"endLocationId":197},{"line":45,"ticks":2,"startLocationId":198,"endLocationId":270},{"line":40,"ticks":2,"startLocationId":226,"endLocationId":227},{"line":44,"ticks":10,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":641,"callFrame":{"functionName":"(garbage collector)","scriptId":"0","url":"","lineNumber":-1,"columnNumber":-1},"hitCount":1027,"locationId":271},{"id":949,"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":47,"columnNumber":39},"hitCount":0,"children":[950],"locationId":36},{"id":950,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":0,"children":[951],"locationId":62},{"id":951,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[952],"locationId":196},{"id":952,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[953],"locationId":196},{"id":953,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[954],"locationId":196},{"id":954,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[955],"locationId":196},{"id":955,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[956],"locationId":196},{"id":956,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[957],"locationId":196},{"id":957,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[958],"locationId":196},{"id":958,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[959],"locationId":196},{"id":959,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[960],"locationId":196},{"id":960,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[961],"locationId":196},{"id":961,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[962],"locationId":196},{"id":962,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[963],"locationId":196},{"id":963,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[964],"locationId":196},{"id":964,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[965],"locationId":196},{"id":965,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[966],"locationId":196},{"id":966,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[967],"locationId":196},{"id":967,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[968],"locationId":196},{"id":968,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[969],"locationId":196},{"id":969,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[970],"locationId":196},{"id":970,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[971],"locationId":196},{"id":971,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[972],"locationId":196},{"id":972,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[973],"locationId":196},{"id":973,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[974],"locationId":196},{"id":974,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[975],"locationId":196},{"id":975,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[976],"locationId":196},{"id":976,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[977],"locationId":196},{"id":977,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[978],"locationId":196},{"id":978,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[979],"locationId":196},{"id":979,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[980],"locationId":196},{"id":980,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[981],"locationId":196},{"id":981,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[982],"locationId":196},{"id":982,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[983],"locationId":196},{"id":983,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[984],"locationId":196},{"id":984,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[985],"locationId":196},{"id":985,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[986],"locationId":196},{"id":986,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[987],"locationId":196},{"id":987,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[988],"locationId":196},{"id":988,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[989],"locationId":196},{"id":989,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[990],"locationId":196},{"id":990,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[991],"locationId":196},{"id":991,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[992],"locationId":196},{"id":992,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[993],"locationId":196},{"id":993,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[994],"locationId":196},{"id":994,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[995],"locationId":196},{"id":995,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[996],"locationId":196},{"id":996,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[997],"locationId":196},{"id":997,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[998],"locationId":196},{"id":998,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[999],"locationId":196},{"id":999,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1000],"locationId":196},{"id":1000,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1001],"locationId":196},{"id":1001,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1002],"locationId":196},{"id":1002,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1003],"locationId":196},{"id":1003,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1004],"locationId":196},{"id":1004,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1005],"locationId":196},{"id":1005,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1006],"locationId":196},{"id":1006,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1007],"locationId":196},{"id":1007,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1008],"locationId":196},{"id":1008,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1009],"locationId":196},{"id":1009,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1010],"locationId":196},{"id":1010,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1011],"locationId":196},{"id":1011,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1012],"locationId":196},{"id":1012,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1013],"locationId":196},{"id":1013,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1014],"locationId":196},{"id":1014,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1015],"locationId":196},{"id":1015,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1016],"locationId":196},{"id":1016,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1017],"locationId":196},{"id":1017,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1018],"locationId":196},{"id":1018,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1019],"locationId":196},{"id":1019,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1020],"locationId":196},{"id":1020,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1021],"locationId":196},{"id":1021,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1022],"locationId":196},{"id":1022,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1023],"locationId":196},{"id":1023,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1024],"locationId":196},{"id":1024,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1025],"locationId":196},{"id":1025,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1026],"locationId":196},{"id":1026,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1027],"locationId":196},{"id":1027,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1028],"locationId":196},{"id":1028,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1029],"locationId":196},{"id":1029,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1030],"locationId":196},{"id":1030,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1031],"locationId":196},{"id":1031,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1032],"locationId":196},{"id":1032,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1033],"locationId":196},{"id":1033,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1034],"locationId":196},{"id":1034,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1035],"locationId":196},{"id":1035,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1036],"locationId":196},{"id":1036,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1037],"locationId":196},{"id":1037,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1038],"locationId":196},{"id":1038,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1039],"locationId":196},{"id":1039,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1040],"locationId":196},{"id":1040,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1041],"locationId":196},{"id":1041,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1042],"locationId":196},{"id":1042,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1043],"locationId":196},{"id":1043,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1044],"locationId":196},{"id":1044,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1045],"locationId":196},{"id":1045,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1046],"locationId":196},{"id":1046,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1047],"locationId":196},{"id":1047,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1048],"locationId":196},{"id":1048,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1049],"locationId":196},{"id":1049,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1050],"locationId":196},{"id":1050,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1051],"locationId":196},{"id":1051,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1052],"locationId":196},{"id":1052,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1053],"locationId":196},{"id":1053,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1054],"locationId":196},{"id":1054,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1055],"locationId":196},{"id":1055,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1056],"locationId":196},{"id":1056,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1057],"locationId":196},{"id":1057,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1058],"locationId":196},{"id":1058,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1059],"locationId":196},{"id":1059,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1060],"locationId":196},{"id":1060,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1061],"locationId":196},{"id":1061,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1062],"locationId":196},{"id":1062,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1063],"locationId":196},{"id":1063,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1064],"locationId":196},{"id":1064,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1065],"locationId":196},{"id":1065,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1066],"locationId":196},{"id":1066,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1067],"locationId":196},{"id":1067,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1068],"locationId":196},{"id":1068,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1069],"locationId":196},{"id":1069,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1070],"locationId":196},{"id":1070,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1071],"locationId":196},{"id":1071,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1072],"locationId":196},{"id":1072,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1073],"locationId":196},{"id":1073,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1074],"locationId":196},{"id":1074,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1075],"locationId":196},{"id":1075,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1076],"locationId":196},{"id":1076,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1077],"locationId":196},{"id":1077,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1078],"locationId":196},{"id":1078,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1079],"locationId":196},{"id":1079,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1080],"locationId":196},{"id":1080,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1081],"locationId":196},{"id":1081,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1082],"locationId":196},{"id":1082,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1083],"locationId":196},{"id":1083,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1084],"locationId":196},{"id":1084,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1085],"locationId":196},{"id":1085,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1086],"locationId":196},{"id":1086,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1087],"locationId":196},{"id":1087,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1088],"locationId":196},{"id":1088,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1089],"locationId":196},{"id":1089,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1090],"locationId":196},{"id":1090,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1091],"locationId":196},{"id":1091,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1092],"locationId":196},{"id":1092,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1093],"locationId":196},{"id":1093,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1094],"locationId":196},{"id":1094,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1095],"locationId":196},{"id":1095,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1096],"locationId":196},{"id":1096,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1097],"locationId":196},{"id":1097,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1098],"locationId":196},{"id":1098,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1099],"locationId":196},{"id":1099,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1100],"locationId":196},{"id":1100,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1101],"locationId":196},{"id":1101,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1102],"locationId":196},{"id":1102,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1103],"locationId":196},{"id":1103,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1104],"locationId":196},{"id":1104,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1105],"locationId":196},{"id":1105,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1106],"locationId":196},{"id":1106,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1107],"locationId":196},{"id":1107,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1108],"locationId":196},{"id":1108,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1109],"locationId":196},{"id":1109,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1110],"locationId":196},{"id":1110,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1111],"locationId":196},{"id":1111,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1112],"locationId":196},{"id":1112,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1113],"locationId":196},{"id":1113,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1114],"locationId":196},{"id":1114,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1115],"locationId":196},{"id":1115,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1116],"locationId":196},{"id":1116,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1117],"locationId":196},{"id":1117,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1118],"locationId":196},{"id":1118,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1119],"locationId":196},{"id":1119,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1120],"locationId":196},{"id":1120,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1121],"locationId":196},{"id":1121,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1122],"locationId":196},{"id":1122,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1123],"locationId":196},{"id":1123,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1124],"locationId":196},{"id":1124,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1125],"locationId":196},{"id":1125,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1126],"locationId":196},{"id":1126,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1127],"locationId":196},{"id":1127,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1128],"locationId":196},{"id":1128,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1129],"locationId":196},{"id":1129,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1130],"locationId":196},{"id":1130,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1131],"locationId":196},{"id":1131,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1132],"locationId":196},{"id":1132,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1133],"locationId":196},{"id":1133,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1134],"locationId":196},{"id":1134,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1135],"locationId":196},{"id":1135,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1136],"locationId":196},{"id":1136,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1137],"locationId":196},{"id":1137,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1138],"locationId":196},{"id":1138,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1139],"locationId":196},{"id":1139,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1140],"locationId":196},{"id":1140,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1141],"locationId":196},{"id":1141,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1142],"locationId":196},{"id":1142,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1143],"locationId":196},{"id":1143,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1144],"locationId":196},{"id":1144,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1145],"locationId":196},{"id":1145,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1146],"locationId":196},{"id":1146,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1147],"locationId":196},{"id":1147,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1148],"locationId":196},{"id":1148,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1149],"locationId":196},{"id":1149,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1150],"locationId":196},{"id":1150,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1151],"locationId":196},{"id":1151,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1152],"locationId":196},{"id":1152,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1153],"locationId":196},{"id":1153,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1154],"locationId":196},{"id":1154,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1155],"locationId":196},{"id":1155,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1156],"locationId":196},{"id":1156,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1157],"locationId":196},{"id":1157,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1158],"locationId":196},{"id":1158,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1159],"locationId":196},{"id":1159,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1160],"locationId":196},{"id":1160,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1161],"locationId":196},{"id":1161,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1162],"locationId":196},{"id":1162,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1163],"locationId":196},{"id":1163,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1164],"locationId":196},{"id":1164,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1165],"locationId":196},{"id":1165,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1166],"locationId":196},{"id":1166,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1167],"locationId":196},{"id":1167,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1168],"locationId":196},{"id":1168,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1169],"locationId":196},{"id":1169,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1170],"locationId":196},{"id":1170,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1171],"locationId":196},{"id":1171,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1172],"locationId":196},{"id":1172,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1173],"locationId":196},{"id":1173,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1174],"locationId":196},{"id":1174,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1175],"locationId":196},{"id":1175,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1176],"locationId":196},{"id":1176,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1177],"locationId":196},{"id":1177,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1178],"locationId":196},{"id":1178,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1179],"locationId":196},{"id":1179,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1180],"locationId":196},{"id":1180,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1181],"locationId":196},{"id":1181,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1182],"locationId":196},{"id":1182,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1183],"locationId":196},{"id":1183,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1184],"locationId":196},{"id":1184,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1185],"locationId":196},{"id":1185,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1186],"locationId":196},{"id":1186,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1187],"locationId":196},{"id":1187,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1188],"locationId":196},{"id":1188,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1189],"locationId":196},{"id":1189,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1190],"locationId":196},{"id":1190,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1191],"locationId":196},{"id":1191,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1192],"locationId":196},{"id":1192,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1193],"locationId":196},{"id":1193,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1194],"locationId":196},{"id":1194,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1195],"locationId":196},{"id":1195,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1196],"locationId":196},{"id":1196,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1197],"locationId":196},{"id":1197,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1198],"locationId":196},{"id":1198,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1199],"locationId":196},{"id":1199,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1200],"locationId":196},{"id":1200,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1201],"locationId":196},{"id":1201,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1202],"locationId":196},{"id":1202,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1203],"locationId":196},{"id":1203,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":4,"positionTicks":[{"line":44,"ticks":4,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1216,"callFrame":{"functionName":"Parsed.getDDL","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":336,"columnNumber":31},"hitCount":0,"children":[1217],"locationId":5},{"id":1217,"callFrame":{"functionName":"toDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":832,"columnNumber":29},"hitCount":0,"children":[1218],"locationId":6},{"id":1218,"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":607,"columnNumber":33},"hitCount":0,"children":[1219,3373],"locationId":9},{"id":1219,"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":47,"columnNumber":39},"hitCount":0,"children":[1220],"locationId":36},{"id":1220,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":0,"children":[1221],"locationId":62},{"id":1221,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1222],"locationId":196},{"id":1222,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1223],"locationId":196},{"id":1223,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1224],"locationId":196},{"id":1224,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1225],"locationId":196},{"id":1225,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1226],"locationId":196},{"id":1226,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1227],"locationId":196},{"id":1227,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1228],"locationId":196},{"id":1228,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1229],"locationId":196},{"id":1229,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1230],"locationId":196},{"id":1230,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1231],"locationId":196},{"id":1231,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1232],"locationId":196},{"id":1232,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1233],"locationId":196},{"id":1233,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1234],"locationId":196},{"id":1234,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1235],"locationId":196},{"id":1235,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1236],"locationId":196},{"id":1236,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1237],"locationId":196},{"id":1237,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1238],"locationId":196},{"id":1238,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1239],"locationId":196},{"id":1239,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1240],"locationId":196},{"id":1240,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1241],"locationId":196},{"id":1241,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1242],"locationId":196},{"id":1242,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1243],"locationId":196},{"id":1243,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1244],"locationId":196},{"id":1244,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1245],"locationId":196},{"id":1245,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1246],"locationId":196},{"id":1246,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1247],"locationId":196},{"id":1247,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1248],"locationId":196},{"id":1248,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1249],"locationId":196},{"id":1249,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1250],"locationId":196},{"id":1250,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1251],"locationId":196},{"id":1251,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1252],"locationId":196},{"id":1252,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1253],"locationId":196},{"id":1253,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1254],"locationId":196},{"id":1254,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1255],"locationId":196},{"id":1255,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1256],"locationId":196},{"id":1256,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1257],"locationId":196},{"id":1257,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1258],"locationId":196},{"id":1258,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1259],"locationId":196},{"id":1259,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1260],"locationId":196},{"id":1260,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1261],"locationId":196},{"id":1261,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1262],"locationId":196},{"id":1262,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1263],"locationId":196},{"id":1263,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1264],"locationId":196},{"id":1264,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1265],"locationId":196},{"id":1265,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1266],"locationId":196},{"id":1266,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1267],"locationId":196},{"id":1267,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1268],"locationId":196},{"id":1268,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1269],"locationId":196},{"id":1269,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1270],"locationId":196},{"id":1270,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1271],"locationId":196},{"id":1271,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1272],"locationId":196},{"id":1272,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1273],"locationId":196},{"id":1273,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1274],"locationId":196},{"id":1274,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1275],"locationId":196},{"id":1275,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1276],"locationId":196},{"id":1276,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1277],"locationId":196},{"id":1277,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1278],"locationId":196},{"id":1278,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1279],"locationId":196},{"id":1279,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1280],"locationId":196},{"id":1280,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1281],"locationId":196},{"id":1281,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1282],"locationId":196},{"id":1282,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1283],"locationId":196},{"id":1283,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1284],"locationId":196},{"id":1284,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1285],"locationId":196},{"id":1285,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1286],"locationId":196},{"id":1286,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1287],"locationId":196},{"id":1287,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1288],"locationId":196},{"id":1288,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1289],"locationId":196},{"id":1289,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1290],"locationId":196},{"id":1290,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1291],"locationId":196},{"id":1291,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1292],"locationId":196},{"id":1292,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1293],"locationId":196},{"id":1293,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1294],"locationId":196},{"id":1294,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1295],"locationId":196},{"id":1295,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1296],"locationId":196},{"id":1296,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1297],"locationId":196},{"id":1297,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1298],"locationId":196},{"id":1298,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1299],"locationId":196},{"id":1299,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1300],"locationId":196},{"id":1300,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1301],"locationId":196},{"id":1301,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1302],"locationId":196},{"id":1302,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1303],"locationId":196},{"id":1303,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1304],"locationId":196},{"id":1304,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1305],"locationId":196},{"id":1305,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1306],"locationId":196},{"id":1306,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1307],"locationId":196},{"id":1307,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1308],"locationId":196},{"id":1308,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1309],"locationId":196},{"id":1309,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1310],"locationId":196},{"id":1310,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1311],"locationId":196},{"id":1311,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1312],"locationId":196},{"id":1312,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1313],"locationId":196},{"id":1313,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1314],"locationId":196},{"id":1314,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1315],"locationId":196},{"id":1315,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1316],"locationId":196},{"id":1316,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1317],"locationId":196},{"id":1317,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1318],"locationId":196},{"id":1318,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1319],"locationId":196},{"id":1319,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1320],"locationId":196},{"id":1320,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1321],"locationId":196},{"id":1321,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1322],"locationId":196},{"id":1322,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1323],"locationId":196},{"id":1323,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1324],"locationId":196},{"id":1324,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1325],"locationId":196},{"id":1325,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1326],"locationId":196},{"id":1326,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1327],"locationId":196},{"id":1327,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1328],"locationId":196},{"id":1328,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1329],"locationId":196},{"id":1329,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1330],"locationId":196},{"id":1330,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1331],"locationId":196},{"id":1331,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1332],"locationId":196},{"id":1332,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1333],"locationId":196},{"id":1333,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1334],"locationId":196},{"id":1334,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1335],"locationId":196},{"id":1335,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1336],"locationId":196},{"id":1336,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1337],"locationId":196},{"id":1337,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1338],"locationId":196},{"id":1338,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1339],"locationId":196},{"id":1339,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1340],"locationId":196},{"id":1340,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1341],"locationId":196},{"id":1341,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1342],"locationId":196},{"id":1342,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1343],"locationId":196},{"id":1343,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1344],"locationId":196},{"id":1344,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1345],"locationId":196},{"id":1345,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1346],"locationId":196},{"id":1346,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1347],"locationId":196},{"id":1347,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1348],"locationId":196},{"id":1348,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1349],"locationId":196},{"id":1349,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1350],"locationId":196},{"id":1350,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1351],"locationId":196},{"id":1351,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1352],"locationId":196},{"id":1352,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1353],"locationId":196},{"id":1353,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1354],"locationId":196},{"id":1354,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1355],"locationId":196},{"id":1355,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1356],"locationId":196},{"id":1356,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1357],"locationId":196},{"id":1357,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1358],"locationId":196},{"id":1358,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1359],"locationId":196},{"id":1359,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1360],"locationId":196},{"id":1360,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1361],"locationId":196},{"id":1361,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1362],"locationId":196},{"id":1362,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1363],"locationId":196},{"id":1363,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1364],"locationId":196},{"id":1364,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1365],"locationId":196},{"id":1365,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1366],"locationId":196},{"id":1366,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1367],"locationId":196},{"id":1367,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1368],"locationId":196},{"id":1368,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1369],"locationId":196},{"id":1369,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1370],"locationId":196},{"id":1370,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1371],"locationId":196},{"id":1371,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1372],"locationId":196},{"id":1372,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1373],"locationId":196},{"id":1373,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1374],"locationId":196},{"id":1374,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1375],"locationId":196},{"id":1375,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1376],"locationId":196},{"id":1376,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1377],"locationId":196},{"id":1377,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1378],"locationId":196},{"id":1378,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1379],"locationId":196},{"id":1379,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1380],"locationId":196},{"id":1380,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1381],"locationId":196},{"id":1381,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1382],"locationId":196},{"id":1382,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1383],"locationId":196},{"id":1383,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1384],"locationId":196},{"id":1384,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1385],"locationId":196},{"id":1385,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1386],"locationId":196},{"id":1386,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1387],"locationId":196},{"id":1387,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1388],"locationId":196},{"id":1388,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1389],"locationId":196},{"id":1389,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1390],"locationId":196},{"id":1390,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1391],"locationId":196},{"id":1391,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1392],"locationId":196},{"id":1392,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1393],"locationId":196},{"id":1393,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1394],"locationId":196},{"id":1394,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1395],"locationId":196},{"id":1395,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1396],"locationId":196},{"id":1396,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1397],"locationId":196},{"id":1397,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1398],"locationId":196},{"id":1398,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1399],"locationId":196},{"id":1399,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1400],"locationId":196},{"id":1400,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1401],"locationId":196},{"id":1401,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1402],"locationId":196},{"id":1402,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1403],"locationId":196},{"id":1403,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1404],"locationId":196},{"id":1404,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1405],"locationId":196},{"id":1405,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1406],"locationId":196},{"id":1406,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1407],"locationId":196},{"id":1407,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1408],"locationId":196},{"id":1408,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1409],"locationId":196},{"id":1409,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1410],"locationId":196},{"id":1410,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1411],"locationId":196},{"id":1411,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1412],"locationId":196},{"id":1412,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1413],"locationId":196},{"id":1413,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1414],"locationId":196},{"id":1414,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1415],"locationId":196},{"id":1415,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1416],"locationId":196},{"id":1416,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1417],"locationId":196},{"id":1417,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1418],"locationId":196},{"id":1418,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1419],"locationId":196},{"id":1419,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1420],"locationId":196},{"id":1420,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1421],"locationId":196},{"id":1421,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1422],"locationId":196},{"id":1422,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1423],"locationId":196},{"id":1423,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1424],"locationId":196},{"id":1424,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1425],"locationId":196},{"id":1425,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1426],"locationId":196},{"id":1426,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1427],"locationId":196},{"id":1427,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1428],"locationId":196},{"id":1428,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1429],"locationId":196},{"id":1429,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1430],"locationId":196},{"id":1430,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1431],"locationId":196},{"id":1431,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1432],"locationId":196},{"id":1432,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1433],"locationId":196},{"id":1433,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1434],"locationId":196},{"id":1434,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1435],"locationId":196},{"id":1435,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1436],"locationId":196},{"id":1436,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1437],"locationId":196},{"id":1437,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1438],"locationId":196},{"id":1438,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1439],"locationId":196},{"id":1439,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1440],"locationId":196},{"id":1440,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1441],"locationId":196},{"id":1441,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1442],"locationId":196},{"id":1442,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1443],"locationId":196},{"id":1443,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1444],"locationId":196},{"id":1444,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1445],"locationId":196},{"id":1445,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1446],"locationId":196},{"id":1446,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1447],"locationId":196},{"id":1447,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1448],"locationId":196},{"id":1448,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1449],"locationId":196},{"id":1449,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1450],"locationId":196},{"id":1450,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1451],"locationId":196},{"id":1451,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1452],"locationId":196},{"id":1452,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1453],"locationId":196},{"id":1453,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1454],"locationId":196},{"id":1454,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1455],"locationId":196},{"id":1455,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1456],"locationId":196},{"id":1456,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1457],"locationId":196},{"id":1457,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1458],"locationId":196},{"id":1458,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1459],"locationId":196},{"id":1459,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1460],"locationId":196},{"id":1460,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1461],"locationId":196},{"id":1461,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1462],"locationId":196},{"id":1462,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1463],"locationId":196},{"id":1463,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1464],"locationId":196},{"id":1464,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1465],"locationId":196},{"id":1465,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1466],"locationId":196},{"id":1466,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1467],"locationId":196},{"id":1467,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1468],"locationId":196},{"id":1468,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1469],"locationId":196},{"id":1469,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1470],"locationId":196},{"id":1470,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":3,"positionTicks":[{"line":44,"ticks":3,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":3373,"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":607,"columnNumber":33},"hitCount":0,"children":[3374],"locationId":9},{"id":3374,"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":47,"columnNumber":39},"hitCount":0,"children":[3375],"locationId":36},{"id":3375,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":0,"children":[3376],"locationId":62},{"id":3376,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3377],"locationId":196},{"id":3377,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3378],"locationId":196},{"id":3378,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3379],"locationId":196},{"id":3379,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3380],"locationId":196},{"id":3380,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3381],"locationId":196},{"id":3381,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3382],"locationId":196},{"id":3382,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3383],"locationId":196},{"id":3383,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3384],"locationId":196},{"id":3384,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3385],"locationId":196},{"id":3385,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3386],"locationId":196},{"id":3386,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3387],"locationId":196},{"id":3387,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3388],"locationId":196},{"id":3388,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3389],"locationId":196},{"id":3389,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3390],"locationId":196},{"id":3390,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3391],"locationId":196},{"id":3391,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3392],"locationId":196},{"id":3392,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3393],"locationId":196},{"id":3393,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3394],"locationId":196},{"id":3394,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3395],"locationId":196},{"id":3395,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3396],"locationId":196},{"id":3396,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3397],"locationId":196},{"id":3397,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3398],"locationId":196},{"id":3398,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3399],"locationId":196},{"id":3399,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3400],"locationId":196},{"id":3400,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3401],"locationId":196},{"id":3401,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3402],"locationId":196},{"id":3402,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3403],"locationId":196},{"id":3403,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3404],"locationId":196},{"id":3404,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3405],"locationId":196},{"id":3405,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3406],"locationId":196},{"id":3406,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3407],"locationId":196},{"id":3407,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3408],"locationId":196},{"id":3408,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3409],"locationId":196},{"id":3409,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3410],"locationId":196},{"id":3410,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3411],"locationId":196},{"id":3411,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3412],"locationId":196},{"id":3412,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3413],"locationId":196},{"id":3413,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3414],"locationId":196},{"id":3414,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3415],"locationId":196},{"id":3415,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3416],"locationId":196},{"id":3416,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3417],"locationId":196},{"id":3417,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3418],"locationId":196},{"id":3418,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3419],"locationId":196},{"id":3419,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3420],"locationId":196},{"id":3420,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3421],"locationId":196},{"id":3421,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3422],"locationId":196},{"id":3422,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3423],"locationId":196},{"id":3423,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3424],"locationId":196},{"id":3424,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3425],"locationId":196},{"id":3425,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3426],"locationId":196},{"id":3426,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3427],"locationId":196},{"id":3427,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3428],"locationId":196},{"id":3428,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3429],"locationId":196},{"id":3429,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3430],"locationId":196},{"id":3430,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3431],"locationId":196},{"id":3431,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3432],"locationId":196},{"id":3432,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3433],"locationId":196},{"id":3433,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3434],"locationId":196},{"id":3434,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3435],"locationId":196},{"id":3435,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3436],"locationId":196},{"id":3436,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3437],"locationId":196},{"id":3437,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3438],"locationId":196},{"id":3438,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3439],"locationId":196},{"id":3439,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3440],"locationId":196},{"id":3440,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3441],"locationId":196},{"id":3441,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3442],"locationId":196},{"id":3442,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3443],"locationId":196},{"id":3443,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3444],"locationId":196},{"id":3444,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3445],"locationId":196},{"id":3445,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3446],"locationId":196},{"id":3446,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3447],"locationId":196},{"id":3447,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3448],"locationId":196},{"id":3448,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3449],"locationId":196},{"id":3449,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3450],"locationId":196},{"id":3450,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3451],"locationId":196},{"id":3451,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3452],"locationId":196},{"id":3452,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3453],"locationId":196},{"id":3453,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3454],"locationId":196},{"id":3454,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3455],"locationId":196},{"id":3455,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3456],"locationId":196},{"id":3456,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3457],"locationId":196},{"id":3457,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3458],"locationId":196},{"id":3458,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3459],"locationId":196},{"id":3459,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3460],"locationId":196},{"id":3460,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3461],"locationId":196},{"id":3461,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3462],"locationId":196},{"id":3462,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3463],"locationId":196},{"id":3463,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3464],"locationId":196},{"id":3464,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3465],"locationId":196},{"id":3465,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3466],"locationId":196},{"id":3466,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3467],"locationId":196},{"id":3467,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3468],"locationId":196},{"id":3468,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3469],"locationId":196},{"id":3469,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3470],"locationId":196},{"id":3470,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3471],"locationId":196},{"id":3471,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3472],"locationId":196},{"id":3472,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3473],"locationId":196},{"id":3473,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3474],"locationId":196},{"id":3474,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3475],"locationId":196},{"id":3475,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3476],"locationId":196},{"id":3476,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3477],"locationId":196},{"id":3477,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3478],"locationId":196},{"id":3478,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3479],"locationId":196},{"id":3479,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3480],"locationId":196},{"id":3480,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3481],"locationId":196},{"id":3481,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3482],"locationId":196},{"id":3482,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3483],"locationId":196},{"id":3483,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3484],"locationId":196},{"id":3484,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3485],"locationId":196},{"id":3485,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3486],"locationId":196},{"id":3486,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3487],"locationId":196},{"id":3487,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3488],"locationId":196},{"id":3488,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3489],"locationId":196},{"id":3489,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3490],"locationId":196},{"id":3490,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3491],"locationId":196},{"id":3491,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3492],"locationId":196},{"id":3492,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3493],"locationId":196},{"id":3493,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3494],"locationId":196},{"id":3494,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3495],"locationId":196},{"id":3495,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3496],"locationId":196},{"id":3496,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3497],"locationId":196},{"id":3497,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3498],"locationId":196},{"id":3498,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3499],"locationId":196},{"id":3499,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3500],"locationId":196},{"id":3500,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3501],"locationId":196},{"id":3501,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3502],"locationId":196},{"id":3502,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3503],"locationId":196},{"id":3503,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3504],"locationId":196},{"id":3504,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3505],"locationId":196},{"id":3505,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3506],"locationId":196},{"id":3506,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3507],"locationId":196},{"id":3507,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3508],"locationId":196},{"id":3508,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3509],"locationId":196},{"id":3509,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3510],"locationId":196},{"id":3510,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3511],"locationId":196},{"id":3511,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3512],"locationId":196},{"id":3512,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3513],"locationId":196},{"id":3513,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3514],"locationId":196},{"id":3514,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3515],"locationId":196},{"id":3515,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3516],"locationId":196},{"id":3516,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3517],"locationId":196},{"id":3517,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3518],"locationId":196},{"id":3518,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3519],"locationId":196},{"id":3519,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3520],"locationId":196},{"id":3520,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3521],"locationId":196},{"id":3521,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3522],"locationId":196},{"id":3522,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3523],"locationId":196},{"id":3523,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3524],"locationId":196},{"id":3524,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3525],"locationId":196},{"id":3525,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3526],"locationId":196},{"id":3526,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3527],"locationId":196},{"id":3527,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3528],"locationId":196},{"id":3528,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3529],"locationId":196},{"id":3529,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3530],"locationId":196},{"id":3530,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3531],"locationId":196},{"id":3531,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3532],"locationId":196},{"id":3532,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3533],"locationId":196},{"id":3533,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3534],"locationId":196},{"id":3534,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3535],"locationId":196},{"id":3535,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3536],"locationId":196},{"id":3536,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3537],"locationId":196},{"id":3537,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3538],"locationId":196},{"id":3538,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3539],"locationId":196},{"id":3539,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3540],"locationId":196},{"id":3540,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3541],"locationId":196},{"id":3541,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3542],"locationId":196},{"id":3542,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3543],"locationId":196},{"id":3543,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3544],"locationId":196},{"id":3544,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3545],"locationId":196},{"id":3545,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3546],"locationId":196},{"id":3546,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3547],"locationId":196},{"id":3547,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3548],"locationId":196},{"id":3548,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3549],"locationId":196},{"id":3549,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3550],"locationId":196},{"id":3550,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3551],"locationId":196},{"id":3551,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3552],"locationId":196},{"id":3552,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3553],"locationId":196},{"id":3553,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3554],"locationId":196},{"id":3554,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3555],"locationId":196},{"id":3555,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3556],"locationId":196},{"id":3556,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3557],"locationId":196},{"id":3557,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3558],"locationId":196},{"id":3558,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3559],"locationId":196},{"id":3559,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3560],"locationId":196},{"id":3560,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3561],"locationId":196},{"id":3561,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3562],"locationId":196},{"id":3562,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3563],"locationId":196},{"id":3563,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3564],"locationId":196},{"id":3564,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3565],"locationId":196},{"id":3565,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3566],"locationId":196},{"id":3566,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3567],"locationId":196},{"id":3567,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3568],"locationId":196},{"id":3568,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3569],"locationId":196},{"id":3569,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3570],"locationId":196},{"id":3570,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3571],"locationId":196},{"id":3571,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3572],"locationId":196},{"id":3572,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3573],"locationId":196},{"id":3573,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3574],"locationId":196},{"id":3574,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3575],"locationId":196},{"id":3575,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3576],"locationId":196},{"id":3576,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3577],"locationId":196},{"id":3577,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3578],"locationId":196},{"id":3578,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3579],"locationId":196},{"id":3579,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3580],"locationId":196},{"id":3580,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3581],"locationId":196},{"id":3581,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3582],"locationId":196},{"id":3582,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3583],"locationId":196},{"id":3583,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3584],"locationId":196},{"id":3584,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3585],"locationId":196},{"id":3585,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3586],"locationId":196},{"id":3586,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3587],"locationId":196},{"id":3587,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3588],"locationId":196},{"id":3588,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3589],"locationId":196},{"id":3589,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3590],"locationId":196},{"id":3590,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3591],"locationId":196},{"id":3591,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3592],"locationId":196},{"id":3592,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3593],"locationId":196},{"id":3593,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3594],"locationId":196},{"id":3594,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3595],"locationId":196},{"id":3595,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3596],"locationId":196},{"id":3596,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3597],"locationId":196},{"id":3597,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3598],"locationId":196},{"id":3598,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3599],"locationId":196},{"id":3599,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3600],"locationId":196},{"id":3600,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3601],"locationId":196},{"id":3601,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3602],"locationId":196},{"id":3602,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3603],"locationId":196},{"id":3603,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3604],"locationId":196},{"id":3604,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3605],"locationId":196},{"id":3605,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3606],"locationId":196},{"id":3606,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3607],"locationId":196},{"id":3607,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3608],"locationId":196},{"id":3608,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3609],"locationId":196},{"id":3609,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3610],"locationId":196},{"id":3610,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3611],"locationId":196},{"id":3611,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3612],"locationId":196},{"id":3612,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3613],"locationId":196},{"id":3613,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3614],"locationId":196},{"id":3614,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3615],"locationId":196},{"id":3615,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3616],"locationId":196},{"id":3616,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3617],"locationId":196},{"id":3617,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3618],"locationId":196},{"id":3618,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3619],"locationId":196},{"id":3619,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3620],"locationId":196},{"id":3620,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3621],"locationId":196},{"id":3621,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3622],"locationId":196},{"id":3622,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3623],"locationId":196},{"id":3623,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3624],"locationId":196},{"id":3624,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3625],"locationId":196},{"id":3625,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1489,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":0,"children":[1490],"locationId":62},{"id":1490,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1491],"locationId":196},{"id":1491,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1492],"locationId":196},{"id":1492,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1493],"locationId":196},{"id":1493,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1494],"locationId":196},{"id":1494,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1495],"locationId":196},{"id":1495,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1496],"locationId":196},{"id":1496,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1497],"locationId":196},{"id":1497,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1498],"locationId":196},{"id":1498,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1499],"locationId":196},{"id":1499,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1500],"locationId":196},{"id":1500,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1501],"locationId":196},{"id":1501,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1502],"locationId":196},{"id":1502,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1503],"locationId":196},{"id":1503,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1504],"locationId":196},{"id":1504,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1505],"locationId":196},{"id":1505,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1506],"locationId":196},{"id":1506,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1507],"locationId":196},{"id":1507,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1508],"locationId":196},{"id":1508,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1509],"locationId":196},{"id":1509,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1510],"locationId":196},{"id":1510,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1511],"locationId":196},{"id":1511,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1512],"locationId":196},{"id":1512,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1513],"locationId":196},{"id":1513,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1514],"locationId":196},{"id":1514,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1515],"locationId":196},{"id":1515,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1516],"locationId":196},{"id":1516,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1517],"locationId":196},{"id":1517,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1518],"locationId":196},{"id":1518,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1519],"locationId":196},{"id":1519,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1520],"locationId":196},{"id":1520,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1521],"locationId":196},{"id":1521,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1522],"locationId":196},{"id":1522,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1523],"locationId":196},{"id":1523,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1524],"locationId":196},{"id":1524,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1525],"locationId":196},{"id":1525,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1526],"locationId":196},{"id":1526,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1527],"locationId":196},{"id":1527,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1528],"locationId":196},{"id":1528,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1529],"locationId":196},{"id":1529,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1530],"locationId":196},{"id":1530,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1531],"locationId":196},{"id":1531,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1532],"locationId":196},{"id":1532,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1533],"locationId":196},{"id":1533,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1534],"locationId":196},{"id":1534,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1535],"locationId":196},{"id":1535,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1536],"locationId":196},{"id":1536,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1537],"locationId":196},{"id":1537,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1538],"locationId":196},{"id":1538,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1539],"locationId":196},{"id":1539,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1540],"locationId":196},{"id":1540,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1541],"locationId":196},{"id":1541,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1542],"locationId":196},{"id":1542,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1543],"locationId":196},{"id":1543,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1544],"locationId":196},{"id":1544,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1545],"locationId":196},{"id":1545,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1546],"locationId":196},{"id":1546,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1547],"locationId":196},{"id":1547,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1548],"locationId":196},{"id":1548,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1549],"locationId":196},{"id":1549,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1550],"locationId":196},{"id":1550,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1551],"locationId":196},{"id":1551,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1552],"locationId":196},{"id":1552,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1553],"locationId":196},{"id":1553,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1554],"locationId":196},{"id":1554,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1555],"locationId":196},{"id":1555,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1556],"locationId":196},{"id":1556,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1557],"locationId":196},{"id":1557,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1558],"locationId":196},{"id":1558,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1559],"locationId":196},{"id":1559,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1560],"locationId":196},{"id":1560,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1561],"locationId":196},{"id":1561,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1562],"locationId":196},{"id":1562,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1563],"locationId":196},{"id":1563,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1564],"locationId":196},{"id":1564,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1565],"locationId":196},{"id":1565,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1566],"locationId":196},{"id":1566,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1567],"locationId":196},{"id":1567,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1568],"locationId":196},{"id":1568,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1569],"locationId":196},{"id":1569,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1570],"locationId":196},{"id":1570,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1571],"locationId":196},{"id":1571,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1572],"locationId":196},{"id":1572,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1573],"locationId":196},{"id":1573,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1574],"locationId":196},{"id":1574,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1575],"locationId":196},{"id":1575,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1576],"locationId":196},{"id":1576,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1577],"locationId":196},{"id":1577,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1578],"locationId":196},{"id":1578,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1579],"locationId":196},{"id":1579,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1580],"locationId":196},{"id":1580,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1581],"locationId":196},{"id":1581,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1582],"locationId":196},{"id":1582,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1583],"locationId":196},{"id":1583,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1584],"locationId":196},{"id":1584,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1585],"locationId":196},{"id":1585,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1586],"locationId":196},{"id":1586,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1587],"locationId":196},{"id":1587,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1588],"locationId":196},{"id":1588,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1589],"locationId":196},{"id":1589,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1590],"locationId":196},{"id":1590,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1591],"locationId":196},{"id":1591,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1592],"locationId":196},{"id":1592,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1593],"locationId":196},{"id":1593,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1594],"locationId":196},{"id":1594,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1595],"locationId":196},{"id":1595,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1596],"locationId":196},{"id":1596,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1597],"locationId":196},{"id":1597,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1598],"locationId":196},{"id":1598,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1599],"locationId":196},{"id":1599,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1600],"locationId":196},{"id":1600,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1601],"locationId":196},{"id":1601,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1602],"locationId":196},{"id":1602,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1603],"locationId":196},{"id":1603,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1604],"locationId":196},{"id":1604,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1605],"locationId":196},{"id":1605,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1606],"locationId":196},{"id":1606,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1607],"locationId":196},{"id":1607,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1608],"locationId":196},{"id":1608,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1609],"locationId":196},{"id":1609,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1610],"locationId":196},{"id":1610,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1611],"locationId":196},{"id":1611,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1612],"locationId":196},{"id":1612,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1613],"locationId":196},{"id":1613,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1614],"locationId":196},{"id":1614,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1615],"locationId":196},{"id":1615,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1616],"locationId":196},{"id":1616,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1617],"locationId":196},{"id":1617,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1618],"locationId":196},{"id":1618,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1619],"locationId":196},{"id":1619,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1620],"locationId":196},{"id":1620,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1621],"locationId":196},{"id":1621,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1622],"locationId":196},{"id":1622,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1623],"locationId":196},{"id":1623,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1624],"locationId":196},{"id":1624,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1625],"locationId":196},{"id":1625,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1626],"locationId":196},{"id":1626,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1627],"locationId":196},{"id":1627,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1628],"locationId":196},{"id":1628,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1629],"locationId":196},{"id":1629,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1630],"locationId":196},{"id":1630,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1631],"locationId":196},{"id":1631,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1632],"locationId":196},{"id":1632,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1633],"locationId":196},{"id":1633,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1634],"locationId":196},{"id":1634,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1635],"locationId":196},{"id":1635,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1636],"locationId":196},{"id":1636,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1637],"locationId":196},{"id":1637,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1638],"locationId":196},{"id":1638,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1639],"locationId":196},{"id":1639,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1640],"locationId":196},{"id":1640,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1641],"locationId":196},{"id":1641,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1642],"locationId":196},{"id":1642,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1643],"locationId":196},{"id":1643,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1644],"locationId":196},{"id":1644,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1645],"locationId":196},{"id":1645,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1646],"locationId":196},{"id":1646,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1647],"locationId":196},{"id":1647,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1648],"locationId":196},{"id":1648,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1649],"locationId":196},{"id":1649,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1650],"locationId":196},{"id":1650,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1651],"locationId":196},{"id":1651,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1652],"locationId":196},{"id":1652,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1653],"locationId":196},{"id":1653,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1654],"locationId":196},{"id":1654,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1655],"locationId":196},{"id":1655,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1656],"locationId":196},{"id":1656,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1657],"locationId":196},{"id":1657,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1658],"locationId":196},{"id":1658,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1659],"locationId":196},{"id":1659,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1660],"locationId":196},{"id":1660,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1661],"locationId":196},{"id":1661,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1662],"locationId":196},{"id":1662,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1663],"locationId":196},{"id":1663,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1664],"locationId":196},{"id":1664,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1665],"locationId":196},{"id":1665,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1666],"locationId":196},{"id":1666,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1667],"locationId":196},{"id":1667,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1668],"locationId":196},{"id":1668,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1669],"locationId":196},{"id":1669,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1670],"locationId":196},{"id":1670,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1671],"locationId":196},{"id":1671,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1672],"locationId":196},{"id":1672,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1673],"locationId":196},{"id":1673,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1674],"locationId":196},{"id":1674,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1675],"locationId":196},{"id":1675,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1676],"locationId":196},{"id":1676,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1677],"locationId":196},{"id":1677,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1678],"locationId":196},{"id":1678,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1679],"locationId":196},{"id":1679,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1680],"locationId":196},{"id":1680,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1681],"locationId":196},{"id":1681,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1682],"locationId":196},{"id":1682,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1683],"locationId":196},{"id":1683,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1684],"locationId":196},{"id":1684,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1685],"locationId":196},{"id":1685,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1686],"locationId":196},{"id":1686,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1687],"locationId":196},{"id":1687,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1688],"locationId":196},{"id":1688,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1689],"locationId":196},{"id":1689,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1690],"locationId":196},{"id":1690,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1691],"locationId":196},{"id":1691,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1692],"locationId":196},{"id":1692,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1693],"locationId":196},{"id":1693,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1694],"locationId":196},{"id":1694,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1695],"locationId":196},{"id":1695,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1696],"locationId":196},{"id":1696,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1697],"locationId":196},{"id":1697,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1698],"locationId":196},{"id":1698,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1699],"locationId":196},{"id":1699,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1700],"locationId":196},{"id":1700,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1701],"locationId":196},{"id":1701,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1702],"locationId":196},{"id":1702,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1703],"locationId":196},{"id":1703,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1704],"locationId":196},{"id":1704,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1705],"locationId":196},{"id":1705,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1706],"locationId":196},{"id":1706,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1707],"locationId":196},{"id":1707,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1708],"locationId":196},{"id":1708,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1709],"locationId":196},{"id":1709,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1710],"locationId":196},{"id":1710,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1711],"locationId":196},{"id":1711,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1712],"locationId":196},{"id":1712,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1713],"locationId":196},{"id":1713,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1714],"locationId":196},{"id":1714,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1715],"locationId":196},{"id":1715,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1716],"locationId":196},{"id":1716,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1717],"locationId":196},{"id":1717,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1718],"locationId":196},{"id":1718,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1719],"locationId":196},{"id":1719,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1720],"locationId":196},{"id":1720,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1721],"locationId":196},{"id":1721,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1722],"locationId":196},{"id":1722,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1723],"locationId":196},{"id":1723,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1724],"locationId":196},{"id":1724,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1725],"locationId":196},{"id":1725,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1726],"locationId":196},{"id":1726,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1727],"locationId":196},{"id":1727,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1728],"locationId":196},{"id":1728,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1729],"locationId":196},{"id":1729,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1730],"locationId":196},{"id":1730,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1731],"locationId":196},{"id":1731,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1732],"locationId":196},{"id":1732,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1733],"locationId":196},{"id":1733,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1734],"locationId":196},{"id":1734,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1735],"locationId":196},{"id":1735,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1736],"locationId":196},{"id":1736,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1737],"locationId":196},{"id":1737,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1738],"locationId":196},{"id":1738,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1739],"locationId":196},{"id":1739,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1740],"locationId":196},{"id":1740,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1741],"locationId":196},{"id":1741,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1742],"locationId":196},{"id":1742,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1743],"locationId":196},{"id":1743,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":1801,"callFrame":{"functionName":"evaluate","scriptId":"0","url":"","lineNumber":-1,"columnNumber":-1},"hitCount":0,"children":[1802],"locationId":2},{"id":1802,"callFrame":{"functionName":"","scriptId":"498","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/test/profile.js","lineNumber":-1,"columnNumber":-1},"hitCount":0,"children":[1803],"locationId":3},{"id":1803,"callFrame":{"functionName":"toDDL","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":483,"columnNumber":21},"hitCount":0,"children":[1804],"locationId":4},{"id":1804,"callFrame":{"functionName":"Parsed.getDDL","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":336,"columnNumber":31},"hitCount":0,"children":[1805],"locationId":5},{"id":1805,"callFrame":{"functionName":"toDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":832,"columnNumber":29},"hitCount":0,"children":[1806],"locationId":6},{"id":1806,"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":607,"columnNumber":33},"hitCount":0,"children":[1807,3627],"locationId":9},{"id":1807,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":0,"children":[1808],"locationId":62},{"id":1808,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1809],"locationId":196},{"id":1809,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1810],"locationId":196},{"id":1810,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1811],"locationId":196},{"id":1811,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1812],"locationId":196},{"id":1812,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1813],"locationId":196},{"id":1813,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1814],"locationId":196},{"id":1814,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1815],"locationId":196},{"id":1815,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1816],"locationId":196},{"id":1816,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1817],"locationId":196},{"id":1817,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1818],"locationId":196},{"id":1818,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1819],"locationId":196},{"id":1819,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1820],"locationId":196},{"id":1820,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1821],"locationId":196},{"id":1821,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1822],"locationId":196},{"id":1822,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1823],"locationId":196},{"id":1823,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1824],"locationId":196},{"id":1824,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1825],"locationId":196},{"id":1825,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1826],"locationId":196},{"id":1826,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1827],"locationId":196},{"id":1827,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1828],"locationId":196},{"id":1828,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1829],"locationId":196},{"id":1829,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1830],"locationId":196},{"id":1830,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1831],"locationId":196},{"id":1831,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1832],"locationId":196},{"id":1832,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1833],"locationId":196},{"id":1833,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1834],"locationId":196},{"id":1834,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1835],"locationId":196},{"id":1835,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1836],"locationId":196},{"id":1836,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1837],"locationId":196},{"id":1837,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1838],"locationId":196},{"id":1838,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1839],"locationId":196},{"id":1839,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1840],"locationId":196},{"id":1840,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1841],"locationId":196},{"id":1841,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1842],"locationId":196},{"id":1842,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1843],"locationId":196},{"id":1843,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1844],"locationId":196},{"id":1844,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1845],"locationId":196},{"id":1845,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1846],"locationId":196},{"id":1846,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1847],"locationId":196},{"id":1847,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1848],"locationId":196},{"id":1848,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1849],"locationId":196},{"id":1849,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1850],"locationId":196},{"id":1850,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1851],"locationId":196},{"id":1851,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1852],"locationId":196},{"id":1852,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1853],"locationId":196},{"id":1853,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1854],"locationId":196},{"id":1854,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1855],"locationId":196},{"id":1855,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1856],"locationId":196},{"id":1856,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1857],"locationId":196},{"id":1857,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1858],"locationId":196},{"id":1858,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1859],"locationId":196},{"id":1859,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1860],"locationId":196},{"id":1860,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1861],"locationId":196},{"id":1861,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1862],"locationId":196},{"id":1862,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1863],"locationId":196},{"id":1863,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1864],"locationId":196},{"id":1864,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1865],"locationId":196},{"id":1865,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1866],"locationId":196},{"id":1866,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1867],"locationId":196},{"id":1867,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1868],"locationId":196},{"id":1868,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1869],"locationId":196},{"id":1869,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1870],"locationId":196},{"id":1870,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1871],"locationId":196},{"id":1871,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1872],"locationId":196},{"id":1872,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1873],"locationId":196},{"id":1873,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1874],"locationId":196},{"id":1874,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1875],"locationId":196},{"id":1875,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1876],"locationId":196},{"id":1876,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1877],"locationId":196},{"id":1877,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1878],"locationId":196},{"id":1878,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1879],"locationId":196},{"id":1879,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1880],"locationId":196},{"id":1880,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1881],"locationId":196},{"id":1881,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1882],"locationId":196},{"id":1882,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1883],"locationId":196},{"id":1883,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1884],"locationId":196},{"id":1884,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1885],"locationId":196},{"id":1885,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1886],"locationId":196},{"id":1886,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1887],"locationId":196},{"id":1887,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1888],"locationId":196},{"id":1888,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1889],"locationId":196},{"id":1889,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1890],"locationId":196},{"id":1890,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1891],"locationId":196},{"id":1891,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1892],"locationId":196},{"id":1892,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1893],"locationId":196},{"id":1893,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1894],"locationId":196},{"id":1894,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1895],"locationId":196},{"id":1895,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1896],"locationId":196},{"id":1896,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1897],"locationId":196},{"id":1897,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1898],"locationId":196},{"id":1898,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1899],"locationId":196},{"id":1899,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1900],"locationId":196},{"id":1900,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1901],"locationId":196},{"id":1901,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1902],"locationId":196},{"id":1902,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1903],"locationId":196},{"id":1903,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1904],"locationId":196},{"id":1904,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1905],"locationId":196},{"id":1905,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1906],"locationId":196},{"id":1906,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1907],"locationId":196},{"id":1907,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1908],"locationId":196},{"id":1908,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1909],"locationId":196},{"id":1909,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1910],"locationId":196},{"id":1910,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1911],"locationId":196},{"id":1911,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1912],"locationId":196},{"id":1912,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1913],"locationId":196},{"id":1913,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1914],"locationId":196},{"id":1914,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1915],"locationId":196},{"id":1915,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1916],"locationId":196},{"id":1916,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1917],"locationId":196},{"id":1917,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1918],"locationId":196},{"id":1918,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1919],"locationId":196},{"id":1919,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1920],"locationId":196},{"id":1920,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1921],"locationId":196},{"id":1921,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1922],"locationId":196},{"id":1922,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1923],"locationId":196},{"id":1923,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1924],"locationId":196},{"id":1924,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1925],"locationId":196},{"id":1925,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1926],"locationId":196},{"id":1926,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1927],"locationId":196},{"id":1927,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1928],"locationId":196},{"id":1928,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1929],"locationId":196},{"id":1929,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1930],"locationId":196},{"id":1930,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1931],"locationId":196},{"id":1931,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1932],"locationId":196},{"id":1932,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1933],"locationId":196},{"id":1933,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1934],"locationId":196},{"id":1934,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1935],"locationId":196},{"id":1935,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1936],"locationId":196},{"id":1936,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1937],"locationId":196},{"id":1937,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1938],"locationId":196},{"id":1938,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1939],"locationId":196},{"id":1939,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1940],"locationId":196},{"id":1940,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1941],"locationId":196},{"id":1941,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1942],"locationId":196},{"id":1942,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1943],"locationId":196},{"id":1943,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1944],"locationId":196},{"id":1944,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1945],"locationId":196},{"id":1945,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1946],"locationId":196},{"id":1946,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1947],"locationId":196},{"id":1947,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1948],"locationId":196},{"id":1948,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1949],"locationId":196},{"id":1949,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1950],"locationId":196},{"id":1950,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1951],"locationId":196},{"id":1951,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1952],"locationId":196},{"id":1952,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1953],"locationId":196},{"id":1953,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1954],"locationId":196},{"id":1954,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1955],"locationId":196},{"id":1955,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1956],"locationId":196},{"id":1956,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1957],"locationId":196},{"id":1957,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1958],"locationId":196},{"id":1958,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1959],"locationId":196},{"id":1959,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1960],"locationId":196},{"id":1960,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1961],"locationId":196},{"id":1961,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1962],"locationId":196},{"id":1962,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1963],"locationId":196},{"id":1963,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1964],"locationId":196},{"id":1964,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1965],"locationId":196},{"id":1965,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1966],"locationId":196},{"id":1966,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1967],"locationId":196},{"id":1967,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1968],"locationId":196},{"id":1968,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1969],"locationId":196},{"id":1969,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1970],"locationId":196},{"id":1970,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1971],"locationId":196},{"id":1971,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1972],"locationId":196},{"id":1972,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1973],"locationId":196},{"id":1973,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1974],"locationId":196},{"id":1974,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1975],"locationId":196},{"id":1975,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1976],"locationId":196},{"id":1976,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1977],"locationId":196},{"id":1977,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1978],"locationId":196},{"id":1978,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1979],"locationId":196},{"id":1979,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1980],"locationId":196},{"id":1980,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1981],"locationId":196},{"id":1981,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1982],"locationId":196},{"id":1982,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1983],"locationId":196},{"id":1983,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1984],"locationId":196},{"id":1984,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1985],"locationId":196},{"id":1985,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1986],"locationId":196},{"id":1986,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1987],"locationId":196},{"id":1987,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1988],"locationId":196},{"id":1988,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1989],"locationId":196},{"id":1989,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1990],"locationId":196},{"id":1990,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1991],"locationId":196},{"id":1991,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1992],"locationId":196},{"id":1992,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1993],"locationId":196},{"id":1993,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1994],"locationId":196},{"id":1994,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1995],"locationId":196},{"id":1995,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1996],"locationId":196},{"id":1996,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1997],"locationId":196},{"id":1997,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1998],"locationId":196},{"id":1998,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[1999],"locationId":196},{"id":1999,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2000],"locationId":196},{"id":2000,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2001],"locationId":196},{"id":2001,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2002],"locationId":196},{"id":2002,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2003],"locationId":196},{"id":2003,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2004],"locationId":196},{"id":2004,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2005],"locationId":196},{"id":2005,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2006],"locationId":196},{"id":2006,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2007],"locationId":196},{"id":2007,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2008],"locationId":196},{"id":2008,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2009],"locationId":196},{"id":2009,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2010],"locationId":196},{"id":2010,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2011],"locationId":196},{"id":2011,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2012],"locationId":196},{"id":2012,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2013],"locationId":196},{"id":2013,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2014],"locationId":196},{"id":2014,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2015],"locationId":196},{"id":2015,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2016],"locationId":196},{"id":2016,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2017],"locationId":196},{"id":2017,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2018],"locationId":196},{"id":2018,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2019],"locationId":196},{"id":2019,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2020],"locationId":196},{"id":2020,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2021],"locationId":196},{"id":2021,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2022],"locationId":196},{"id":2022,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2023],"locationId":196},{"id":2023,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2024],"locationId":196},{"id":2024,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2025],"locationId":196},{"id":2025,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2026],"locationId":196},{"id":2026,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2027],"locationId":196},{"id":2027,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2028],"locationId":196},{"id":2028,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2029],"locationId":196},{"id":2029,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2030],"locationId":196},{"id":2030,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2031],"locationId":196},{"id":2031,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2032],"locationId":196},{"id":2032,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2033],"locationId":196},{"id":2033,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2034],"locationId":196},{"id":2034,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2035],"locationId":196},{"id":2035,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2036],"locationId":196},{"id":2036,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2037],"locationId":196},{"id":2037,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2038],"locationId":196},{"id":2038,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2039],"locationId":196},{"id":2039,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2040],"locationId":196},{"id":2040,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2041],"locationId":196},{"id":2041,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2042],"locationId":196},{"id":2042,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2043],"locationId":196},{"id":2043,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2044],"locationId":196},{"id":2044,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2045],"locationId":196},{"id":2045,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2046],"locationId":196},{"id":2046,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2047],"locationId":196},{"id":2047,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2048],"locationId":196},{"id":2048,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2049],"locationId":196},{"id":2049,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2050],"locationId":196},{"id":2050,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2051],"locationId":196},{"id":2051,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2052],"locationId":196},{"id":2052,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2053],"locationId":196},{"id":2053,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2054],"locationId":196},{"id":2054,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[4387],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":4387,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":3627,"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":47,"columnNumber":39},"hitCount":0,"children":[3628],"locationId":36},{"id":3628,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":0,"children":[3629],"locationId":62},{"id":3629,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3630],"locationId":196},{"id":3630,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3631],"locationId":196},{"id":3631,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3632],"locationId":196},{"id":3632,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3633],"locationId":196},{"id":3633,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3634],"locationId":196},{"id":3634,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3635],"locationId":196},{"id":3635,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3636],"locationId":196},{"id":3636,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3637],"locationId":196},{"id":3637,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3638],"locationId":196},{"id":3638,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3639],"locationId":196},{"id":3639,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3640],"locationId":196},{"id":3640,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3641],"locationId":196},{"id":3641,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3642],"locationId":196},{"id":3642,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3643],"locationId":196},{"id":3643,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3644],"locationId":196},{"id":3644,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3645],"locationId":196},{"id":3645,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3646],"locationId":196},{"id":3646,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3647],"locationId":196},{"id":3647,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3648],"locationId":196},{"id":3648,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3649],"locationId":196},{"id":3649,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3650],"locationId":196},{"id":3650,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3651],"locationId":196},{"id":3651,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3652],"locationId":196},{"id":3652,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3653],"locationId":196},{"id":3653,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3654],"locationId":196},{"id":3654,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3655],"locationId":196},{"id":3655,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3656],"locationId":196},{"id":3656,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3657],"locationId":196},{"id":3657,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3658],"locationId":196},{"id":3658,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3659],"locationId":196},{"id":3659,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3660],"locationId":196},{"id":3660,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3661],"locationId":196},{"id":3661,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3662],"locationId":196},{"id":3662,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3663],"locationId":196},{"id":3663,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3664],"locationId":196},{"id":3664,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3665],"locationId":196},{"id":3665,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3666],"locationId":196},{"id":3666,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3667],"locationId":196},{"id":3667,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3668],"locationId":196},{"id":3668,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3669],"locationId":196},{"id":3669,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3670],"locationId":196},{"id":3670,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3671],"locationId":196},{"id":3671,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3672],"locationId":196},{"id":3672,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3673],"locationId":196},{"id":3673,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3674],"locationId":196},{"id":3674,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3675],"locationId":196},{"id":3675,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3676],"locationId":196},{"id":3676,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3677],"locationId":196},{"id":3677,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3678],"locationId":196},{"id":3678,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3679],"locationId":196},{"id":3679,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3680],"locationId":196},{"id":3680,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3681],"locationId":196},{"id":3681,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3682],"locationId":196},{"id":3682,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3683],"locationId":196},{"id":3683,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3684],"locationId":196},{"id":3684,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3685],"locationId":196},{"id":3685,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3686],"locationId":196},{"id":3686,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3687],"locationId":196},{"id":3687,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3688],"locationId":196},{"id":3688,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3689],"locationId":196},{"id":3689,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3690],"locationId":196},{"id":3690,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3691],"locationId":196},{"id":3691,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3692],"locationId":196},{"id":3692,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3693],"locationId":196},{"id":3693,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3694],"locationId":196},{"id":3694,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3695],"locationId":196},{"id":3695,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3696],"locationId":196},{"id":3696,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3697],"locationId":196},{"id":3697,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3698],"locationId":196},{"id":3698,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3699],"locationId":196},{"id":3699,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3700],"locationId":196},{"id":3700,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3701],"locationId":196},{"id":3701,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3702],"locationId":196},{"id":3702,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3703],"locationId":196},{"id":3703,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3704],"locationId":196},{"id":3704,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3705],"locationId":196},{"id":3705,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3706],"locationId":196},{"id":3706,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3707],"locationId":196},{"id":3707,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3708],"locationId":196},{"id":3708,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3709],"locationId":196},{"id":3709,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3710],"locationId":196},{"id":3710,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3711],"locationId":196},{"id":3711,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3712],"locationId":196},{"id":3712,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3713],"locationId":196},{"id":3713,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3714],"locationId":196},{"id":3714,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3715],"locationId":196},{"id":3715,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3716],"locationId":196},{"id":3716,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3717],"locationId":196},{"id":3717,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3718],"locationId":196},{"id":3718,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3719],"locationId":196},{"id":3719,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3720],"locationId":196},{"id":3720,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3721],"locationId":196},{"id":3721,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3722],"locationId":196},{"id":3722,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3723],"locationId":196},{"id":3723,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3724],"locationId":196},{"id":3724,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3725],"locationId":196},{"id":3725,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3726],"locationId":196},{"id":3726,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3727],"locationId":196},{"id":3727,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3728],"locationId":196},{"id":3728,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3729],"locationId":196},{"id":3729,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3730],"locationId":196},{"id":3730,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3731],"locationId":196},{"id":3731,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3732],"locationId":196},{"id":3732,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3733],"locationId":196},{"id":3733,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3734],"locationId":196},{"id":3734,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3735],"locationId":196},{"id":3735,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3736],"locationId":196},{"id":3736,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3737],"locationId":196},{"id":3737,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3738],"locationId":196},{"id":3738,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3739],"locationId":196},{"id":3739,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3740],"locationId":196},{"id":3740,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3741],"locationId":196},{"id":3741,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3742],"locationId":196},{"id":3742,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3743],"locationId":196},{"id":3743,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3744],"locationId":196},{"id":3744,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3745],"locationId":196},{"id":3745,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3746],"locationId":196},{"id":3746,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3747],"locationId":196},{"id":3747,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3748],"locationId":196},{"id":3748,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3749],"locationId":196},{"id":3749,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3750],"locationId":196},{"id":3750,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3751],"locationId":196},{"id":3751,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3752],"locationId":196},{"id":3752,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3753],"locationId":196},{"id":3753,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3754],"locationId":196},{"id":3754,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3755],"locationId":196},{"id":3755,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3756],"locationId":196},{"id":3756,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3757],"locationId":196},{"id":3757,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3758],"locationId":196},{"id":3758,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3759],"locationId":196},{"id":3759,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3760],"locationId":196},{"id":3760,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3761],"locationId":196},{"id":3761,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3762],"locationId":196},{"id":3762,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3763],"locationId":196},{"id":3763,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3764],"locationId":196},{"id":3764,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3765],"locationId":196},{"id":3765,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3766],"locationId":196},{"id":3766,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3767],"locationId":196},{"id":3767,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3768],"locationId":196},{"id":3768,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3769],"locationId":196},{"id":3769,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3770],"locationId":196},{"id":3770,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3771],"locationId":196},{"id":3771,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3772],"locationId":196},{"id":3772,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3773],"locationId":196},{"id":3773,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3774],"locationId":196},{"id":3774,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3775],"locationId":196},{"id":3775,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3776],"locationId":196},{"id":3776,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3777],"locationId":196},{"id":3777,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3778],"locationId":196},{"id":3778,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3779],"locationId":196},{"id":3779,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3780],"locationId":196},{"id":3780,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3781],"locationId":196},{"id":3781,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3782],"locationId":196},{"id":3782,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3783],"locationId":196},{"id":3783,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3784],"locationId":196},{"id":3784,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3785],"locationId":196},{"id":3785,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3786],"locationId":196},{"id":3786,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3787],"locationId":196},{"id":3787,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3788],"locationId":196},{"id":3788,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3789],"locationId":196},{"id":3789,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3790],"locationId":196},{"id":3790,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3791],"locationId":196},{"id":3791,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3792],"locationId":196},{"id":3792,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3793],"locationId":196},{"id":3793,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3794],"locationId":196},{"id":3794,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3795],"locationId":196},{"id":3795,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3796],"locationId":196},{"id":3796,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3797],"locationId":196},{"id":3797,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3798],"locationId":196},{"id":3798,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3799],"locationId":196},{"id":3799,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3800],"locationId":196},{"id":3800,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3801],"locationId":196},{"id":3801,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3802],"locationId":196},{"id":3802,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3803],"locationId":196},{"id":3803,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3804],"locationId":196},{"id":3804,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3805],"locationId":196},{"id":3805,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3806],"locationId":196},{"id":3806,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3807],"locationId":196},{"id":3807,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3808],"locationId":196},{"id":3808,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3809],"locationId":196},{"id":3809,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3810],"locationId":196},{"id":3810,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3811],"locationId":196},{"id":3811,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3812],"locationId":196},{"id":3812,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3813],"locationId":196},{"id":3813,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3814],"locationId":196},{"id":3814,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3815],"locationId":196},{"id":3815,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3816],"locationId":196},{"id":3816,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3817],"locationId":196},{"id":3817,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3818],"locationId":196},{"id":3818,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3819],"locationId":196},{"id":3819,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3820],"locationId":196},{"id":3820,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3821],"locationId":196},{"id":3821,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3822],"locationId":196},{"id":3822,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3823],"locationId":196},{"id":3823,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3824],"locationId":196},{"id":3824,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3825],"locationId":196},{"id":3825,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3826],"locationId":196},{"id":3826,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3827],"locationId":196},{"id":3827,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3828],"locationId":196},{"id":3828,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3829],"locationId":196},{"id":3829,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3830],"locationId":196},{"id":3830,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3831],"locationId":196},{"id":3831,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3832],"locationId":196},{"id":3832,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3833],"locationId":196},{"id":3833,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3834],"locationId":196},{"id":3834,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3835],"locationId":196},{"id":3835,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3836],"locationId":196},{"id":3836,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3837],"locationId":196},{"id":3837,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3838],"locationId":196},{"id":3838,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3839],"locationId":196},{"id":3839,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3840],"locationId":196},{"id":3840,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3841],"locationId":196},{"id":3841,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3842],"locationId":196},{"id":3842,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3843],"locationId":196},{"id":3843,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3844],"locationId":196},{"id":3844,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3845],"locationId":196},{"id":3845,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3846],"locationId":196},{"id":3846,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3847],"locationId":196},{"id":3847,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3848],"locationId":196},{"id":3848,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3849],"locationId":196},{"id":3849,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3850],"locationId":196},{"id":3850,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3851],"locationId":196},{"id":3851,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3852],"locationId":196},{"id":3852,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3853],"locationId":196},{"id":3853,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3854],"locationId":196},{"id":3854,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3855],"locationId":196},{"id":3855,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3856],"locationId":196},{"id":3856,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3857],"locationId":196},{"id":3857,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3858],"locationId":196},{"id":3858,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3859],"locationId":196},{"id":3859,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3860],"locationId":196},{"id":3860,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3861],"locationId":196},{"id":3861,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3862],"locationId":196},{"id":3862,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3863],"locationId":196},{"id":3863,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3864],"locationId":196},{"id":3864,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3865],"locationId":196},{"id":3865,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3866],"locationId":196},{"id":3866,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3867],"locationId":196},{"id":3867,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3868],"locationId":196},{"id":3868,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3869],"locationId":196},{"id":3869,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3870],"locationId":196},{"id":3870,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3871],"locationId":196},{"id":3871,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3872],"locationId":196},{"id":3872,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3873],"locationId":196},{"id":3873,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3874],"locationId":196},{"id":3874,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":2060,"callFrame":{"functionName":"toDDL","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":483,"columnNumber":21},"hitCount":0,"children":[2061],"locationId":4},{"id":2061,"callFrame":{"functionName":"Parsed.getDDL","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":336,"columnNumber":31},"hitCount":0,"children":[2062],"locationId":5},{"id":2062,"callFrame":{"functionName":"toDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":832,"columnNumber":29},"hitCount":0,"children":[2063],"locationId":6},{"id":2063,"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":607,"columnNumber":33},"hitCount":0,"children":[2064,2596],"locationId":9},{"id":2064,"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":607,"columnNumber":33},"hitCount":0,"children":[2065],"locationId":9},{"id":2065,"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":47,"columnNumber":39},"hitCount":0,"children":[2066],"locationId":36},{"id":2066,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":0,"children":[2067],"locationId":62},{"id":2067,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2068],"locationId":196},{"id":2068,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2069],"locationId":196},{"id":2069,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2070],"locationId":196},{"id":2070,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2071],"locationId":196},{"id":2071,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2072],"locationId":196},{"id":2072,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2073],"locationId":196},{"id":2073,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2074],"locationId":196},{"id":2074,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2075],"locationId":196},{"id":2075,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2076],"locationId":196},{"id":2076,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2077],"locationId":196},{"id":2077,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2078],"locationId":196},{"id":2078,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2079],"locationId":196},{"id":2079,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2080],"locationId":196},{"id":2080,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2081],"locationId":196},{"id":2081,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2082],"locationId":196},{"id":2082,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2083],"locationId":196},{"id":2083,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2084],"locationId":196},{"id":2084,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2085],"locationId":196},{"id":2085,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2086],"locationId":196},{"id":2086,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2087],"locationId":196},{"id":2087,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2088],"locationId":196},{"id":2088,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2089],"locationId":196},{"id":2089,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2090],"locationId":196},{"id":2090,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2091],"locationId":196},{"id":2091,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2092],"locationId":196},{"id":2092,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2093],"locationId":196},{"id":2093,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2094],"locationId":196},{"id":2094,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2095],"locationId":196},{"id":2095,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2096],"locationId":196},{"id":2096,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2097],"locationId":196},{"id":2097,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2098],"locationId":196},{"id":2098,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2099],"locationId":196},{"id":2099,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2100],"locationId":196},{"id":2100,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2101],"locationId":196},{"id":2101,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2102],"locationId":196},{"id":2102,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2103],"locationId":196},{"id":2103,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2104],"locationId":196},{"id":2104,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2105],"locationId":196},{"id":2105,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2106],"locationId":196},{"id":2106,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2107],"locationId":196},{"id":2107,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2108],"locationId":196},{"id":2108,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2109],"locationId":196},{"id":2109,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2110],"locationId":196},{"id":2110,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2111],"locationId":196},{"id":2111,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2112],"locationId":196},{"id":2112,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2113],"locationId":196},{"id":2113,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2114],"locationId":196},{"id":2114,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2115],"locationId":196},{"id":2115,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2116],"locationId":196},{"id":2116,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2117],"locationId":196},{"id":2117,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2118],"locationId":196},{"id":2118,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2119],"locationId":196},{"id":2119,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2120],"locationId":196},{"id":2120,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2121],"locationId":196},{"id":2121,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2122],"locationId":196},{"id":2122,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2123],"locationId":196},{"id":2123,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2124],"locationId":196},{"id":2124,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2125],"locationId":196},{"id":2125,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2126],"locationId":196},{"id":2126,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2127],"locationId":196},{"id":2127,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2128],"locationId":196},{"id":2128,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2129],"locationId":196},{"id":2129,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2130],"locationId":196},{"id":2130,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2131],"locationId":196},{"id":2131,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2132],"locationId":196},{"id":2132,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2133],"locationId":196},{"id":2133,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2134],"locationId":196},{"id":2134,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2135],"locationId":196},{"id":2135,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2136],"locationId":196},{"id":2136,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2137],"locationId":196},{"id":2137,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2138],"locationId":196},{"id":2138,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2139],"locationId":196},{"id":2139,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2140],"locationId":196},{"id":2140,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2141],"locationId":196},{"id":2141,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2142],"locationId":196},{"id":2142,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2143],"locationId":196},{"id":2143,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2144],"locationId":196},{"id":2144,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2145],"locationId":196},{"id":2145,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2146],"locationId":196},{"id":2146,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2147],"locationId":196},{"id":2147,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2148],"locationId":196},{"id":2148,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2149],"locationId":196},{"id":2149,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2150],"locationId":196},{"id":2150,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2151],"locationId":196},{"id":2151,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2152],"locationId":196},{"id":2152,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2153],"locationId":196},{"id":2153,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2154],"locationId":196},{"id":2154,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2155],"locationId":196},{"id":2155,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2156],"locationId":196},{"id":2156,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2157],"locationId":196},{"id":2157,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2158],"locationId":196},{"id":2158,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2159],"locationId":196},{"id":2159,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2160],"locationId":196},{"id":2160,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2161],"locationId":196},{"id":2161,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2162],"locationId":196},{"id":2162,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2163],"locationId":196},{"id":2163,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2164],"locationId":196},{"id":2164,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2165],"locationId":196},{"id":2165,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2166],"locationId":196},{"id":2166,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2167],"locationId":196},{"id":2167,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2168],"locationId":196},{"id":2168,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2169],"locationId":196},{"id":2169,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2170],"locationId":196},{"id":2170,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2171],"locationId":196},{"id":2171,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2172],"locationId":196},{"id":2172,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2173],"locationId":196},{"id":2173,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2174],"locationId":196},{"id":2174,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2175],"locationId":196},{"id":2175,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2176],"locationId":196},{"id":2176,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2177],"locationId":196},{"id":2177,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2178],"locationId":196},{"id":2178,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2179],"locationId":196},{"id":2179,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2180],"locationId":196},{"id":2180,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2181],"locationId":196},{"id":2181,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2182],"locationId":196},{"id":2182,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2183],"locationId":196},{"id":2183,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2184],"locationId":196},{"id":2184,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2185],"locationId":196},{"id":2185,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2186],"locationId":196},{"id":2186,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2187],"locationId":196},{"id":2187,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2188],"locationId":196},{"id":2188,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2189],"locationId":196},{"id":2189,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2190],"locationId":196},{"id":2190,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2191],"locationId":196},{"id":2191,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2192],"locationId":196},{"id":2192,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2193],"locationId":196},{"id":2193,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2194],"locationId":196},{"id":2194,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2195],"locationId":196},{"id":2195,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2196],"locationId":196},{"id":2196,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2197],"locationId":196},{"id":2197,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2198],"locationId":196},{"id":2198,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2199],"locationId":196},{"id":2199,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2200],"locationId":196},{"id":2200,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2201],"locationId":196},{"id":2201,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2202],"locationId":196},{"id":2202,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2203],"locationId":196},{"id":2203,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2204],"locationId":196},{"id":2204,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2205],"locationId":196},{"id":2205,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2206],"locationId":196},{"id":2206,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2207],"locationId":196},{"id":2207,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2208],"locationId":196},{"id":2208,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2209],"locationId":196},{"id":2209,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2210],"locationId":196},{"id":2210,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2211],"locationId":196},{"id":2211,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2212],"locationId":196},{"id":2212,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2213],"locationId":196},{"id":2213,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2214],"locationId":196},{"id":2214,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2215],"locationId":196},{"id":2215,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2216],"locationId":196},{"id":2216,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2217],"locationId":196},{"id":2217,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2218],"locationId":196},{"id":2218,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2219],"locationId":196},{"id":2219,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2220],"locationId":196},{"id":2220,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2221],"locationId":196},{"id":2221,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2222],"locationId":196},{"id":2222,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2223],"locationId":196},{"id":2223,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2224],"locationId":196},{"id":2224,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2225],"locationId":196},{"id":2225,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2226],"locationId":196},{"id":2226,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2227],"locationId":196},{"id":2227,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2228],"locationId":196},{"id":2228,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2229],"locationId":196},{"id":2229,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2230],"locationId":196},{"id":2230,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2231],"locationId":196},{"id":2231,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2232],"locationId":196},{"id":2232,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2233],"locationId":196},{"id":2233,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2234],"locationId":196},{"id":2234,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2235],"locationId":196},{"id":2235,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2236],"locationId":196},{"id":2236,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2237],"locationId":196},{"id":2237,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2238],"locationId":196},{"id":2238,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2239],"locationId":196},{"id":2239,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2240],"locationId":196},{"id":2240,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2241],"locationId":196},{"id":2241,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2242],"locationId":196},{"id":2242,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2243],"locationId":196},{"id":2243,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2244],"locationId":196},{"id":2244,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2245],"locationId":196},{"id":2245,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2246],"locationId":196},{"id":2246,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2247],"locationId":196},{"id":2247,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2248],"locationId":196},{"id":2248,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2249],"locationId":196},{"id":2249,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2250],"locationId":196},{"id":2250,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2251],"locationId":196},{"id":2251,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2252],"locationId":196},{"id":2252,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2253],"locationId":196},{"id":2253,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2254],"locationId":196},{"id":2254,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2255],"locationId":196},{"id":2255,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2256],"locationId":196},{"id":2256,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2257],"locationId":196},{"id":2257,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2258],"locationId":196},{"id":2258,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2259],"locationId":196},{"id":2259,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2260],"locationId":196},{"id":2260,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2261],"locationId":196},{"id":2261,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2262],"locationId":196},{"id":2262,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2263],"locationId":196},{"id":2263,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2264],"locationId":196},{"id":2264,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2265],"locationId":196},{"id":2265,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2266],"locationId":196},{"id":2266,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2267],"locationId":196},{"id":2267,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2268],"locationId":196},{"id":2268,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2269],"locationId":196},{"id":2269,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2270],"locationId":196},{"id":2270,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2271],"locationId":196},{"id":2271,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2272],"locationId":196},{"id":2272,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2273],"locationId":196},{"id":2273,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2274],"locationId":196},{"id":2274,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2275],"locationId":196},{"id":2275,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2276],"locationId":196},{"id":2276,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2277],"locationId":196},{"id":2277,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2278],"locationId":196},{"id":2278,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2279],"locationId":196},{"id":2279,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2280],"locationId":196},{"id":2280,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2281],"locationId":196},{"id":2281,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2282],"locationId":196},{"id":2282,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2283],"locationId":196},{"id":2283,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2284],"locationId":196},{"id":2284,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2285],"locationId":196},{"id":2285,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2286],"locationId":196},{"id":2286,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2287],"locationId":196},{"id":2287,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2288],"locationId":196},{"id":2288,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2289],"locationId":196},{"id":2289,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2290],"locationId":196},{"id":2290,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2291],"locationId":196},{"id":2291,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2292],"locationId":196},{"id":2292,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2293],"locationId":196},{"id":2293,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2294],"locationId":196},{"id":2294,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2295],"locationId":196},{"id":2295,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2296],"locationId":196},{"id":2296,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2297],"locationId":196},{"id":2297,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2298],"locationId":196},{"id":2298,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2299],"locationId":196},{"id":2299,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2300],"locationId":196},{"id":2300,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2301],"locationId":196},{"id":2301,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2302],"locationId":196},{"id":2302,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2303],"locationId":196},{"id":2303,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2304],"locationId":196},{"id":2304,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2305],"locationId":196},{"id":2305,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2306],"locationId":196},{"id":2306,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2307],"locationId":196},{"id":2307,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2308],"locationId":196},{"id":2308,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2309],"locationId":196},{"id":2309,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2310],"locationId":196},{"id":2310,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2311],"locationId":196},{"id":2311,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2312],"locationId":196},{"id":2312,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2313],"locationId":196},{"id":2313,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2314],"locationId":196},{"id":2314,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2315],"locationId":196},{"id":2315,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":2596,"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":47,"columnNumber":39},"hitCount":0,"children":[2597],"locationId":36},{"id":2597,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":0,"children":[2598],"locationId":62},{"id":2598,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2599],"locationId":196},{"id":2599,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2600],"locationId":196},{"id":2600,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2601],"locationId":196},{"id":2601,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2602],"locationId":196},{"id":2602,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2603],"locationId":196},{"id":2603,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2604],"locationId":196},{"id":2604,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2605],"locationId":196},{"id":2605,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2606],"locationId":196},{"id":2606,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2607],"locationId":196},{"id":2607,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2608],"locationId":196},{"id":2608,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2609],"locationId":196},{"id":2609,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2610],"locationId":196},{"id":2610,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2611],"locationId":196},{"id":2611,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2612],"locationId":196},{"id":2612,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2613],"locationId":196},{"id":2613,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2614],"locationId":196},{"id":2614,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2615],"locationId":196},{"id":2615,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2616],"locationId":196},{"id":2616,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2617],"locationId":196},{"id":2617,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2618],"locationId":196},{"id":2618,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2619],"locationId":196},{"id":2619,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2620],"locationId":196},{"id":2620,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2621],"locationId":196},{"id":2621,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2622],"locationId":196},{"id":2622,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2623],"locationId":196},{"id":2623,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2624],"locationId":196},{"id":2624,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2625],"locationId":196},{"id":2625,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2626],"locationId":196},{"id":2626,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2627],"locationId":196},{"id":2627,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2628],"locationId":196},{"id":2628,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2629],"locationId":196},{"id":2629,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2630],"locationId":196},{"id":2630,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2631],"locationId":196},{"id":2631,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2632],"locationId":196},{"id":2632,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2633],"locationId":196},{"id":2633,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2634],"locationId":196},{"id":2634,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2635],"locationId":196},{"id":2635,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2636],"locationId":196},{"id":2636,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2637],"locationId":196},{"id":2637,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2638],"locationId":196},{"id":2638,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2639],"locationId":196},{"id":2639,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2640],"locationId":196},{"id":2640,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2641],"locationId":196},{"id":2641,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2642],"locationId":196},{"id":2642,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2643],"locationId":196},{"id":2643,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2644],"locationId":196},{"id":2644,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2645],"locationId":196},{"id":2645,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2646],"locationId":196},{"id":2646,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2647],"locationId":196},{"id":2647,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2648],"locationId":196},{"id":2648,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2649],"locationId":196},{"id":2649,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2650],"locationId":196},{"id":2650,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2651],"locationId":196},{"id":2651,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2652],"locationId":196},{"id":2652,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2653],"locationId":196},{"id":2653,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2654],"locationId":196},{"id":2654,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2655],"locationId":196},{"id":2655,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2656],"locationId":196},{"id":2656,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2657],"locationId":196},{"id":2657,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2658],"locationId":196},{"id":2658,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2659],"locationId":196},{"id":2659,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2660],"locationId":196},{"id":2660,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2661],"locationId":196},{"id":2661,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2662],"locationId":196},{"id":2662,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2663],"locationId":196},{"id":2663,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2664],"locationId":196},{"id":2664,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2665],"locationId":196},{"id":2665,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2666],"locationId":196},{"id":2666,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2667],"locationId":196},{"id":2667,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2668],"locationId":196},{"id":2668,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2669],"locationId":196},{"id":2669,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2670],"locationId":196},{"id":2670,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2671],"locationId":196},{"id":2671,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2672],"locationId":196},{"id":2672,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2673],"locationId":196},{"id":2673,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2674],"locationId":196},{"id":2674,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2675],"locationId":196},{"id":2675,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2676],"locationId":196},{"id":2676,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2677],"locationId":196},{"id":2677,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2678],"locationId":196},{"id":2678,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2679],"locationId":196},{"id":2679,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2680],"locationId":196},{"id":2680,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2681],"locationId":196},{"id":2681,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2682],"locationId":196},{"id":2682,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2683],"locationId":196},{"id":2683,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2684],"locationId":196},{"id":2684,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2685],"locationId":196},{"id":2685,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2686],"locationId":196},{"id":2686,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2687],"locationId":196},{"id":2687,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2688],"locationId":196},{"id":2688,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2689],"locationId":196},{"id":2689,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2690],"locationId":196},{"id":2690,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2691],"locationId":196},{"id":2691,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2692],"locationId":196},{"id":2692,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2693],"locationId":196},{"id":2693,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2694],"locationId":196},{"id":2694,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2695],"locationId":196},{"id":2695,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2696],"locationId":196},{"id":2696,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2697],"locationId":196},{"id":2697,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2698],"locationId":196},{"id":2698,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2699],"locationId":196},{"id":2699,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2700],"locationId":196},{"id":2700,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2701],"locationId":196},{"id":2701,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2702],"locationId":196},{"id":2702,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2703],"locationId":196},{"id":2703,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2704],"locationId":196},{"id":2704,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2705],"locationId":196},{"id":2705,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2706],"locationId":196},{"id":2706,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2707],"locationId":196},{"id":2707,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2708],"locationId":196},{"id":2708,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2709],"locationId":196},{"id":2709,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2710],"locationId":196},{"id":2710,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2711],"locationId":196},{"id":2711,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2712],"locationId":196},{"id":2712,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2713],"locationId":196},{"id":2713,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2714],"locationId":196},{"id":2714,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2715],"locationId":196},{"id":2715,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2716],"locationId":196},{"id":2716,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2717],"locationId":196},{"id":2717,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2718],"locationId":196},{"id":2718,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2719],"locationId":196},{"id":2719,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2720],"locationId":196},{"id":2720,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2721],"locationId":196},{"id":2721,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2722],"locationId":196},{"id":2722,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2723],"locationId":196},{"id":2723,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2724],"locationId":196},{"id":2724,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2725],"locationId":196},{"id":2725,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2726],"locationId":196},{"id":2726,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2727],"locationId":196},{"id":2727,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2728],"locationId":196},{"id":2728,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2729],"locationId":196},{"id":2729,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2730],"locationId":196},{"id":2730,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2731],"locationId":196},{"id":2731,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2732],"locationId":196},{"id":2732,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2733],"locationId":196},{"id":2733,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2734],"locationId":196},{"id":2734,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2735],"locationId":196},{"id":2735,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2736],"locationId":196},{"id":2736,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2737],"locationId":196},{"id":2737,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2738],"locationId":196},{"id":2738,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2739],"locationId":196},{"id":2739,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2740],"locationId":196},{"id":2740,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2741],"locationId":196},{"id":2741,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2742],"locationId":196},{"id":2742,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2743],"locationId":196},{"id":2743,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2744],"locationId":196},{"id":2744,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2745],"locationId":196},{"id":2745,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2746],"locationId":196},{"id":2746,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2747],"locationId":196},{"id":2747,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2748],"locationId":196},{"id":2748,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2749],"locationId":196},{"id":2749,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2750],"locationId":196},{"id":2750,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2751],"locationId":196},{"id":2751,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2752],"locationId":196},{"id":2752,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2753],"locationId":196},{"id":2753,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2754],"locationId":196},{"id":2754,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2755],"locationId":196},{"id":2755,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2756],"locationId":196},{"id":2756,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2757],"locationId":196},{"id":2757,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2758],"locationId":196},{"id":2758,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2759],"locationId":196},{"id":2759,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2760],"locationId":196},{"id":2760,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2761],"locationId":196},{"id":2761,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2762],"locationId":196},{"id":2762,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2763],"locationId":196},{"id":2763,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2764],"locationId":196},{"id":2764,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2765],"locationId":196},{"id":2765,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2766],"locationId":196},{"id":2766,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2767],"locationId":196},{"id":2767,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2768],"locationId":196},{"id":2768,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2769],"locationId":196},{"id":2769,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2770],"locationId":196},{"id":2770,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2771],"locationId":196},{"id":2771,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2772],"locationId":196},{"id":2772,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2773],"locationId":196},{"id":2773,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2774],"locationId":196},{"id":2774,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2775],"locationId":196},{"id":2775,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2776],"locationId":196},{"id":2776,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2777],"locationId":196},{"id":2777,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2778],"locationId":196},{"id":2778,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2779],"locationId":196},{"id":2779,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2780],"locationId":196},{"id":2780,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2781],"locationId":196},{"id":2781,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2782],"locationId":196},{"id":2782,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2783],"locationId":196},{"id":2783,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2784],"locationId":196},{"id":2784,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2785],"locationId":196},{"id":2785,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2786],"locationId":196},{"id":2786,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2787],"locationId":196},{"id":2787,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2788],"locationId":196},{"id":2788,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2789],"locationId":196},{"id":2789,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2790],"locationId":196},{"id":2790,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2791],"locationId":196},{"id":2791,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2792],"locationId":196},{"id":2792,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2793],"locationId":196},{"id":2793,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2794],"locationId":196},{"id":2794,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2795],"locationId":196},{"id":2795,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2796],"locationId":196},{"id":2796,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2797],"locationId":196},{"id":2797,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2798],"locationId":196},{"id":2798,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2799],"locationId":196},{"id":2799,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2800],"locationId":196},{"id":2800,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2801],"locationId":196},{"id":2801,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2802],"locationId":196},{"id":2802,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2803],"locationId":196},{"id":2803,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2804],"locationId":196},{"id":2804,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2805],"locationId":196},{"id":2805,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2806],"locationId":196},{"id":2806,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2807],"locationId":196},{"id":2807,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2808],"locationId":196},{"id":2808,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2809],"locationId":196},{"id":2809,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2810],"locationId":196},{"id":2810,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2811],"locationId":196},{"id":2811,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2812],"locationId":196},{"id":2812,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2813],"locationId":196},{"id":2813,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2814],"locationId":196},{"id":2814,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2815],"locationId":196},{"id":2815,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2816],"locationId":196},{"id":2816,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2817],"locationId":196},{"id":2817,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2818],"locationId":196},{"id":2818,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2819],"locationId":196},{"id":2819,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2820],"locationId":196},{"id":2820,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2821],"locationId":196},{"id":2821,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2822],"locationId":196},{"id":2822,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2823],"locationId":196},{"id":2823,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2824],"locationId":196},{"id":2824,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2825],"locationId":196},{"id":2825,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2826],"locationId":196},{"id":2826,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2827],"locationId":196},{"id":2827,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2828],"locationId":196},{"id":2828,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2829],"locationId":196},{"id":2829,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2830],"locationId":196},{"id":2830,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2831],"locationId":196},{"id":2831,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2832],"locationId":196},{"id":2832,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2833],"locationId":196},{"id":2833,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2834],"locationId":196},{"id":2834,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2835],"locationId":196},{"id":2835,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2836],"locationId":196},{"id":2836,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2837],"locationId":196},{"id":2837,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2838],"locationId":196},{"id":2838,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2839],"locationId":196},{"id":2839,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2840],"locationId":196},{"id":2840,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2841],"locationId":196},{"id":2841,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2842],"locationId":196},{"id":2842,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2843],"locationId":196},{"id":2843,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2844],"locationId":196},{"id":2844,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2845],"locationId":196},{"id":2845,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2846],"locationId":196},{"id":2846,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":2,"positionTicks":[{"line":44,"ticks":2,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":2337,"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":607,"columnNumber":33},"hitCount":0,"children":[2338,4129],"locationId":9},{"id":2338,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":0,"children":[2339],"locationId":62},{"id":2339,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2340],"locationId":196},{"id":2340,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2341],"locationId":196},{"id":2341,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2342],"locationId":196},{"id":2342,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2343],"locationId":196},{"id":2343,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2344],"locationId":196},{"id":2344,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2345],"locationId":196},{"id":2345,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2346],"locationId":196},{"id":2346,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2347],"locationId":196},{"id":2347,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2348],"locationId":196},{"id":2348,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2349],"locationId":196},{"id":2349,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2350],"locationId":196},{"id":2350,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2351],"locationId":196},{"id":2351,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2352],"locationId":196},{"id":2352,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2353],"locationId":196},{"id":2353,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2354],"locationId":196},{"id":2354,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2355],"locationId":196},{"id":2355,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2356],"locationId":196},{"id":2356,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2357],"locationId":196},{"id":2357,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2358],"locationId":196},{"id":2358,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2359],"locationId":196},{"id":2359,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2360],"locationId":196},{"id":2360,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2361],"locationId":196},{"id":2361,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2362],"locationId":196},{"id":2362,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2363],"locationId":196},{"id":2363,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2364],"locationId":196},{"id":2364,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2365],"locationId":196},{"id":2365,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2366],"locationId":196},{"id":2366,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2367],"locationId":196},{"id":2367,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2368],"locationId":196},{"id":2368,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2369],"locationId":196},{"id":2369,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2370],"locationId":196},{"id":2370,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2371],"locationId":196},{"id":2371,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2372],"locationId":196},{"id":2372,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2373],"locationId":196},{"id":2373,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2374],"locationId":196},{"id":2374,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2375],"locationId":196},{"id":2375,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2376],"locationId":196},{"id":2376,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2377],"locationId":196},{"id":2377,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2378],"locationId":196},{"id":2378,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2379],"locationId":196},{"id":2379,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2380],"locationId":196},{"id":2380,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2381],"locationId":196},{"id":2381,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2382],"locationId":196},{"id":2382,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2383],"locationId":196},{"id":2383,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2384],"locationId":196},{"id":2384,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2385],"locationId":196},{"id":2385,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2386],"locationId":196},{"id":2386,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2387],"locationId":196},{"id":2387,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2388],"locationId":196},{"id":2388,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2389],"locationId":196},{"id":2389,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2390],"locationId":196},{"id":2390,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2391],"locationId":196},{"id":2391,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2392],"locationId":196},{"id":2392,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2393],"locationId":196},{"id":2393,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2394],"locationId":196},{"id":2394,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2395],"locationId":196},{"id":2395,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2396],"locationId":196},{"id":2396,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2397],"locationId":196},{"id":2397,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2398],"locationId":196},{"id":2398,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2399],"locationId":196},{"id":2399,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2400],"locationId":196},{"id":2400,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2401],"locationId":196},{"id":2401,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2402],"locationId":196},{"id":2402,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2403],"locationId":196},{"id":2403,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2404],"locationId":196},{"id":2404,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2405],"locationId":196},{"id":2405,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2406],"locationId":196},{"id":2406,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2407],"locationId":196},{"id":2407,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2408],"locationId":196},{"id":2408,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2409],"locationId":196},{"id":2409,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2410],"locationId":196},{"id":2410,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2411],"locationId":196},{"id":2411,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2412],"locationId":196},{"id":2412,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2413],"locationId":196},{"id":2413,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2414],"locationId":196},{"id":2414,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2415],"locationId":196},{"id":2415,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2416],"locationId":196},{"id":2416,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2417],"locationId":196},{"id":2417,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2418],"locationId":196},{"id":2418,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2419],"locationId":196},{"id":2419,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2420],"locationId":196},{"id":2420,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2421],"locationId":196},{"id":2421,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2422],"locationId":196},{"id":2422,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2423],"locationId":196},{"id":2423,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2424],"locationId":196},{"id":2424,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2425],"locationId":196},{"id":2425,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2426],"locationId":196},{"id":2426,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2427],"locationId":196},{"id":2427,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2428],"locationId":196},{"id":2428,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2429],"locationId":196},{"id":2429,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2430],"locationId":196},{"id":2430,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2431],"locationId":196},{"id":2431,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2432],"locationId":196},{"id":2432,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2433],"locationId":196},{"id":2433,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2434],"locationId":196},{"id":2434,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2435],"locationId":196},{"id":2435,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2436],"locationId":196},{"id":2436,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2437],"locationId":196},{"id":2437,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2438],"locationId":196},{"id":2438,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2439],"locationId":196},{"id":2439,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2440],"locationId":196},{"id":2440,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2441],"locationId":196},{"id":2441,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2442],"locationId":196},{"id":2442,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2443],"locationId":196},{"id":2443,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2444],"locationId":196},{"id":2444,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2445],"locationId":196},{"id":2445,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2446],"locationId":196},{"id":2446,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2447],"locationId":196},{"id":2447,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2448],"locationId":196},{"id":2448,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2449],"locationId":196},{"id":2449,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2450],"locationId":196},{"id":2450,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2451],"locationId":196},{"id":2451,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2452],"locationId":196},{"id":2452,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2453],"locationId":196},{"id":2453,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2454],"locationId":196},{"id":2454,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2455],"locationId":196},{"id":2455,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2456],"locationId":196},{"id":2456,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2457],"locationId":196},{"id":2457,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2458],"locationId":196},{"id":2458,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2459],"locationId":196},{"id":2459,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2460],"locationId":196},{"id":2460,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2461],"locationId":196},{"id":2461,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2462],"locationId":196},{"id":2462,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2463],"locationId":196},{"id":2463,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2464],"locationId":196},{"id":2464,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2465],"locationId":196},{"id":2465,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2466],"locationId":196},{"id":2466,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2467],"locationId":196},{"id":2467,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2468],"locationId":196},{"id":2468,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2469],"locationId":196},{"id":2469,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2470],"locationId":196},{"id":2470,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2471],"locationId":196},{"id":2471,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2472],"locationId":196},{"id":2472,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2473],"locationId":196},{"id":2473,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2474],"locationId":196},{"id":2474,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2475],"locationId":196},{"id":2475,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2476],"locationId":196},{"id":2476,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2477],"locationId":196},{"id":2477,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2478],"locationId":196},{"id":2478,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2479],"locationId":196},{"id":2479,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2480],"locationId":196},{"id":2480,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2481],"locationId":196},{"id":2481,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2482],"locationId":196},{"id":2482,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2483],"locationId":196},{"id":2483,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2484],"locationId":196},{"id":2484,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2485],"locationId":196},{"id":2485,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2486],"locationId":196},{"id":2486,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2487],"locationId":196},{"id":2487,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2488],"locationId":196},{"id":2488,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2489],"locationId":196},{"id":2489,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2490],"locationId":196},{"id":2490,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2491],"locationId":196},{"id":2491,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2492],"locationId":196},{"id":2492,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2493],"locationId":196},{"id":2493,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2494],"locationId":196},{"id":2494,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2495],"locationId":196},{"id":2495,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2496],"locationId":196},{"id":2496,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2497],"locationId":196},{"id":2497,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2498],"locationId":196},{"id":2498,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2499],"locationId":196},{"id":2499,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2500],"locationId":196},{"id":2500,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2501],"locationId":196},{"id":2501,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2502],"locationId":196},{"id":2502,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2503],"locationId":196},{"id":2503,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2504],"locationId":196},{"id":2504,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2505],"locationId":196},{"id":2505,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2506],"locationId":196},{"id":2506,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2507],"locationId":196},{"id":2507,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2508],"locationId":196},{"id":2508,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2509],"locationId":196},{"id":2509,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2510],"locationId":196},{"id":2510,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2511],"locationId":196},{"id":2511,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2512],"locationId":196},{"id":2512,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2513],"locationId":196},{"id":2513,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2514],"locationId":196},{"id":2514,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2515],"locationId":196},{"id":2515,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2516],"locationId":196},{"id":2516,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2517],"locationId":196},{"id":2517,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2518],"locationId":196},{"id":2518,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2519],"locationId":196},{"id":2519,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2520],"locationId":196},{"id":2520,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2521],"locationId":196},{"id":2521,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2522],"locationId":196},{"id":2522,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2523],"locationId":196},{"id":2523,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2524],"locationId":196},{"id":2524,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2525],"locationId":196},{"id":2525,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2526],"locationId":196},{"id":2526,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2527],"locationId":196},{"id":2527,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2528],"locationId":196},{"id":2528,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2529],"locationId":196},{"id":2529,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2530],"locationId":196},{"id":2530,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2531],"locationId":196},{"id":2531,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2532],"locationId":196},{"id":2532,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2533],"locationId":196},{"id":2533,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2534],"locationId":196},{"id":2534,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2535],"locationId":196},{"id":2535,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2536],"locationId":196},{"id":2536,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2537],"locationId":196},{"id":2537,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2538],"locationId":196},{"id":2538,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2539],"locationId":196},{"id":2539,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2540],"locationId":196},{"id":2540,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2541],"locationId":196},{"id":2541,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2542],"locationId":196},{"id":2542,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2543],"locationId":196},{"id":2543,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2544],"locationId":196},{"id":2544,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2545],"locationId":196},{"id":2545,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2546],"locationId":196},{"id":2546,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2547],"locationId":196},{"id":2547,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2548],"locationId":196},{"id":2548,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2549],"locationId":196},{"id":2549,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2550],"locationId":196},{"id":2550,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2551],"locationId":196},{"id":2551,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2552],"locationId":196},{"id":2552,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2553],"locationId":196},{"id":2553,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2554],"locationId":196},{"id":2554,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2555],"locationId":196},{"id":2555,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2556],"locationId":196},{"id":2556,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2557],"locationId":196},{"id":2557,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2558],"locationId":196},{"id":2558,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2559],"locationId":196},{"id":2559,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2560],"locationId":196},{"id":2560,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2561],"locationId":196},{"id":2561,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2562],"locationId":196},{"id":2562,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2563],"locationId":196},{"id":2563,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2564],"locationId":196},{"id":2564,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2565],"locationId":196},{"id":2565,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2566],"locationId":196},{"id":2566,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2567],"locationId":196},{"id":2567,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2568],"locationId":196},{"id":2568,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2569],"locationId":196},{"id":2569,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2570],"locationId":196},{"id":2570,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2571],"locationId":196},{"id":2571,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2572],"locationId":196},{"id":2572,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2573],"locationId":196},{"id":2573,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2574],"locationId":196},{"id":2574,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2575],"locationId":196},{"id":2575,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2576],"locationId":196},{"id":2576,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2577],"locationId":196},{"id":2577,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2578],"locationId":196},{"id":2578,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2579],"locationId":196},{"id":2579,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2580],"locationId":196},{"id":2580,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2581],"locationId":196},{"id":2581,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2582],"locationId":196},{"id":2582,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2583],"locationId":196},{"id":2583,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2584],"locationId":196},{"id":2584,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2585],"locationId":196},{"id":2585,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2586],"locationId":196},{"id":2586,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2587],"locationId":196},{"id":2587,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2588],"locationId":196},{"id":2588,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2589],"locationId":196},{"id":2589,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2590],"locationId":196},{"id":2590,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2591],"locationId":196},{"id":2591,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2592],"locationId":196},{"id":2592,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":4129,"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":47,"columnNumber":39},"hitCount":0,"children":[4130],"locationId":36},{"id":4130,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":0,"children":[4131],"locationId":62},{"id":4131,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4132],"locationId":196},{"id":4132,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4133],"locationId":196},{"id":4133,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4134],"locationId":196},{"id":4134,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4135],"locationId":196},{"id":4135,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4136],"locationId":196},{"id":4136,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4137],"locationId":196},{"id":4137,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4138],"locationId":196},{"id":4138,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4139],"locationId":196},{"id":4139,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4140],"locationId":196},{"id":4140,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4141],"locationId":196},{"id":4141,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4142],"locationId":196},{"id":4142,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4143],"locationId":196},{"id":4143,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4144],"locationId":196},{"id":4144,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4145],"locationId":196},{"id":4145,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4146],"locationId":196},{"id":4146,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4147],"locationId":196},{"id":4147,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4148],"locationId":196},{"id":4148,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4149],"locationId":196},{"id":4149,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4150],"locationId":196},{"id":4150,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4151],"locationId":196},{"id":4151,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4152],"locationId":196},{"id":4152,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4153],"locationId":196},{"id":4153,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4154],"locationId":196},{"id":4154,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4155],"locationId":196},{"id":4155,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4156],"locationId":196},{"id":4156,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4157],"locationId":196},{"id":4157,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4158],"locationId":196},{"id":4158,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4159],"locationId":196},{"id":4159,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4160],"locationId":196},{"id":4160,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4161],"locationId":196},{"id":4161,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4162],"locationId":196},{"id":4162,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4163],"locationId":196},{"id":4163,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4164],"locationId":196},{"id":4164,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4165],"locationId":196},{"id":4165,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4166],"locationId":196},{"id":4166,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4167],"locationId":196},{"id":4167,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4168],"locationId":196},{"id":4168,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4169],"locationId":196},{"id":4169,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4170],"locationId":196},{"id":4170,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4171],"locationId":196},{"id":4171,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4172],"locationId":196},{"id":4172,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4173],"locationId":196},{"id":4173,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4174],"locationId":196},{"id":4174,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4175],"locationId":196},{"id":4175,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4176],"locationId":196},{"id":4176,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4177],"locationId":196},{"id":4177,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4178],"locationId":196},{"id":4178,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4179],"locationId":196},{"id":4179,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4180],"locationId":196},{"id":4180,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4181],"locationId":196},{"id":4181,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4182],"locationId":196},{"id":4182,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4183],"locationId":196},{"id":4183,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4184],"locationId":196},{"id":4184,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4185],"locationId":196},{"id":4185,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4186],"locationId":196},{"id":4186,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4187],"locationId":196},{"id":4187,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4188],"locationId":196},{"id":4188,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4189],"locationId":196},{"id":4189,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4190],"locationId":196},{"id":4190,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4191],"locationId":196},{"id":4191,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4192],"locationId":196},{"id":4192,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4193],"locationId":196},{"id":4193,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4194],"locationId":196},{"id":4194,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4195],"locationId":196},{"id":4195,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4196],"locationId":196},{"id":4196,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4197],"locationId":196},{"id":4197,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4198],"locationId":196},{"id":4198,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4199],"locationId":196},{"id":4199,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4200],"locationId":196},{"id":4200,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4201],"locationId":196},{"id":4201,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4202],"locationId":196},{"id":4202,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4203],"locationId":196},{"id":4203,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4204],"locationId":196},{"id":4204,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4205],"locationId":196},{"id":4205,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4206],"locationId":196},{"id":4206,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4207],"locationId":196},{"id":4207,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4208],"locationId":196},{"id":4208,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4209],"locationId":196},{"id":4209,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4210],"locationId":196},{"id":4210,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4211],"locationId":196},{"id":4211,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4212],"locationId":196},{"id":4212,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4213],"locationId":196},{"id":4213,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4214],"locationId":196},{"id":4214,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4215],"locationId":196},{"id":4215,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4216],"locationId":196},{"id":4216,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4217],"locationId":196},{"id":4217,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4218],"locationId":196},{"id":4218,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4219],"locationId":196},{"id":4219,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4220],"locationId":196},{"id":4220,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4221],"locationId":196},{"id":4221,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4222],"locationId":196},{"id":4222,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4223],"locationId":196},{"id":4223,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4224],"locationId":196},{"id":4224,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4225],"locationId":196},{"id":4225,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4226],"locationId":196},{"id":4226,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4227],"locationId":196},{"id":4227,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4228],"locationId":196},{"id":4228,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4229],"locationId":196},{"id":4229,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4230],"locationId":196},{"id":4230,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4231],"locationId":196},{"id":4231,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4232],"locationId":196},{"id":4232,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4233],"locationId":196},{"id":4233,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4234],"locationId":196},{"id":4234,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4235],"locationId":196},{"id":4235,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4236],"locationId":196},{"id":4236,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4237],"locationId":196},{"id":4237,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4238],"locationId":196},{"id":4238,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4239],"locationId":196},{"id":4239,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4240],"locationId":196},{"id":4240,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4241],"locationId":196},{"id":4241,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4242],"locationId":196},{"id":4242,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4243],"locationId":196},{"id":4243,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4244],"locationId":196},{"id":4244,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4245],"locationId":196},{"id":4245,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4246],"locationId":196},{"id":4246,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4247],"locationId":196},{"id":4247,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4248],"locationId":196},{"id":4248,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4249],"locationId":196},{"id":4249,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4250],"locationId":196},{"id":4250,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4251],"locationId":196},{"id":4251,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4252],"locationId":196},{"id":4252,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4253],"locationId":196},{"id":4253,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4254],"locationId":196},{"id":4254,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4255],"locationId":196},{"id":4255,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4256],"locationId":196},{"id":4256,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4257],"locationId":196},{"id":4257,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4258],"locationId":196},{"id":4258,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4259],"locationId":196},{"id":4259,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4260],"locationId":196},{"id":4260,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4261],"locationId":196},{"id":4261,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4262],"locationId":196},{"id":4262,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4263],"locationId":196},{"id":4263,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4264],"locationId":196},{"id":4264,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4265],"locationId":196},{"id":4265,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4266],"locationId":196},{"id":4266,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4267],"locationId":196},{"id":4267,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4268],"locationId":196},{"id":4268,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4269],"locationId":196},{"id":4269,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4270],"locationId":196},{"id":4270,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4271],"locationId":196},{"id":4271,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4272],"locationId":196},{"id":4272,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4273],"locationId":196},{"id":4273,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4274],"locationId":196},{"id":4274,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4275],"locationId":196},{"id":4275,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4276],"locationId":196},{"id":4276,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4277],"locationId":196},{"id":4277,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4278],"locationId":196},{"id":4278,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4279],"locationId":196},{"id":4279,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4280],"locationId":196},{"id":4280,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4281],"locationId":196},{"id":4281,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4282],"locationId":196},{"id":4282,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4283],"locationId":196},{"id":4283,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4284],"locationId":196},{"id":4284,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4285],"locationId":196},{"id":4285,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4286],"locationId":196},{"id":4286,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4287],"locationId":196},{"id":4287,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4288],"locationId":196},{"id":4288,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4289],"locationId":196},{"id":4289,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4290],"locationId":196},{"id":4290,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4291],"locationId":196},{"id":4291,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4292],"locationId":196},{"id":4292,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4293],"locationId":196},{"id":4293,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4294],"locationId":196},{"id":4294,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4295],"locationId":196},{"id":4295,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4296],"locationId":196},{"id":4296,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4297],"locationId":196},{"id":4297,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4298],"locationId":196},{"id":4298,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4299],"locationId":196},{"id":4299,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4300],"locationId":196},{"id":4300,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4301],"locationId":196},{"id":4301,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4302],"locationId":196},{"id":4302,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4303],"locationId":196},{"id":4303,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4304],"locationId":196},{"id":4304,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4305],"locationId":196},{"id":4305,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4306],"locationId":196},{"id":4306,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4307],"locationId":196},{"id":4307,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4308],"locationId":196},{"id":4308,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4309],"locationId":196},{"id":4309,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4310],"locationId":196},{"id":4310,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4311],"locationId":196},{"id":4311,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4312],"locationId":196},{"id":4312,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4313],"locationId":196},{"id":4313,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4314],"locationId":196},{"id":4314,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4315],"locationId":196},{"id":4315,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4316],"locationId":196},{"id":4316,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4317],"locationId":196},{"id":4317,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4318],"locationId":196},{"id":4318,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4319],"locationId":196},{"id":4319,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4320],"locationId":196},{"id":4320,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4321],"locationId":196},{"id":4321,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4322],"locationId":196},{"id":4322,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4323],"locationId":196},{"id":4323,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4324],"locationId":196},{"id":4324,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4325],"locationId":196},{"id":4325,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4326],"locationId":196},{"id":4326,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4327],"locationId":196},{"id":4327,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4328],"locationId":196},{"id":4328,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4329],"locationId":196},{"id":4329,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4330],"locationId":196},{"id":4330,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4331],"locationId":196},{"id":4331,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4332],"locationId":196},{"id":4332,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4333],"locationId":196},{"id":4333,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4334],"locationId":196},{"id":4334,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4335],"locationId":196},{"id":4335,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4336],"locationId":196},{"id":4336,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4337],"locationId":196},{"id":4337,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4338],"locationId":196},{"id":4338,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4339],"locationId":196},{"id":4339,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4340],"locationId":196},{"id":4340,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4341],"locationId":196},{"id":4341,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4342],"locationId":196},{"id":4342,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4343],"locationId":196},{"id":4343,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4344],"locationId":196},{"id":4344,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4345],"locationId":196},{"id":4345,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4346],"locationId":196},{"id":4346,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4347],"locationId":196},{"id":4347,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4348],"locationId":196},{"id":4348,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4349],"locationId":196},{"id":4349,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4350],"locationId":196},{"id":4350,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4351],"locationId":196},{"id":4351,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4352],"locationId":196},{"id":4352,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4353],"locationId":196},{"id":4353,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4354],"locationId":196},{"id":4354,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4355],"locationId":196},{"id":4355,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4356],"locationId":196},{"id":4356,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4357],"locationId":196},{"id":4357,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4358],"locationId":196},{"id":4358,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4359],"locationId":196},{"id":4359,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4360],"locationId":196},{"id":4360,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4361],"locationId":196},{"id":4361,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4362],"locationId":196},{"id":4362,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4363],"locationId":196},{"id":4363,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4364],"locationId":196},{"id":4364,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4365],"locationId":196},{"id":4365,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4366],"locationId":196},{"id":4366,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4367],"locationId":196},{"id":4367,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4368],"locationId":196},{"id":4368,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4369],"locationId":196},{"id":4369,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4370],"locationId":196},{"id":4370,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4371],"locationId":196},{"id":4371,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4372],"locationId":196},{"id":4372,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4373],"locationId":196},{"id":4373,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4374],"locationId":196},{"id":4374,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4375],"locationId":196},{"id":4375,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4376],"locationId":196},{"id":4376,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4377],"locationId":196},{"id":4377,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4378],"locationId":196},{"id":4378,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4379],"locationId":196},{"id":4379,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4380],"locationId":196},{"id":4380,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4381],"locationId":196},{"id":4381,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4382],"locationId":196},{"id":4382,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":2848,"callFrame":{"functionName":"toDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":832,"columnNumber":29},"hitCount":0,"children":[2849],"locationId":6},{"id":2849,"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":607,"columnNumber":33},"hitCount":0,"children":[2850,3876],"locationId":9},{"id":2850,"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":47,"columnNumber":39},"hitCount":0,"children":[2851],"locationId":36},{"id":2851,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":0,"children":[2852],"locationId":62},{"id":2852,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2853],"locationId":196},{"id":2853,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2854],"locationId":196},{"id":2854,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2855],"locationId":196},{"id":2855,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2856],"locationId":196},{"id":2856,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2857],"locationId":196},{"id":2857,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2858],"locationId":196},{"id":2858,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2859],"locationId":196},{"id":2859,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2860],"locationId":196},{"id":2860,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2861],"locationId":196},{"id":2861,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2862],"locationId":196},{"id":2862,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2863],"locationId":196},{"id":2863,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2864],"locationId":196},{"id":2864,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2865],"locationId":196},{"id":2865,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2866],"locationId":196},{"id":2866,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2867],"locationId":196},{"id":2867,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2868],"locationId":196},{"id":2868,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2869],"locationId":196},{"id":2869,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2870],"locationId":196},{"id":2870,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2871],"locationId":196},{"id":2871,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2872],"locationId":196},{"id":2872,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2873],"locationId":196},{"id":2873,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2874],"locationId":196},{"id":2874,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2875],"locationId":196},{"id":2875,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2876],"locationId":196},{"id":2876,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2877],"locationId":196},{"id":2877,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2878],"locationId":196},{"id":2878,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2879],"locationId":196},{"id":2879,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2880],"locationId":196},{"id":2880,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2881],"locationId":196},{"id":2881,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2882],"locationId":196},{"id":2882,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2883],"locationId":196},{"id":2883,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2884],"locationId":196},{"id":2884,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2885],"locationId":196},{"id":2885,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2886],"locationId":196},{"id":2886,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2887],"locationId":196},{"id":2887,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2888],"locationId":196},{"id":2888,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2889],"locationId":196},{"id":2889,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2890],"locationId":196},{"id":2890,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2891],"locationId":196},{"id":2891,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2892],"locationId":196},{"id":2892,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2893],"locationId":196},{"id":2893,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2894],"locationId":196},{"id":2894,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2895],"locationId":196},{"id":2895,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2896],"locationId":196},{"id":2896,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2897],"locationId":196},{"id":2897,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2898],"locationId":196},{"id":2898,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2899],"locationId":196},{"id":2899,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2900],"locationId":196},{"id":2900,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2901],"locationId":196},{"id":2901,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2902],"locationId":196},{"id":2902,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2903],"locationId":196},{"id":2903,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2904],"locationId":196},{"id":2904,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2905],"locationId":196},{"id":2905,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2906],"locationId":196},{"id":2906,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2907],"locationId":196},{"id":2907,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2908],"locationId":196},{"id":2908,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2909],"locationId":196},{"id":2909,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2910],"locationId":196},{"id":2910,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2911],"locationId":196},{"id":2911,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2912],"locationId":196},{"id":2912,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2913],"locationId":196},{"id":2913,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2914],"locationId":196},{"id":2914,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2915],"locationId":196},{"id":2915,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2916],"locationId":196},{"id":2916,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2917],"locationId":196},{"id":2917,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2918],"locationId":196},{"id":2918,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2919],"locationId":196},{"id":2919,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2920],"locationId":196},{"id":2920,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2921],"locationId":196},{"id":2921,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2922],"locationId":196},{"id":2922,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2923],"locationId":196},{"id":2923,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2924],"locationId":196},{"id":2924,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2925],"locationId":196},{"id":2925,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2926],"locationId":196},{"id":2926,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2927],"locationId":196},{"id":2927,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2928],"locationId":196},{"id":2928,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2929],"locationId":196},{"id":2929,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2930],"locationId":196},{"id":2930,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2931],"locationId":196},{"id":2931,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2932],"locationId":196},{"id":2932,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2933],"locationId":196},{"id":2933,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2934],"locationId":196},{"id":2934,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2935],"locationId":196},{"id":2935,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2936],"locationId":196},{"id":2936,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2937],"locationId":196},{"id":2937,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2938],"locationId":196},{"id":2938,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2939],"locationId":196},{"id":2939,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2940],"locationId":196},{"id":2940,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2941],"locationId":196},{"id":2941,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2942],"locationId":196},{"id":2942,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2943],"locationId":196},{"id":2943,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2944],"locationId":196},{"id":2944,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2945],"locationId":196},{"id":2945,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2946],"locationId":196},{"id":2946,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2947],"locationId":196},{"id":2947,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2948],"locationId":196},{"id":2948,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2949],"locationId":196},{"id":2949,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2950],"locationId":196},{"id":2950,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2951],"locationId":196},{"id":2951,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2952],"locationId":196},{"id":2952,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2953],"locationId":196},{"id":2953,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2954],"locationId":196},{"id":2954,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2955],"locationId":196},{"id":2955,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2956],"locationId":196},{"id":2956,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2957],"locationId":196},{"id":2957,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2958],"locationId":196},{"id":2958,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2959],"locationId":196},{"id":2959,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2960],"locationId":196},{"id":2960,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2961],"locationId":196},{"id":2961,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2962],"locationId":196},{"id":2962,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2963],"locationId":196},{"id":2963,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2964],"locationId":196},{"id":2964,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2965],"locationId":196},{"id":2965,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2966],"locationId":196},{"id":2966,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2967],"locationId":196},{"id":2967,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2968],"locationId":196},{"id":2968,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2969],"locationId":196},{"id":2969,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2970],"locationId":196},{"id":2970,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2971],"locationId":196},{"id":2971,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2972],"locationId":196},{"id":2972,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2973],"locationId":196},{"id":2973,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2974],"locationId":196},{"id":2974,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2975],"locationId":196},{"id":2975,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2976],"locationId":196},{"id":2976,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2977],"locationId":196},{"id":2977,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2978],"locationId":196},{"id":2978,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2979],"locationId":196},{"id":2979,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2980],"locationId":196},{"id":2980,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2981],"locationId":196},{"id":2981,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2982],"locationId":196},{"id":2982,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2983],"locationId":196},{"id":2983,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2984],"locationId":196},{"id":2984,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2985],"locationId":196},{"id":2985,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2986],"locationId":196},{"id":2986,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2987],"locationId":196},{"id":2987,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2988],"locationId":196},{"id":2988,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2989],"locationId":196},{"id":2989,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2990],"locationId":196},{"id":2990,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2991],"locationId":196},{"id":2991,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2992],"locationId":196},{"id":2992,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2993],"locationId":196},{"id":2993,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2994],"locationId":196},{"id":2994,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2995],"locationId":196},{"id":2995,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2996],"locationId":196},{"id":2996,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2997],"locationId":196},{"id":2997,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2998],"locationId":196},{"id":2998,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[2999],"locationId":196},{"id":2999,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3000],"locationId":196},{"id":3000,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3001],"locationId":196},{"id":3001,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3002],"locationId":196},{"id":3002,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3003],"locationId":196},{"id":3003,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3004],"locationId":196},{"id":3004,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3005],"locationId":196},{"id":3005,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3006],"locationId":196},{"id":3006,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3007],"locationId":196},{"id":3007,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3008],"locationId":196},{"id":3008,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3009],"locationId":196},{"id":3009,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3010],"locationId":196},{"id":3010,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3011],"locationId":196},{"id":3011,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3012],"locationId":196},{"id":3012,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3013],"locationId":196},{"id":3013,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3014],"locationId":196},{"id":3014,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3015],"locationId":196},{"id":3015,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3016],"locationId":196},{"id":3016,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3017],"locationId":196},{"id":3017,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3018],"locationId":196},{"id":3018,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3019],"locationId":196},{"id":3019,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3020],"locationId":196},{"id":3020,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3021],"locationId":196},{"id":3021,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3022],"locationId":196},{"id":3022,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3023],"locationId":196},{"id":3023,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3024],"locationId":196},{"id":3024,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3025],"locationId":196},{"id":3025,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3026],"locationId":196},{"id":3026,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3027],"locationId":196},{"id":3027,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3028],"locationId":196},{"id":3028,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3029],"locationId":196},{"id":3029,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3030],"locationId":196},{"id":3030,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3031],"locationId":196},{"id":3031,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3032],"locationId":196},{"id":3032,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3033],"locationId":196},{"id":3033,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3034],"locationId":196},{"id":3034,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3035],"locationId":196},{"id":3035,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3036],"locationId":196},{"id":3036,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3037],"locationId":196},{"id":3037,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3038],"locationId":196},{"id":3038,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3039],"locationId":196},{"id":3039,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3040],"locationId":196},{"id":3040,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3041],"locationId":196},{"id":3041,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3042],"locationId":196},{"id":3042,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3043],"locationId":196},{"id":3043,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3044],"locationId":196},{"id":3044,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3045],"locationId":196},{"id":3045,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3046],"locationId":196},{"id":3046,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3047],"locationId":196},{"id":3047,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3048],"locationId":196},{"id":3048,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3049],"locationId":196},{"id":3049,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3050],"locationId":196},{"id":3050,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3051],"locationId":196},{"id":3051,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3052],"locationId":196},{"id":3052,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3053],"locationId":196},{"id":3053,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3054],"locationId":196},{"id":3054,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3055],"locationId":196},{"id":3055,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3056],"locationId":196},{"id":3056,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3057],"locationId":196},{"id":3057,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3058],"locationId":196},{"id":3058,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3059],"locationId":196},{"id":3059,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3060],"locationId":196},{"id":3060,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3061],"locationId":196},{"id":3061,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3062],"locationId":196},{"id":3062,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3063],"locationId":196},{"id":3063,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3064],"locationId":196},{"id":3064,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3065],"locationId":196},{"id":3065,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3066],"locationId":196},{"id":3066,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3067],"locationId":196},{"id":3067,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3068],"locationId":196},{"id":3068,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3069],"locationId":196},{"id":3069,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3070],"locationId":196},{"id":3070,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3071],"locationId":196},{"id":3071,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3072],"locationId":196},{"id":3072,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3073],"locationId":196},{"id":3073,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3074],"locationId":196},{"id":3074,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3075],"locationId":196},{"id":3075,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3076],"locationId":196},{"id":3076,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3077],"locationId":196},{"id":3077,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3078],"locationId":196},{"id":3078,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3079],"locationId":196},{"id":3079,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3080],"locationId":196},{"id":3080,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3081],"locationId":196},{"id":3081,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3082],"locationId":196},{"id":3082,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3083],"locationId":196},{"id":3083,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3084],"locationId":196},{"id":3084,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3085],"locationId":196},{"id":3085,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3086],"locationId":196},{"id":3086,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3087],"locationId":196},{"id":3087,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3088],"locationId":196},{"id":3088,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3089],"locationId":196},{"id":3089,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3090],"locationId":196},{"id":3090,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3091],"locationId":196},{"id":3091,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3092],"locationId":196},{"id":3092,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3093],"locationId":196},{"id":3093,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3094],"locationId":196},{"id":3094,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3095],"locationId":196},{"id":3095,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3096],"locationId":196},{"id":3096,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3097],"locationId":196},{"id":3097,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3098],"locationId":196},{"id":3098,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3099],"locationId":196},{"id":3099,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3100],"locationId":196},{"id":3100,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3101],"locationId":196},{"id":3101,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3102],"locationId":196},{"id":3102,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"children":[3626],"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":3626,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":3876,"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":607,"columnNumber":33},"hitCount":0,"children":[3877],"locationId":9},{"id":3877,"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":47,"columnNumber":39},"hitCount":0,"children":[3878],"locationId":36},{"id":3878,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":0,"children":[3879],"locationId":62},{"id":3879,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3880],"locationId":196},{"id":3880,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3881],"locationId":196},{"id":3881,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3882],"locationId":196},{"id":3882,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3883],"locationId":196},{"id":3883,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3884],"locationId":196},{"id":3884,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3885],"locationId":196},{"id":3885,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3886],"locationId":196},{"id":3886,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3887],"locationId":196},{"id":3887,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3888],"locationId":196},{"id":3888,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3889],"locationId":196},{"id":3889,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3890],"locationId":196},{"id":3890,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3891],"locationId":196},{"id":3891,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3892],"locationId":196},{"id":3892,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3893],"locationId":196},{"id":3893,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3894],"locationId":196},{"id":3894,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3895],"locationId":196},{"id":3895,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3896],"locationId":196},{"id":3896,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3897],"locationId":196},{"id":3897,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3898],"locationId":196},{"id":3898,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3899],"locationId":196},{"id":3899,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3900],"locationId":196},{"id":3900,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3901],"locationId":196},{"id":3901,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3902],"locationId":196},{"id":3902,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3903],"locationId":196},{"id":3903,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3904],"locationId":196},{"id":3904,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3905],"locationId":196},{"id":3905,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3906],"locationId":196},{"id":3906,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3907],"locationId":196},{"id":3907,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3908],"locationId":196},{"id":3908,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3909],"locationId":196},{"id":3909,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3910],"locationId":196},{"id":3910,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3911],"locationId":196},{"id":3911,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3912],"locationId":196},{"id":3912,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3913],"locationId":196},{"id":3913,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3914],"locationId":196},{"id":3914,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3915],"locationId":196},{"id":3915,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3916],"locationId":196},{"id":3916,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3917],"locationId":196},{"id":3917,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3918],"locationId":196},{"id":3918,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3919],"locationId":196},{"id":3919,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3920],"locationId":196},{"id":3920,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3921],"locationId":196},{"id":3921,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3922],"locationId":196},{"id":3922,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3923],"locationId":196},{"id":3923,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3924],"locationId":196},{"id":3924,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3925],"locationId":196},{"id":3925,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3926],"locationId":196},{"id":3926,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3927],"locationId":196},{"id":3927,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3928],"locationId":196},{"id":3928,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3929],"locationId":196},{"id":3929,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3930],"locationId":196},{"id":3930,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3931],"locationId":196},{"id":3931,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3932],"locationId":196},{"id":3932,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3933],"locationId":196},{"id":3933,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3934],"locationId":196},{"id":3934,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3935],"locationId":196},{"id":3935,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3936],"locationId":196},{"id":3936,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3937],"locationId":196},{"id":3937,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3938],"locationId":196},{"id":3938,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3939],"locationId":196},{"id":3939,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3940],"locationId":196},{"id":3940,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3941],"locationId":196},{"id":3941,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3942],"locationId":196},{"id":3942,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3943],"locationId":196},{"id":3943,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3944],"locationId":196},{"id":3944,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3945],"locationId":196},{"id":3945,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3946],"locationId":196},{"id":3946,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3947],"locationId":196},{"id":3947,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3948],"locationId":196},{"id":3948,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3949],"locationId":196},{"id":3949,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3950],"locationId":196},{"id":3950,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3951],"locationId":196},{"id":3951,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3952],"locationId":196},{"id":3952,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3953],"locationId":196},{"id":3953,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3954],"locationId":196},{"id":3954,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3955],"locationId":196},{"id":3955,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3956],"locationId":196},{"id":3956,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3957],"locationId":196},{"id":3957,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3958],"locationId":196},{"id":3958,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3959],"locationId":196},{"id":3959,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3960],"locationId":196},{"id":3960,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3961],"locationId":196},{"id":3961,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3962],"locationId":196},{"id":3962,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3963],"locationId":196},{"id":3963,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3964],"locationId":196},{"id":3964,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3965],"locationId":196},{"id":3965,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3966],"locationId":196},{"id":3966,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3967],"locationId":196},{"id":3967,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3968],"locationId":196},{"id":3968,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3969],"locationId":196},{"id":3969,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3970],"locationId":196},{"id":3970,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3971],"locationId":196},{"id":3971,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3972],"locationId":196},{"id":3972,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3973],"locationId":196},{"id":3973,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3974],"locationId":196},{"id":3974,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3975],"locationId":196},{"id":3975,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3976],"locationId":196},{"id":3976,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3977],"locationId":196},{"id":3977,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3978],"locationId":196},{"id":3978,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3979],"locationId":196},{"id":3979,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3980],"locationId":196},{"id":3980,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3981],"locationId":196},{"id":3981,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3982],"locationId":196},{"id":3982,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3983],"locationId":196},{"id":3983,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3984],"locationId":196},{"id":3984,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3985],"locationId":196},{"id":3985,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3986],"locationId":196},{"id":3986,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3987],"locationId":196},{"id":3987,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3988],"locationId":196},{"id":3988,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3989],"locationId":196},{"id":3989,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3990],"locationId":196},{"id":3990,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3991],"locationId":196},{"id":3991,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3992],"locationId":196},{"id":3992,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3993],"locationId":196},{"id":3993,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3994],"locationId":196},{"id":3994,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3995],"locationId":196},{"id":3995,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3996],"locationId":196},{"id":3996,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3997],"locationId":196},{"id":3997,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3998],"locationId":196},{"id":3998,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3999],"locationId":196},{"id":3999,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4000],"locationId":196},{"id":4000,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4001],"locationId":196},{"id":4001,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4002],"locationId":196},{"id":4002,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4003],"locationId":196},{"id":4003,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4004],"locationId":196},{"id":4004,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4005],"locationId":196},{"id":4005,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4006],"locationId":196},{"id":4006,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4007],"locationId":196},{"id":4007,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4008],"locationId":196},{"id":4008,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4009],"locationId":196},{"id":4009,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4010],"locationId":196},{"id":4010,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4011],"locationId":196},{"id":4011,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4012],"locationId":196},{"id":4012,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4013],"locationId":196},{"id":4013,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4014],"locationId":196},{"id":4014,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4015],"locationId":196},{"id":4015,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4016],"locationId":196},{"id":4016,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4017],"locationId":196},{"id":4017,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4018],"locationId":196},{"id":4018,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4019],"locationId":196},{"id":4019,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4020],"locationId":196},{"id":4020,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4021],"locationId":196},{"id":4021,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4022],"locationId":196},{"id":4022,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4023],"locationId":196},{"id":4023,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4024],"locationId":196},{"id":4024,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4025],"locationId":196},{"id":4025,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4026],"locationId":196},{"id":4026,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4027],"locationId":196},{"id":4027,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4028],"locationId":196},{"id":4028,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4029],"locationId":196},{"id":4029,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4030],"locationId":196},{"id":4030,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4031],"locationId":196},{"id":4031,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4032],"locationId":196},{"id":4032,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4033],"locationId":196},{"id":4033,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4034],"locationId":196},{"id":4034,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4035],"locationId":196},{"id":4035,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4036],"locationId":196},{"id":4036,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4037],"locationId":196},{"id":4037,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4038],"locationId":196},{"id":4038,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4039],"locationId":196},{"id":4039,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4040],"locationId":196},{"id":4040,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4041],"locationId":196},{"id":4041,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4042],"locationId":196},{"id":4042,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4043],"locationId":196},{"id":4043,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4044],"locationId":196},{"id":4044,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4045],"locationId":196},{"id":4045,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4046],"locationId":196},{"id":4046,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4047],"locationId":196},{"id":4047,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4048],"locationId":196},{"id":4048,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4049],"locationId":196},{"id":4049,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4050],"locationId":196},{"id":4050,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4051],"locationId":196},{"id":4051,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4052],"locationId":196},{"id":4052,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4053],"locationId":196},{"id":4053,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4054],"locationId":196},{"id":4054,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4055],"locationId":196},{"id":4055,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4056],"locationId":196},{"id":4056,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4057],"locationId":196},{"id":4057,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4058],"locationId":196},{"id":4058,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4059],"locationId":196},{"id":4059,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4060],"locationId":196},{"id":4060,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4061],"locationId":196},{"id":4061,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4062],"locationId":196},{"id":4062,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4063],"locationId":196},{"id":4063,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4064],"locationId":196},{"id":4064,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4065],"locationId":196},{"id":4065,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4066],"locationId":196},{"id":4066,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4067],"locationId":196},{"id":4067,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4068],"locationId":196},{"id":4068,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4069],"locationId":196},{"id":4069,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4070],"locationId":196},{"id":4070,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4071],"locationId":196},{"id":4071,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4072],"locationId":196},{"id":4072,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4073],"locationId":196},{"id":4073,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4074],"locationId":196},{"id":4074,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4075],"locationId":196},{"id":4075,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4076],"locationId":196},{"id":4076,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4077],"locationId":196},{"id":4077,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4078],"locationId":196},{"id":4078,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4079],"locationId":196},{"id":4079,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4080],"locationId":196},{"id":4080,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4081],"locationId":196},{"id":4081,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4082],"locationId":196},{"id":4082,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4083],"locationId":196},{"id":4083,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4084],"locationId":196},{"id":4084,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4085],"locationId":196},{"id":4085,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4086],"locationId":196},{"id":4086,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4087],"locationId":196},{"id":4087,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4088],"locationId":196},{"id":4088,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4089],"locationId":196},{"id":4089,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4090],"locationId":196},{"id":4090,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4091],"locationId":196},{"id":4091,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4092],"locationId":196},{"id":4092,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4093],"locationId":196},{"id":4093,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4094],"locationId":196},{"id":4094,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4095],"locationId":196},{"id":4095,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4096],"locationId":196},{"id":4096,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4097],"locationId":196},{"id":4097,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4098],"locationId":196},{"id":4098,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4099],"locationId":196},{"id":4099,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4100],"locationId":196},{"id":4100,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4101],"locationId":196},{"id":4101,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4102],"locationId":196},{"id":4102,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4103],"locationId":196},{"id":4103,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4104],"locationId":196},{"id":4104,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4105],"locationId":196},{"id":4105,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4106],"locationId":196},{"id":4106,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4107],"locationId":196},{"id":4107,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4108],"locationId":196},{"id":4108,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4109],"locationId":196},{"id":4109,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4110],"locationId":196},{"id":4110,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4111],"locationId":196},{"id":4111,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4112],"locationId":196},{"id":4112,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4113],"locationId":196},{"id":4113,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4114],"locationId":196},{"id":4114,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4115],"locationId":196},{"id":4115,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4116],"locationId":196},{"id":4116,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4117],"locationId":196},{"id":4117,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4118],"locationId":196},{"id":4118,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4119],"locationId":196},{"id":4119,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4120],"locationId":196},{"id":4120,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4121],"locationId":196},{"id":4121,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4122],"locationId":196},{"id":4122,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4123],"locationId":196},{"id":4123,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4124],"locationId":196},{"id":4124,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4125],"locationId":196},{"id":4125,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4126],"locationId":196},{"id":4126,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4127],"locationId":196},{"id":4127,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[4128],"locationId":196},{"id":4128,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196},{"id":3107,"callFrame":{"functionName":"","scriptId":"498","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/test/profile.js","lineNumber":-1,"columnNumber":-1},"hitCount":0,"children":[3108],"locationId":3},{"id":3108,"callFrame":{"functionName":"toDDL","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":483,"columnNumber":21},"hitCount":0,"children":[3109],"locationId":4},{"id":3109,"callFrame":{"functionName":"Parsed.getDDL","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":336,"columnNumber":31},"hitCount":0,"children":[3110],"locationId":5},{"id":3110,"callFrame":{"functionName":"toDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":832,"columnNumber":29},"hitCount":0,"children":[3111],"locationId":6},{"id":3111,"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":607,"columnNumber":33},"hitCount":0,"children":[3112],"locationId":9},{"id":3112,"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":47,"columnNumber":39},"hitCount":0,"children":[3113],"locationId":36},{"id":3113,"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"hitCount":0,"children":[3114],"locationId":62},{"id":3114,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3115],"locationId":196},{"id":3115,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3116],"locationId":196},{"id":3116,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3117],"locationId":196},{"id":3117,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3118],"locationId":196},{"id":3118,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3119],"locationId":196},{"id":3119,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3120],"locationId":196},{"id":3120,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3121],"locationId":196},{"id":3121,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3122],"locationId":196},{"id":3122,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3123],"locationId":196},{"id":3123,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3124],"locationId":196},{"id":3124,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3125],"locationId":196},{"id":3125,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3126],"locationId":196},{"id":3126,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3127],"locationId":196},{"id":3127,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3128],"locationId":196},{"id":3128,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3129],"locationId":196},{"id":3129,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3130],"locationId":196},{"id":3130,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3131],"locationId":196},{"id":3131,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3132],"locationId":196},{"id":3132,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3133],"locationId":196},{"id":3133,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3134],"locationId":196},{"id":3134,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3135],"locationId":196},{"id":3135,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3136],"locationId":196},{"id":3136,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3137],"locationId":196},{"id":3137,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3138],"locationId":196},{"id":3138,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3139],"locationId":196},{"id":3139,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3140],"locationId":196},{"id":3140,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3141],"locationId":196},{"id":3141,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3142],"locationId":196},{"id":3142,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3143],"locationId":196},{"id":3143,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3144],"locationId":196},{"id":3144,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3145],"locationId":196},{"id":3145,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3146],"locationId":196},{"id":3146,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3147],"locationId":196},{"id":3147,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3148],"locationId":196},{"id":3148,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3149],"locationId":196},{"id":3149,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3150],"locationId":196},{"id":3150,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3151],"locationId":196},{"id":3151,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3152],"locationId":196},{"id":3152,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3153],"locationId":196},{"id":3153,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3154],"locationId":196},{"id":3154,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3155],"locationId":196},{"id":3155,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3156],"locationId":196},{"id":3156,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3157],"locationId":196},{"id":3157,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3158],"locationId":196},{"id":3158,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3159],"locationId":196},{"id":3159,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3160],"locationId":196},{"id":3160,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3161],"locationId":196},{"id":3161,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3162],"locationId":196},{"id":3162,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3163],"locationId":196},{"id":3163,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3164],"locationId":196},{"id":3164,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3165],"locationId":196},{"id":3165,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3166],"locationId":196},{"id":3166,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3167],"locationId":196},{"id":3167,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3168],"locationId":196},{"id":3168,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3169],"locationId":196},{"id":3169,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3170],"locationId":196},{"id":3170,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3171],"locationId":196},{"id":3171,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3172],"locationId":196},{"id":3172,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3173],"locationId":196},{"id":3173,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3174],"locationId":196},{"id":3174,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3175],"locationId":196},{"id":3175,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3176],"locationId":196},{"id":3176,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3177],"locationId":196},{"id":3177,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3178],"locationId":196},{"id":3178,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3179],"locationId":196},{"id":3179,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3180],"locationId":196},{"id":3180,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3181],"locationId":196},{"id":3181,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3182],"locationId":196},{"id":3182,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3183],"locationId":196},{"id":3183,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3184],"locationId":196},{"id":3184,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3185],"locationId":196},{"id":3185,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3186],"locationId":196},{"id":3186,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3187],"locationId":196},{"id":3187,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3188],"locationId":196},{"id":3188,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3189],"locationId":196},{"id":3189,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3190],"locationId":196},{"id":3190,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3191],"locationId":196},{"id":3191,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3192],"locationId":196},{"id":3192,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3193],"locationId":196},{"id":3193,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3194],"locationId":196},{"id":3194,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3195],"locationId":196},{"id":3195,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3196],"locationId":196},{"id":3196,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3197],"locationId":196},{"id":3197,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3198],"locationId":196},{"id":3198,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3199],"locationId":196},{"id":3199,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3200],"locationId":196},{"id":3200,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3201],"locationId":196},{"id":3201,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3202],"locationId":196},{"id":3202,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3203],"locationId":196},{"id":3203,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3204],"locationId":196},{"id":3204,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3205],"locationId":196},{"id":3205,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3206],"locationId":196},{"id":3206,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3207],"locationId":196},{"id":3207,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3208],"locationId":196},{"id":3208,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3209],"locationId":196},{"id":3209,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3210],"locationId":196},{"id":3210,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3211],"locationId":196},{"id":3211,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3212],"locationId":196},{"id":3212,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3213],"locationId":196},{"id":3213,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3214],"locationId":196},{"id":3214,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3215],"locationId":196},{"id":3215,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3216],"locationId":196},{"id":3216,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3217],"locationId":196},{"id":3217,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3218],"locationId":196},{"id":3218,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3219],"locationId":196},{"id":3219,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3220],"locationId":196},{"id":3220,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3221],"locationId":196},{"id":3221,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3222],"locationId":196},{"id":3222,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3223],"locationId":196},{"id":3223,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3224],"locationId":196},{"id":3224,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3225],"locationId":196},{"id":3225,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3226],"locationId":196},{"id":3226,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3227],"locationId":196},{"id":3227,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3228],"locationId":196},{"id":3228,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3229],"locationId":196},{"id":3229,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3230],"locationId":196},{"id":3230,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3231],"locationId":196},{"id":3231,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3232],"locationId":196},{"id":3232,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3233],"locationId":196},{"id":3233,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3234],"locationId":196},{"id":3234,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3235],"locationId":196},{"id":3235,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3236],"locationId":196},{"id":3236,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3237],"locationId":196},{"id":3237,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3238],"locationId":196},{"id":3238,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3239],"locationId":196},{"id":3239,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3240],"locationId":196},{"id":3240,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3241],"locationId":196},{"id":3241,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3242],"locationId":196},{"id":3242,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3243],"locationId":196},{"id":3243,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3244],"locationId":196},{"id":3244,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3245],"locationId":196},{"id":3245,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3246],"locationId":196},{"id":3246,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3247],"locationId":196},{"id":3247,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3248],"locationId":196},{"id":3248,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3249],"locationId":196},{"id":3249,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3250],"locationId":196},{"id":3250,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3251],"locationId":196},{"id":3251,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3252],"locationId":196},{"id":3252,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3253],"locationId":196},{"id":3253,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3254],"locationId":196},{"id":3254,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3255],"locationId":196},{"id":3255,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3256],"locationId":196},{"id":3256,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3257],"locationId":196},{"id":3257,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3258],"locationId":196},{"id":3258,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3259],"locationId":196},{"id":3259,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3260],"locationId":196},{"id":3260,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3261],"locationId":196},{"id":3261,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3262],"locationId":196},{"id":3262,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3263],"locationId":196},{"id":3263,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3264],"locationId":196},{"id":3264,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3265],"locationId":196},{"id":3265,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3266],"locationId":196},{"id":3266,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3267],"locationId":196},{"id":3267,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3268],"locationId":196},{"id":3268,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3269],"locationId":196},{"id":3269,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3270],"locationId":196},{"id":3270,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3271],"locationId":196},{"id":3271,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3272],"locationId":196},{"id":3272,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3273],"locationId":196},{"id":3273,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3274],"locationId":196},{"id":3274,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3275],"locationId":196},{"id":3275,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3276],"locationId":196},{"id":3276,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3277],"locationId":196},{"id":3277,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3278],"locationId":196},{"id":3278,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3279],"locationId":196},{"id":3279,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3280],"locationId":196},{"id":3280,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3281],"locationId":196},{"id":3281,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3282],"locationId":196},{"id":3282,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3283],"locationId":196},{"id":3283,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3284],"locationId":196},{"id":3284,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3285],"locationId":196},{"id":3285,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3286],"locationId":196},{"id":3286,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3287],"locationId":196},{"id":3287,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3288],"locationId":196},{"id":3288,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3289],"locationId":196},{"id":3289,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3290],"locationId":196},{"id":3290,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3291],"locationId":196},{"id":3291,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3292],"locationId":196},{"id":3292,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3293],"locationId":196},{"id":3293,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3294],"locationId":196},{"id":3294,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3295],"locationId":196},{"id":3295,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3296],"locationId":196},{"id":3296,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3297],"locationId":196},{"id":3297,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3298],"locationId":196},{"id":3298,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3299],"locationId":196},{"id":3299,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3300],"locationId":196},{"id":3300,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3301],"locationId":196},{"id":3301,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3302],"locationId":196},{"id":3302,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3303],"locationId":196},{"id":3303,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3304],"locationId":196},{"id":3304,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3305],"locationId":196},{"id":3305,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3306],"locationId":196},{"id":3306,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3307],"locationId":196},{"id":3307,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3308],"locationId":196},{"id":3308,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3309],"locationId":196},{"id":3309,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3310],"locationId":196},{"id":3310,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3311],"locationId":196},{"id":3311,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3312],"locationId":196},{"id":3312,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3313],"locationId":196},{"id":3313,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3314],"locationId":196},{"id":3314,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3315],"locationId":196},{"id":3315,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3316],"locationId":196},{"id":3316,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3317],"locationId":196},{"id":3317,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3318],"locationId":196},{"id":3318,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3319],"locationId":196},{"id":3319,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3320],"locationId":196},{"id":3320,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3321],"locationId":196},{"id":3321,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3322],"locationId":196},{"id":3322,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3323],"locationId":196},{"id":3323,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3324],"locationId":196},{"id":3324,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3325],"locationId":196},{"id":3325,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3326],"locationId":196},{"id":3326,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3327],"locationId":196},{"id":3327,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3328],"locationId":196},{"id":3328,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3329],"locationId":196},{"id":3329,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3330],"locationId":196},{"id":3330,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3331],"locationId":196},{"id":3331,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3332],"locationId":196},{"id":3332,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3333],"locationId":196},{"id":3333,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3334],"locationId":196},{"id":3334,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3335],"locationId":196},{"id":3335,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3336],"locationId":196},{"id":3336,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3337],"locationId":196},{"id":3337,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3338],"locationId":196},{"id":3338,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3339],"locationId":196},{"id":3339,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3340],"locationId":196},{"id":3340,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3341],"locationId":196},{"id":3341,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3342],"locationId":196},{"id":3342,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3343],"locationId":196},{"id":3343,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3344],"locationId":196},{"id":3344,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3345],"locationId":196},{"id":3345,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3346],"locationId":196},{"id":3346,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3347],"locationId":196},{"id":3347,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3348],"locationId":196},{"id":3348,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3349],"locationId":196},{"id":3349,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3350],"locationId":196},{"id":3350,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3351],"locationId":196},{"id":3351,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3352],"locationId":196},{"id":3352,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3353],"locationId":196},{"id":3353,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3354],"locationId":196},{"id":3354,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3355],"locationId":196},{"id":3355,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3356],"locationId":196},{"id":3356,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3357],"locationId":196},{"id":3357,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3358],"locationId":196},{"id":3358,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3359],"locationId":196},{"id":3359,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3360],"locationId":196},{"id":3360,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":0,"children":[3361],"locationId":196},{"id":3361,"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"hitCount":1,"positionTicks":[{"line":44,"ticks":1,"startLocationId":197,"endLocationId":198}],"locationId":196}],"startTime":1896753265126,"endTime":1896779109292,"samples":[13,12,14,14,15,269,406,408,411,411,271,411,272,409,482,483,408,408,411,411,408,271,408,269,485,485,11,13,13,485,13,13,13,13,9,14,11,10,13,14,486,485,13,10,11,485,485,13,640,518,15,485,485,13,485,13,641,269,642,485,485,13,485,641,14,269,411,409,409,411,641,643,409,269,411,411,411,643,409,483,411,679,13,13,13,11,14,485,11,15,485,642,13,10,485,13,642,708,486,13,485,11,9,13,13,485,11,485,13,10,13,11,11,485,11,710,9,13,485,14,10,485,15,318,411,641,411,711,408,643,483,335,272,643,409,408,411,408,409,408,641,711,411,411,411,408,643,643,641,13,13,712,11,485,11,641,485,10,11,485,485,485,11,485,485,269,641,11,15,11,642,642,642,641,9,13,11,13,642,485,485,641,11,485,642,14,10,642,14,7,711,711,411,411,408,641,411,272,411,408,409,408,641,411,411,483,560,485,11,13,485,485,485,11,532,11,11,13,485,485,485,11,8,641,11,485,485,485,485,642,485,709,13,10,485,9,14,13,13,14,11,14,13,485,11,11,642,642,408,409,641,408,411,409,643,408,643,411,409,411,411,409,411,411,641,13,14,485,13,485,13,14,641,642,485,485,485,13,11,13,808,485,11,11,13,13,13,642,485,13,13,485,485,14,14,485,13,641,13,13,485,11,13,14,809,411,411,408,411,408,408,409,454,411,483,483,408,272,643,409,411,411,411,711,411,711,641,408,409,9,13,642,13,11,11,11,15,13,15,485,13,485,10,13,485,811,14,13,10,13,15,14,11,485,13,14,14,10,485,642,11,11,485,13,14,11,641,10,11,351,408,411,408,411,643,272,411,335,408,711,411,711,643,409,643,813,485,13,13,13,485,13,11,13,641,13,485,485,14,485,10,11,641,669,15,13,13,11,642,11,14,269,13,485,13,13,11,10,9,269,13,13,14,485,14,642,13,641,271,411,711,408,408,411,411,641,643,409,408,410,409,272,408,524,11,485,642,13,13,11,10,709,642,14,13,485,485,11,485,825,839,13,11,13,13,15,485,485,574,13,485,13,485,14,485,13,533,14,13,485,11,14,642,642,411,408,408,408,411,641,411,345,271,409,408,411,411,643,643,710,408,408,641,408,411,411,411,574,485,642,10,11,11,485,11,503,11,13,485,10,13,11,14,641,485,11,485,11,641,485,485,269,485,485,485,11,11,485,11,532,485,641,13,11,14,14,9,409,408,407,408,409,408,409,269,408,409,643,411,408,408,408,852,9,14,485,13,13,11,641,485,485,485,10,485,14,15,14,709,9,485,12,13,485,9,13,542,9,485,14,485,11,10,10,491,11,9,11,485,11,14,269,408,409,411,411,272,408,272,411,409,272,409,411,411,408,409,487,13,485,13,641,13,13,485,624,13,10,14,11,13,13,14,760,842,15,14,485,11,15,642,13,485,642,13,485,485,485,13,13,13,14,13,11,10,485,485,352,411,408,643,411,408,408,711,343,411,411,711,409,411,409,643,641,643,409,272,409,411,409,269,15,11,485,14,14,11,13,14,852,485,485,14,13,11,15,15,269,492,13,641,13,485,485,10,13,269,641,485,14,10,485,11,485,269,485,485,485,485,485,13,11,274,272,408,643,411,408,408,411,643,709,643,409,408,643,408,409,411,411,14,14,11,13,641,10,11,9,13,485,13,641,13,14,13,13,486,563,13,15,485,13,11,485,11,269,13,13,13,485,11,485,13,709,13,11,642,11,13,13,13,642,643,408,408,408,411,408,411,411,272,483,410,411,411,711,483,411,8,642,15,485,11,485,485,14,14,641,13,13,14,11,14,11,14,641,582,13,11,11,11,13,13,15,485,13,9,11,641,11,11,11,13,269,15,641,13,11,10,642,11,336,641,408,409,407,643,711,409,409,641,409,272,409,409,643,411,483,871,409,409,411,408,411,271,643,641,550,11,11,14,11,11,13,10,14,485,13,485,485,485,11,10,919,828,485,14,11,485,13,10,11,11,924,485,11,485,485,14,485,485,269,10,13,13,9,485,641,14,449,409,411,411,408,641,408,272,459,408,409,409,408,411,407,411,925,13,10,15,485,14,485,14,827,641,485,10,11,14,11,485,485,927,642,11,15,9,11,13,13,485,10,485,10,13,485,485,12,14,10,13,641,10,13,13,485,13,709,411,711,411,408,643,483,409,371,411,711,643,272,411,408,643,408,641,13,485,10,485,14,11,485,641,485,485,485,485,13,485,13,13,929,11,641,11,485,9,11,14,15,641,13,13,13,11,485,485,14,641,485,13,485,11,15,642,14,641,711,409,408,409,272,643,409,409,460,408,408,409,408,641,272,411,269,711,408,411,641,483,409,643,709,642,485,641,13,11,14,11,627,13,485,13,12,11,11,485,485,641,675,13,485,10,13,13,485,11,639,15,13,485,14,13,485,484,614,14,485,641,14,14,13,13,381,271,411,643,408,411,409,407,409,411,411,411,711,411,408,411,641,11,13,485,11,13,485,14,641,485,485,11,485,13,13,641,874,269,485,641,485,11,485,15,485,13,10,13,15,14,485,11,11,269,14,485,485,11,485,485,11,269,408,409,411,409,271,408,272,710,643,408,409,408,643,641,411,269,14,13,11,11,14,13,10,13,485,11,485,9,14,485,13,517,11,14,13,485,11,14,11,641,14,13,642,11,11,13,13,269,11,9,13,485,13,14,9,408,408,409,409,408,409,407,411,408,411,641,408,408,272,411,933,408,408,711,411,411,408,408,409,641,12,485,485,13,9,642,13,641,485,485,14,485,15,13,15,709,625,485,485,13,13,13,485,13,13,641,12,485,485,485,9,9,13,11,485,13,13,13,11,269,411,272,272,408,411,271,408,641,272,711,411,411,408,408,408,409,485,485,13,485,11,13,13,550,13,13,14,641,13,11,15,485,810,641,11,13,10,13,13,485,11,641,15,11,9,485,485,11,641,8,13,485,13,11,14,641,14,485,411,409,411,408,411,409,643,411,409,408,483,411,409,409,934,643,935,485,11,11,11,15,11,10,656,641,11,485,642,14,485,13,642,641,669,13,642,13,642,485,15,13,642,13,11,641,485,11,10,485,269,13,641,485,13,485,485,11,269,641,411,411,411,411,643,411,409,641,408,271,407,483,411,408,409,709,483,271,411,409,483,409,408,272,13,485,10,11,13,13,14,13,672,15,485,13,14,485,11,485,269,946,485,485,9,485,15,13,13,269,15,642,485,15,14,485,484,641,13,485,11,485,485,15,485,485,411,408,411,408,409,408,408,408,444,411,411,643,643,411,643,643,709,13,641,10,485,13,485,11,269,13,485,13,10,14,14,485,708,811,485,15,13,13,13,11,485,13,9,11,13,485,13,13,13,11,485,642,641,9,10,13,13,485,856,641,934,408,272,272,411,409,269,411,411,409,408,408,643,411,408,269,485,13,13,485,485,13,14,641,485,13,485,11,485,485,10,485,810,485,641,14,485,485,642,13,485,641,485,485,14,13,11,13,485,641,485,15,485,13,14,484,14,641,411,408,411,408,411,643,641,411,411,272,407,408,411,411,408,643,409,643,411,408,409,411,483,409,674,13,13,642,13,15,13,485,945,485,13,15,13,14,642,10,485,641,269,485,485,15,13,13,14,13,567,485,13,485,641,14,485,13,569,11,13,14,13,485,642,642,321,411,643,408,643,411,411,408,269,409,271,408,483,411,409,408,269,13,14,13,14,9,13,13,13,649,15,13,9,14,485,14,485,269,622,13,13,485,13,14,11,642,588,13,11,15,15,485,13,13,641,11,13,13,485,13,485,13,641,408,411,271,411,711,711,409,409,408,409,411,409,409,641,411,643,538,11,9,13,11,15,14,15,11,15,13,485,11,11,13,11,13,927,641,13,485,947,485,485,11,641,269,642,11,485,13,13,641,485,607,9,13,13,15,11,14,15,11,411,271,643,409,408,411,408,408,408,411,411,271,483,643,409,271,409,408,408,409,411,408,411,408,641,485,485,15,11,642,13,13,641,485,13,484,485,15,485,485,485,927,841,15,641,13,485,484,13,14,939,641,11,11,9,485,485,11,709,15,13,485,485,485,13,14,457,483,411,408,408,483,409,408,641,277,409,643,411,408,409,643,408,14,485,13,485,14,485,9,485,666,485,485,13,13,11,14,11,709,929,11,9,485,485,15,10,485,9,710,485,15,11,11,485,13,485,13,13,13,15,13,13,9,13,485,269,643,411,411,643,483,271,408,269,643,408,411,408,408,408,409,411,15,485,485,485,485,485,14,14,641,485,11,485,485,14,485,13,269,811,11,11,485,485,10,11,485,14,269,9,10,13,11,13,485,485,269,485,13,10,13,10,642,10,9,641,409,411,409,409,643,408,643,269,409,411,408,409,643,408,408,641,409,711,409,483,411,483,641,408,502,13,14,485,15,14,13,485,13,10,485,641,14,485,13,13,810,641,13,642,485,11,484,15,485,14,630,13,485,15,13,13,13,9,269,14,485,485,642,641,14,485,434,408,407,411,643,409,408,408,269,408,272,408,408,411,411,411,948,10,641,13,13,11,485,14,661,485,485,14,485,10,14,13,748,486,509,10,15,485,14,13,485,485,15,485,641,13,13,485,14,9,485,13,13,11,15,14,485,269,409,408,408,408,411,408,408,641,409,409,410,411,409,411,411,269,484,10,11,11,13,641,10,13,485,11,13,485,10,485,13,927,13,15,13,485,14,485,11,269,14,9,15,11,13,13,13,641,10,13,13,642,14,14,11,710,411,408,408,409,641,411,411,409,411,409,643,408,411,408,643,711,408,641,408,711,643,408,270,485,641,13,10,485,13,485,628,642,485,13,11,13,15,13,269,927,485,485,11,11,13,485,10,269,15,485,11,13,13,14,13,11,10,13,485,15,15,485,14,408,411,272,408,408,483,409,710,411,483,643,643,411,483,272,641,15,13,485,485,485,485,14,580,13,485,13,11,11,14,485,269,525,11,13,11,11,11,642,14,641,10,13,10,485,485,485,13,641,485,485,11,11,484,9,13,411,409,643,272,411,641,408,411,411,411,409,643,271,483,272,643,485,485,641,485,642,485,13,616,485,11,11,485,13,642,485,641,585,485,11,14,485,11,14,13,508,485,13,13,641,10,14,15,10,9,13,642,485,485,485,416,409,643,411,408,408,411,408,339,408,408,643,411,411,271,483,391,408,408,483,411,411,408,408,641,10,485,485,11,485,485,642,849,485,11,10,13,10,11,13,692,488,642,15,13,485,11,13,14,641,13,10,13,14,485,13,562,484,485,10,13,10,485,11,14,408,411,643,411,411,408,411,338,411,411,643,641,411,411,408,15,11,13,485,14,10,13,9,485,641,11,485,642,13,13,269,927,642,642,13,485,13,641,485,485,15,642,642,13,13,642,15,1203,485,485,11,15,14,642,14,14,711,409,409,711,408,643,411,408,411,483,411,408,408,408,411,411,13,485,10,485,485,485,15,1204,11,485,13,485,11,642,14,14,927,13,13,11,485,13,14,11,10,641,11,485,485,11,13,14,269,14,14,10,11,10,14,485,641,711,411,408,483,408,408,411,483,411,411,409,643,411,408,408,271,408,408,711,408,408,711,503,13,13,485,11,15,13,13,1214,13,641,642,9,485,485,10,269,927,485,642,13,13,14,641,11,943,11,15,10,13,11,15,13,709,14,485,13,13,485,485,642,300,408,641,643,408,408,408,407,269,408,409,272,411,711,411,272,641,485,485,13,485,485,13,13,1203,11,12,13,11,11,13,11,929,603,13,485,11,485,485,485,485,14,13,485,485,11,13,485,14,556,13,11,485,13,11,485,481,409,272,711,409,408,483,411,272,409,643,408,408,409,408,711,269,485,13,485,14,13,485,485,13,485,485,13,13,11,11,485,929,269,13,13,642,485,485,485,641,485,10,485,485,10,13,13,485,13,485,12,11,641,11,11,14,271,711,411,643,411,643,408,311,411,411,408,408,408,408,408,709,641,411,409,408,409,272,411,641,484,13,484,642,15,9,11,633,13,13,13,13,13,485,9,914,929,11,13,10,11,10,11,13,536,485,642,13,11,13,642,485,641,11,485,11,485,14,10,642,272,408,411,643,272,408,409,272,272,411,408,408,643,641,411,411,13,13,485,10,641,13,11,642,10,13,15,11,642,485,485,269,927,485,13,13,642,485,13,13,485,13,10,11,15,11,485,14,485,14,485,14,14,13,15,642,709,408,408,641,411,643,411,411,407,411,411,411,408,411,408,411,13,485,13,485,485,11,13,642,11,485,13,10,14,13,642,741,929,14,14,13,641,9,14,13,13,14,14,642,13,13,13,10,11,641,13,13,13,485,11,11,709,411,409,711,711,408,643,483,641,271,271,408,409,411,411,641,269,711,411,409,411,408,411,408,13,13,485,13,13,642,13,11,14,485,485,13,13,11,485,485,1215,665,10,485,13,11,14,13,641,921,11,642,485,485,11,485,10,13,13,11,13,641,485,13,485,408,643,271,643,410,409,408,269,483,641,408,408,408,411,408,511,485,485,13,11,13,11,11,587,485,13,485,485,485,13,485,927,526,11,11,485,15,485,11,13,15,485,485,14,13,13,14,1470,13,11,13,485,13,13,14,269,408,411,409,408,411,408,643,269,272,409,411,272,408,643,643,9,11,13,13,11,641,13,14,13,13,13,485,641,13,485,14,810,641,14,15,11,642,10,15,485,641,13,485,14,642,485,485,13,709,15,11,11,13,485,485,485,1488,272,408,409,643,408,272,934,869,411,411,641,411,408,643,272,343,409,411,711,272,483,408,643,11,10,11,485,13,13,13,11,13,485,13,13,14,485,14,743,927,500,13,485,642,11,11,13,13,13,485,485,13,13,485,485,533,641,485,485,13,13,13,642,269,409,271,408,411,411,411,408,8,289,408,411,643,407,408,411,409,13,642,11,15,485,641,13,13,485,485,642,485,9,15,11,269,1215,485,13,13,485,13,15,14,487,485,11,485,14,642,485,13,14,11,13,642,14,14,485,13,13,408,408,483,643,411,483,408,408,711,408,411,408,408,483,408,610,642,641,14,13,485,11,11,269,642,14,14,642,13,485,485,709,810,709,10,12,13,641,10,11,10,269,485,485,641,11,11,485,13,546,485,11,485,14,13,11,13,641,411,483,408,408,408,408,869,409,408,411,411,711,411,272,641,411,483,408,411,408,409,409,13,485,11,485,485,641,485,11,11,485,13,14,13,13,13,485,929,641,13,11,485,485,485,11,14,551,485,15,13,13,14,15,13,10,11,485,13,11,485,13,11,272,411,408,641,272,711,407,860,408,411,271,409,643,411,411,11,641,14,13,485,10,11,11,13,13,13,13,485,14,14,269,811,9,484,11,15,11,11,484,485,14,485,641,485,485,9,13,15,10,485,485,11,13,10,14,269,411,411,411,643,643,408,411,641,272,408,272,409,409,643,483,269,13,485,9,642,14,641,14,560,485,485,13,13,641,485,485,269,810,11,13,642,485,14,485,14,641,485,13,11,11,11,13,14,269,11,15,9,11,14,13,13,1743,408,643,408,408,411,643,411,408,411,711,408,643,272,411,411,411,408,641,411,408,711,408,711,13,13,15,485,10,485,485,14,485,13,485,485,485,11,485,710,486,485,15,13,641,11,13,13,610,485,485,485,11,10,13,485,13,13,9,13,485,485,14,11,457,408,409,408,272,483,411,411,269,483,711,409,272,411,409,408,835,15,13,15,11,642,641,485,836,485,485,10,11,13,14,10,926,8,11,11,13,11,14,642,13,641,13,485,13,9,485,13,13,647,13,485,10,9,485,10,9,411,643,272,411,641,411,408,409,409,408,643,271,409,408,408,8,485,11,13,485,485,13,642,269,641,485,485,14,13,13,14,15,810,269,485,13,13,14,13,10,11,269,485,485,641,14,13,485,485,485,11,13,485,11,13,14,485,14,408,411,408,272,411,483,409,1744,411,408,408,411,411,409,407,269,408,272,711,408,407,483,483,408,13,13,15,13,485,641,11,13,12,485,485,13,485,642,15,709,929,15,13,11,485,13,13,13,269,13,485,13,15,10,485,485,1212,13,13,485,485,642,11,13,409,408,409,272,643,411,408,409,411,411,411,272,711,411,643,639,13,641,15,485,484,15,14,710,15,13,13,15,485,13,13,772,927,10,13,9,13,485,11,12,834,13,13,485,11,15,485,947,485,641,11,11,485,13,11,485,411,711,409,408,409,272,643,710,408,483,483,408,408,409,408,641,13,13,13,13,13,13,485,565,9,11,13,485,641,14,10,927,587,13,485,485,10,15,13,485,641,13,13,485,485,13,485,485,269,11,9,485,485,11,641,642,643,408,643,411,409,643,711,643,411,407,711,641,411,411,408,1472,411,408,411,411,408,409,408,657,641,485,15,485,485,11,11,641,11,13,11,947,485,14,642,811,269,13,14,642,485,485,13,485,269,485,11,485,11,11,485,13,529,641,11,13,485,13,13,485,641,483,643,643,409,408,408,408,444,271,411,409,411,411,409,411,13,642,485,14,485,485,485,485,13,485,13,13,641,10,11,794,929,641,485,11,10,11,485,485,611,642,485,485,11,13,11,13,13,13,485,485,13,485,641,13,269,411,408,411,409,408,411,643,269,408,411,641,643,409,409,408,485,485,641,15,485,15,13,13,485,485,485,13,9,642,642,10,732,566,10,485,13,485,13,13,484,507,13,642,10,11,642,485,13,10,485,10,13,485,10,485,1488,272,271,643,272,409,409,411,641,408,411,411,411,408,411,408,641,409,411,711,409,408,409,643,643,13,13,485,13,14,8,11,14,485,485,13,13,10,642,9,485,927,269,12,13,13,11,14,13,13,641,485,485,485,485,485,13,485,679,13,13,485,11,13,13,13,421,408,408,411,641,409,411,408,272,409,409,408,409,409,408,8,13,641,13,485,13,485,485,269,13,11,642,13,485,15,485,641,927,14,484,11,641,642,642,10,10,11,14,641,14,642,485,13,13,602,641,485,485,8,11,14,15,641,409,408,272,408,411,408,441,411,409,411,408,411,643,409,641,13,8,11,15,485,485,11,269,11,484,484,8,641,13,13,1799,929,11,11,13,485,14,10,14,641,485,13,13,485,13,11,11,485,13,13,485,11,11,485,11,459,711,411,272,408,409,270,408,855,409,411,409,411,408,411,643,408,643,409,409,407,408,409,408,642,485,13,485,13,485,642,269,8,485,14,13,11,13,13,641,810,14,15,13,13,14,13,13,661,13,641,485,485,485,11,485,269,15,485,9,642,642,11,9,641,711,411,409,408,408,408,643,269,271,411,411,411,408,408,409,543,11,9,13,485,641,13,485,13,485,13,11,485,485,642,753,927,576,485,9,11,485,10,485,14,13,14,485,13,485,13,14,485,13,485,485,13,642,14,11,13,408,272,643,643,411,409,409,709,409,411,641,408,483,411,272,540,12,485,13,13,13,11,642,641,9,13,13,13,485,485,876,1215,269,485,485,13,9,11,13,13,11,485,641,13,10,485,485,13,9,485,485,485,485,13,485,269,483,409,409,408,483,411,483,641,411,409,409,483,411,408,408,285,411,643,711,483,483,408,408,10,485,14,11,641,13,13,1800,485,11,13,13,485,11,642,2054,929,13,13,11,485,13,13,13,641,485,485,15,485,13,485,485,13,13,14,485,11,641,13,15,269,409,711,711,271,408,643,408,436,271,641,408,411,408,408,411,485,13,485,13,485,13,13,13,641,485,10,13,11,10,13,642,2059,486,13,485,13,13,485,642,14,709,8,485,14,11,13,485,13,555,14,15,485,485,13,14,11,641,411,408,409,411,408,711,409,388,411,408,483,408,643,483,408,11,14,10,13,13,641,485,11,13,13,9,10,11,9,485,269,810,12,485,11,485,485,485,13,709,10,11,642,485,8,10,14,10,485,14,484,485,485,13,485,269,408,271,411,641,408,643,411,284,272,411,272,643,411,411,409,411,411,483,643,411,411,272,710,11,11,11,13,11,15,11,641,13,13,13,485,14,11,485,726,929,11,11,14,485,642,11,13,614,641,642,485,642,15,485,10,641,485,15,13,13,11,14,485,483,408,408,411,409,411,409,411,408,411,272,408,408,409,408,709,10,13,14,14,11,13,13,485,485,11,641,485,10,13,485,927,641,11,13,485,485,11,13,641,1470,8,11,642,11,10,13,642,13,13,13,8,485,14,13,319,411,408,408,272,411,411,643,1488,411,641,411,408,270,409,271,710,641,13,13,13,642,485,13,269,485,13,14,15,485,485,10,269,927,1205,15,14,485,13,13,485,14,485,13,13,13,10,15,13,485,641,11,485,13,10,11,8,14,408,409,409,409,411,409,643,269,272,711,408,643,408,643,641,411,411,483,408,643,408,409,408,941,10,15,14,641,11,13,485,1209,15,642,641,13,12,14,12,269,8,642,15,14,485,11,8,8,484,11,485,642,485,485,9,485,1208,13,13,485,485,13,13,11,483,411,643,270,411,408,271,411,408,641,271,711,411,411,483,408,13,485,11,15,11,13,13,833,15,14,14,484,10,485,485,680,929,485,485,485,13,13,485,14,947,8,485,13,485,13,485,485,922,13,11,11,9,13,14,13,269,409,411,408,411,410,411,408,2315,408,271,408,408,411,270,408,411,13,485,11,13,641,485,485,13,13,485,485,485,485,485,14,269,927,590,13,485,8,13,485,13,13,485,485,11,13,11,13,485,10,485,13,485,11,14,13,15,313,270,408,641,408,711,409,411,444,411,411,408,408,411,411,411,641,711,408,411,408,643,408,834,485,11,642,485,11,485,14,641,485,485,13,13,947,485,11,696,929,8,485,11,13,13,642,485,650,13,13,15,12,485,642,13,641,11,10,13,13,13,13,11,425,409,411,408,409,409,408,411,411,271,411,711,411,408,711,408,11,13,13,641,13,485,15,269,485,11,13,11,11,13,485,810,641,485,8,13,13,13,8,14,11,485,485,11,13,13,10,485,269,485,485,485,13,13,485,14,411,408,408,711,411,411,408,411,408,411,410,271,411,409,408,271,11,13,485,8,14,485,14,548,485,13,13,13,13,642,485,13,929,269,11,11,13,485,13,485,13,485,12,485,642,13,485,12,10,13,11,13,14,642,15,485,13,409,408,409,411,411,408,643,411,411,271,411,643,643,711,411,813,272,408,408,408,408,409,711,514,485,13,641,13,13,13,14,672,13,485,485,15,485,485,485,641,929,485,485,14,485,485,9,13,13,13,485,13,485,485,642,13,565,485,485,485,13,11,13,485,409,411,408,643,711,411,409,867,411,411,483,411,408,643,408,641,485,13,11,13,11,485,485,601,15,485,485,13,485,11,13,825,927,13,11,485,11,10,11,13,14,13,13,485,15,13,642,15,269,485,11,13,9,642,485,485,485,408,408,271,411,408,641,408,269,411,411,408,408,408,411,483,269,13,13,641,485,13,13,13,13,13,485,485,13,485,485,2318,641,631,14,485,13,11,9,13,485,518,13,13,13,641,14,13,14,485,13,642,14,14,13,13,485,409,641,483,643,643,411,409,382,408,711,409,411,409,411,411,641,408,408,934,408,408,408,408,269,485,485,485,11,13,11,13,533,13,13,485,14,641,485,14,929,810,485,642,485,13,11,13,485,269,485,13,13,485,485,642,11,559,13,13,14,485,13,641,485,711,409,411,408,409,408,270,411,408,409,411,641,408,643,411,411,485,485,485,11,485,13,485,269,641,485,13,11,485,485,13,641,926,13,13,13,15,11,13,642,10,15,13,485,11,14,11,15,1204,13,641,11,485,13,485,14,269,483,483,408,409,409,411,934,437,411,411,711,411,408,408,408,641,485,10,13,485,11,485,485,11,15,13,485,14,641,13,11,927,269,11,485,485,14,11,10,485,641,11,13,485,13,15,13,11,13,485,11,15,485,10,13,10,407,711,271,408,270,411,272,411,271,408,408,641,411,411,408,269,270,409,408,411,409,407,408,11,641,11,13,13,485,13,14,641,13,485,13,485,485,485,785,927,2320,11,13,641,13,13,13,485,666,8,11,10,485,14,485,15,485,14,13,15,485,11,9,9,641,411,409,411,408,408,410,930,409,411,643,408,409,483,408,409,10,485,642,13,13,13,14,269,485,11,11,11,485,14,13,269,929,641,13,15,14,485,14,14,13,269,485,15,11,485,15,641,485,13,9,485,11,14,13,485,9,711,408,271,410,411,408,643,2321,271,411,483,643,408,271,643,562,13,13,13,13,485,13,485,269,485,13,485,11,14,485,9,709,929,269,13,485,11,11,10,10,485,594,485,14,15,485,11,485,13,269,641,13,485,485,642,13,13,641,411,411,411,408,643,408,409,641,411,408,410,408,643,408,408,408,643,411,411,409,271,411,408,485,485,485,11,13,12,642,269,485,11,12,13,484,11,14,269,486,269,13,13,14,14,485,485,13,546,485,642,485,485,15,485,642,710,485,485,485,641,13,13,11,483,271,409,411,409,272,408,411,483,641,408,408,411,408,411,483,485,11,11,642,485,11,11,673,11,485,13,485,14,13,485,641,929,269,13,14,13,485,15,13,13,613,641,13,13,485,484,485,14,709,485,13,13,642,485,485,11,641,643,411,411,643,411,408,641,440,408,711,408,409,408,411,408,484,9,13,11,641,13,11,485,485,642,485,13,13,13,11,269,810,641,485,13,485,9,13,8,8,485,13,642,13,11,11,13,485,13,485,484,11,11,11,15,709,409,483,641,408,271,408,408,269,411,408,411,411,407,272,408,269,408,411,409,643,411,407,408,641,10,13,13,13,14,13,10,641,13,485,13,13,11,485,13,1792,810,485,13,485,13,485,485,13,485,11,11,485,485,485,13,642,2323,485,485,15,13,485,485,13,13,411,411,409,408,411,641,408,709,411,409,483,408,411,643,271,678,485,485,641,13,485,642,13,679,13,641,11,485,13,12,485,269,641,709,8,13,642,14,13,10,485,269,9,15,485,485,13,13,14,485,13,641,485,485,642,642,13,408,411,411,408,408,409,411,710,408,411,643,408,711,409,408,269,14,13,485,485,13,15,15,641,485,10,13,11,484,9,485,750,2324,667,485,485,13,13,485,13,13,641,13,485,485,485,13,11,14,641,11,485,9,13,13,11,641,288,411,711,411,409,411,408,411,408,408,411,409,641,409,409,347,483,272,408,408,409,408,411,709,13,641,13,485,485,485,11,13,13,485,13,10,485,15,14,929,486,642,485,14,641,485,14,13,269,13,10,485,11,11,947,14,13,641,13,485,485,485,485,13,277,411,411,643,411,408,408,269,411,483,411,409,270,408,411,650,13,485,13,13,13,485,641,14,11,485,13,11,11,14,13,11,929,269,15,11,13,13,13,13,15,485,11,15,13,485,14,13,11,8,485,485,13,13,485,641,485,2325,272,411,408,408,409,408,272,269,411,411,411,411,409,408,411,13,13,13,8,13,11,8,11,11,13,13,485,14,485,13,484,641,929,485,13,14,11,13,485,485,15,485,13,10,9,13,485,10,710,11,13,13,14,8,485,13,641,408,407,409,409,408,411,271,641,270,408,411,408,408,409,272,411,408,409,272,408,272,408,930,11,11,14,485,11,642,485,15,14,485,485,641,485,13,13,13,8,269,13,485,13,11,642,13,13,13,642,13,485,485,14,641,13,485,13,12,11,485,11,13,13,269,409,272,641,408,408,483,411,298,409,483,409,271,409,409,408,13,485,13,13,14,485,8,835,485,11,485,13,11,10,485,709,810,929,11,10,485,485,485,642,13,269,11,13,485,485,11,642,14,269,10,13,485,485,14,14,13,641,643,408,408,711,408,409,711,355,411,408,411,411,711,641,408,638,642,11,11,642,13,485,13,9,10,13,641,13,485,13,485,929,269,485,13,485,11,14,485,641,269,13,13,10,14,13,14,13,655,485,485,485,641,11,11,11,411,408,408,411,409,411,643,408,411,641,411,411,411,409,409,269,411,408,411,643,643,411,408,641,11,13,13,11,11,13,14,641,485,12,485,14,11,485,8,269,929,485,641,642,13,642,485,13,13,13,485,485,485,14,8,13,14,11,11,485,10,13,485,8,641,483,409,409,411,411,408,411,709,408,411,411,411,643,408,409,577,13,14,485,13,15,13,13,9,485,13,11,13,14,11,720,929,929,11,11,485,13,13,485,15,574,11,13,13,13,13,11,485,11,485,641,13,485,485,485,15,483,641,408,411,643,408,411,318,641,411,411,411,411,270,409,408,601,13,485,13,8,485,8,1204,11,13,485,485,14,14,641,13,929,514,13,11,11,11,13,485,11,269,13,11,485,14,15,13,9,269,13,11,13,13,485,11,642,709,643,643,409,411,270,641,272,470,411,411,408,408,643,409,411,411,409,411,641,643,643,408,411,13,485,13,485,13,11,15,14,15,11,15,14,485,13,15,14,641,927,13,13,13,11,13,14,485,13,642,485,14,485,11,485,485,13,11,11,13,8,13,485,485,269,411,408,408,408,408,408,411,641,408,408,411,411,411,411,271,920,9,485,485,485,13,13,485,11,485,13,13,9,15,9,15,876,927,269,13,10,13,10,485,485,11,660,13,14,14,485,484,14,13,13,13,13,642,485,641,13,485,408,411,411,411,411,408,411,269,643,411,641,408,409,408,409,269,485,485,13,485,11,13,485,13,485,14,14,14,11,13,15,2324,927,15,11,11,485,13,485,14,269,13,485,485,15,485,485,642,646,641,11,11,485,14,642,485,641,483,643,408,407,409,271,408,306,408,409,409,411,411,409,641,409,483,411,409,408,408,643,643,13,13,13,13,485,485,14,642,485,485,485,14,13,15,485,814,929,269,13,642,13,15,15,14,485,269,13,485,13,15,485,14,14,515,14,485,485,14,14,485,14,643,411,641,411,411,643,272,2327,483,483,411,409,409,408,272,269,485,11,14,485,642,485,15,269,14,485,485,485,642,13,11,641,810,9,13,10,642,11,485,11,13,269,641,13,485,8,13,642,11,641,485,11,13,13,485,11,14,411,711,409,643,409,408,408,408,408,411,411,411,483,641,934,657,485,642,13,15,13,12,13,709,10,9,641,13,485,11,13,1215,927,496,485,485,14,14,485,641,13,485,11,485,13,13,15,14,610,13,11,13,641,11,11,15,14,410,408,408,411,408,408,271,269,408,409,643,408,411,270,411,269,643,408,409,711,411,643,711,641,485,485,11,13,11,13,14,13,13,13,13,485,13,9,485,927,927,485,13,642,10,14,15,13,269,13,12,485,485,485,13,8,641,14,642,485,485,11,13,485,411,411,408,409,270,408,408,408,411,411,643,711,411,409,408,269,11,485,13,13,485,485,485,13,11,11,485,485,13,13,947,641,810,617,15,485,9,11,13,485,14,485,11,485,13,13,485,11,580,485,947,13,9,485,10,485,269,641,272,411,411,272,411,408,641,711,711,411,409,643,409,411,679,11,14,13,9,9,485,484,485,485,13,13,14,641,485,879,486,487,642,13,485,642,485,14,14,269,485,13,11,8,11,14,13,842,485,13,485,13,11,485,15,289,409,409,409,411,409,643,408,411,408,411,641,411,409,408,710,409,272,272,408,408,271,643,13,641,13,11,13,485,485,485,641,13,14,485,485,485,13,485,810,929,13,485,11,485,485,485,485,269,642,15,8,485,11,485,11,585,485,485,485,13,13,11,13,373,408,411,411,408,409,411,411,427,409,408,411,408,411,411,409,538,13,485,13,14,641,485,14,485,10,14,485,13,11,13,13,929,929,13,485,8,13,15,13,13,13,11,11,14,13,15,641,13,709,14,485,15,11,13,11,485,411,408,409,408,408,270,409,409,408,411,408,409,643,408,643,493,641,485,485,13,947,13,13,662,485,12,485,485,13,14,14,641,811,269,13,13,13,14,485,14,485,485,641,15,485,485,11,13,10,641,485,11,485,13,485,485,2329,358,711,271,411,408,411,411,641,409,711,411,409,409,411,408,643,409,411,408,408,641,408,408,269,642,11,485,13,642,13,13,269,484,485,485,485,11,13,485,269,927,8,13,485,642,11,15,9,13,13,13,11,14,641,11,485,13,709,485,642,642,10,13,11,13,409,641,407,411,711,408,411,408,409,271,411,408,411,409,643,269,13,11,11,15,485,13,10,269,485,13,14,485,642,11,485,873,929,485,485,13,13,13,13,11,484,516,485,13,13,11,11,13,269,11,14,13,11,485,13,641,8,711,410,409,408,409,408,483,436,411,411,408,641,411,409,643,485,11,13,15,485,15,485,15,484,641,485,485,642,13,8,269,928,929,11,485,13,11,485,11,485,269,642,13,13,642,485,11,485,13,11,641,485,13,485,11,13,411,411,483,483,409,408,643,408,272,408,408,408,711,711,483,371,408,643,408,483,408,411,411,409,11,14,13,9,14,641,13,269,8,10,485,11,14,13,13,790,811,641,11,13,13,485,13,13,485,269,15,485,485,485,15,485,485,13,13,11,14,485,485,13,15,483,408,711,408,408,409,483,269,409,411,409,408,411,408,411,485,13,485,485,485,11,14,485,516,13,485,485,13,9,13,1768,929,2324,13,11,641,485,14,13,485,7,13,15,13,485,13,485,10,641,11,642,485,9,485,13,13,641,408,411,408,271,411,409,409,455,408,411,270,643,411,641,408,485,13,8,484,13,485,13,13,13,14,15,641,13,11,14,269,927,269,11,642,13,13,15,13,641,269,8,11,485,8,14,11,642,511,13,11,13,641,485,485,485,409,2330,408,411,411,408,270,463,411,272,408,408,411,408,409,409,411,409,409,409,408,270,410,11,485,14,11,13,14,13,269,485,13,11,15,485,485,14,269,927,269,641,13,485,11,13,13,11,641,485,484,11,485,14,13,13,641,485,11,485,642,14,11,13,408,411,411,411,408,411,411,411,284,409,411,411,643,483,408,408,10,13,485,641,13,11,11,13,485,13,485,485,14,11,11,13,641,927,13,9,11,485,13,13,11,485,13,8,485,641,11,11,11,565,13,11,13,11,13,8,14,269,411,408,411,408,483,409,643,641,408,411,411,411,408,409,411,641,14,9,13,11,11,13,641,11,11,13,13,485,10,641,11,14,929,810,9,11,15,13,15,13,485,269,485,14,485,13,10,10,11,641,11,485,14,11,11,8,11,422,411,409,408,411,641,408,411,413,409,411,408,411,409,411,409,409,643,641,408,408,411,409,408,485,11,485,14,9,485,11,269,14,13,485,11,14,13,13,641,811,269,485,13,15,485,12,15,14,712,641,11,485,11,11,14,562,11,485,13,485,13,11,13,269,483,408,411,643,711,411,409,641,411,409,409,411,643,271,409,269,485,10,13,485,641,642,13,590,15,13,485,14,485,10,15,810,927,269,14,485,9,15,14,14,11,11,14,11,13,14,13,485,269,485,13,642,13,13,485,485,354,409,411,411,411,411,408,643,411,711,272,643,643,411,411,411,641,13,8,642,11,14,485,269,13,14,13,485,8,13,10,269,810,2324,8,9,485,485,13,485,13,2331,641,8,11,485,10,485,13,1211,642,10,11,485,13,485,9,641,411,409,408,408,270,411,408,411,643,643,409,409,408,643,408,269,408,411,408,411,408,643,409,574,11,485,641,11,485,485,485,14,485,485,13,485,14,485,815,2324,929,13,13,485,485,641,14,642,485,14,14,13,642,642,485,947,269,10,485,485,13,15,9,485,411,408,409,411,409,711,409,411,641,409,483,411,408,411,409,408,8,485,13,485,11,13,485,13,485,485,13,9,485,641,485,269,810,810,11,13,15,485,485,642,642,269,13,11,11,485,11,11,13,8,13,11,10,11,13,641,14,458,411,408,411,411,641,408,643,269,408,411,411,408,409,408,411,14,485,485,13,485,14,13,13,574,641,485,485,642,485,642,11,641,927,515,485,13,485,641,13,485,13,942,485,485,641,8,13,11,11,560,485,485,15,13,485,485,14,269,409,711,271,409,411,408,408,641,411,411,272,411,483,411,408,340,711,411,409,408,643,411,408,485,485,11,13,13,11,13,14,11,8,11,641,11,13,11,918,929,1215,11,10,485,13,485,13,641,14,10,485,11,13,13,13,10,269,15,15,13,641,9,8,11,415,411,409,408,411,408,409,408,409,641,408,409,643,411,711,408,8,11,485,10,485,14,14,269,11,11,485,11,13,484,10,641,929,810,13,485,15,13,15,485,14,269,13,11,485,485,11,11,485,641,11,11,485,15,485,8,15,416,411,409,411,407,643,409,408,271,411,408,409,408,641,411,409,14,11,485,10,13,14,485,642,485,13,15,13,485,13,13,485,810,641,11,485,14,485,14,11,14,13,13,642,13,8,485,485,11,13,15,485,485,13,13,642,485,269,643,711,272,411,643,272,643,317,483,407,411,408,483,483,271,641,711,408,408,270,411,270,409,11,485,485,13,642,485,14,485,642,13,13,485,485,641,485,13,929,810,641,13,13,485,13,13,11,14,580,13,13,485,485,11,14,13,485,13,11,485,642,13,10,11,409,408,411,643,408,643,409,269,411,408,641,411,411,408,408,13,11,15,485,11,485,13,14,485,11,485,15,11,485,13,11,927,927,269,11,11,641,485,13,14,11,485,13,13,485,13,13,485,485,641,9,13,10,14,13,13,269,409,483,411,483,483,409,272,641,409,408,408,270,411,409,270,709,10,13,485,11,13,641,15,269,485,485,485,485,11,11,485,269,927,8,13,485,13,14,642,14,485,485,485,485,13,14,485,13,642,13,13,11,11,11,13,485,13,269,408,408,408,643,409,411,409,269,272,411,408,408,408,408,270,933,272,408,411,411,411,643,272,269,11,12,485,485,14,11,485,269,13,13,485,13,11,13,642,948,810,927,11,8,485,485,13,14,485,269,485,14,10,14,11,14,14,641,9,485,11,10,485,485,485,370,411,408,411,272,272,408,643,409,411,411,408,641,411,270,411,642,14,485,15,642,485,485,269,484,641,15,642,485,11,485,709,641,929,485,14,485,11,485,10,13,485,485,13,11,11,485,485,485,520,13,641,9,11,13,11,485,408,407,407,407,411,643,408,306,408,271,643,643,411,411,407,269,11,485,485,13,485,11,13,642,485,11,8,947,13,11,14,269,927,810,485,13,13,13,485,485,485,641,13,485,13,13,485,11,14,498,485,10,485,485,485,10,8,408,411,643,483,411,411,411,411,643,408,408,641,643,643,411,269,408,408,411,408,408,411,409,828,641,11,485,13,14,14,13,13,485,10,13,13,642,15,780,811,810,629,13,13,642,485,13,485,485,11,641,13,13,11,13,13,485,9,642,11,11,642,14,11,269,643,408,408,272,408,411,409,1471,411,711,411,411,408,409,643,269,15,642,13,15,9,13,485,485,14,485,13,13,14,13,485,929,929,269,10,485,642,13,13,485,13,524,485,11,15,14,13,485,642,13,485,485,641,485,14,485,269,411,411,411,409,270,411,643,405,641,411,409,643,483,272,411,641,485,11,13,13,11,10,13,485,485,485,13,485,485,13,641,8,927,485,641,13,13,13,13,11,13,485,11,13,485,11,11,485,269,13,15,13,13,13,485,13,1203,408,270,643,408,483,271,408,312,411,408,409,408,643,483,408,329,408,411,643,408,643,408,643,11,13,11,485,14,14,13,13,11,641,13,485,13,485,13,642,927,929,927,13,15,485,641,13,485,13,1210,8,15,485,11,13,13,14,10,14,14,11,11,485,485,269,411,411,410,409,411,711,711,641,411,408,411,411,411,711,408,678,13,642,10,11,13,13,11,842,13,485,11,13,485,15,15,929,927,641,8,13,485,11,15,12,13,943,13,15,14,11,11,10,485,269,13,11,13,485,641,485,11,410,643,408,408,408,411,408,411,411,408,641,409,408,408,409,409,9,641,13,485,11,11,484,269,485,13,13,13,11,14,15,1794,486,810,10,485,641,13,8,13,15,550,11,11,13,485,10,11,15,543,15,13,11,11,10,13,14,641,483,411,408,409,409,483,643,641,408,411,408,408,711,409,408,357,643,409,408,408,641,409,411,579,485,13,14,13,10,11,11,542,9,11,15,13,15,485,13,929,641,929,485,642,485,11,642,485,485,13,11,13,485,641,14,11,485,651,485,642,485,485,485,13,485,407,641,643,272,270,409,407,408,408,411,643,411,643,411,411,614,485,11,15,10,15,13,11,641,485,14,15,485,14,14,485,14,810,927,641,485,485,13,642,14,14,485,496,13,11,13,485,485,11,485,562,13,485,15,14,485,641,13,483,408,408,409,408,411,409,272,411,409,411,408,409,408,411,2323,15,485,485,485,14,485,485,269,13,11,13,8,11,485,14,1748,927,929,15,10,13,641,11,484,14,935,15,485,13,13,13,11,14,269,11,10,13,11,13,485,13,641,411,411,411,409,408,408,2334,643,407,409,409,271,411,272,641,411,411,411,409,411,409,408,847,10,485,13,14,641,14,8,710,485,13,11,10,12,485,14,927,929,641,485,485,11,13,14,642,11,709,13,11,485,11,641,11,11,646,14,13,14,641,13,13,11,269,411,271,409,411,411,408,411,1483,272,409,408,483,408,408,643,593,485,485,13,13,10,11,485,641,11,14,13,485,13,485,8,269,929,927,485,11,11,485,10,485,13,605,11,13,13,485,642,13,485,269,13,13,13,11,14,11,11,641,483,408,409,408,711,408,408,361,408,408,411,408,272,411,408,485,485,9,485,485,13,11,14,485,10,13,485,15,13,642,13,2324,641,929,485,11,11,13,642,485,485,530,14,485,13,15,14,10,11,606,13,485,11,15,13,485,13,408,409,408,711,483,408,643,283,411,409,411,410,411,408,408,269,411,411,411,643,270,409,272,939,485,11,14,485,13,641,485,13,485,485,13,14,15,8,13,929,810,641,13,11,10,485,13,485,8,269,15,642,13,485,485,485,485,485,10,485,485,10,14,14,12,408,411,411,641,411,409,411,269,408,409,483,408,408,409,411,489,13,485,11,485,485,11,485,921,13,485,485,11,13,485,485,641,929,929,13,13,13,14,10,13,13,269,641,14,14,485,485,485,14,504,11,14,13,14,642,11,269,411,411,408,643,711,411,408,408,411,408,408,408,408,408,483,948,13,11,484,11,641,485,13,924,13,485,13,13,485,642,11,269,811,641,10,485,485,11,10,11,485,11,13,485,13,14,641,11,485,269,13,15,11,485,485,8,485,411,483,408,408,411,483,409,643,408,270,409,411,643,643,643,269,408,270,711,408,411,408,483,641,13,11,485,485,485,14,14,592,10,11,642,11,485,485,10,699,929,590,11,15,13,13,10,485,11,641,13,13,485,642,485,642,485,485,15,11,10,11,641,13,308,272,408,411,411,409,409,409,1476,411,408,641,411,408,408,411,13,13,485,13,13,485,485,15,641,11,11,11,485,10,10,269,927,929,269,8,485,13,11,642,13,10,485,14,8,10,11,14,11,485,485,485,485,13,13,14,485,11,411,408,411,409,711,411,270,269,408,408,643,711,408,409,409,643,15,13,15,485,13,641,485,13,10,642,13,15,484,13,13,269,810,929,13,642,485,10,11,642,485,11,11,13,13,10,13,13,642,11,13,485,485,13,641,11,485,485,711,408,411,411,408,410,409,300,411,641,409,408,409,409,643,862,411,408,483,271,411,643,643,676,485,485,13,11,13,13,13,641,642,13,13,485,13,485,641,269,927,927,485,15,13,11,11,11,485,269,13,13,13,485,14,13,11,269,13,13,485,485,15,642,13,2336,409,411,408,408,641,408,409,409,272,408,271,483,411,408,643,13,13,641,9,13,11,13,13,948,641,485,485,13,13,13,1771,929,929,1470,11,15,13,11,13,11,9,485,13,13,13,13,13,485,13,13,641,13,14,13,13,485,11,641,411,411,409,711,411,411,272,422,410,711,643,411,408,409,522,13,8,10,13,485,13,485,14,13,10,13,485,641,13,13,269,927,929,534,11,12,13,10,14,13,641,14,13,485,11,14,13,641,10,269,13,485,13,485,641,485,8,9,408,411,934,641,409,408,411,409,269,411,408,411,643,408,411,408,411,483,641,408,272,408,711,408,409,593,492,14,485,11,14,14,8,13,641,485,13,13,14,485,10,485,641,927,810,269,641,13,13,13,10,14,485,269,13,485,485,13,485,485,14,641,485,13,485,485,13,13,11,481,408,411,407,408,411,409,643,337,408,643,483,408,272,408,407,269,11,485,485,485,14,15,485,630,14,641,485,485,13,11,13,929,810,927,13,11,642,485,641,13,14,13,485,485,642,15,485,14,15,269,485,641,13,14,485,15,9,408,409,408,411,711,411,411,930,641,409,408,483,411,408,411,411,269,13,485,485,8,13,15,641,269,13,13,8,14,13,10,485,688,929,810,15,485,13,11,11,11,485,269,13,13,11,15,485,11,485,642,14,15,13,485,485,641,485,13,408,409,408,411,643,408,411,409,408,411,411,408,483,411,409,408,411,641,411,272,411,409,411,269,13,10,13,485,13,13,11,651,13,13,485,14,13,14,13,641,811,1215,485,11,485,9,485,13,485,13,641,484,485,10,13,14,8,642,15,485,642,14,485,14,11,269,483,409,408,270,411,483,409,269,643,411,411,271,483,643,411,830,14,13,13,11,11,485,13,11,13,13,485,11,485,15,888,486,929,827,13,11,11,11,485,8,11,485,14,11,485,11,13,13,13,485,8,641,14,13,11,14,13,408,409,409,711,409,410,411,269,270,409,409,411,408,409,408,411,269,642,11,642,13,13,485,11,641,484,13,13,11,14,11,485,269,929,810,641,15,485,13,485,642,14,485,641,14,11,11,485,485,485,641,485,13,14,485,485,13,485,485,411,409,408,408,409,411,411,643,711,408,408,641,408,411,411,273,408,409,641,409,408,411,407,408,15,485,484,13,9,12,11,485,641,485,485,485,485,642,642,15,796,929,2324,511,14,485,13,10,485,485,13,13,485,485,12,15,11,11,13,15,11,485,485,11,13,485,485,13,641,408,411,411,411,407,643,641,269,408,408,409,411,408,409,271,408,624,485,485,14,13,15,11,485,8,485,485,641,13,485,485,485,2592,1215,641,709,9,485,642,13,485,13,485,526,11,13,485,13,11,485,13,485,485,11,13,13,485,13,8,485,272,711,408,411,408,410,411,411,411,408,409,711,409,408,272,409,641,15,642,642,15,14,485,15,641,13,485,14,13,13,485,641,269,927,2324,641,13,485,485,485,10,13,485,641,13,484,10,11,15,485,485,641,485,485,485,8,485,15,485,485,709,483,408,643,411,410,408,408,933,272,407,711,483,641,643,270,409,269,408,408,641,409,408,408,409,2323,13,641,13,10,15,10,485,13,641,9,485,13,14,10,642,15,641,927,8,269,485,10,13,13,14,8,485,13,837,641,14,485,14,13,15,485,677,13,485,11,11,13,11,13,13,1483,411,271,409,408,411,711,409,358,408,408,408,272,408,409,408,408,485,14,11,485,13,8,13,2593,650,11,13,13,641,485,13,14,13,807,810,927,810,485,11,14,8,485,14,15,484,13,11,485,485,641,14,14,15,11,11,14,641,11,13,14,485,411,408,411,409,408,411,408,408,1484,641,271,411,411,411,408,408,408,641,13,485,15,13,485,13,13,14,13,13,485,14,15,9,11,927,929,709,9,12,8,13,11,14,13,677,485,642,14,485,13,14,8,269,485,15,484,10,13,13,485,339,409,411,408,270,643,408,483,277,411,643,643,641,408,711,408,411,409,411,411,643,408,643,569,13,641,485,13,485,485,14,269,13,13,11,485,485,15,13,2059,927,927,269,13,13,641,11,13,13,13,9,485,641,13,11,13,14,14,11,485,15,14,10,14,14,13,709,271,411,643,409,411,409,409,641,408,408,483,411,643,408,411,847,485,11,11,15,14,15,13,943,13,13,13,485,485,9,485,15,486,929,641,485,13,11,15,485,8,13,11,11,11,11,13,641,14,642,11,10,14,13,641,14,11,485,13,411,411,411,408,643,711,411,269,711,411,409,483,411,408,409,641,15,485,642,485,642,10,15,641,484,485,13,13,14,11,8,269,810,927,485,642,9,485,14,13,485,13,485,485,10,14,12,485,15,269,11,13,485,642,485,485,11,8,408,411,271,411,483,409,408,643,408,408,408,711,641,711,408,411,408,411,643,641,643,409,643,711,13,13,15,485,485,13,11,13,485,13,485,642,14,485,11,13,728,811,810,10,485,641,485,14,11,485,269,13,10,13,13,14,485,14,532,11,11,13,14,14,13,14,641,411,409,408,483,408,643,409,409,411,483,411,411,483,408,408,485,11,13,13,11,641,485,485,13,485,642,13,485,13,485,816,927,927,641,485,11,12,485,13,13,11,560,13,14,485,15,11,11,13,13,642,485,641,13,13,15,370,411,411,641,643,411,272,411,1203,409,643,411,408,411,272,411,529,485,14,15,11,11,13,11,653,15,13,485,485,485,13,803,1215,810,927,485,485,13,11,485,642,13,666,642,10,485,485,11,11,13,641,485,485,13,485,11,13,11,409,408,411,271,408,410,483,408,411,411,272,411,408,408,409,269,270,409,408,643,711,409,408,592,485,641,13,13,11,13,11,11,13,485,485,642,485,485,485,742,810,927,485,485,13,485,8,11,485,2594,14,641,485,13,11,485,14,944,11,11,13,11,13,11,11,641,411,411,409,411,409,408,362,411,408,643,408,411,411,411,409,15,13,13,13,8,641,14,13,13,485,11,13,10,642,485,269,2324,927,641,485,14,13,13,13,11,641,13,13,13,11,13,485,641,14,11,485,13,10,15,485,11,642,13,411,408,411,711,411,411,411,409,409,641,411,409,411,711,711,8,13,13,13,15,14,485,485,269,8,13,14,13,484,13,11,641,927,929,269,641,485,485,642,485,485,15,836,11,13,11,485,13,13,11,618,485,10,13,14,11,484,641,411,411,483,409,408,643,711,273,411,411,483,409,641,411,411,2595,411,409,408,408,409,409,411,832,485,641,14,485,9,642,485,13,13,13,484,15,13,11,897,1215,929,810,485,11,641,13,13,10,485,547,485,641,13,13,485,11,484,485,641,8,11,13,11,14,485,461,643,409,408,411,643,411,643,641,411,411,271,643,411,643,641,673,13,13,485,11,642,485,14,2846,485,485,13,642,642,12,485,702,810,927,679,11,11,14,10,13,641,485,8,485,13,485,8,14,13,493,8,10,14,641,15,485,13,408,408,409,409,272,711,411,411,411,641,409,643,711,643,411,269,485,13,485,485,642,10,11,641,485,13,13,485,14,11,13,770,8,927,10,485,11,485,485,11,11,485,485,485,642,485,485,485,11,709,485,13,13,13,485,485,11,709,408,272,271,408,411,641,408,269,408,409,409,409,643,408,411,643,408,411,641,483,483,643,643,13,11,13,8,485,14,15,562,641,10,485,8,642,13,13,794,927,2324,269,13,13,641,13,13,485,642,493,14,485,10,13,14,14,10,641,485,13,485,15,13,15,367,408,270,408,408,411,408,411,269,408,483,411,483,408,643,641,2847,13,485,485,12,13,485,11,851,485,11,485,641,14,642,11,927,929,927,8,13,12,485,485,485,641,13,15,14,485,485,8,14,14,635,13,9,11,13,15,13,485,451,409,408,408,408,411,411,483,711,272,411,483,483,408,408,933,11,10,13,15,485,485,485,641,485,485,15,485,485,13,14,709,927,2324,530,11,485,10,11,485,13,485,641,485,485,485,485,13,13,485,13,11,642,15,10,642,11,15,408,411,411,711,643,483,408,269,272,643,411,407,411,410,408,295,411,711,641,408,411,408,711,484,13,11,11,13,8,485,485,641,13,10,13,14,485,10,269,927,927,269,13,485,13,11,642,10,485,519,485,13,13,485,485,11,13,485,9,13,14,11,13,642,709,483,643,408,411,483,411,272,641,411,411,408,409,409,643,641,408,13,485,13,11,485,13,13,1211,485,15,10,485,13,485,13,14,1215,928,927,13,13,13,642,11,13,485,11,485,15,485,485,641,642,13,547,485,10,11,13,14,11,485,290,411,641,711,407,409,409,411,408,711,711,270,408,409,643,711,641,485,11,8,14,13,11,8,485,485,485,13,8,13,13,485,269,929,927,485,8,15,14,13,14,485,485,13,13,9,13,485,15,485,610,8,485,485,13,10,11,485,14,408,411,711,411,410,483,272,289,409,409,411,643,411,643,643,1475,711,711,641,409,411,408,409,583,10,13,485,13,485,485,485,641,11,10,13,485,10,642,797,810,929,929,11,485,9,485,8,485,485,709,11,13,642,13,14,11,13,641,485,13,484,485,485,485,485,411,411,643,408,272,409,411,641,408,411,411,408,411,643,272,546,14,11,485,14,641,11,485,668,485,642,13,14,14,485,13,269,810,929,942,15,13,11,485,13,15,14,269,13,13,10,13,11,11,485,556,485,11,641,13,13,13,13,411,711,643,411,271,411,643,643,641,643,408,411,411,643,408,709,15,9,14,13,485,11,2593,641,13,13,642,11,485,485,13,2324,929,929,11,13,485,15,11,485,2593,269,11,13,485,485,485,485,11,632,11,485,11,13,14,11,13,449,270,407,408,643,411,643,643,408,711,408,270,408,408,408,711,411,483,641,411,411,408,411,272,642,15,485,485,8,13,485,1210,485,13,13,10,13,485,8,641,929,927,628,485,485,15,13,485,11,11,13,15,13,10,8,10,13,269,11,11,13,485,485,13,13,641,272,408,408,483,408,411,641,474,483,411,411,411,408,411,272,560,13,10,642,641,11,14,485,567,13,485,12,8,11,13,11,810,8,1215,485,485,485,15,11,14,13,13,15,13,11,13,13,485,13,13,11,485,641,9,13,13,13,13,408,411,408,408,411,411,408,409,408,643,408,409,409,408,409,269,642,642,13,13,642,10,485,641,13,485,11,11,485,15,13,13,810,810,8,11,485,642,10,11,13,485,269,13,13,14,13,485,485,485,13,11,11,11,485,15,485,13,14,408,411,409,408,641,411,411,408,272,409,483,408,408,411,408,643,408,408,408,411,408,408,411,639,641,485,485,13,485,485,9,920,485,10,11,13,11,8,14,641,929,929,9,641,642,15,485,485,485,14,485,11,485,13,485,485,14,269,11,14,11,13,13,11,485,269,409,411,409,409,271,409,408,411,408,411,711,409,711,408,408,13,13,11,641,13,485,485,269,485,15,13,485,485,485,485,1749,2324,929,269,8,11,14,13,9,485,485,2846,13,14,641,11,10,485,15,647,11,641,15,11,485,13,13,1478,643,411,411,411,409,483,643,641,270,411,408,411,408,411,711,13,11,11,13,14,13,13,485,485,11,485,11,13,13,13,485,811,929,486,595,13,485,485,9,11,14,15,13,13,485,11,485,13,641,10,13,14,13,485,485,13,14,269,408,408,411,641,408,408,408,467,411,643,643,410,409,408,409,411,641,272,711,411,411,409,711,485,485,13,11,485,13,485,642,498,485,485,485,11,15,485,641,927,486,927,641,13,485,642,9,11,8,3102,10,13,15,485,11,14,13,675,13,14,485,642,642,14,8,13,411,409,271,409,408,641,411,858,270,408,411,643,409,408,483,600,11,485,641,14,11,485,485,8,8,13,13,642,485,11,14,929,927,486,485,642,485,485,10,13,10,13,11,11,641,8,485,11,485,710,485,485,13,485,13,14,9,641,408,271,409,711,408,483,408,411,411,711,643,411,411,411,641,485,13,10,485,485,14,13,269,485,11,13,10,485,13,8,485,3105,927,929,641,11,642,485,485,13,13,11,13,13,485,13,13,484,641,15,590,13,485,13,13,14,13,13,14,411,408,272,408,272,270,408,269,408,641,411,409,411,408,408,409,411,411,407,408,408,643,813,485,13,11,11,11,13,13,641,9,11,485,14,13,14,641,1754,1215,486,710,13,8,485,14,10,14,8,641,13,13,485,14,14,485,485,520,485,14,11,13,485,641,485,408,408,272,411,270,408,270,643,409,411,408,409,711,411,411,269,14,13,485,485,13,485,485,521,641,13,11,13,13,13,485,641,929,811,710,485,13,485,10,8,11,12,9,12,13,14,12,485,14,549,485,485,13,11,13,485,11,480,411,411,411,411,411,408,409,641,408,408,643,643,643,643,408,12,485,485,13,14,641,11,485,13,13,14,8,14,485,485,269,929,927,2324,485,11,14,485,11,641,485,269,13,11,485,14,485,11,485,485,13,14,641,11,11,13,13,272,408,408,408,409,409,408,1471,641,408,411,408,411,643,409,641,408,711,411,408,409,408,3106,13,13,485,485,485,485,13,14,15,8,13,485,485,485,485,734,929,1215,710,14,13,11,642,15,11,9,641,485,485,13,13,14,11,8,3361,10,14,13,13,14,485,9,269,711,409,270,409,408,409,643,408,271,270,411,411,408,271,643,485,641,13,485,13,11,485,10,9,9,485,485,11,485,14,485,927,811,929,485,14,485,9,485,485,485,269,641,13,485,14,15,13,13,641,15,485,11,13,485,13,13,434,411,272,408,643,408,409,411,411,411,408,408,411,409,408,408,485,485,13,13,485,485,485,709,14,11,11,10,485,11,485,269,1215,641,927,642,10,485,13,641,14,13,269,14,11,485,485,12,13,485,1212,13,11,13,15,13,13,11,411,641,411,408,411,483,408,643,641,411,409,408,409,272,408,408,641,408,409,643,411,409,408,411,485,8,13,11,14,13,13,13,485,11,485,14,13,15,13,13,810,929,2324,13,15,11,11,485,11,14,11,11,14,485,485,14,641,15,11,13,10,13,485,14,8,13,485,408,411,272,410,411,643,643,317,411,641,409,409,411,409,408,647,485,11,485,13,11,13,15,641,13,13,485,11,485,13,485,641,929,1215,1209,641,13,13,13,485,14,484,641,13,485,15,13,14,11,11,13,485,642,15,13,485,13,14,483,411,411,409,409,411,643,269,411,408,711,411,270,643,409,851,485,15,13,13,12,13,11,485,485,641,485,10,485,13,13,811,927,811,485,14,484,11,11,13,14,485,13,11,641,485,14,14,15,269,11,485,11,485,485,13,642,319,409,711,409,408,409,409,411,641,711,408,643,643,408,408,643,411,408,711,270,408,408,408,3363,13,485,13,11,14,13,485,676,485,485,8,11,15,13,642,929,929,641,654,11,13,11,13,485,15,13,485,13,642,10,641,485,13,523,642,15,8,8,485,485,12,14,410,270,411,411,408,409,411,403,641,411,271,270,408,408,408,8,13,13,10,14,485,14,485,678,13,485,485,13,485,11,485,13,8,811,929,11,11,13,485,485,485,11,269,485,11,9,13,9,14,14,641,642,14,15,642,13,485,14,1480,711,411,270,711,409,411,643,386,411,408,711,409,411,643,408,269,485,13,13,13,485,13,13,13,484,485,485,15,485,14,485,641,810,927,542,13,13,485,642,485,642,13,14,641,13,13,485,13,13,632,10,11,485,11,10,14,13,269,411,270,643,411,272,411,411,641,411,408,409,409,409,411,408,269,411,409,711,408,641,411,411,269,15,13,13,641,642,485,485,636,15,14,485,642,485,485,8,811,1215,486,929,13,13,8,642,642,485,10,485,8,642,11,642,642,485,11,485,13,485,11,14,13,485,15,709,641,643,408,411,411,411,408,641,408,409,411,483,411,643,408,641,485,485,14,11,13,14,641,269,485,485,11,485,485,14,13,929,928,929,834,13,13,485,10,485,14,641,14,485,485,13,13,485,13,13,15,485,8,642,641,10,485,273,409,411,409,408,407,643,408,269,409,411,408,643,643,711,711,577,641,14,11,14,13,13,485,269,11,13,11,485,13,11,13,641,927,1215,929,485,13,14,10,13,11,14,642,485,15,13,8,13,485,485,269,485,485,13,14,13,485,13,641,643,408,411,408,272,408,408,866,409,411,411,411,641,411,483,408,408,272,411,711,408,409,8,13,11,13,11,14,13,485,269,15,13,11,13,13,13,13,641,927,2324,709,13,10,641,13,485,14,13,11,485,11,485,485,11,13,2329,641,485,13,10,13,14,485,641,408,409,711,408,411,411,408,354,411,411,483,408,272,643,411,491,485,14,485,13,11,13,11,485,11,15,13,641,485,11,485,927,1215,929,11,13,13,485,485,13,14,13,485,642,10,642,485,14,13,1211,14,14,485,485,11,13,9,411,411,408,711,408,408,411,643,411,483,483,408,411,408,408,3364,11,9,11,485,13,11,642,269,13,13,485,15,13,15,13,816,929,810,1215,485,11,13,13,13,485,10,269,485,13,485,642,485,642,14,641,11,485,485,485,13,13,13,269,408,411,643,272,408,408,270,272,408,643,270,411,271,409,411,272,411,641,409,711,409,409,411,13,13,485,11,11,10,13,1800,485,14,485,485,485,14,13,641,929,927,606,485,11,485,13,485,485,642,659,11,13,9,9,13,15,14,709,15,9,485,11,13,10,13,641,411,409,408,408,411,411,408,269,711,271,409,409,408,643,643,408,662,13,13,642,641,485,13,485,509,485,10,13,642,8,15,14,928,641,927,269,13,485,13,15,485,485,485,548,13,11,641,485,14,11,10,485,485,11,9,485,14,13,13,408,408,408,272,411,411,408,269,409,408,408,411,643,408,411,641,13,13,485,13,14,485,641,269,485,13,485,13,8,641,13,642,1215,811,929,504,13,15,13,485,11,642,641,13,11,13,485,11,11,10,11,13,13,11,9,641,485,10,485,408,270,408,411,408,409,643,269,411,408,408,408,409,711,411,483,408,643,409,408,408,408,411,642,485,14,15,13,11,485,485,587,11,13,13,11,14,485,641,927,927,1215,944,13,11,642,485,11,15,13,641,13,485,485,485,485,485,14,8,10,11,13,11,11,11,11,408,271,643,408,641,408,409,864,411,408,411,408,410,410,643,11,13,641,485,485,485,485,579,13,485,8,485,10,14,14,641,927,810,927,14,15,641,10,485,14,13,269,13,11,13,11,13,15,14,11,642,11,485,12,13,11,14,641,711,408,711,409,408,408,408,338,411,409,711,409,408,641,483,485,13,13,14,13,14,14,13,9,485,13,14,485,13,15,894,927,929,927,13,485,712,11,14,641,13,14,13,13,13,485,485,485,642,269,13,13,641,485,11,13,11,408,411,411,409,409,411,643,711,641,271,408,408,483,411,411,269,411,408,409,711,411,271,408,641,13,642,485,11,642,13,485,485,13,485,14,13,8,13,14,811,928,929,641,13,642,485,13,485,642,641,518,485,13,15,13,13,485,485,11,485,485,13,13,642,485,269,410,411,643,408,408,408,711,408,408,409,408,409,408,408,3365,485,13,485,13,485,485,14,269,13,10,15,485,11,11,15,269,810,811,928,485,485,485,485,485,11,642,3366,14,13,11,15,485,14,8,269,642,13,485,13,11,485,485,641,411,409,409,411,409,483,270,869,408,408,483,411,641,643,272,269,11,14,485,11,485,13,485,11,15,641,485,9,485,484,680,927,810,929,517,13,485,484,13,13,11,13,642,485,641,485,13,13,485,709,11,13,11,11,11,485,11,269,408,411,483,408,409,408,411,641,411,408,711,711,411,411,408,411,711,711,711,643,711,641,409,13,11,485,11,485,485,11,13,11,13,485,641,485,485,485,1783,929,927,927,642,13,15,13,11,10,13,485,15,13,13,641,11,485,14,627,13,13,485,13,10,485,13,411,641,409,411,411,408,411,709,411,711,643,411,411,411,643,641,8,485,485,11,13,12,485,584,13,15,14,485,485,14,13,810,810,929,641,11,13,15,485,642,11,8,13,8,8,8,13,8,15,485,485,13,13,15,485,641,14,485,411,408,408,270,411,408,408,269,411,483,641,408,409,408,411,269,12,641,13,10,14,13,13,13,485,8,12,14,642,13,14,724,929,3367,269,13,641,485,10,13,485,14,485,485,11,485,11,485,485,485,574,485,485,13,13,13,13,3368,408,408,411,409,408,411,643,408,643,409,411,408,643,411,408,411,409,408,408,272,271,407,711,269,485,10,15,11,9,485,8,484,485,485,485,485,485,11,485,810,927,811,269,14,9,14,485,485,9,10,11,485,641,485,11,11,8,13,485,11,947,13,14,13,485,454,408,711,409,411,643,411,643,641,411,408,408,411,483,407,411,554,485,13,13,485,485,485,485,13,485,485,11,641,11,15,10,1215,928,929,269,11,485,485,14,11,641,13,13,11,14,642,11,14,11,9,485,485,15,641,947,11,13,466,411,409,271,409,409,643,411,269,643,408,411,411,643,408,409,641,13,11,13,13,485,485,13,641,485,14,11,13,13,13,14,929,929,929,923,11,12,13,14,485,13,15,922,485,13,15,10,485,11,712,269,10,485,13,14,11,11,13,269,711,409,270,408,411,411,411,269,408,411,272,641,408,411,408,269,408,408,408,411,408,411,411,13,641,15,485,13,10,485,11,641,11,11,11,485,10,13,13,696,1215,810,2319,10,641,485,485,14,485,14,710,485,13,13,485,10,485,11,641,485,14,485,485,13,485,11,343,408,411,408,411,409,408,409,339,409,409,409,408,641,411,711,485,484,485,14,8,13,485,11,14,13,641,14,13,13,642,269,486,929,929,11,13,485,11,485,11,11,10,13,13,641,8,13,485,14,269,11,13,10,13,13,14,14,269,411,408,409,272,408,411,409,641,408,408,411,408,643,409,411,11,8,11,13,11,642,641,485,12,15,485,485,8,13,11,13,929,929,486,269,485,13,13,485,14,13,485,13,485,485,485,485,641,485,11,485,15,13,11,13,11,11,269,409,272,641,408,643,411,408,643,408,411,483,483,409,411,409,272,272,409,409,408,643,411,270,615,485,13,11,485,14,11,269,485,13,485,13,14,15,485,728,486,927,926,485,15,485,485,485,14,13,485,485,13,485,485,10,13,485,485,15,13,14,485,13,11,485,269,408,483,411,408,643,409,408,408,411,411,411,411,411,643,643,485,485,11,642,485,485,13,269,15,13,485,485,13,484,14,641,927,927,927,485,13,13,11,13,13,11,710,641,10,11,485,485,11,14,657,13,485,485,10,11,14,11,269,408,483,409,411,643,643,641,711,408,411,408,272,411,643,408,11,13,15,11,642,14,485,485,11,485,13,14,13,15,9,15,929,929,929,811,11,485,485,13,641,11,13,510,13,14,485,485,9,642,14,709,485,13,15,13,13,13,13,269,641,409,271,411,408,711,270,269,408,409,272,409,409,409,408,641,408,270,408,409,411,408,409,269,15,13,485,11,14,13,13,13,11,11,11,641,13,13,14,927,929,2324,269,485,14,13,13,642,641,13,493,15,15,14,485,11,14,11,485,642,485,11,485,485,485,809,272,270,643,411,409,411,408,379,641,408,408,643,408,409,411,641,485,485,11,12,484,485,485,11,485,485,11,13,14,485,8,486,811,929,641,485,485,11,13,15,14,485,13,485,11,13,14,485,485,565,485,485,13,8,10,641,485,298,408,408,411,411,483,643,411,409,408,411,641,408,411,409,269,15,485,13,11,642,14,13,269,641,13,13,14,13,485,15,641,810,1215,929,13,13,13,11,485,11,13,710,947,13,13,14,485,13,10,542,13,485,485,13,485,14,13,641,408,411,409,408,483,408,641,409,409,411,408,408,483,408,411,411,408,483,411,641,270,409,269,485,642,14,13,11,14,13,549,13,641,13,13,10,485,642,929,927,810,811,485,642,485,642,11,13,485,8,13,485,11,14,14,14,485,485,8,11,11,15,14,642,14,483,408,408,408,411,409,408,269,643,409,408,643,408,408,643,576,11,9,485,11,13,641,14,577,485,485,485,485,14,11,485,927,3369,929,641,642,11,642,15,10,14,13,709,485,11,13,10,641,13,13,585,485,13,13,485,10,11,484,409,407,641,643,272,410,408,408,411,271,411,411,409,643,408,269,13,485,485,11,485,485,485,641,485,14,13,13,13,13,13,769,810,927,927,642,13,13,9,13,485,13,269,11,13,485,485,13,11,8,555,15,11,13,13,13,10,13,326,408,934,411,643,641,411,409,326,408,408,407,408,411,411,408,409,408,641,408,483,411,408,2321,485,485,13,485,485,13,10,590,642,8,13,485,13,9,14,269,928,929,929,13,641,642,11,13,13,14,13,641,13,13,13,485,10,14,13,642,642,11,11,14,485,485,641,270,411,408,409,409,411,483,1744,411,643,270,408,641,272,408,710,11,11,11,484,485,642,485,269,13,11,11,13,13,8,14,797,641,2324,486,485,10,485,485,485,485,13,537,8,11,14,11,485,485,485,563,641,14,11,11,11,15,485,641,272,409,409,411,409,408,411,711,411,408,411,411,408,483,641,485,485,13,13,485,13,642,269,485,8,14,8,641,485,14,810,8,810,641,11,13,13,485,10,14,11,556,485,9,13,13,641,11,13,562,485,11,13,14,11,485,8,411,408,641,408,411,408,711,711,408,641,411,271,408,409,408,278,411,411,411,411,271,408,408,269,11,11,10,15,485,13,10,669,485,13,13,485,13,14,13,269,1215,929,811,485,485,13,485,13,13,13,641,485,642,11,14,10,11,485,596,13,13,485,485,641,13,14,269,408,409,409,411,643,408,483,408,411,409,409,408,409,408,643,11,641,15,485,13,13,10,15,641,485,11,10,14,485,485,897,486,811,810,269,13,13,485,11,13,485,13,641,485,485,14,13,12,14,826,11,485,11,485,13,485,642,710,271,411,411,643,409,641,643,274,408,271,409,408,408,408,409,13,9,11,641,13,13,642,269,10,485,11,13,11,485,14,486,927,810,929,13,485,13,641,11,11,13,269,485,485,485,8,485,485,14,13,13,13,11,485,14,485,709,408,411,711,271,409,711,408,641,272,408,711,407,411,643,408,397,411,408,409,411,409,408,408,13,13,11,14,485,14,485,527,13,13,10,11,485,11,13,269,810,810,810,269,13,13,11,13,15,13,11,14,13,485,641,485,485,485,542,14,485,11,485,485,485,13,269,408,411,411,409,408,643,408,389,408,272,643,483,409,409,411,641,8,14,484,11,13,12,641,13,13,14,12,485,10,13,13,810,810,927,641,485,14,485,13,8,15,13,269,13,485,485,485,13,13,485,14,13,484,13,13,485,13,642,409,643,408,711,408,411,643,709,409,411,643,411,408,411,408,485,8,485,485,11,13,11,13,485,8,485,14,13,485,10,13,811,928,929,269,485,13,485,14,13,485,11,269,8,485,11,13,13,13,13,641,485,13,14,11,14,485,641,411,409,643,643,411,408,643,643,408,408,411,411,272,408,408,269,408,408,408,643,711,272,483,485,9,485,13,485,15,11,485,13,642,485,13,13,9,485,881,8,810,2324,924,15,641,13,485,485,485,485,13,485,485,15,13,11,485,642,526,485,13,485,14,485,11,469,411,408,408,409,643,411,411,3372,408,411,411,408,411,411,409,937,485,485,11,485,11,11,13,11,11,13,11,13,13,485,13,929,810,927,810,485,14,485,11,14,9,485,610,642,485,641,642,13,13,14,516,13,15,14,642,14,485,13,483,271,409,408,411,411,408,3625,411,408,411,643,408,411,408,641,485,14,485,485,485,11,641,676,13,485,14,13,13,485,13,927,927,1215,709,10,11,485,10,13,14,641,269,642,11,14,13,13,13,11,8,13,13,485,641,485,485,13,483,411,411,411,411,411,408,269,408,641,411,411,411,411,411,269,408,409,408,411,411,272,408,641,13,13,485,13,13,13,14,679,485,11,13,485,485,11,13,810,927,2324,269,11,13,11,485,642,13,485,641,13,13,13,15,485,15,641,269,9,13,13,13,485,10,11,408,270,410,272,408,408,411,342,643,411,410,643,408,409,271,269,14,485,11,485,485,13,13,485,642,11,9,13,485,485,13,927,929,927,269,485,641,11,10,14,485,13,663,485,13,11,485,15,485,9,269,485,485,11,13,11,13,13,641,408,409,411,270,643,408,408,269,643,409,408,408,641,408,411,13,642,485,14,641,13,14,10,508,485,485,13,485,11,8,14,929,641,8,927,642,13,485,10,485,485,11,269,15,484,11,9,485,11,14,485,641,485,11,485,13,484,13,483,409,272,408,408,643,411,269,411,411,643,272,483,410,272,641,408,270,408,272,408,408,408,542,12,13,11,13,641,485,13,13,485,13,485,13,14,485,1777,810,8,641,619,15,485,642,13,13,14,11,662,14,485,13,641,14,11,14,532,13,11,15,14,14,10,14,643,641,411,408,411,411,643,409,643,408,483,411,411,643,411,8,485,485,13,9,11,15,485,641,485,642,642,485,13,14,641,13,757,929,2324,929,485,13,13,13,485,13,13,641,9,485,14,485,14,14,11,269,13,13,15,13,641,485,485,269,408,408,408,483,409,408,408,397,409,272,641,643,408,409,643,411,13,485,485,11,485,11,11,14,11,485,13,13,485,15,13,269,929,810,929,269,641,485,485,13,14,485,14,641,13,13,9,13,13,9,590,485,642,13,11,13,14,13,485,408,408,409,408,408,411,408,269,408,643,411,409,272,711,643,364,411,411,272,411,411,483,411,13,11,14,11,14,13,485,14,13,485,11,485,11,485,485,269,929,929,927,810,13,485,485,13,485,485,15,15,13,8,485,11,13,8,13,3626,11,485,485,485,485,13,485,641,411,483,408,408,411,411,641,415,411,643,408,411,408,408,408,11,13,11,485,13,485,14,13,11,14,642,485,11,485,10,485,927,486,1215,645,8,10,485,15,13,11,14,3874,13,11,641,11,15,13,15,560,485,13,485,11,13,11,13,344,408,272,408,409,483,643,411,641,408,408,271,409,408,408,271,641,642,485,13,485,13,8,641,269,11,13,13,15,485,485,15,685,810,927,929,641,11,13,10,13,11,642,13,632,13,485,13,485,15,13,14,13,13,13,13,15,8,11,13,411,411,711,411,411,411,409,269,643,408,409,408,408,408,408,641,408,643,409,272,411,411,411,485,10,14,13,15,13,13,641,15,10,11,13,485,13,641,709,929,927,929,641,13,10,14,14,642,485,11,511,485,13,11,13,11,641,14,642,485,13,13,13,14,485,11,409,411,643,409,643,409,408,711,384,408,934,411,411,408,411,411,579,9,11,11,485,642,14,14,632,485,13,11,485,11,10,485,1791,929,2324,929,844,641,485,485,485,13,13,642,641,13,485,13,13,11,15,11,13,11,13,485,13,10,13,641,411,411,408,643,411,272,409,269,409,408,409,408,409,408,411,11,10,13,485,13,14,485,14,485,13,13,485,485,13,9,269,927,929,927,269,485,13,14,485,13,14,13,485,13,485,10,485,13,14,2329,14,8,485,13,13,485,8,709,643,408,411,409,409,409,408,641,270,409,411,411,409,711,408,387,411,408,411,408,408,641,411,623,13,11,11,642,485,14,485,11,11,8,641,10,485,11,2317,2324,929,1215,614,11,13,13,485,13,13,14,847,485,13,641,485,485,13,8,485,484,8,13,485,485,13,11,641,411,408,411,643,408,270,269,408,408,643,272,643,411,409,669,13,11,485,14,485,9,11,532,11,11,13,642,485,10,642,873,927,929,810,641,15,11,11,11,11,13,13,485,485,485,485,485,641,485,14,485,13,13,13,13,11,13,14,711,409,409,711,408,711,409,3875,272,641,711,408,643,408,270,269,485,485,485,13,14,14,485,641,15,485,11,8,13,14,13,641,811,927,929,269,15,13,485,11,485,8,485,641,485,485,11,11,14,13,15,943,485,642,485,485,485,13,13,269,411,272,411,711,641,711,411,269,409,408,408,641,408,408,408,643,413,408,483,408,711,409,409,409,269,484,13,12,485,11,11,485,269,13,8,15,11,13,485,485,269,929,811,927,269,641,947,10,14,485,13,485,630,485,485,485,11,13,13,485,641,14,642,485,485,14,485,641,408,408,408,270,643,408,408,272,411,408,409,643,641,411,411,8,485,13,13,947,13,13,485,485,11,11,13,13,14,642,9,269,929,929,929,810,13,13,13,11,15,13,13,269,13,11,13,485,14,642,14,658,641,10,642,10,11,13,13,269,408,643,643,409,411,408,409,269,408,408,411,643,408,408,408,483,11,11,13,14,13,641,2593,530,13,485,485,10,485,13,13,709,927,927,641,674,642,13,14,13,11,485,485,3874,642,485,485,641,11,642,13,485,13,485,485,485,642,11,14,411,641,408,408,411,643,411,855,409,408,711,408,643,408,411,464,411,411,711,408,408,411,409,641,13,13,11,13,13,485,11,669,13,12,10,13,641,14,485,927,2324,810,927,13,10,485,13,13,485,641,13,485,485,11,13,13,11,12,269,13,485,10,484,11,485,13,270,272,408,411,408,411,411,711,411,641,643,408,408,410,272,8,15,485,485,12,13,10,8,269,485,13,485,11,10,642,13,641,927,927,927,1214,642,8,485,13,14,8,14,269,485,10,485,485,485,485,13,641,13,11,15,8,11,13,485,485,411,411,408,408,411,408,643,408,408,483,409,409,711,411,411,8,642,14,485,9,12,485,485,1800,641,11,14,13,2593,642,11,641,8,927,927,269,13,485,13,11,485,11,14,13,11,13,485,13,485,15,485,523,13,13,13,11,15,485,8,411,408,409,409,408,272,643,408,411,408,408,411,411,641,270,408,411,411,643,408,409,408,411,411,485,13,485,13,13,13,485,656,485,641,485,13,13,13,13,722,641,929,810,2324,13,485,641,15,485,11,14,11,13,641,14,485,14,485,485,489,485,10,13,13,485,11,485,269,411,408,408,643,408,408,411,641,408,411,408,408,409,411,641,411,11,11,13,13,11,485,13,11,13,13,10,11,485,11,11,269,2324,810,929,810,485,485,13,15,14,484,485,562,485,15,11,13,485,13,8,710,13,14,15,14,13,485,13,312,641,408,411,643,411,411,408,641,411,408,409,408,409,408,411,13,485,9,485,10,642,13,13,12,13,13,13,13,485,14,11,1215,1215,929,710,15,10,485,10,13,11,485,269,485,485,13,10,13,12,13,10,485,13,13,641,485,11,8,483,408,408,483,409,711,483,411,411,409,711,409,408,643,411,483,641,411,408,411,411,411,409,8,485,13,13,8,13,485,13,641,13,13,11,485,13,11,13,825,927,810,1215,269,11,11,15,13,485,8,485,641,13,484,13,11,485,14,11,269,485,13,15,10,485,10,15,481,409,411,409,641,411,408,270,269,272,272,411,483,408,643,408,547,485,485,13,485,485,13,11,641,10,13,12,13,14,11,9,810,927,927,927,485,485,485,485,11,13,11,590,13,485,13,13,485,11,485,641,13,15,15,13,642,13,485,370,483,408,270,411,483,641,408,483,270,410,483,411,711,711,408,14,13,642,485,15,13,13,269,13,485,11,642,13,485,485,929,927,927,810,654,485,13,641,485,14,14,485,485,484,641,642,642,10,11,11,13,13,485,13,642,484,14,14,485,641,271,408,408,272,409,409,411,4128,388,272,409,270,408,408,411,641,1744,411,407,408,711,483,411,711,408,269,10,11,11,13,13,11,11,11,9,485,642,641,10,11,14,10,269,927,641,927,929,485,642,485,13,641,485,485,485,642,642,15,642,11,11,485,11,15,503,642,11,15,485,485,13,14,297,411,411,272,409,408,408,409,409,641,411,409,411,271,408,643,408,641,13,485,485,14,11,485,641,485,485,13,485,485,11,641,13,13,269,929,927,928,641,485,12,485,485,13,9,641,13,269,485,11,8,13,13,11,14,1211,13,11,485,13,13,13,15,385,411,411,409,411,408,272,408,269,934,409,411,272,408,411,411,643,13,11,485,15,485,485,14,10,923,485,485,485,14,13,13,15,710,927,929,929,269,642,485,13,11,13,642,485,641,485,11,13,11,9,15,13,14,485,485,13,11,11,641,642,485,408,411,408,410,641,408,411,408,409,408,411,408,643,408,483,643,409,272,411,411,408,408,643,408,642,485,485,13,485,13,13,13,641,485,13,13,13,13,14,485,641,8,810,927,927,641,485,14,10,13,13,485,485,641,11,14,485,13,13,14,13,641,13,485,13,13,485,485,641,11,270,409,934,408,411,408,410,711,409,411,408,641,643,411,411,409,11,13,641,10,13,13,9,14,942,13,11,13,11,11,485,11,729,929,486,927,810,848,485,641,13,8,14,14,13,485,10,485,8,11,485,13,485,709,485,15,13,14,13,485,10,15,641,270,411,643,411,408,272,408,641,409,408,408,411,408,408,483,483,659,11,15,485,13,485,485,14,269,13,13,11,13,485,11,14,773,2324,927,929,929,11,13,10,14,641,485,642,15,4382,485,14,13,13,10,14,11,269,485,11,485,13,485,11,9,269,409,411,483,408,411,711,411,274,411,408,408,643,408,408,411,411,269,409,643,270,409,411,409,411,269,10,13,11,11,11,13,11,4385,642,11,11,13,10,14,14,485,929,811,641,927,269,11,14,13,485,641,10,13,269,14,15,485,485,11,485,485,485,12,11,13,13,8,13,10,642,408,409,408,411,408,409,411,643,641,408,411,408,411,409,408,483,641,8,485,14,485,485,13,14,269,14,485,485,13,485,13,13,907,927,2324,486,522,13,10,13,485,11,11,11,485,11,485,13,10,14,485,485,11,496,485,485,15,641,11,14,13,269,270,409,641,411,408,408,272,300,411,641,411,408,272,411,643,656,641,484,13,14,13,485,11,833,485,485,642,485,9,13,485,642,875,486,810,810,554,13,485,485,642,485,642,13,269,10,485,485,9,11,14,485,2323,13,11,485,485,10,13,641,10,408,411,409,408,408,641,411,408,709,408,409,411,409,483,271,711,269,411,409,411,409,408,411,409,485,13,13,11,485,14,13,11,641,485,15,642,11,485,15,13,738,929,929,929,496,485,13,485,642,13,485,14,641,13,15,485,13,10,485,2329,12,13,485,13,11,14,13,12,408,483,411,409,272,641,408,269,409,411,411,409,411,411,643,671,8,642,641,485,14,485,13,642,485,485,10,485,15,485,13,486,929,929,2324,269,9,485,641,11,14,14,485,269,13,13,14,11,485,14,485,641,13,11,13,13,11,13,9,459,411,411,643,411,409,408,411,269,409,408,411,411,270,408,411,710,13,11,13,13,641,9,485,503,485,13,11,11,11,13,485,927,1215,641,8,627,13,15,13,10,485,485,485,11,11,485,641,642,485,485,10,485,13,13,15,485,11,11,14,409,408,411,411,411,409,408,409,411,483,411,711,411,408,408,415,483,408,271,408,643,408,411,2319,15,485,485,11,13,485,11,827,13,485,11,11,485,8,11,810,927,929,929,269,11,485,485,14,641,485,485,13,11,642,11,9,485,14,485,13,14,641,13,485,13,642,324,483,483,408,408,408,271,409,433,411,409,408,643,411,643,411,269,11,642,485,642,11,13,13,641,15,13,485,485,485,485,13,269,811,927,927,269,485,15,9,13,642,485,13,269,642,11,15,13,13,641,15,851,14,485,15,485,13,485,485,711,411,408,641,408,408,271,411,411,483,408,411,409,408,934,569,641,11,485,485,11,13,11,269,14,13,11,14,14,13,13,641,486,1215,929,269,13,13,8,485,14,11,642,269,10,11,13,15,642,485,485,269,642,11,485,11,15,13,641,14,409,408,409,411,411,411,408,711,409,408,271,641,409,409,643,3368,411,409,411,408,409,643,408,840,642,485,13,485,11,485,10,269,15,642,485,15,13,12,13,641,486,929,929,648,641,13,13,485,14,485,10,607,485,10,14,14,13,13,10,641,13,485,13,14,485,10,641,430,408,411,411,408,408,272,409,408,643,272,711,641,408,411,408,485,13,13,13,9,13,485,13,14,485,485,11,11,485,14,269,641,927,810,929,15,485,485,641,642,13,642,13,13,485,641,13,642,9,13,11,642,641,13,15,10,8,14,13,642,641,711,411,483,408,483,408,411,641,411,408,411,411,411,411,410,634,11,13,485,9,641,13,11,669,10,485,11,13,485,13,14,810,927,641,1215,269,13,13,14,485,13,642,485,269,485,13,13,13,13,11,485,13,11,13,10,485,13,485,642,411,408,407,483,411,643,408,643,280,408,408,411,410,711,411,362,643,711,411,409,411,411,411,3363,11,13,13,485,13,641,485,269,485,13,485,485,8,485,14,899,810,2324,641,4386,11,485,485,485,641,13,485,269,15,485,485,9,14,13,642,269,485,485,13,13,485,485,485,332,408,408,411,272,483,272,411,641,409,272,408,408,411,408,8,11,11,485,8,11,485,485,669,565,9,642,13,13,13,641,13,810,927,929,810,641,9,485,13,11,13,485,641,529,13,485,13,11,13,485,13,642,485,484,14,641,13,15,485,408,411,408,411,408,411,409,709,408,641,270,711,411,270,643,9,11,485,485,13,11,13,8,9,10,11,485,15,14,485,4387,929,811,927,929,641,15,9,13,13,13,15,485,522,13,485,13,642,15,14,2323,485,13,11,13,11,11,13,11,411,409,643,270,408,643,272,411,411,408,272,641,408,272,408,344,409,409,411,643,411,408,409,269,9,485,13,485,11,484,485,269,10,485,11,13,13,13,13,641,927,929,810,269,13,13,11,485,11,13,485,626,485,485,14,485,642,485,485,641,13,485,15,11,13,485,8,409,409,411,408,408,641,408,711,408,409,270,408,408,408,411,501,485,13,641,15,485,11,8,269,13,485,9,485,10,13,13,1776,810,927,2324,929,485,485,641,9,11,13,14,14,11,11,485,485,13,9,13,1209,485,485,13,11,485,13,11,641,411,408,408,643,408,408,643,396,411,408,411,408,483,641,408,269,13,485,485,10,15,11,485,556,485,642,13,14,13,10,14,810,2324,641,810,593,8,11,13,641,485,13,11,14,485,485,11,13,11,485,485,13,15,13,485,9,13,14,485,408,408,411,411,409,409,483,408,408,411,410,409,408,408,408,411,711,409,408,408,411,408,408,409,827,11,485,485,485,485,14,13,485,485,10,485,13,13,14,13,486,927,810,929,710,485,485,13,9,13,15,13,15,485,13,641,485,642,13,11,485,13,485,13,11,485,485,709,641,411,407,411,711,410,411,855,411,410,411,711,272,408,411,641,13,15,13,485,642,485,641,269,485,11,485,485,485,641,14,14,929,810,927,810,641,11,11,11,11,13,485,13,269,485,11,485,11,641,13,485,632,13,485,485,641,485,485,485,367,408,408,643,409,408,272,411,269,408,711,483,409,411,408,483,641,14,485,485,485,11,10,13,11,13,485,485,13,8,11,11,927,810,810,929,269,11,485,485,485,14,12,11,641,14,13,14,485,485,11,642,510,11,485,485,485,13,10,14,411,409,272,408,641,411,411,643,408,711,411,409,408,411,408,408,270,409,411,408,411,411,643,522,641,13,13,14,11,14,13,641,11,13,947,14,485,485,11,903,927,929,927,269,13,11,13,11,485,485,13,641,12,485,13,13,485,10,13,518,485,15,13,11,11,641,13,408,409,411,411,409,643,411,643,411,408,409,408,409,411,483,709,13,13,485,11,11,14,15,269,641,14,14,485,13,13,13,1747,929,811,810,1215,13,641,14,13,485,11,485,269,15,11,13,11,11,11,13,641,14,15,11,10,11,485,485,641,409,409,408,408,643,411,409,709,408,411,411,711,408,411,408,709,485,485,14,641,485,11,13,623,13,10,13,485,13,13,13,927,641,929,1215,940,485,11,11,15,13,11,15,577,13,641,485,485,11,10,485,8,642,485,11,13,485,14,485,272,643,643,711,411,408,408,1482,408,411,270,408,643,411,272,409,643,411,408,2330,411,641,408,572,485,13,12,11,8,13,15,269,485,13,641,13,13,13,13,1215,929,929,929,1214,11,11,10,485,13,485,11,269,11,485,485,13,13,13,13,14,485,11,15,13,11,485,485,709,408,270,409,410,411,643,711,269,483,411,411,643,409,408,411,511,485,485,485,485,14,13,14,485,485,11,11,485,13,13,12,485,929,929,927,641,269,13,11,485,13,13,13,485,618,13,15,9,14,14,13,14,485,14,485,13,485,13,485,10,274,408,641,411,408,643,408,411,408,641,408,408,411,411,643,411,408,641,14,485,13,485,485,11,13,269,642,485,485,13,13,642,641,485,927,486,927,810,269,485,8,11,485,485,15,11,641,624,485,485,11,13,485,13,13,544,485,13,485,485,10,485,642,351,408,409,641,411,411,411,408,300,408,411,408,643,272,408,411,483,409,411,643,408,272,483,643,560,485,15,11,485,11,485,523,485,13,11,13,9,485,13,485,486,927,810,810,641,9,642,13,13,13,485,485,485,642,8,11,13,485,13,11,11,485,8,13,641,13,485,366,411,407,411,409,408,483,411,271,409,641,408,411,408,408,411,13,642,485,14,11,10,14,13,15,485,485,13,15,14,13,269,486,1215,927,929,641,11,13,13,13,642,13,485,569,485,11,13,947,8,15,11,13,13,13,14,15,485,641,4388,411,408,270,409,643,411,408,308,643,409,408,711,643,408,411,269,484,8,13,485,485,485,485,269,9,485,485,485,11,11,485,724,927,810,2324,929,13,13,13,642,642,11,485,485,641,13,13,13,485,485,485,14,485,485,485,10,13,11,485,269,411,409,408,408,408,408,641,422,409,272,408,483,408,411,408,393,408,408,411,641,408,409,643,485,14,13,14,485,10,11,14,13,13,13,485,13,485,8,14,927,486,486,929,269,484,641,13,11,14,13,13,13,13,11,485,9,485,14,485,13,11,10,11,13,13,13,269,407,411,408,411,408,409,408,345,408,408,411,643,411,641,411,269,13,15,485,485,11,485,13,709,11,485,641,485,15,14,13,927,929,927,3369,927,13,11,11,8,485,11,485,2329,485,13,641,485,485,485,14,269,14,485,485,9,11,485,8,474,711,411,409,411,408,408,408,641,272,409,408,408,408,411,407,269,11,11,642,15,11,14,14,485,14,10,13,11,15,14,485,1215,929,927,641,618,15,485,13,14,13,641,485,10,642,485,11,15,13,485,485,269,485,485,641,13,485,11,13,269,411,411,409,483,643,408,409,269,483,411,408,411,409,411,408,641,411,409,411,483,643,409,411,641,485,13,485,14,485,642,13,10,13,485,11,485,641,485,13,929,810,486,2324,269,485,11,11,485,15,14,11,503,14,15,11,10,485,485,485,485,14,14,641,485,485,15,13,643,411,411,271,411,411,411,930,641,411,270,409,408,271,408,939,10,485,485,13,485,13,15,641,13,13,9,11,10,13,641,929,1215,810,929,269,11,485,11,13,13,13,9,632,11,11,14,642,485,11,485,269,485,485,485,14,485,13,485,13,409,411,411,409,272,408,272,272,409,408,641,409,643,409,411,643,485,641,485,642,485,14,13,13,513,9,15,14,14,13,642,767,929,486,927,811,641,14,13,13,14,11,13,13,641,14,11,485,13,11,13,485,710,485,13,13,11,947,485,485,288,408,409,711,409,272,411,408,411,411,411,408,270,643,411,411,643,483,643,272,272,409,270,411,13,13,9,14,11,485,485,485,485,485,485,485,11,11,15,789,773,1215,927,929,927,641,11,642,485,11,485,485,642,641,13,485],"timeDeltas":[608250,1375,1208,1333,1209,1333,1042,1166,1250,1209,1250,1250,1166,1292,1250,1250,1250,1250,1250,1250,1292,1250,1291,1250,1042,1250,1292,1208,1250,1292,1250,1250,1291,1250,1292,1250,1292,1333,1250,1292,1250,1291,1250,1250,1292,1208,1292,1250,1250,1083,1250,1250,1292,1250,1292,1250,1250,1291,1292,1250,1292,1208,1250,1292,1250,1250,1250,1250,1250,1291,1250,1250,1292,1292,1250,1250,1291,1209,1250,1208,1083,1250,1250,1209,1291,1250,1292,1292,1041,1292,1292,1250,1291,1250,1209,1250,1291,1250,1292,1292,1291,1209,1291,1292,1250,1333,1375,1250,1250,1292,1292,1250,1250,1291,1250,1292,1250,1250,1250,1083,1292,1250,1292,1250,1208,1250,1292,1250,1291,1250,1292,1292,1291,1209,1291,1209,1208,1250,1292,1250,1291,1167,1292,1250,1250,1291,1250,1250,1292,1292,1208,1208,1084,1291,1250,1292,1250,1250,1292,1250,1250,1250,1250,1291,1250,1292,1292,1250,1250,1208,1292,1250,1250,1291,1084,1291,1292,1250,1292,1250,1291,1250,1292,1250,1292,1291,1209,1250,1291,1250,1292,1250,1250,1292,1250,1291,1250,1292,1292,1250,1250,1291,1250,1250,1250,1292,1292,1250,1250,1250,1291,1250,1209,1250,1250,1291,1292,1208,1250,1250,1250,1250,1292,1292,1250,1250,1250,1250,1291,1250,1250,1292,1208,1250,1292,1292,1250,1250,1250,1250,1250,1250,1166,1250,1292,1250,1250,1167,1250,1250,1291,1250,1250,1292,1250,1292,1291,1250,1167,1292,1250,1291,1250,1292,1250,1292,1250,1291,1292,1250,1250,1250,1292,1291,1250,1250,1292,1250,1292,1250,1291,1250,1250,1250,1209,1250,1250,1291,1250,1250,1250,1292,1292,1250,1333,1208,1250,1292,1250,1292,1250,1291,1209,1250,1250,1250,1250,1291,1250,1292,1250,1250,1292,1208,1125,1333,1250,1250,1250,1250,1292,1250,1292,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1250,1292,1208,1250,1250,1292,1250,1291,1042,1292,1250,1291,1250,1250,1292,1167,1291,1209,1291,1209,1250,1291,1250,1209,1291,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1084,1250,1291,1292,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1083,1292,1208,1292,1291,1250,1250,1250,1250,1250,1125,1250,1292,1250,1250,1250,1250,1292,1250,1291,1042,1250,1292,1250,1041,1250,1250,1000,1250,1209,1291,1250,1250,1250,1250,1292,1167,1291,1292,1250,1250,1250,1292,1250,1250,1250,1291,1125,1250,1292,1250,1250,1292,1250,1250,1291,1250,1250,1250,1292,1292,1250,1250,1208,1250,1292,1250,1041,1250,1250,1292,1083,1250,1250,1292,1250,1250,1292,1208,1250,1250,1250,1250,1250,1292,1208,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1291,1250,1292,1083,1292,1250,1250,1250,1292,1250,1250,1208,1292,1250,1250,1250,1291,1209,1250,1250,1250,1291,1042,1250,1292,1250,1250,1250,1250,1291,1042,1292,1208,1250,1250,1292,1250,1250,1041,1292,1292,1291,1250,1292,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1291,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1292,1250,1291,1250,1250,1292,1167,1250,1250,1291,1250,1250,1250,1125,1292,1250,1292,1208,1250,1042,1250,1250,1291,1250,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1292,1208,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1292,1208,1208,1292,1208,1292,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1125,1250,1250,1292,1208,1292,1250,1250,1291,1250,1250,1250,1250,1250,1250,1292,1292,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1292,1208,1167,1291,1209,1291,1250,1250,1292,1250,1250,1292,1291,1250,1250,1250,1292,1250,1292,1250,1291,1292,1208,1250,1292,1250,1250,1250,1292,1250,1250,1291,1292,1250,1250,1292,1250,1250,1291,1250,1250,1250,1292,1250,1125,1292,1250,1333,1250,1292,1208,1292,1250,1250,1291,1250,1250,1250,1292,1125,1250,1292,1208,1250,1292,1250,1250,1250,1250,1250,1291,1250,1292,1292,1208,1292,1208,1208,1250,1292,1125,1208,1250,1292,1250,1292,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1291,1209,1250,1250,1125,1125,1250,1291,1250,1250,1292,1250,1292,1291,1250,1250,1292,1250,1292,1250,1291,1250,1250,1292,1292,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1292,1291,1250,1209,1291,1209,1291,1209,1250,1250,1291,1334,1291,1167,1167,1250,1291,1292,1250,1292,1250,1208,1292,1291,1250,1250,1292,1292,1291,1209,1291,1292,1250,1292,1250,1125,1291,1250,1292,1250,1292,1041,1250,1084,1291,1250,1250,1292,1250,1250,1250,1000,1208,1334,1250,1291,1250,1250,1250,1250,1209,1208,1250,1250,1292,1250,1333,1292,1291,1292,1250,1208,1292,1208,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1167,1250,1292,1250,1250,1250,1291,1167,1250,1250,1250,1250,1250,1250,1292,1250,1291,1292,1250,1292,1250,1250,1291,1250,1292,1292,1250,1250,1291,1292,1250,1250,1250,1042,1291,1292,1250,1250,1292,1291,1250,1250,1292,1292,1208,1250,1250,1292,1291,1250,1042,1292,1291,1250,1084,1291,1250,1292,1250,1083,1250,1292,1000,1292,1208,1250,1250,1167,1250,1250,1250,1250,1291,1250,1250,1250,1209,1250,1250,1250,1291,1250,1292,1292,1208,1167,1250,1250,1250,1083,1292,1250,1250,1250,1250,1291,1250,1250,1292,1250,1167,1291,1250,1250,1292,1250,1083,1250,1084,1250,1250,1291,1375,1209,1291,1292,1208,1250,1250,1292,1208,1209,1250,1291,1292,1208,1292,1250,1250,1292,1208,1250,1250,1292,1250,1250,1250,1291,1292,1292,1291,1250,1250,1292,1208,1209,1250,1250,1291,1250,1125,1250,1250,1292,1250,1250,1292,1250,1291,1250,1250,1250,1292,1250,1042,1208,1292,1250,1250,1291,1125,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1292,1208,1292,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1209,1291,1250,1042,1167,1250,1250,1250,1291,1209,1250,1208,1250,1208,1292,1250,1292,1291,1250,1292,1250,1292,1250,1250,1208,1292,1250,1250,1291,1250,1250,1292,1250,1250,1083,1250,1084,1291,1250,1292,1167,1208,1250,1250,1000,1250,1292,1208,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1167,1291,1250,1250,1250,1250,1167,1250,1292,1291,1250,1292,1250,1292,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1292,1208,1250,1250,1292,1250,1250,1250,1292,1083,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1209,1250,1250,1250,1291,1250,1292,1250,1292,1250,1250,1250,1250,1250,1041,1250,1125,1292,1250,1292,1041,1250,1250,1250,1292,1208,1167,1250,1292,1166,1209,1291,1250,1250,1250,1292,1250,1208,1250,1250,1250,1250,1292,1250,1292,1250,1250,1250,1291,1084,1250,1250,1250,1291,1250,1250,1292,1250,1250,1292,1208,1208,1292,1250,1292,1250,1250,1291,1250,1292,1250,1250,1250,1250,1250,1250,1292,1291,1250,1292,1208,1292,1250,1250,1250,1292,1250,1250,1291,1292,1250,1250,1250,1042,1291,1292,1292,1250,1250,1250,1250,1041,1250,1250,1250,1250,1292,1250,1292,1250,1250,1250,1041,1292,1292,1208,1250,1250,1208,1292,1292,1250,1250,1291,1292,1208,1334,1250,1208,1250,1250,1250,1250,1292,1083,1250,1292,1250,1291,1250,1084,1208,1292,1208,1250,1250,1208,1292,1250,1250,1250,1292,1291,1292,1208,1292,1250,1250,1292,1250,1250,1250,1291,1250,1292,1250,1250,1292,1291,1250,1292,1292,1250,1291,1292,1292,1291,1292,1208,1250,1250,1292,1250,1292,1291,1250,1250,1209,1250,1291,1292,1292,1208,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1291,1292,1250,1292,1250,1250,1291,1209,1291,1209,1208,1292,1291,1292,1292,1166,1292,1250,1292,1250,1291,1250,1250,1292,1208,1292,1292,1250,1250,1250,1250,1250,1250,1291,1250,1167,1250,1250,1292,1250,1291,1250,1250,1250,1292,1250,1167,1250,1250,1291,1250,1250,1250,1292,1292,1250,1250,1250,1291,1250,1084,1250,1250,1291,1250,1209,1291,1250,1250,1292,1292,1250,1250,1250,1250,1250,1250,1291,1250,1250,1334,1250,1250,1250,1250,1250,1291,1250,1250,1292,1292,1250,1291,1292,1208,1250,1292,1250,1250,1250,1250,1292,1250,1250,1291,1375,1209,1250,1291,1292,1250,1250,1292,1208,1292,1208,1167,1291,1292,1292,1250,1250,1250,1250,1291,1209,1291,1250,1209,1291,1250,1292,1292,1250,1291,1209,1208,1250,1250,1292,1250,1250,1250,1250,1291,1209,1250,1250,1291,1209,1250,1250,1291,1250,1250,1334,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1292,1250,1291,1250,1292,1250,1292,1125,1208,1250,1250,1250,1292,1250,1250,1291,1250,1084,1291,1292,1250,1250,1292,1250,1291,1250,1292,1250,1292,1083,1292,1250,1291,1250,1167,1250,1292,1250,1250,1291,1250,1292,1250,1250,1250,1292,1208,1292,1000,1250,1291,1250,1250,1292,1208,1250,1292,1250,1250,1250,1292,1250,1250,1291,1250,1209,1250,1291,1250,1250,1292,1292,1208,1167,1291,1209,1083,1250,1250,1250,1292,1250,1250,1333,1250,1250,1333,1125,1250,1292,1208,1292,1208,1209,1250,1250,1250,1250,1250,1250,1291,1250,1292,1208,1250,1250,1250,1250,1250,1292,1208,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1291,1250,1250,1084,1250,1291,1250,1292,1250,1250,1250,1250,1250,1292,1250,1250,1166,1250,1292,1250,1250,1292,1125,1291,1292,1250,1292,1250,1250,1291,1250,1250,1250,1292,1250,1042,1250,1291,1250,1292,1250,1292,1250,1250,1291,1250,1167,1250,1250,1250,1292,1250,1291,1292,1292,1250,1166,1292,1250,1292,1250,1250,1291,1292,1250,1250,1292,1250,1333,1208,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1291,1250,1292,1292,1166,1250,1292,1292,1041,1292,1125,1292,1208,1250,1250,1292,1250,1250,1250,1250,1250,1250,1291,1209,1291,1250,1292,1208,1292,1250,1167,1250,1291,1250,1292,1250,1292,1250,1250,1291,1250,1167,1250,1250,1292,1291,1250,1250,1250,1292,1250,1292,1291,1250,1250,1250,1250,1250,1292,1250,1250,1125,1250,1125,1292,1250,1250,1291,1250,1292,1250,1250,1250,1250,1292,1250,1208,1250,1292,1250,1291,1292,1250,1292,1250,1250,1250,1250,1291,1292,1250,1292,1333,1292,1250,1291,1292,1250,1250,1250,1292,1250,1250,1291,1292,1208,1250,1250,1250,1250,1292,1250,1250,1292,1250,1291,1209,1250,1250,1250,1291,1250,1292,1250,1250,1292,1208,1167,1250,1291,1250,1292,1042,1250,1250,1291,1292,1250,1292,1250,1250,1291,1250,1292,1333,1292,1208,1292,1208,1209,1250,1291,1084,1250,1250,1291,1250,1292,1250,1208,1209,1250,1250,1291,1250,1209,1250,1250,1250,1250,1291,1250,1250,1292,1250,1292,1291,1250,1250,1292,1208,1292,1250,1292,1250,1291,1292,1250,1292,1250,1250,1250,1291,1250,1167,1250,1250,1292,1250,1291,1292,1250,1250,1250,1250,1250,1250,1292,1208,1250,1250,1250,1292,1125,1250,1291,1209,1250,1250,1291,1250,1250,1292,1292,1250,1250,1250,1166,1292,1292,1208,1292,1250,1250,1250,1291,1209,1250,1250,1250,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1291,1209,1208,1250,1250,1292,1250,1291,1250,1250,1250,1292,1250,1292,1250,1291,1250,1292,1250,1083,1250,1209,1291,1250,1292,1250,1208,1292,1292,1208,1292,1291,1167,1250,1208,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1291,1209,1208,1250,1250,1250,1250,1292,1166,1292,1250,1292,1208,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1208,1292,1083,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1292,1250,1250,1042,1250,1250,1291,1250,1250,1250,1250,1209,1291,1250,1292,1250,1250,1292,1250,1250,1291,1250,1084,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1208,1292,1291,1250,1292,1250,1250,1250,1208,1292,1250,1250,1292,1208,1292,1250,1250,1250,1250,1291,1292,1250,1250,1292,1250,1291,1250,1250,1250,1167,1208,1292,1250,1292,1250,1333,1208,1250,1292,1250,1250,1250,1250,1250,1250,1208,1292,1250,1250,1250,1250,1250,1083,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1208,1250,1250,1250,1209,1291,1209,1250,1250,1250,1250,1291,1250,1292,1250,1250,1333,1250,1250,1292,1250,1250,1292,1250,1291,1250,1250,1250,1292,1250,1042,1250,1250,1250,1250,1291,1250,1250,1292,1250,1292,1000,1291,1250,1250,1292,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1291,1209,1250,1291,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1167,1250,1208,1250,1292,1250,1291,1250,1250,1250,1250,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1209,1250,1250,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1250,1291,1250,1250,1250,1250,1292,1208,1292,1167,1291,1250,1209,1250,1250,1291,1250,1292,1292,1250,1333,1250,1250,1292,1208,1292,1250,1250,1250,1083,1250,1250,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1292,1291,1167,1250,1292,1291,1209,1208,1250,1250,1250,1292,1208,1250,1292,1250,1250,1250,1250,1250,1208,1292,1250,1250,1250,1291,1209,1250,1250,1250,1291,1042,1250,1250,1292,1291,1167,1292,1291,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1292,1208,1250,1250,1292,1250,1291,1209,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1166,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1292,1208,1292,1208,1250,1292,1250,1250,1250,1083,1250,1292,1291,1292,1250,1250,1292,1291,1250,1250,1292,1167,1291,1167,1250,1292,1250,1250,1291,1250,1250,1250,1250,1292,1000,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1291,1292,1250,1250,1292,1291,1250,1292,1208,1292,1208,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1292,1292,1250,1250,1250,1083,1250,1250,1292,1250,1291,1209,1250,1250,1250,1250,1250,1250,1250,1250,1291,1209,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1292,1250,1250,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1083,1250,1250,1250,1250,1292,1292,1250,1250,1208,1292,1083,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1084,1291,1250,1250,1292,1292,1166,1250,1125,1250,1250,1250,1250,1292,1250,1292,1208,1250,1292,1291,1250,1250,1250,1292,1250,1250,1292,1250,1250,1250,1208,1292,1250,1250,1291,1250,1250,1292,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1292,1291,1250,1292,1250,1250,1292,1208,1000,1292,1250,1250,1250,1250,1291,1250,1250,1292,1292,1291,1125,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1083,1250,1250,1292,1250,1292,1291,1292,1250,1250,1292,1291,1250,1250,1167,1292,1291,1250,1167,1292,1250,1291,1250,1250,1250,1209,1291,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1292,1167,1291,1250,1292,1208,1292,1250,1250,1250,1250,1208,1292,1083,1250,1250,1250,1250,1250,1292,1250,1125,1250,1292,1250,1291,1292,1208,1084,1291,1250,1292,1208,1292,1250,1250,1250,1250,1250,1292,1250,1291,1250,1250,1292,1250,1042,1291,1250,1250,1292,1250,1292,1250,1291,1209,1250,1250,1291,1292,1292,1250,1208,1250,1250,1250,1083,1250,1292,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1125,1291,1250,1292,1250,1250,1250,1250,1292,1250,1291,1250,1084,1291,1209,1250,1291,1250,1250,1250,1250,1250,1167,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1291,1250,1250,1250,1250,1292,1208,1084,1250,1250,1291,1250,1334,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1125,1250,1292,1250,1250,1292,1291,1250,1250,1292,1167,1291,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1250,1292,1250,1208,1250,1250,1209,1208,1250,1292,1208,1208,1250,1250,1292,1292,1250,1291,1292,1250,1250,1250,1292,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1291,1250,1250,1250,1250,1167,1250,1167,1291,1250,1292,1250,1250,1125,1250,1292,1250,1250,1250,1250,1291,1292,1250,1292,1000,1291,1250,1250,1292,1250,1250,1250,1250,1250,1250,1000,1250,1333,1250,1292,1250,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1292,1208,1250,1208,1292,1250,1292,1250,1250,1250,1250,1291,1250,1292,1208,1084,1250,1291,1250,1250,1292,1208,1292,1250,1250,1125,1250,1292,1208,1250,1250,1250,1292,1250,1250,1291,1250,1250,1292,1292,1250,1250,1291,1250,1292,1250,958,1292,1292,1250,1291,1209,1291,1250,1250,1292,1250,1292,1208,1250,1250,1250,1250,1292,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1208,1250,1292,1250,1250,1333,1250,1250,1292,1250,1250,1250,1250,1291,1292,1250,1208,1250,1292,1250,1250,1292,1250,1250,1291,1250,1292,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1292,1166,1250,1292,1292,1291,1250,1250,1250,1292,1167,1291,1209,1250,1250,1250,1291,1250,1250,1250,1250,1375,1167,1250,1125,1292,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1292,1208,1292,1250,1292,1291,1250,1292,1208,1250,1292,1250,1125,1250,1250,1292,1250,1250,1250,1250,1250,1291,1125,1292,1208,1250,1250,1292,1250,1250,1250,1167,1291,1250,1250,1292,1250,1250,1292,1291,1292,1250,1250,1292,1250,1250,1250,1291,1125,1250,1250,1292,1250,1250,1292,1291,1250,1250,1250,1250,1250,1250,1292,1292,1250,1166,1250,1292,1250,1292,1250,1250,1250,1166,1250,1250,1250,1250,1250,1292,1292,1250,1333,1208,1209,1250,1250,1250,1291,1250,1209,1250,1250,1291,1292,1292,1250,1291,1250,1250,1250,1292,1250,1250,1292,1208,1250,1125,1250,1250,1250,1250,1250,1250,1250,1292,1250,1291,1250,1209,1291,1042,1250,1250,1292,1250,1291,1250,1250,1250,1250,1250,1250,1292,1208,1292,1208,1209,1208,1208,1042,1250,1292,1208,1292,1208,1292,1208,1250,1250,1208,1292,1250,1208,1250,1250,1250,1250,1292,1208,1250,1250,1292,1250,1250,1208,1292,1250,1250,1292,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1292,1250,1250,1292,1250,1250,1250,1250,1291,1250,1292,1250,1250,1250,1292,1041,1250,1250,1084,1208,1292,1250,1250,1250,1250,1250,1250,1250,1166,1292,1208,1209,1291,1209,1250,1250,1250,1208,1292,1250,1250,1250,1291,1209,1250,1250,1250,1250,1125,1291,1250,1250,1292,1250,1333,1250,1250,1250,1084,1291,1250,1292,1000,1292,1250,1291,1250,1292,1250,1292,1208,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1209,1291,1250,1250,1250,1292,1250,1208,1250,1250,1250,1250,1250,1292,1167,1291,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1250,1292,1291,1250,1250,1292,1292,1250,1250,1250,1041,1250,1292,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1166,1292,1208,1250,1250,1250,1250,1292,1250,1250,1250,1250,1292,1208,1250,1250,1292,1250,1250,1291,1250,1250,1250,1250,1250,1250,1292,1167,1250,1208,1292,1250,1291,1209,1250,1291,1167,1292,1291,1250,1250,1292,1250,1292,1291,1250,1250,1292,1250,1250,1250,1292,1208,1208,1250,1250,1042,1250,1250,1292,1250,1250,1250,1291,1250,1250,1292,1250,1250,1250,1250,1125,1167,1250,1291,1250,1250,1250,1250,1334,1250,1291,1042,1250,1250,1292,1250,1250,1291,1250,1292,1250,1250,1292,1208,1250,1292,1291,1209,1250,1291,1250,1042,1292,1250,1250,1291,1250,1250,1292,1250,1250,1250,1125,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1292,1166,1292,1250,1250,1250,1000,1250,1250,1167,1250,1291,1250,1292,1208,1250,1250,1292,1250,1250,1292,1208,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1292,1208,1250,1167,1292,1291,1250,1250,1250,1292,1208,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1000,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1042,1291,1209,1250,1250,1250,1208,1250,1292,1250,1250,1125,1250,1250,1291,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1292,1250,1292,1250,1083,1292,1041,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1084,1291,1209,1250,1250,1250,1291,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1208,1250,1250,1292,1250,1250,1292,1250,1291,1250,1250,1292,1250,1292,1250,1250,1208,1292,1250,1250,1083,1250,1208,1334,1291,1250,1250,1292,1208,1167,1250,1000,1292,1250,1291,1250,1250,1292,1250,1292,1208,1292,1208,1250,1292,1250,1250,1250,1291,1250,1250,1292,1208,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1209,1250,1250,1250,1291,1250,1250,1292,1250,1250,1250,1042,1291,1209,958,1250,1250,1292,1208,1250,1333,1292,1250,1250,1208,1209,1291,1250,1250,1292,1208,1209,1250,1250,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1167,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1292,1208,1250,1292,1250,1250,1250,1250,1291,1250,1292,1250,1250,1292,1125,1291,1250,1250,1292,1250,1250,1292,1250,1250,1250,1250,1166,1250,1292,1167,1250,1250,1291,1250,1292,1250,1250,1250,1292,1208,1250,1250,1250,1250,1250,1250,1250,1250,1167,1083,1292,1250,1250,1250,1250,1250,1000,1291,1209,1250,1250,1250,1291,1250,1292,1250,1292,1208,1250,1250,1292,1250,1250,1250,1250,1250,1291,1209,1250,1291,1250,1250,1250,1292,1250,1292,1250,1250,1291,1250,1250,1292,1167,1250,1291,1250,1125,1250,1292,1250,1208,1250,1292,1250,1292,1250,1250,1250,1041,1250,1167,1208,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1291,1250,1292,1250,1250,1292,1166,1250,1250,1292,1250,1250,1208,1250,1250,1250,1250,1250,1250,1292,1042,1250,1250,1250,1250,1291,1250,1250,1250,1292,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1208,1292,1250,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1292,1125,1208,1250,1250,1083,1250,1292,1250,1250,1250,1250,1250,1292,1125,1250,1250,1250,1250,1291,1250,1209,1291,1292,1250,1250,1292,1208,1250,1292,1250,1291,1292,1125,1250,1333,1250,1292,1250,1250,1292,1250,1250,1250,1166,1292,1250,1292,1125,1291,1250,1292,1250,1250,1250,1125,1250,1292,1208,1250,1250,1292,1208,1250,1250,1250,1208,1250,1250,1292,1250,1250,1292,1291,1250,1292,1250,1250,1333,1250,1292,1208,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1209,1208,1208,1209,1250,1250,1250,1291,1250,1250,1292,1250,1292,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1291,1250,1292,1250,1208,1250,1250,1250,1209,1250,1250,1250,1166,1292,1208,1250,1042,1250,1250,1292,1250,1250,1291,1250,1250,1250,1292,1167,1250,1250,1250,1250,1250,1291,1250,1250,1292,1167,1291,1250,1250,1250,1292,1292,1250,1250,1250,1291,1209,1250,1250,1250,1291,1250,1250,1250,1292,1208,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1292,1250,1250,1250,1291,1167,1208,1292,1250,1250,1250,1292,1083,1250,1292,1250,1250,1291,1250,1125,1250,1250,1250,1084,1250,1250,1250,1250,1250,1250,1250,1250,1166,1209,1250,1291,1250,1292,1208,1250,1250,1292,1250,1250,1292,1250,1291,1250,1250,1292,1292,1250,1291,1250,1250,1292,1250,1250,1292,1208,1250,1250,1250,1250,1292,1250,1041,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1250,1208,1209,1250,1250,1250,1250,1291,1292,1250,1292,1250,1291,1250,1250,1250,1292,1250,1292,1291,1250,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1291,1125,1250,1250,1292,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1292,1208,1250,1334,1250,1250,1291,1250,1292,1250,1250,1250,1250,1292,1291,1250,1292,1250,1250,1250,1292,1250,1250,1041,1292,1250,1250,1292,1250,1291,1250,1250,1292,1250,1250,1250,1292,1291,1250,1250,1292,1208,1292,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1250,1250,1250,1292,1208,1250,1250,1292,1167,1208,1208,1292,1208,1167,1292,1250,1291,1250,1209,1291,1292,1208,1250,1042,1250,1208,1250,1292,1250,1250,1250,1250,1250,1083,1292,1250,1333,1209,1208,1250,1250,1292,1250,1250,1166,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1292,1291,1084,1250,1250,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1292,1291,1250,1209,1291,1209,1250,1250,1250,1291,1167,1250,1292,1291,1250,1250,1250,1292,1250,1250,1250,1250,1125,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1292,1041,1292,1208,1250,1250,1250,1292,1250,1292,1166,1250,1250,1250,1250,1334,1250,1208,1250,1250,1250,1250,1250,1292,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1125,1209,1250,1208,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1291,1250,1292,1208,1250,1292,1250,1250,1292,1250,1250,1250,1291,1250,1209,1250,1250,1041,1250,1292,1208,1209,1250,1250,1250,1208,1250,1250,1292,1250,1250,1291,1250,1250,1292,1292,1291,1250,1167,1250,1292,1250,1250,1250,1291,1084,1291,1209,1083,1250,1125,1250,1250,1292,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1292,1250,1291,1250,1250,1250,1250,1250,1209,1291,1250,1250,1292,1250,1250,1292,1291,1250,1334,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1167,1291,1250,1250,1292,1250,1125,1250,1042,1250,1250,1291,1250,1292,1208,1209,1250,1250,1250,1250,1291,1250,1292,1250,1250,1292,1208,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1084,1250,1250,1250,1291,1250,1250,1250,1292,1292,1291,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1292,1208,1250,1250,1250,1250,1292,1291,1167,1250,1250,1250,1250,1292,1208,1250,1208,1250,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1000,1292,1292,1291,1209,1250,1250,1250,1083,1250,1292,1208,1292,1250,1291,1209,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1167,1291,1334,1291,1209,1208,1167,1250,1083,1250,1250,1208,1292,1292,1208,1250,1125,1250,1250,1250,1250,1292,1250,1250,1250,1291,1292,1208,1292,1208,1250,1292,1250,1250,1250,1042,1250,1250,1250,1250,1208,1292,1208,1250,1292,1250,1166,1250,1250,1292,1250,1250,1292,1291,1209,1250,1250,1291,1250,1250,1250,1292,1250,1208,1250,1292,1250,1250,1250,1292,1291,1250,1292,1292,1250,1250,1250,1291,1250,1292,1250,1292,1083,1250,1250,1250,1250,1292,1208,1250,1250,1292,1291,1250,1292,1208,1250,1292,1250,1167,1291,1167,1250,1083,1292,1250,1292,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1292,1208,1250,1250,1250,1209,1291,1250,1292,1250,1250,1167,1250,1250,1250,1041,1250,1250,1292,1208,1250,1250,1250,1292,1167,1166,1292,1250,1250,1292,1208,1250,1250,1250,1167,1291,1250,1292,1292,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1250,1250,1083,1250,1250,1292,1250,1250,1250,1250,1291,1209,1291,1250,1292,1250,1292,1250,1250,1250,1250,1250,1250,1333,1208,1250,1250,1250,1250,1250,1292,1250,1250,1250,1208,1292,1250,1250,1292,1250,1250,1083,1250,1292,1250,1250,1291,1292,1250,1000,1292,1250,1291,1292,1250,1292,1291,1250,1250,1250,1292,1250,1292,1250,1250,1250,1166,1250,1250,1292,1208,1250,1250,1250,1292,1250,1292,1083,1292,1250,1291,1250,1292,1250,1292,1250,1291,1250,1250,1250,1292,1083,1250,1250,1250,1292,1250,1250,1292,1291,1250,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1250,1292,1250,1292,1291,1250,1250,1292,1208,1250,1250,1125,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1292,1208,1209,1291,1250,1250,1250,1292,1292,1250,1250,1250,1125,1250,1250,1250,1291,1250,1292,1208,1292,1208,1250,1250,1292,1250,1250,1250,1292,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1292,1291,1250,1250,1250,1250,1209,1250,1291,1250,1250,1292,1250,1208,1292,1250,1250,1292,1250,1250,1250,1250,1291,1167,1250,1250,1292,1250,1291,1209,1250,1250,1291,1167,1292,1291,1292,1292,1250,1250,1166,1209,1250,1250,1250,1250,1291,1292,1250,1292,1291,1250,1250,1292,1292,1250,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1208,1125,1208,1209,1250,1250,1250,1250,1250,1250,1291,1292,1208,1292,1208,1250,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1125,1250,1292,1250,1250,1250,1292,1250,1041,1250,1250,1292,1250,1250,1250,1208,1292,1208,1250,1250,1250,1250,1250,1292,1208,1209,1250,1250,1250,1291,1250,1084,1250,1250,1291,1000,1292,1208,1250,1250,1292,1292,1250,1250,1125,1250,1250,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1292,1291,1250,1292,1250,1250,1250,1292,958,1250,1292,1250,1250,1250,1250,1291,1250,1250,1292,1250,1167,1250,1250,1250,1250,1166,1250,1250,1292,1208,1292,1250,1250,1250,1292,1250,1250,1250,1291,1209,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1250,1250,1292,1208,1250,1250,1250,1250,1250,1167,1250,1292,1250,1250,1333,1208,1250,1250,1167,1292,1250,1291,1250,1250,1250,1250,1292,1250,1292,1000,1250,1250,1208,1250,1292,1250,1250,1250,1250,1166,1250,1250,1250,1292,1250,1250,1250,1250,1208,1250,1292,1250,1292,1250,1250,1250,1250,1250,1250,1250,1291,1250,1292,1208,1250,1250,1250,1209,1291,1209,1291,1250,1209,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1292,1292,1250,1291,1167,1292,1250,1250,1250,1250,1250,1250,1291,1250,1292,1208,1250,1292,1292,1291,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1292,1250,1250,1292,1250,1250,1291,1292,1250,1292,1250,1250,1250,1250,1291,1250,1250,1250,1209,1250,1250,1291,1250,1250,1292,1250,1250,1208,1292,1208,1250,1250,1209,1291,1250,1250,1250,1250,1250,1292,1000,1292,1250,1291,1250,1292,1250,1250,1250,1125,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1125,1250,1250,1292,1250,1250,1291,1250,1292,1250,1292,1250,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1167,1250,1250,1291,1250,1250,1292,1250,1250,1292,1291,1250,1250,1250,1292,1208,1250,1042,1292,1250,1250,1291,1250,1292,1208,1250,1250,1292,1125,1250,1250,1250,1250,1250,1292,1166,1250,1292,1250,1250,1250,1250,1292,1250,1250,1291,1209,1250,1291,1250,1292,1250,1167,1250,1250,1291,1084,1291,1250,1292,1250,1250,1250,1250,1208,1084,1250,1291,1250,1250,1250,1250,1250,1250,1292,1042,1291,1209,1125,1208,1167,1291,1250,1250,1292,1167,1250,1250,1250,1250,1250,1125,1291,1209,1250,1250,1291,1209,1250,1250,1250,1250,1250,1250,1291,1209,1250,1125,1250,1291,1250,1250,1250,1292,1208,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1292,1292,1250,1250,1291,1292,1250,1292,1125,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1208,1250,1292,1250,1291,1250,1250,1250,1292,1250,1208,1292,1333,1209,1250,1291,1292,1250,1250,1292,1208,1292,1291,1250,1250,1292,1167,1250,1291,1250,1250,1250,1250,1209,1250,1291,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1250,1291,1250,1250,1292,1250,1250,1208,1292,1250,1250,1292,1250,1208,1250,1250,1250,1292,1250,1250,1250,1250,1208,1292,1208,1250,1208,1250,1292,1250,1250,1292,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1209,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1291,1250,1292,1292,1250,1250,1250,1291,1250,1250,1292,1250,1167,1250,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1042,1250,1250,1250,1250,1250,1292,1166,1250,1292,1250,1292,1291,1250,1250,1042,1250,1292,1291,1209,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1041,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1292,1291,1292,1250,1250,1292,1125,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1292,1208,1084,1250,1250,1291,1292,1250,1250,1292,1208,1292,1208,1250,1250,1250,1250,1292,1250,1250,1208,1125,1250,1292,1250,1250,1291,1250,1250,1250,1250,1292,1250,1250,1292,1250,1250,1250,1250,1250,1250,1291,1250,1250,1292,1250,1250,1167,1250,1083,1250,1250,1250,1250,1250,1250,1292,1208,1250,1250,1167,1250,1291,1292,1250,1292,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1125,1250,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1208,1292,1250,1250,1250,1250,1292,1250,1250,1250,1291,1209,1250,1250,1250,1250,1250,1291,1292,1250,1292,1166,1250,1167,1208,1209,1250,1250,1083,1292,1250,1250,1291,1250,1250,1250,1167,1042,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1167,1250,1250,1292,1250,1250,1250,1250,1291,1250,1250,1250,1209,1291,1292,1250,1292,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1292,1167,1250,1250,1291,1250,1250,1250,1209,1291,1250,1250,1250,1292,1250,1250,1250,1292,1291,1250,1250,1250,1292,1250,1250,1333,1292,1250,1250,1125,1292,1208,1250,1250,1250,1250,1250,1250,1250,1333,1209,1250,1166,1250,1250,1250,1209,1291,1125,1209,1250,1250,1250,1250,1250,1291,1250,1250,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1209,1291,1209,1125,1208,1208,1042,1250,1250,1250,1292,1250,1291,1250,1250,1250,1292,1083,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1000,1250,1166,1209,1291,1250,1292,1250,1250,1292,1291,1250,1250,1292,1250,1250,1250,1250,1167,1250,1291,1292,1250,1250,1250,1250,1250,1083,1250,1250,1167,1250,1250,1292,1208,1250,1208,1084,1250,1291,1167,1250,1250,1250,1250,1167,1250,1250,1291,1250,1250,1250,1250,1250,1250,1292,1208,1250,1250,1250,1250,1292,1208,1250,1250,1250,1292,1208,1250,1209,1291,1250,1250,1125,1250,1292,1250,1250,1250,1292,1250,1250,1291,1292,1250,1292,1250,1291,1209,1250,1250,1291,1250,1250,1292,1250,1250,1250,1292,1291,1250,1292,1167,1291,1250,1250,1292,1250,1292,1250,1250,1291,1250,1042,1250,1250,1250,1250,1292,1250,1250,1250,1250,1208,1208,1292,1292,1250,1250,1250,1291,1250,1250,1292,1250,1292,1291,1209,1250,1250,1291,1292,1292,1291,1042,1250,1250,1292,1250,1291,1250,1250,1292,1250,1292,1250,1250,1291,1042,1250,1250,1250,1292,1250,1291,1250,1250,1292,1292,1291,1250,1250,1292,1250,1250,1083,1250,1250,1125,1250,1292,1250,1292,1208,1250,1250,1250,1250,1083,1250,1250,1250,1292,1208,1250,1250,1250,1250,1250,1250,1250,1292,1250,1292,1250,1083,1292,1250,1291,1250,1292,1292,1250,1250,1250,1250,1291,1209,1250,1291,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1125,1250,1250,1250,1250,1250,1291,1250,1250,1250,1292,1083,1292,1250,1000,1292,1250,1208,1292,1208,1292,1250,1250,1291,1125,1250,1250,1250,1042,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1167,1250,1292,1250,1250,1250,1250,1250,1250,1291,1250,1292,1250,1292,1250,1125,1250,1291,1250,1250,1292,1250,1292,1291,1250,1250,1292,1250,1250,1250,1250,1250,1125,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1209,1333,1292,1291,1292,1292,1250,1250,1291,1209,1250,1250,1250,1291,1250,1167,1250,1250,1250,1167,1041,1250,1292,1292,1250,1250,1291,1250,1250,1292,1250,1208,1084,1250,1250,1291,1250,1250,1250,1250,1250,1292,1292,1208,1250,1292,1250,1250,1291,1209,1208,1250,1250,1250,1250,1292,1208,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1292,1250,1292,1291,1250,1250,1292,1250,1208,1292,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1292,1250,1250,1250,1250,1250,1250,1083,1333,1250,1250,1250,1250,1292,1250,1250,1292,1250,1291,1167,1208,1209,1250,1250,1291,1209,1250,1208,1292,1250,1250,1250,1291,1250,1292,1250,1250,1292,1166,1209,1250,1250,1291,1250,1250,1250,1292,1250,1250,1167,1250,1250,1250,1291,1292,1250,1250,1083,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1291,1292,1250,1292,1291,1209,1250,1250,1291,1209,1250,1250,1291,1250,1125,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1208,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1250,1209,1291,1250,1292,1250,1292,1208,1250,1250,1292,1250,1291,1250,1292,1250,1292,1250,1250,1250,1250,1250,1250,1125,1250,1250,1250,1291,1292,1250,1250,1208,1250,1250,1292,1250,1250,1250,1250,1250,1292,1291,1250,1250,1292,1250,1250,1250,1250,1292,1208,1250,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1250,1250,1292,1208,1250,1292,1250,1250,1291,1250,1250,1250,1250,1084,1291,1209,1166,1250,1250,1292,1250,1250,1250,1292,1291,1209,1208,1292,1250,1250,1291,1250,1292,1292,1208,1250,1292,1291,1167,1250,1292,1250,1250,1250,1250,1250,1250,1291,1250,1292,1250,1250,1250,1292,1208,1208,1250,1250,1250,1209,1291,1209,1250,1250,1250,1250,1083,1292,1250,1250,1250,1250,1250,1250,1291,1209,1250,1250,1250,1291,1250,1250,1250,1250,1250,1084,1291,1209,1250,1291,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1292,1208,1250,1209,1291,1250,1292,1250,1042,1291,1209,1291,1250,1292,1250,1250,1292,1250,1250,1291,1292,1250,1292,1250,1291,1292,1333,1250,1084,1250,1250,1291,1250,1250,1250,1292,1250,1292,1250,1291,1209,1250,1041,1292,1250,1292,1250,1083,1250,1250,1208,1292,1250,1250,1250,1042,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1208,1167,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1250,1292,1250,1250,1292,1250,1125,1250,1250,1291,1209,1250,1291,1250,1250,1292,1250,1250,1208,1292,1208,1250,1250,1250,1250,1167,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1292,1291,1250,1250,1250,1292,1042,1250,1250,1250,1250,1250,1291,1250,1250,1250,1209,1166,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1292,1250,1250,1167,1250,1250,1250,1250,1333,1250,1292,1208,1250,1292,1041,1292,1250,1250,1250,1292,1291,1209,1250,1250,1250,1083,1292,1250,1291,1292,1250,1292,1250,1250,1291,1250,1292,1250,1250,1042,1250,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1292,1250,1292,1250,1250,1250,1208,1167,1250,1291,1250,1250,1250,1292,1208,1250,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1167,1250,1292,1250,1250,1250,1208,1292,1250,1250,1291,1125,1250,1250,1292,1250,1250,1250,1250,1083,1250,1292,1250,1250,1292,1250,1250,1250,1250,1250,1291,1292,1250,1250,1250,1250,1250,1250,1250,1083,1292,1250,1292,1250,1291,1250,1250,1292,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1125,1292,1250,1291,1250,1250,1292,1208,1292,1250,1250,1250,1333,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1208,1292,1250,1250,1291,1250,1084,1250,1250,1291,1250,1250,1292,1208,1292,1208,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1291,1292,1250,1292,1250,1250,1291,1250,1292,1250,1250,1250,1250,1250,1333,1250,1250,1209,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1208,1292,1042,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1333,1250,1292,1250,1125,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1292,1250,1292,1250,1291,1250,1292,1250,1250,1250,1250,1250,1292,1208,1208,1250,1292,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1292,1167,1291,1209,1208,1208,1209,1250,1250,1250,1291,1209,1250,1250,1250,1250,1250,1250,1083,1292,1250,1291,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1208,1250,1250,1250,1292,1208,1250,1250,1292,1250,1250,1292,1250,1250,1291,1209,1166,1250,1292,1167,1250,1291,1250,1250,1250,1334,1125,1250,1250,1291,1125,1209,1250,1250,1250,1291,1209,1250,1291,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1000,1292,1250,1250,1292,1250,1250,1291,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1209,1250,1250,1291,1292,1250,1250,1292,1250,1250,1250,1291,1292,1250,1250,1292,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1125,1250,1250,1292,1250,1291,1250,1292,1208,1250,1250,1125,1292,1250,1292,1291,1209,1250,1250,1250,1291,1250,1292,1292,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1208,1250,1250,1250,1250,1292,1250,1292,1291,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1291,1209,1291,1209,1250,1250,1250,1250,1250,1250,1250,1250,1291,1292,1250,1042,1250,1250,1291,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1042,1292,1250,1041,1292,1250,1292,1208,1250,1250,1333,1250,1250,1042,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1291,1209,1250,1291,1250,1292,1125,1250,1250,1292,1250,1291,1250,1250,1292,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1209,1250,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1250,1250,1209,1291,1250,1250,1250,1250,1167,1250,1250,1250,1292,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1250,1292,1208,1084,1250,1291,1292,1250,1250,1250,1250,1292,1250,1250,1083,1250,1250,1250,1292,1250,1250,1291,1292,1125,1250,1250,1292,1250,1291,1250,1250,1250,1209,1250,1250,1291,1250,1250,1334,1000,1250,1250,1250,1250,1250,1250,1291,1209,1208,1292,1250,1250,1291,1250,1250,1250,1084,1250,1291,1250,1292,1250,1250,1292,1250,1291,1209,1250,1166,1292,1250,1250,1250,1250,1250,1083,1250,1250,1250,1250,1209,1166,1250,1042,1250,1250,1292,1250,1125,1250,1291,1250,1167,1292,1250,1250,1250,1291,1250,1250,1250,1250,1167,1292,1250,1250,1250,1291,1250,1292,1208,1250,1292,1250,1250,1292,1208,1250,1292,1250,1250,1250,1125,1250,1125,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1292,1208,1250,1292,1250,1250,1291,1250,1292,1250,1250,1250,1250,1250,1292,1250,1250,1250,1166,1292,1292,1291,1042,1292,1250,1250,1291,1250,1250,1250,1292,1250,1292,1208,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1292,1291,1209,1250,1291,1250,1250,1250,1250,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1167,1292,1208,1208,1250,1250,1250,1250,1167,1292,1250,1250,1250,1291,1250,1250,1084,1250,1166,1250,1250,1292,1208,1250,1292,1250,1292,1250,1125,1166,1250,1125,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1292,1208,1250,1250,1292,1208,1250,1250,1250,1292,1250,1125,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1167,1250,1291,1334,1250,1250,1291,1250,1250,1292,1208,1250,1250,1250,1209,1250,1250,1291,1250,1250,1250,1250,1292,1292,1250,1250,1250,1291,1250,1292,1250,1208,1250,1250,1250,1042,1292,1250,1250,1166,1250,1167,1292,1250,1291,1209,1250,1250,1291,1250,1292,1250,1292,1250,1250,1250,1208,1250,1292,1250,1250,1250,1291,1250,1250,1167,1250,1250,1250,1292,1250,1291,1250,1250,1250,1250,1292,1250,1292,1250,1000,1291,1292,1208,1250,1250,1250,1292,1208,1250,1250,1292,1167,1250,1250,1291,1209,1250,1291,1250,1250,1250,1250,1250,1292,1250,1250,1292,1250,1291,1250,1250,1250,1292,1250,1125,1250,1250,1292,1250,1250,1291,1167,1250,1250,1250,1250,1250,1250,1208,1250,1250,1292,1208,1167,1208,1292,1042,1250,1250,1250,1250,1166,1292,1292,1208,1250,1250,1208,1250,1292,1292,1250,1250,1250,1291,1292,1250,1250,1292,1291,1250,1042,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1208,1292,1167,1250,1250,1166,1292,1250,1250,1292,1125,1208,1292,1208,1292,1250,1125,1208,1208,1209,1250,1250,1125,1291,1250,1292,1250,1250,1250,1167,1250,1291,1167,1292,1291,1209,1250,1208,1250,1250,1292,1291,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1291,1167,1292,1250,1250,1291,1250,1250,1292,1208,1209,1250,1250,1250,1291,1250,1292,1208,1292,1250,1250,1250,1292,1250,1291,1250,1250,1250,1209,1291,1250,1250,1250,1292,1292,1250,1250,1291,1042,1250,1250,1083,1250,1209,1250,1250,1291,1250,1292,1250,1292,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1208,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1208,1167,1042,1250,1250,1333,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1291,1292,1250,1250,1292,1250,1250,1250,1291,1292,1208,1209,1208,1250,1292,1250,1250,1250,1083,1250,1292,1250,1250,1250,1250,1291,1250,1292,1083,1250,1250,1250,1250,1250,1250,1292,1083,1292,1250,1250,1292,1250,1250,1291,1292,1250,1292,1250,1041,1250,1292,1250,1250,1333,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1292,1042,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1291,1209,1208,1250,1250,1250,1250,1292,1291,1250,1167,1292,1250,1250,1291,1209,1250,1250,1250,1083,1250,1292,1250,1208,1292,1208,1250,1250,1250,1292,1250,1250,1250,1291,1250,1292,1292,1250,1250,1250,1125,1291,1250,1250,1292,1250,1250,1292,1250,1291,1250,1292,1292,1125,1250,1291,1250,1250,1250,1292,1167,1250,1291,1250,1250,1250,1292,1250,1292,1250,1250,1125,1250,1291,1209,1250,1250,1291,1250,1250,1209,1291,1250,1250,1250,1167,1250,1333,1250,1250,1250,1292,1250,1250,1292,1250,1291,1250,1292,1250,1292,1250,1291,1250,1209,1291,1250,1250,1292,1250,1250,1250,1292,1208,1250,1250,1250,1250,1292,1250,1250,1333,1292,1250,1250,1291,1250,1250,1250,1209,1250,1250,1250,1250,1250,1250,1291,1209,1208,1208,1209,1291,1250,1250,1250,1250,1250,1292,1167,1291,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1292,1208,1250,1083,1250,1292,1250,1292,1250,1291,1250,1250,1292,1250,1250,1292,1291,1292,1208,1250,1292,1250,1292,1250,1250,1291,1250,1250,1292,1250,1292,1208,1250,1250,1250,1250,1250,1250,1250,1292,1000,1250,1250,1166,1250,1250,1250,1250,1125,1292,1250,1292,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1292,1250,1167,1291,1250,1250,1292,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1292,1083,1250,1250,1250,1042,1292,1208,1250,1250,1292,1166,1250,1250,1250,1292,1250,1250,1250,1292,1250,1291,1292,1167,1250,1291,1250,1250,1250,1250,1250,1125,1292,1292,1250,1250,1291,1292,1250,1250,1250,1292,1250,1250,1250,1208,1292,1250,1250,1208,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1292,1250,1250,1041,1250,1292,1250,1250,1250,1292,1208,1083,1250,1250,1250,1292,1208,1125,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1083,1292,1250,1250,1250,1125,1042,1291,1209,1250,1041,1292,1208,1250,1250,1250,1250,1250,1250,1250,1292,1250,1292,1250,1083,1292,1250,1250,1208,1292,1250,1291,1250,1250,1167,1250,1292,1250,1250,1291,1042,1292,1250,1250,1291,1250,1292,1250,1250,1292,1208,1250,1250,1250,1292,1291,1250,1209,1291,1250,1292,1250,1250,1292,1208,1250,1250,1292,1250,1250,1250,1250,1250,1291,1042,1250,1208,1292,1292,1041,1250,1250,1292,1250,1292,1250,1083,1292,1250,1250,1250,1291,1250,1209,1291,1250,1250,1250,1250,1250,1250,1292,1250,1250,1292,1333,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1291,1125,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1292,1208,1209,1250,1291,1250,1084,1250,1291,1292,1167,1250,1291,1292,1250,1250,1292,1250,1291,1250,1250,1250,1250,1292,1250,1125,1250,1292,1250,1250,1250,1291,1250,1250,1125,1250,1250,1292,1083,1250,1292,1208,1292,1250,1250,1042,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1250,1250,1292,1208,1250,1250,1250,1250,1209,1125,1291,1250,1292,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1291,1209,1291,1167,1250,1208,1292,1250,1250,1250,1083,1292,1250,1250,1292,1250,1125,1250,1250,1250,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1166,1250,1209,1291,1250,1250,1250,1250,1250,1292,1208,1292,1250,1292,1250,1291,1250,1250,1250,1250,1250,1167,1292,1250,1250,1291,1250,1292,1250,1250,1292,1250,1250,1250,1208,1250,1292,1250,1250,1250,1291,1084,1250,1250,1291,1250,1250,1042,1250,1125,1250,1250,1292,1166,1250,1250,1250,1250,1292,1250,1125,1292,1250,1250,1291,1209,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1208,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1292,1167,1250,1291,1250,1250,1125,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1167,1292,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1292,1208,1250,1250,1250,1250,1250,1292,1250,1250,1250,1083,1250,1250,1250,1250,1292,1250,1250,1291,1167,1292,1250,1250,1333,1250,1167,1291,1292,1250,1250,1292,1250,1250,1291,1250,1250,1250,1334,1250,1291,1250,1250,1250,1292,1292,1208,1208,1250,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1250,1250,1250,1292,1250,1292,1291,1292,1250,1250,1250,1250,1292,1291,1250,1250,1250,1292,1292,1208,1250,1250,1292,1250,1083,1250,1292,1041,1250,1250,1250,1250,1250,1250,1292,1208,1292,1250,1250,1250,1250,1125,1292,1250,1291,1292,1292,1250,1250,1250,1291,1250,1250,1292,1083,1250,1250,1292,1208,1250,1292,1292,1250,1291,1292,1250,1250,1250,1292,1250,1250,1250,1291,1292,1250,1167,1291,1250,1292,1250,1292,1250,1291,1250,1292,1250,1250,1250,1292,1166,1250,1250,1250,1250,1250,1292,1250,1250,1250,1292,1083,1208,1292,1250,1250,1250,1250,1250,1250,1292,1208,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1292,1250,1250,1292,1166,1250,1250,1250,1250,1292,1208,1209,1250,1291,1250,1250,1250,1250,1250,1209,1291,1250,1167,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1292,1292,1250,1250,1250,1250,1250,1291,1209,1250,1250,1250,1250,1250,1250,1250,1208,1125,1250,1250,1292,1291,1250,1292,1250,1292,1291,1209,1250,1291,1250,1250,1292,1250,1250,1292,1291,1250,1250,1250,1292,1208,1250,1000,1250,1292,1250,1250,1292,1250,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1292,1208,1250,1292,1250,1292,1083,1250,1167,1250,1291,1250,1250,1167,1292,1250,1250,1250,1250,1291,1292,1250,1250,1292,1250,1250,1291,1209,1166,1209,1291,1167,1250,1250,1250,1292,1250,1291,1042,1250,1250,1292,958,1250,1292,1291,1250,1292,1208,1292,1250,1125,1250,1208,1250,1292,1292,1250,1250,1250,1250,1250,1291,1250,1250,1292,1250,1250,1333,1292,1208,1250,1292,1250,1250,1250,1292,1291,1250,1250,1250,1250,1250,1209,1291,1250,1292,1250,1083,1250,1250,1250,1042,1250,1250,1292,1125,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1125,1250,1250,1250,1250,1292,1250,1291,1250,1250,1250,1250,1292,1250,1292,1291,1250,1250,1292,1083,1167,1250,1250,1083,1209,1250,1291,1250,1292,1250,1292,1208,1250,1250,1250,1250,1250,1250,1250,1250,1250,1333,1250,1250,1250,1292,1292,1166,1292,1292,1208,1250,1292,1208,1250,1250,1250,1250,1208,1209,1291,1250,1250,1250,1292,1250,1292,1250,1041,1292,1333,1250,1209,1208,1250,1292,1166,1292,1250,1292,1291,1292,1292,1291,1250,1250,1292,1250,1292,1208,1125,1167,1208,1250,1292,1166,1250,1250,1250,1250,1084,1083,1292,1166,1292,1208,1250,1292,1250,1292,1250,1291,1334,1250,1291,1209,1250,1250,1291,1250,1250,1250,1292,1250,1250,1042,1291,1250,1292,1250,1042,1250,1250,1250,1250,1250,1291,1125,1250,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1209,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1250,1208,1250,1292,1250,1250,1208,1250,1250,1250,1292,1250,1250,1250,1291,1292,1083,1250,1292,1250,1250,1292,1208,1042,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1292,1250,1250,1250,1292,1125,1250,1250,1250,1250,1291,1250,1209,1291,1250,1250,1250,1292,1250,1250,1292,1291,1209,1291,1125,1250,1292,1250,1333,1250,1250,1084,1208,1250,1250,1250,1250,1250,1292,1208,1292,1208,1333,1209,1208,1167,1291,1250,1292,1250,1292,1250,1250,1291,1209,1208,1208,1250,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1292,1208,1250,1250,1209,1291,1250,1292,1250,1250,1292,1208,1250,1250,1292,1208,1292,1208,1250,1292,1250,1250,1250,1250,1291,1209,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1292,1208,1209,1250,1041,1250,1250,1250,1209,1250,1250,1291,1250,1250,1250,1292,1208,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1291,1250,1250,1292,1292,1250,1291,1250,1250,1250,1250,1250,1292,1250,1208,1292,1250,1250,1292,1250,1291,1292,1250,1250,1292,1291,1209,1250,1041,1167,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1250,1292,1208,1042,1250,1250,1292,1250,1250,1291,1209,1250,1291,1250,1042,1292,1250,1250,1250,1250,1250,1291,1125,1250,1250,1292,1333,1209,1250,1291,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1208,1209,1125,1250,1250,1291,1084,1250,1250,1291,1042,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1166,1084,1291,1250,1292,1250,1250,1292,1250,1333,1208,1292,1250,1250,1292,1250,1291,1292,1250,1292,1250,1250,1250,1291,1250,1292,1250,1333,1209,1250,1291,1292,1250,1208,1250,1250,1250,1292,1250,1292,1291,1209,1125,1333,1208,1250,1292,1250,1250,1250,1250,1292,1291,1250,1292,1250,1292,1291,1250,1292,1208,1292,1250,1250,1250,1083,1292,1208,1334,1250,1250,1250,1250,1250,1291,1209,1250,1291,1250,1250,1292,1250,1208,1292,1208,1292,1208,1292,1250,1250,1292,1125,1291,1292,1292,1208,1250,1292,1250,1208,1292,1208,1208,1292,1250,1333,1250,1292,1250,1250,1292,1250,1291,1250,1250,1250,1167,1250,1208,1292,1250,1292,1250,1166,1250,1250,1250,1250,1250,1250,1250,1250,1292,1333,1250,1042,1250,1292,1250,1250,1250,1208,1292,1250,1291,1250,1125,1292,1208,1250,1250,1292,1250,1250,1250,1292,1250,1166,1250,1292,1292,1291,1292,1250,1208,1042,1292,1291,1292,1250,1292,1291,1250,1292,1292,1250,1208,1292,1291,1292,1292,1250,1041,1292,1000,1250,1250,1292,1250,1291,1292,1292,1291,1292,1250,1292,1291,1209,1291,1209,1291,1292,1250,1292,1250,1250,1250,1250,1250,1166,1292,1292,1291,1209,1250,1291,1209,1208,1292,1208,1292,1208,1292,1291,1250,1334,1250,1291,1209,1291,1250,1167,1292,1250,1291,1250,1250,1250,1292,1292,1333,1292,1250,1291,1250,1250,1292,1250,1208,1250,1292,1250,1250,1250,1167,1250,1291,1250,1250,1250,1292,1250,1083,1250,1292,1292,1166,1209,1208,1292,1041,1292,1333,1209,1250,1250,1291,1209,1083,1125,1292,1291,1250,1250,1292,1292,1000,1291,1250,1292,1292,1250,1250,1125,1250,1250,1250,1166,1292,1292,1250,1291,1334,1208,1250,1250,1250,1292,1250,1291,1209,1291,1209,1291,1209,1250,1250,1291,1292,1250,1292,1291,1209,1250,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1250,1292,1208,1250,1250,1250,1250,1292,1250,1250,1083,1292,1291,1167,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1291,1209,1250,1250,1250,1291,1250,1292,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1292,1208,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1250,1292,1250,1250,1042,1291,1209,1250,1291,1250,1250,1250,1250,1250,1209,1250,1291,1084,1250,1291,1250,1250,1250,1292,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1292,1208,1167,1292,1208,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1291,1167,1250,1250,1292,1250,1250,1291,1209,1250,1250,1291,1292,1250,1292,1041,1292,1292,1250,1250,1250,1291,1250,1250,1292,1292,1250,1250,1250,1250,1125,1250,1250,1250,1291,1250,1292,1250,1292,1250,1250,1250,1250,1250,1041,1292,1208,1250,1250,1250,1250,1250,1250,1250,1250,1250,1209,1291,1250,1292,1250,1250,1250,1292,1250,1250,1291,1292,1250,1292,1291,1250,1250,1250,1292,1208,1292,1250,1125,1250,1250,1250,1250,1250,1250,1292,1208,1250,1250,1250,1292,1250,1291,1250,1250,1292,1250,1250,1250,1167,1333,1250,1208,1292,1250,1292,1250,1041,1125,1250,1209,1250,1083,1250,1292,1291,1292,1292,1208,1250,1250,1083,1292,1208,1250,1250,1292,1208,1209,1250,1291,1292,1250,1250,1292,1250,1291,1084,1250,1166,1250,1250,1250,1292,1208,1250,1292,1250,1250,1250,1292,1250,1291,1250,1250,1250,1167,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1042,1292,1250,1250,1250,1250,1250,1250,1250,1250,1291,1209,1291,1250,1042,1292,1041,1250,1292,1250,1250,1292,1208,1167,1250,1250,1250,1208,1250,1250,1250,1292,1250,1291,1250,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1208,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1291,1000,1250,1250,1250,1042,1250,1250,1333,1250,1292,1250,1292,1166,1250,1292,1250,1292,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1083,1250,1250,1250,1292,1250,1250,1291,1250,1250,1250,1292,1208,1292,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1292,1250,1083,1250,1250,1292,1250,1208,1292,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1292,1250,1250,1250,1250,1250,1250,1125,1250,1250,1250,1250,1250,1250,1250,1250,1208,1292,1208,1292,1250,1250,1250,1292,1250,1250,1166,1292,1250,1208,1250,1292,1250,1250,1125,1250,1250,1250,1292,1250,1291,1250,1250,1292,1250,1208,1292,1250,1250,1250,1250,1125,1250,1292,1250,1291,1250,1250,1250,1292,1042,1291,1209,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1292,1250,1291,1250,1167,1292,1250,1250,1250,1250,1250,1250,1250,1291,1250,1084,1291,1209,1291,1250,1292,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1292,1250,1250,1292,1250,1250,1291,1250,1292,1250,1125,1292,1208,1208,1209,1250,1250,1250,1250,1250,1250,1291,1250,1084,1250,1250,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1250,1250,1292,1208,1250,1250,1292,1250,1250,1291,1250,1292,1250,1167,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1291,1209,1208,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1292,1250,1291,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1292,1291,1209,1291,1250,1292,1250,1250,1250,1292,1291,1250,1292,1250,1208,1292,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1209,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1292,1250,1291,1250,1167,1250,1208,1250,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1292,1208,1250,1250,1250,1292,1208,1250,1250,1250,1292,1250,1292,1291,1250,1250,1209,1250,1208,1250,1250,1250,1250,1292,1250,1291,1250,1292,1250,1292,1250,1250,1250,1250,1291,1250,1250,1250,1292,1292,1250,1250,1291,1250,1292,1250,1167,1250,1250,1250,1291,1250,1292,1250,1042,1250,1250,1291,1250,1250,1292,1292,1250,1291,1250,1250,1250,1209,1250,1250,1250,1291,1250,1292,1250,1250,1250,1250,1208,1125,1292,1250,1250,1250,1250,1250,1292,1250,1250,1208,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1125,1250,1292,1250,1291,1292,1208,1125,1209,1208,1250,1250,1250,1292,1250,1250,1250,1291,1250,1125,1250,1250,1292,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1291,1084,1250,1208,1208,1292,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1208,1292,1250,1250,1250,1292,1250,1250,1250,1291,1292,1292,1250,1250,1250,1250,1250,1250,1250,1125,1291,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1167,1250,1291,1250,1250,1292,1250,1250,1292,1125,1250,1291,1292,1250,1250,1250,1292,1250,1250,1250,1250,1291,1250,1209,1291,1209,1250,1250,1250,1250,1291,1292,1208,1209,1291,1250,1209,1291,1250,1250,1292,1250,1250,1292,1166,1209,1291,1250,1125,1292,1250,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1291,1250,1209,1291,1209,1291,1209,1250,1291,1292,1250,1250,1125,1292,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1292,1250,1250,1292,1250,1125,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1209,1291,1250,1250,1250,1292,1250,1250,1250,1292,1083,1250,1250,1292,1250,1250,1250,1250,1291,1292,1292,1250,1250,1250,1291,1250,1250,1250,1292,1208,1250,1250,1292,1250,1250,1250,1083,1292,1250,1292,1250,1250,1291,1250,1292,1250,1292,1250,1291,1209,1250,1250,1250,1083,1292,1250,1291,1250,1250,1292,1208,1292,1208,1250,1292,1250,1292,1250,1250,1250,1250,1250,1041,1292,1250,1292,1250,1250,1291,1250,1250,1250,1292,958,1250,1250,1209,1250,1250,1250,1250,1250,1250,1291,1084,1250,1250,1083,1250,1125,1292,1250,1291,1250,1250,1292,1250,1250,1292,1083,1208,1250,1250,1292,1250,1250,1250,1292,1291,1250,1292,1250,1250,1250,1083,1250,1292,1208,1209,1250,1250,1250,1250,1250,1208,1250,1250,1250,1292,1166,1250,1250,1250,1250,1250,1250,1250,1250,1292,1292,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1167,1250,1208,1250,1292,1250,1250,1292,1250,1291,1209,1250,1291,1250,1250,1292,1250,1167,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1125,1250,1250,1291,1250,1292,1250,1292,1250,1250,1250,1083,1250,1208,1250,1250,1250,1209,1291,1167,1042,1250,1291,1250,1250,1209,1208,1000,1250,1250,1292,1291,1209,1250,1291,1292,1250,1250,1250,1292,1250,1250,1250,1291,1167,1250,1208,1292,1250,1250,1292,1291,1250,1292,1250,1083,1250,1250,1250,1209,1291,1292,1250,1250,1333,1209,1291,1250,1292,1250,1250,1292,1250,1291,1250,1250,1292,1250,1292,1250,1250,1250,1250,1250,1291,1250,1250,1292,1250,1042,1291,1292,1208,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1292,1250,1083,1292,1292,1125,1250,1250,1291,1250,1125,1250,1292,1292,1250,1291,1250,1250,1292,1250,1250,1042,1291,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1291,1250,1292,1208,1167,1250,1208,1292,1208,1250,1250,1292,1208,1250,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1291,1209,1250,1291,1209,1250,1166,1250,1250,1292,1250,1292,1250,1250,1250,1250,1291,1209,1250,1250,1291,1250,1292,1250,1292,1250,1250,1291,1209,1250,1291,1209,1250,1291,1292,1250,1250,1250,1250,1250,1208,1292,1250,1167,1250,1250,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1292,1292,1250,1166,1292,1250,1125,1250,1250,1292,1250,1291,1250,1292,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1250,1208,1292,1208,1250,1250,1209,1125,1166,1250,1167,1292,1250,1250,1250,1250,1291,1250,1084,1250,1250,1250,1250,1250,1250,1291,1042,1250,1250,1250,1292,1250,1250,1250,1291,1250,1292,1125,1292,1250,1250,1250,1250,1250,1250,1250,1291,1250,1125,1292,1250,1250,1292,1208,1250,1250,1250,1292,1250,1250,1291,1292,1250,1292,1250,1250,1250,1291,1250,1292,1250,1292,1250,1250,1208,1250,1292,1250,1291,1250,1250,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1250,1250,1292,1208,1250,1250,1292,1250,1250,1250,1292,1291,1250,1250,1250,1209,1250,1250,1291,1209,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1209,1291,1209,1250,1250,1250,1208,1250,1208,1292,1292,1291,1292,1208,1292,1292,1250,1250,1291,1250,1250,1209,1291,1250,1250,1250,1292,1250,1208,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1292,1208,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1083,1250,1250,1250,1292,1250,1291,1250,1250,1250,1250,1084,1250,1250,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1292,1083,1250,1250,1250,1292,1250,1292,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1250,1041,1250,1250,1125,1250,1084,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1291,1250,1209,1291,1250,1250,1084,1250,1208,1250,1292,1250,1250,1291,1250,1250,1250,1292,1250,1250,1292,1250,1250,1291,1292,1250,1250,1250,1208,1292,1250,1250,1250,1250,1292,1250,1291,1250,1250,1250,1250,1250,1250,1292,1250,1125,1208,1250,1292,1250,1250,1250,1292,1083,1250,1250,1250,1250,1167,1250,1250,1250,1250,1291,1292,1250,1292,1208,1250,1292,1208,1250,1292,1250,1250,1250,1250,1250,1291,1250,1292,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1292,1291,1209,1250,1291,1292,1083,1209,1291,1250,1250,1292,1250,1250,1250,1250,1208,1334,1166,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1291,1250,1084,1208,1250,1292,1250,1250,1250,1250,1291,1250,1250,1292,1208,1209,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1291,1250,1292,1250,1250,1292,1250,1250,1291,1292,1250,1250,1292,1166,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1209,1291,1250,1250,1250,1250,1250,1292,1250,1292,1250,1250,1250,1250,1250,1250,1291,1167,1250,1250,1292,1250,1250,1250,1250,1250,1291,1209,1250,1250,1291,1250,1292,1250,1250,1167,1250,1250,1250,1291,1250,1250,1250,1250,1292,1250,1250,1292,1250,1291,1209,1250,1250,1291,1250,1250,1250,1209,1250,1250,1250,1250,1291,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1125,1250,1291,1250,1250,1292,1250,1250,1292,1208,1250,1250,1292,1208,1250,1250,1250,1292,1291,1250,1250,1292,1292,1250,1250,1250,1250,1208,1292,1250,1250,1250,1250,1291,1167,1250,1250,1292,1250,1250,1250,1291,1209,1250,1250,1250,1250,1291,1250,1250,1292,1083,1250,1250,1292,1250,1250,1292,1250,1291,1250,1250,1250,1250,1292,1250,1292,1250,1166,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1125,1250,1042,1291,1250,1250,1292,1292,1291,1292,1250,1292,1250,1250,1291,1042,1167,1208,1292,1208,1250,1250,1292,1250,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1208,1292,1292,1250,1250,1291,1292,1250,1292,1250,1291,1250,1250,1250,1292,1208,1250,1250,1292,1250,1042,1250,1250,1250,1250,1250,1333,1208,1250,1250,1250,1292,1292,1291,1250,1250,1250,1250,1292,1250,1292,1250,1291,1250,1250,1292,1208,1250,1250,1250,1250,1292,1292,1250,1250,1291,1250,1250,1292,1333,1250,1250,1042,1292,1250,1250,1291,1250,1292,1250,1250,1292,1250,1250,1291,1250,1209,1250,1250,1250,1208,1292,1291,1250,1250,1250,1250,1250,1250,1292,1250,1292,1250,1166,1250,1250,1250,1250,1250,1084,1208,1250,1250,1250,1250,1250,1208,1292,1208,1250,1250,1250,1250,1250,1292,1250,1292,1208,1250,1250,1250,1250,1208,1292,1292,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1125,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1292,1250,1291,1250,1250,1292,1292,1250,1250,1166,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1292,1292,1250,1250,1291,1250,1292,1250,1250,1250,1250,1250,1292,1250,1250,1125,1291,1250,1292,1250,1250,1292,1250,1250,1250,1208,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1292,1250,1292,1250,1041,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1292,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1166,1250,1292,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1250,1167,1291,1250,1292,1250,1250,1250,1250,1250,1250,1250,1292,1250,1291,1209,1291,1250,1250,1250,1250,1250,1292,1042,1208,1250,1250,1250,1292,1250,1250,1291,1292,1250,1292,1250,1250,1250,1250,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1291,1250,1250,1250,1250,1250,1250,1250,1125,1250,1250,1250,1250,1250,1292,1250,1292,1291,1250,1250,1292,1292,1250,1291,1250,1292,1250,1250,1292,1250,1250,1250,1250,1291,1250,1250,1292,1167,1250,1250,1250,1250,1125,1250,1250,1291,1209,1208,1167,1291,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1291,1125,1167,1292,1250,1291,1209,1250,1250,1083,1292,1291,1250,1250,1292,1250,1292,1250,1291,1250,1250,1292,1208,1250,1292,1250,1292,1208,1292,1291,1250,1250,1292,1250,1250,1292,1291,1250,1250,1250,1250,1292,1250,1167,1291,1250,1292,1208,1250,1250,1250,1250,1250,1292,1250,1292,1291,1250,1292,1250,1250,1292,1250,1291,1250,1250,1292,1250,1250,1042,1250,1250,1291,1250,1292,1250,1167,1291,1292,1250,1083,1250,1292,1292,1250,1250,1291,1250,1292,1250,1250,1167,1250,1250,1250,1250,1291,1250,1292,1042,1250,1291,1209,1250,1250,1250,1291,1250,1250,1250,1209,1291,1292,1250,1292,1250,1166,1250,1250,1250,1250,1250,1209,1291,1250,1250,1292,1250,1250,1042,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1208,1250,1250,1250,1209,1291,1250,1167,1250,1292,1291,1250,1250,1292,1250,1250,1250,1292,1000,1250,1291,1250,1250,1292,1250,1250,1250,1250,1208,1292,1250,1250,1292,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1292,1208,1250,1250,1250,1292,1208,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1125,1250,1291,1292,1250,1250,1250,1250,1292,1250,1250,1250,1250,1291,1209,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1292,1250,1291,1250,1250,1292,1250,1292,1250,1250,1083,1208,1125,1250,1292,1250,1292,1250,1291,1292,1250,1292,1250,1291,1250,1250,1250,1209,1291,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1291,1250,1250,1292,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1250,1291,1209,1208,1250,1292,1250,1250,1291,1250,1250,1250,1250,1292,1250,1292,1208,1250,1250,1292,1041,1250,1250,1250,1250,1292,1250,1250,1292,1083,1250,1083,1250,1292,1292,1250,1250,1208,1292,1250,1250,1250,1291,1292,1250,1250,1250,1250,1292,1250,1250,1291,1250,1292,1250,1250,1250,1292,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1250,1291,1250,1250,1250,1250,1292,1125,1250,1250,1250,1042,1250,1250,1250,1291,1250,1292,1292,1250,1250,1208,1292,1250,1250,1083,1250,1250,1250,1250,1250,1250,1250,1292,1125,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1208,1250,1292,1250,1125,1250,1208,1292,1250,1208,1250,1250,1292,1250,1250,1250,1250,1208,1292,1250,1250,1250,1250,1250,1250,1250,1292,1291,1000,1250,1250,1292,1250,1292,1291,1250,1250,1250,1292,1042,1250,1250,1250,1250,1250,1291,1250,1250,1292,1250,1250,1250,1208,1292,1208,1250,1250,1292,1208,1167,1250,1250,1208,1250,1250,1250,1292,1250,1292,1291,1250,1250,1292,1250,1250,1292,1250,1291,1250,1292,1292,1250,1291,1250,1250,1167,1292,1250,1291,1209,1208,1250,1250,1250,1250,1250,1292,1250,1291,1250,1250,1250,1292,1208,1292,1208,1209,1250,1250,1291,1292,1250,1250,1250,1250,1250,1250,1083,1250,1250,1250,1250,1250,1292,1208,1250,1250,1250,1292,1250,1250,1292,1166,1250,1250,1250,1250,1250,1292,1250,1250,1292,1250,1166,1250,1292,1292,1250,1291,1209,1291,1250,1250,1292,1292,1250,1333,1292,1250,1250,1250,1250,1291,1209,1250,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1250,1291,1292,1250,1250,1250,1292,1250,1250,1291,1250,1250,1292,1292,1250,1291,1209,1250,1250,1291,1167,1250,1250,1250,1250,1292,1250,1250,1250,1208,1250,1250,1292,1250,1250,1250,1291,1250,1250,1292,1250,1250,1042,1291,1250,1292,1250,1250,1250,1292,1208,1292,1250,1250,1250,1291,1125,1250,1250,1125,1250,1250,1250,1209,1250,1291,1292,1250,1292,1208,1250,1250,1292,1250,1250,1208,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1292,1250,1167,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1083,1375,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1292,1250,1208,1292,1208,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1334,1250,1250,1250,1291,1250,1250,1250,1209,1291,1209,1250,1250,1250,1291,1209,1291,1292,1250,1250,1292,1250,1291,1250,1250,1250,1250,1292,1250,1250,1292,1208,1208,1250,1292,1208,1292,1250,1250,1250,1250,1292,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1292,1250,1250,1250,1166,1250,1250,1292,1250,1292,1250,1250,1291,1250,1292,1250,1250,1292,1166,1209,1291,1250,1250,1209,1291,1250,1292,1250,1208,1292,1250,1250,1292,1250,1250,1083,1208,1250,1250,1292,1250,1292,1250,1250,1250,1250,1083,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1292,1292,1250,1291,1250,1250,1209,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1291,1250,1250,1292,1208,1250,1250,1292,1208,1250,1250,1250,1292,1167,1083,1250,1250,1167,1291,1209,1250,1208,1292,1250,1291,1209,1250,1250,1250,1250,1291,1250,1250,1167,1250,1292,1250,1250,1250,1291,1292,1250,1250,1250,1042,1250,1250,1208,1250,1292,1250,1250,1125,1250,1250,1291,1250,1250,1292,1250,1250,1292,1291,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1167,1250,1125,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1333,1250,1292,1166,1209,1291,1250,1292,1208,1250,1250,1250,1250,1292,1250,1250,1250,1292,1291,1209,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1250,1084,1250,1166,1209,1250,1291,1250,1250,1250,1250,1250,1250,1250,1292,1167,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1250,1292,1250,1292,1250,1250,1291,1250,1250,1250,1292,1250,1250,1292,1250,1291,1250,1250,1167,1208,1292,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1208,1292,1250,1250,1250,1291,1250,1250,1209,1250,1250,1291,1250,1292,1292,1291,1250,1292,1250,1250,1250,1292,1250,1250,1250,1083,1292,1250,1250,1250,1291,959,1291,1250,1250,1250,1292,1250,1125,1250,1250,1292,1250,1250,1291,1167,1250,1250,1167,1250,1250,1083,1250,1292,1250,1291,1209,1250,1291,1209,1208,1250,1250,1250,1292,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1083,1250,1250,1292,1250,1250,1250,1250,1291,1292,1208,1250,1084,1250,1250,1291,1209,1250,1291,1209,1250,1291,1084,1250,1250,1291,1292,1250,1292,1250,1250,1250,1208,1208,1250,1250,1250,1250,1250,1292,1250,1250,1125,1250,1250,1250,1292,1250,1250,1250,1291,1250,1209,1291,1250,1250,1250,1292,1083,1250,1292,1250,1292,1250,1291,1250,1250,1292,1250,1250,1250,1292,1291,1250,1250,1250,1209,1250,1291,1209,1291,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1209,1208,1250,1250,1292,1166,1209,1291,1250,1250,1250,1209,1291,1209,1208,1250,1250,1125,1250,1250,1250,1292,1250,1250,1291,1250,1250,1250,1292,1292,1250,1291,1209,1250,1250,1250,1250,1291,1250,1292,1208,1250,1250,1209,1291,1209,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1291,1209,1250,1250,1250,1291,1250,1250,1292,1250,1208,1250,1250,1292,1208,1250,1209,1291,1250,1292,1250,1250,1292,1250,1250,1250,1250,1291,1250,1250,1250,1250,1042,1042,1291,1250,1250,1084,1208,1292,1208,1250,1250,1250,1250,1167,1250,1250,1291,1209,1250,1291,1250,1292,1208,1250,1250,1250,1292,1292,1291,1250,1250,1250,1292,1000,1292,1250,1250,1291,1084,1250,1250,1041,1292,1292,1250,1250,1250,1250,1250,1291,1250,1084,1250,1291,1250,1250,1292,1208,1250,1292,1292,1208,1250,1292,1250,1250,1291,1250,1250,1250,1292,1292,1250,1250,1291,1250,1250,1250,1167,1292,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1209,1250,1250,1291,1250,1042,1250,1250,1125,1292,1208,1250,1250,1292,1250,1250,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1292,1250,1250,1291,1292,1250,1250,1167,1208,1167,1250,1250,1250,1291,1209,1250,1291,1250,1250,1250,1084,1250,1291,1250,1250,1250,1250,1292,1167,1250,1250,1250,1250,1250,1250,1250,1291,1250,1292,1250,1250,1208,1292,1208,1250,1250,1250,1167,1250,1292,1083,1250,1250,1250,1208,1292,1250,1250,1292,1250,1250,1250,1291,1125,1250,1250,1250,1292,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1000,1250,1250,1291,1292,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1208,1292,1250,1250,1208,1250,1292,1250,1083,1250,1292,1291,1250,1250,1292,1250,1292,1208,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1250,1250,1250,1250,1125,1250,1250,1292,1250,1250,1250,1250,1292,1250,1291,1125,1250,1250,1292,1250,1250,1250,1167,1250,1291,1250,1209,1291,1209,1208,1292,1250,1291,1250,1250,1292,1292,1250,1208,1292,1250,1250,1250,1250,1291,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1042,1000,1250,1250,1292,1125,1250,1250,1291,1292,1292,1208,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1291,1250,1292,1208,1250,1292,1250,1250,1250,1292,1083,1250,1250,1250,1250,1250,1292,1291,1250,1250,1250,1084,1291,1250,1209,1250,1291,1250,1250,1250,1292,1167,1250,1291,1292,1208,1250,1250,1292,1250,1292,1250,1250,1250,1250,1250,1250,1291,1209,1250,1250,1250,1250,1250,1250,1250,1250,1166,1250,1209,1291,1250,1250,1292,1250,1292,1250,1291,1000,1250,1292,1208,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1292,1250,1250,1292,1291,1250,1250,1250,1292,1250,1125,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1333,1292,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1125,1250,1250,1250,1250,1250,1250,1291,1084,1250,1291,1250,1250,1292,1208,1292,1250,1250,1250,1292,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1041,1250,1250,1292,1250,1250,1292,1250,1291,1250,1250,1292,1208,1292,1250,1250,1292,1250,1250,1250,1208,1292,1250,1250,1250,1291,1292,1292,1250,1250,1291,1209,1250,1250,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1209,1250,1291,1250,1250,1250,1250,1250,1250,1250,1292,1250,1083,1250,1250,1250,1250,1250,1250,1250,1250,1292,1292,1166,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1292,1208,1208,1250,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1292,1250,1250,1250,1083,1292,1208,1167,1083,1167,1292,1250,1250,1291,1250,1209,1291,1334,1250,1250,1250,1291,1250,1250,1250,1209,1208,1250,1250,1292,1250,1250,1291,1250,1292,1250,1292,1250,1250,1250,1291,1250,1167,1250,1292,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1166,1209,1250,1250,1250,1291,1167,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1292,1125,1208,1250,1292,1250,1292,1250,1125,1250,1250,1250,1291,1250,1292,1292,1291,1250,1250,1292,1250,1250,1250,1292,1250,1083,1250,1250,1292,1208,1250,1292,1250,1250,1250,1291,1209,1250,1291,1250,1250,1292,1208,1292,1250,1208,1292,1250,1250,1250,1292,1250,1250,1250,1291,1292,1167,1250,1291,1209,1250,1250,1291,1209,1125,1250,1250,1250,1250,1333,1250,1292,1208,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1000,1292,1208,1250,1292,1208,1292,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1292,1291,1250,1250,1250,1250,1250,1250,1292,1167,1250,1250,1250,1291,1250,1250,1209,1291,1250,1292,1250,1292,1250,1250,1291,1292,1250,1250,1292,1250,1250,1291,1250,1042,1250,1250,1292,1250,1291,1250,1250,1209,1291,1250,1292,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1292,1250,1292,1250,1250,1250,1250,1291,1250,1084,1250,1250,1250,1250,1291,1250,1250,1250,1209,1291,1250,1250,1250,1292,1250,1000,1250,1292,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1083,1250,1042,1250,1250,1291,1209,1250,1291,1250,1209,1291,1292,1250,1292,1250,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1292,1250,1250,1041,1250,1250,1250,1250,1250,1292,1208,1292,1250,1250,1292,1250,1250,1250,1208,1250,1250,1250,1250,1250,1250,1292,1208,1292,1250,1250,1125,1291,1250,1084,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1209,1291,1292,1292,1250,1208,1292,1250,1250,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1333,1209,1250,1250,1250,1250,1250,1250,1250,1250,1291,1292,1250,1250,1250,1292,1208,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1292,1250,1250,1292,1250,1250,1250,1208,1292,1250,1250,1291,1250,1250,1250,1292,1208,1250,1250,1250,1250,1250,1209,1291,1250,1250,1250,1250,1292,1250,1292,1041,1209,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1250,1291,1209,1250,1250,1250,1250,1291,1250,1250,1250,1292,1083,1292,1292,1250,1291,1209,1250,1250,1250,1083,1292,1250,1250,1041,1292,1250,1208,1292,1250,1250,1250,1250,1292,1250,1250,1250,1250,1291,1250,1250,1292,1292,1291,1250,1250,1209,1291,1250,1292,1250,1250,1292,1208,1250,1250,1250,1292,1208,1292,1250,1291,1250,1292,1250,1250,1292,1208,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1292,1292,1291,1250,1250,1250,1250,1292,1208,1250,1125,1250,1292,1250,1250,1250,1292,1166,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1042,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1292,1291,1292,1250,1250,1250,1250,1250,1250,1250,1292,1250,1291,1209,1208,1250,1250,1292,1250,1041,1250,1250,1209,1291,1209,1250,1250,1250,1291,1209,1291,1250,1250,1250,1250,1292,1250,1250,1250,1333,1250,1250,1250,1334,1250,1250,1250,1291,1292,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1292,1292,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1292,1250,1083,1292,1250,1292,1250,1250,1250,1250,1250,1291,1250,1167,1250,1250,1250,1250,1250,1250,1167,1250,1291,1250,1167,1292,1250,1333,1250,1250,1292,1250,1250,1250,1291,1209,1208,1292,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1208,1250,1250,1250,1250,1292,1167,1250,1250,1250,1250,1250,1291,1209,1250,1250,1250,1208,1292,1250,1250,1291,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1042,1250,1250,1250,1250,1250,1291,1250,1292,1208,1292,1250,1250,1250,1292,1250,1250,1250,1208,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1292,1292,1250,1250,1291,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1083,1292,1250,1250,1250,1291,1250,1250,1042,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1125,1292,1250,1250,1250,1083,1250,1250,1125,1250,1250,1250,1292,1250,1291,1250,1250,1250,1042,1250,1208,1292,1250,1250,1250,1250,1292,1250,1250,1291,1250,1292,1250,1292,1250,1208,1250,1250,1250,1083,1292,1167,1250,1250,1250,1250,1291,1000,1250,1292,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1292,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1292,1166,1292,1208,1250,1250,1292,1292,1250,1250,1250,1291,1250,1250,1292,1208,1250,1250,1292,1250,1292,1250,1291,1292,1250,1250,1333,1209,1291,1250,1250,1292,1250,1208,1084,1250,1250,1250,1291,1250,1250,1209,1291,1292,1250,1250,1292,1291,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1042,1250,1000,1250,1292,1208,1250,1250,1250,1250,1292,1208,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1291,1250,1292,1292,1208,1208,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1292,1208,1250,1209,1250,1250,1250,1291,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1291,1292,1250,1250,1250,1250,1292,1291,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1083,1250,1292,1250,1292,1000,1250,1250,1291,1292,1292,1250,1291,1000,1250,1292,1083,1250,1250,1250,1250,1250,1250,1292,1250,1250,1083,1250,1250,1250,1250,1250,1042,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1042,1250,1292,1250,1291,1250,1250,1292,1250,1250,1250,1250,1250,1292,1250,1291,1250,1292,1292,1250,1291,1250,1250,1250,1250,1250,1292,1250,1250,1250,1125,1250,1292,1250,1250,1250,1250,1208,1250,1292,1250,1291,1292,1250,1250,1250,1292,1166,1292,1250,1292,1208,1292,1250,1291,1250,1292,1250,1250,1250,1292,1250,1083,1292,1291,1250,1250,1250,1292,1250,1250,1250,1250,1292,1291,1292,1208,1250,1250,1250,1250,1167,1292,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1291,1292,1208,1125,1250,1292,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1209,1250,1291,1250,1250,1292,1250,1250,1250,1250,1250,1208,1250,1292,1250,1250,1083,1250,1292,1250,1292,1250,1250,1250,1333,1250,1208,1250,1250,1292,1292,1208,1250,1250,1250,1292,1250,1250,1250,1291,1292,1208,1250,1292,1250,1292,1250,1291,1250,1292,1250,1292,1250,1291,1250,1250,1125,1292,1250,1292,1250,1250,1291,1292,1250,1250,1292,1250,1083,1292,1000,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1167,1250,1292,1250,1250,1291,1250,1250,1250,1167,1250,1208,1292,1292,1250,1291,1250,1209,1250,1291,1250,1250,1292,1042,1250,1291,1292,1250,1250,1292,1041,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1083,1250,1250,1292,1250,1250,1292,1250,1291,1250,1250,1250,1250,1250,1209,1250,1291,1209,1125,1291,1250,1250,1125,1250,1250,1250,1209,1291,1250,1250,1292,1042,1250,1125,1250,1250,1250,1250,1250,1291,1209,1250,1250,1291,1250,1292,1208,1250,1250,1250,1334,1250,1250,1291,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1291,1250,1292,1208,1250,1209,1291,1250,1292,1250,1250,1250,1250,1250,1083,1250,1250,1292,1250,1250,1250,1250,1250,1250,1292,1125,1291,1250,1250,1250,1250,1250,1250,1292,1292,1250,1250,1291,1209,1250,1208,1250,1250,1250,1292,1250,1250,1291,1209,1208,1250,1292,1250,1000,1291,1167,1250,1292,1250,1250,1250,1291,1292,1250,1208,1209,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1208,1250,1250,1250,1292,1250,1083,1250,1292,1208,1250,1292,1250,1250,1292,1291,1250,1250,1250,1084,1291,1292,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1208,1292,1250,1250,1250,1208,1292,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1292,1083,1208,1292,1250,1250,1292,1291,1250,1250,1125,1292,1250,1292,1250,1250,1250,1291,1209,1208,1292,1083,1292,1291,1250,1250,1250,1292,1208,1209,1250,1125,1291,1292,1250,1250,1250,1292,1208,1250,1250,1250,1250,1292,1208,1250,1250,1250,1042,1250,1250,1291,1292,1250,1250,1250,1292,1250,1250,1291,1209,1291,1125,1250,1250,1209,1291,1250,1209,1250,1250,1291,1250,1250,1250,1250,1209,1291,1250,1250,1250,1250,1250,1250,1209,1291,1250,1250,1250,1292,1125,1292,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1042,1250,1292,1208,1167,1041,1250,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1292,1250,1250,1291,1042,1250,1292,1250,1291,1209,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1208,1292,1250,1250,1250,1250,1208,1250,1209,1250,1291,1250,1250,1292,1250,1292,1250,1291,1292,1208,1250,1250,1250,1250,1250,1209,1208,1250,1250,1250,1292,1250,1208,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1209,1291,1167,1083,1292,1292,1208,1250,1250,1292,1000,1250,1291,1250,1250,1250,1125,1250,1250,1250,1250,1292,1250,1250,1292,1250,1250,1291,1292,1208,1250,1209,1250,1250,1291,1209,1208,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1291,1209,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1125,1292,1250,1250,1250,1291,1292,1250,1250,1292,1250,1291,1250,1250,1250,1292,1250,1042,1250,1291,1209,1250,1250,1291,1250,1250,1084,1250,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1209,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1291,1292,1250,1250,1292,1208,1208,1250,1292,1250,1250,1250,1125,1250,1292,1208,1250,1292,1250,1250,1250,1166,1250,1292,1250,1250,1250,1250,1250,1250,1292,1208,1250,1250,1292,1250,1250,1208,1250,1250,1292,1250,1250,1291,1250,1250,1292,1292,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1250,1084,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1291,1209,1250,1250,1291,1292,1250,1292,1291,1250,1292,1250,1250,1250,1292,1166,1250,1250,1209,1250,1250,1291,1209,1291,1250,1250,1292,1250,1250,1250,1250,1250,1250,1292,1166,1209,1291,1250,1250,1250,1292,1208,1209,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1292,1208,1250,1292,1250,1250,1208,1250,1167,1250,1291,1209,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1250,1291,1292,1250,1250,1250,1292,1291,1250,1250,1334,1250,1250,1291,1209,1250,1250,1250,1291,1209,1291,1250,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1292,1250,1250,1250,1292,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1042,1250,1250,1208,1292,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1042,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1208,1292,1250,1250,1250,1250,1250,1125,1250,1250,1250,1250,1292,1250,1250,1250,1250,1291,1250,1292,1250,1167,1250,1250,1250,1250,1250,1291,1292,1208,1250,1250,1250,1209,1291,1292,1250,1292,1250,1250,1291,1167,1292,1250,1250,1291,1084,1250,1250,1250,1291,1209,1250,1250,1125,1250,1250,1291,1250,1292,1292,1250,1250,1291,1250,1250,1292,1250,1250,1208,1250,1250,1292,1250,1250,1292,1250,1250,1250,1166,1250,1250,1334,1208,1292,1250,1250,1250,1250,1250,1083,1167,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1250,1292,1250,1250,1208,1292,1250,1250,1250,1291,1250,1250,1250,1167,1250,1208,1292,1000,1250,1292,1250,1291,1250,1292,1250,1292,1291,1292,1208,1209,1250,1291,1250,1250,1125,1292,1250,1292,1250,1291,1250,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1250,1292,1208,1250,1208,1250,1250,1292,1250,1250,1250,1250,1083,1250,1292,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1208,1292,1250,1250,1250,1250,1000,1208,1292,1250,1292,1208,1292,1166,1292,1292,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1292,1291,1250,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1084,1291,1209,1250,1291,1250,1250,1292,1250,1250,1250,1292,1000,1291,1250,1250,1250,1250,1250,1167,1042,1250,1250,1291,1250,1250,1084,1250,1041,1250,1292,1250,1250,1250,1292,1250,1250,1291,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1291,1250,1292,1250,1292,1291,1292,1208,1250,1209,1250,1250,1250,1250,1250,1291,1292,1250,1292,1250,1250,1333,1292,1250,1250,1291,1250,1292,1250,1250,1292,1250,1125,1250,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1291,1292,1250,1250,1250,1208,1292,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1125,1250,1250,1125,1250,1250,1250,1291,1250,1250,1292,1292,1250,1291,1250,1292,1292,1250,1250,1250,1250,1291,1250,1292,1250,1042,1291,1209,1291,1250,1250,1292,1250,1292,1250,1250,1291,1292,1208,1209,1291,1250,1292,1250,1250,1292,1208,1250,1292,1250,1250,1291,1209,1291,1042,1250,1250,1250,1292,1208,1292,1291,1250,1250,1292,1292,1250,1250,1291,1209,1250,1291,1042,1292,1208,1250,1292,1250,1291,1250,1292,1250,1250,1292,1208,1250,1042,1291,1209,1250,1291,1250,1292,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1167,1250,1292,1250,1291,1250,1292,1250,1042,1250,1250,1291,1209,1250,1250,1250,1250,1291,1209,1250,1291,1292,1208,1250,1292,1250,1250,1250,1042,1208,1250,1208,1250,1292,1208,1250,1250,1292,1250,1250,1250,1292,1291,1250,1209,1291,1334,1250,1291,1250,1292,1250,1250,1250,1042,1291,1250,1250,1250,1250,1292,1208,1125,1292,1250,1292,1250,1250,1291,1250,1292,1250,1292,1166,1250,1292,1250,1250,1250,1250,1250,1250,1292,1250,1291,1250,1250,1167,1250,1250,1292,1291,1209,1250,1291,1209,1250,1250,1291,1250,1250,1250,1292,1250,1292,1208,1250,1250,1292,1083,1250,1250,1250,1292,1291,1209,1291,1250,1292,1250,1250,1250,1250,1250,1292,1250,1125,1250,1291,1250,1250,1250,1250,1292,1292,1291,1292,1250,1292,1250,1250,1250,1291,1209,1291,1084,1250,1291,1250,1250,1292,1250,1250,1292,1250,1125,1291,1292,1250,1000,1250,1292,1208,1250,1292,1291,1209,1125,1291,1250,1250,1250,1250,1209,1166,1292,1250,1250,1125,1292,1291,1250,1292,1250,1292,1250,1291,1292,1250,1292,1291,1250,1292,1250,1292,1083,1250,1292,1291,1292,1250,1250,1292,1291,1292,1250,1250,1125,1250,1208,1250,1292,1208,1250,1250,1292,1208,1125,1250,1292,1292,1250,1291,1292,1250,1250,1250,1250,1167,1291,1250,1250,1292,1292,1250,1250,1250,1041,1000,1250,1250,1167,1250,1292,1208,1292,1250,1250,1250,1250,1250,1083,1250,1292,1291,1250,1292,1250,1250,1250,1250,1250,1250,1083,1292,1250,1083,1250,1250,1292,1167,1291,1250,1250,1125,1250,1250,1292,1292,1250,1250,1291,1250,1250,1209,1291,1292,1250,1083,1292,1250,1167,1250,1250,1250,1291,1250,1250,1250,1250,1292,1208,1292,1250,1292,1208,1042,1250,1250,1291,1250,1292,1250,1292,1250,1166,1292,1250,1292,1208,1250,1250,1292,1208,1250,1250,1167,1291,1292,1250,1292,1250,1250,1250,1000,1291,1292,1250,1250,1250,1250,1250,1250,1292,1250,1291,1250,1292,1250,1250,1250,1083,1250,1250,1292,1250,1250,1292,1250,1291,1250,1209,1250,1250,1250,1250,1250,1250,1250,1250,1291,1042,1250,1250,1250,1250,1250,1292,1208,1250,1292,1250,1250,1125,1291,1209,1291,1209,1250,1250,1250,1291,1250,1292,1250,1250,1292,1250,1291,1250,1292,1250,1250,1250,1292,1166,1250,1292,1208,1250,1250,1250,1250,1292,1208,1250,1125,1250,1292,1250,1292,1250,1291,1250,1042,1292,1250,1250,1291,1250,1125,1292,1250,1292,1291,1125,1250,1292,1250,1250,1250,1292,1250,1291,1000,1292,1250,1292,1208,1250,1292,1250,1291,1250,1250,1250,1292,1292,1250,1250,1291,1250,1250,1250,1250,1292,1042,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1250,1292,1083,1292,1083,1209,1208,1292,1250,1250,1250,1250,1250,1291,1250,1250,1250,1292,1167,1291,1250,1292,1250,1250,1083,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1291,1292,1250,1042,1291,1209,1250,1250,1291,1292,1250,1250,1333,1250,1250,1334,1291,1250,1292,1208,1250,1292,1250,1250,1250,1292,1041,1250,1250,1292,1292,1166,1292,1250,1250,1292,1250,1250,1250,1250,1291,1209,1291,1250,1250,1292,1250,1250,1250,1292,1083,1250,1250,1250,1292,1291,1250,1209,1291,1250,1250,1292,1042,1291,1250,1250,1250,1292,1250,1250,1083,1250,1292,1250,1250,1292,1250,1250,1250,1250,1125,1291,1209,1250,1041,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1292,1250,1250,1083,1209,1250,1291,1250,1250,1292,1250,1292,1291,1250,1250,1292,1250,1292,1208,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1291,1209,1208,1250,1250,1250,1292,1250,1250,1250,1250,1291,1209,1291,1250,1250,1292,1250,1250,1208,1250,1250,1250,1292,1292,1291,1042,1250,1250,1292,1208,1250,1042,1291,1209,1250,1291,1292,1208,1250,1250,1250,1084,1250,1291,1084,1291,1167,1292,1250,1250,1291,1250,1250,1250,1292,1250,1292,1250,1250,1250,1291,1292,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1292,1250,1292,1291,1250,1250,1250,1292,1250,1250,1250,1250,1292,1208,1250,1250,1292,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1291,1250,1292,1250,1250,1250,1250,1250,1250,1250,1167,1250,1291,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1292,1291,1209,1291,1250,1292,1167,1291,1084,1250,1291,1250,1250,1292,1208,1250,1292,1292,1250,1291,1250,1292,1208,1250,1250,1250,1250,1250,1292,1250,1292,1208,1250,1250,1250,1250,1292,1291,1250,1250,1250,1292,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1250,1250,1292,1208,1250,1250,1292,1250,1292,1250,1250,1291,1250,1250,1292,1292,1250,1250,1125,1166,1250,1250,1250,1250,1250,1292,1250,1083,1250,1292,1250,1125,1250,1292,1250,1250,1291,1292,1250,1250,1250,1292,1291,1209,1291,1250,1250,1250,1125,1292,1250,1250,1292,1250,1250,1291,1209,1291,1209,1250,1250,1250,1250,1291,1250,1250,1250,1250,1209,1250,1291,1209,1250,1291,1250,1250,1292,1250,1250,1292,1250,1291,1209,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1291,1250,1250,1125,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1083,1250,1292,1250,1291,1250,1292,1250,1250,1250,1250,1208,1292,1250,1250,1250,1083,1250,1292,1250,1250,1250,1292,1250,1250,1250,1250,1291,1292,1292,1250,1291,1292,1000,1250,1292,1250,1250,1250,1250,1208,1292,1250,1250,1291,1250,1292,1083,1292,1250,1250,1292,1250,1291,1250,1292,1250,1250,1250,1250,1250,1083,1292,1250,1250,1250,1292,1208,1208,1250,1250,1292,1167,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1292,1250,1250,1292,1208,1250,1250,1250,1292,1250,1250,1250,1125,1250,1208,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1209,1041,1250,1250,1250,1292,1208,1250,1250,1250,1292,1250,1083,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1292,1208,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1291,1209,1208,1250,1208,1292,1250,1250,1250,1292,1250,1291,1250,1250,1292,1208,1250,1292,1167,1291,1250,1250,1250,1084,1166,1250,1167,1250,1292,1208,1208,1250,1292,1250,1167,1291,1209,1250,1250,1250,1291,1250,1250,1292,1292,1250,1291,1250,1250,1250,1292,1250,1250,1125,1250,1292,1250,1041,1250,1250,1292,1250,1250,1250,1292,1250,1083,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1250,1291,1250,1250,1084,1291,1250,1292,1250,1250,1250,1292,1250,1250,1250,1291,1250,1292,1250,1250,1250,1167,1250,1291,1250,1250,1250,1292,1208,1250,1250,1292,1208,1250,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1209,1208,1250,1292,1208,1208,1250,1292,1250,1250,1292,1250,1250,1250,1250,1291,1209,1250,1250,1250,1333,1208,1209,1208,1125,1250,1250,1292,1250,1250,1250,1250,1250,1250,1291,1209,1250,1250,1291,1209,1250,1250,1250,1250,1291,1250,1292,1250,1250,1250,1250,1250,1042,1250,1291,1250,1292,1250,1250,1250,1250,1292,1250,1291,1250,1292,1250,1292,1250,1250,1208,1292,1208,1250,1250,1250,1292,1250,1250,1250,1250,1250,1291,1250,1250,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1250,1250,1209,1250,1250,1250,1291,1250,1209,1291,1250,1250,1250,1250,1250,1292,1042,1250,1208,1292,1291,1250,1292,1125,1167,1208,1292,1083,1292,1250,1250,1250,1250,1291,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1083,1292,1250,1250,1292,1208,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1292,1083,1250,1250,1250,1250,1250,1250,1250,1250,1292,1292,1250,1291,1292,1250,1208,1209,1250,1291,1250,1250,1167,1292,1250,1291,1250,1250,1292,1250,1250,1292,1250,1291,1250,1125,1292,1292,1250,1083,1250,1250,1292,1291,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1292,1292,1250,1250,1333,1250,1208,1250,1292,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1000,1292,1250,1292,1250,1208,1292,1250,1250,1291,1250,1250,1292,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1209,1208,1250,1292,1250,1250,1291,1250,1250,1250,1250,1292,1292,1250,1291,1250,1292,1250,1208,1250,1250,1250,1292,1167,1250,1250,1291,1209,1250,1250,1250,1291,1250,1167,1250,1292,1291,1250,1250,1292,1250,1250,1250,1292,1250,1250,1291,1167,1292,1250,1250,1291,1250,1250,1250,1084,1250,1250,1291,1250,1250,1250,1292,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1208,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1292,1208,1208,1250,1250,1250,1250,1250,1250,1250,1250,1292,1208,1250,1250,1250,1292,1250,1292,1208,1250,1292,1250,1291,1250,1250,1292,1250,1250,1292,1250,1291,1250,1292,1167,1250,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1292,1291,1250,1125,1250,1250,1292,1250,1250,1292,1250,1041,1250,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1250,1291,1292,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1292,1292,1250,1250,1291,1250,1292,1250,1250,1292,1208,1250,1250,1250,1250,1250,1292,1291,1250,1250,1250,1292,1250,1250,1250,1292,1083,1292,1000,1250,1291,1250,1292,1250,1292,1250,1250,1291,1209,1125,1250,1250,1041,1292,1250,1250,1250,1208,1250,1250,1167,1250,1292,1291,1250,1250,1250,1292,1250,1292,1250,1250,1250,1250,1250,1250,1250,1250,1250,1250,1291,1250,1250,1250,1250,1250,1250,1292,1208,1250,1250,1250,1292,1250,1250,1250,1208,1292,1250,1250,1292,1250,1291,1250,1250,1292,1250,1250,1250,1250,1250,1292,1250,1083,1250,1250,1250,1250,1250,1250,1208,1292,1250,1250,1208,1292,1042,1250,1291,1250,1250,1292,1250,1250,1250,1250,1292,1250,1250,1250,1291,1250,1250,1167,1250,1250,1292,1291,1250,1292,1208,1209,958,1292,1250,1250,1166,1209,1291,1250,1250,1292,1250,1167,1250,1291,1292,1208,1167,1125,1167,1208,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1250,1167,1208,1208,1292,1250,1292,1208,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1250,1250,1083,1292,1292,1333,1250,1292,1250,1291,1084,1291,1250,1084,1291,1209,1250,1250,1250,1250,1291,1209,1250,1125,1291,1250,1292,1250,1292,1083,1292,1250,1291,1209,1250,1250,1250,1250,1291,1292,1208,1250,1250,1084,1250,1291,1292,1250,1292,1291,1209,1291,1292,1250,1167,1250,1291,1250,1292,1250,1292,1208,1250,1250,1250,1292,1250,1250,1166,1250,1250,1334,1250,1250,1250,1250,1250,1250,1250,1041,1250,1292,1250,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1292,1250,1291,1250,1250,1250,1292,1292,1250,1291,1292,1083,1250,1250,1292,1250,1250,1250,1250,1250,1292,1250,1291,1250,1250,1292,1250,1250,1292,1250,1250,1250,1250,1250,1291,1250,1250,1292,1250,1292,1250,1291,1250,1250,1250,1292,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1250,1250,1292,1250,1083,1292,1250,1291,1292,1208,1209,1250,1250,1250,1291,1125,1250,1250,1250,1250,1292,1208,1209,1291,1250,1250,1292,1250,1250,1292,1291,1250,1250,1250,1250,1292,1208,1042,1292,1250,1250,1250,1250,1291,1209,1250,1250,1250,1250,1250,1291,1292,1250,1250,1292,1291,1250,1250,1292,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1250,1292,1041,1292,1292,1041,1209,1250,1250,1291,1250,1250,1250,1292,1250,1083,1250,1292,1250,1250,1250,1292,1208,1208,1250,1250,1250,1250,1250,1292,1250,1250,1125,1250,1250,1250,1250,1292,1041,1292,1042,1291,1292,1250,1292,1250,1250,1291,1250,1250,1250,1250,1250,1250,1334,1291,1292,1208,1292,1250,1250,1292,1250,1250,1250,1291,1250,1292,1250,1292,1250,1291,1209,1208,1250,1250,1250,1250,1250,1208,1209,1250,1250,1291,1250,1084,1250,1250,1291,1292,1250,1208,1125,1209,1208,1250,1292,1250,1250,1250,1250,1291,1209,1250,1250,1333,1250,1250,1292,1250,1291,1250,1250,1292,1250,1250,1250,1292,1208,1250,1250,1292,1208,1042,1250,1250,1250,1125,1208,1250,1250,1292,1208,1208,1167,1167,1291,1292,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1292,1250,1250,1292,1041,1292,1250,1042,1083,1292,1250,1250,1291,1209,1291,1209,1250,1250,1250,1250,1291,1125,1250,1250,1292,1250,1250,1292,1250,1041,1250,1250,1125,1292,1250,1250,1292,1250,1250,1291,1292,1250,1250,1250,1250,1292,1250,1250,1250,1166,1250,1250,1292,1250,1250,1250,1292,1208,1292,1166,1250,1292,1250,1250,1292,1125,1291,1250,1292,1250,1250,1292,1250,1250,1250,1291,1250,1250,1250,1292,1250,1250,1083,1250,1250,1250,1292,1250,1250,1250,1292,1250,1250,1291,1167,1250,1167,1250,1250,1250,1250,1291,1209,1250,1250,1250,1250,1250,1291,1209,1250,1250,1291,1250,1250,1250,1292,1208,1250,1250,1250,1209,1291,1250,1334,1250,1250,1208,1250,1292,1250,1250,1291,1250,1250,1292,1250,1250,1250,1208,1292,1042,1250,1250,1291,1209,1250,1250,1291,1292,1250,1250,1292,1208,1208,1250,1250,1250,1292,1250,1125,1250,1250,1292,1250,1250,1291,1250,1250,1292,1250,1292,1291,1250,1250,1250,1292,1250,1250,1250,1208,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1292,1250,1250,1292,1208,1250,1292,1250,1291,1292,1250,1250,1250,1250,1250,1250,1250,1250,1125,1250,1292,1250,1250,1291,1250,1250,1292,1292,1208,1083,1250,1292,1250,1250,1292,1250,1291,1209,1291,1250,1250,1250,1292,1250,1250,1250,1292,1250,1291,1250,1250,1292,1167,1250,1291,1250,1250,1292,1292,1250,1250,1291,1250,1292,1208,1250,1292,1250,1292,1083,1250,1042,1250,1250,1250,1291,1250,1250,1292,1167,1291,1250,1167,1250,1250,1250,1250,1250,1250,1250,1292,1250,1250,1291,1250,1250,1209,1291,1042,1250,1250,1292,1250,1375,1250,1250,1250,1250,1291,1250,1250,1250,1292,1250,1208,1292,1208,1250,1250,1250,1292,1250,1292,1208,1292,1250,1250,1250,1208,1292,1291,1250,1250,1250,1209,1208,1250,1250,1250,1292,1250],"$vscode":{"rootPath":"/Users/VTROPASH/Documents/GitHub/quicksql","locations":[{"callFrame":{"functionName":"(root)","scriptId":"0","url":"","lineNumber":-1,"columnNumber":-1},"locations":[]},{"callFrame":{"functionName":"run","scriptId":"442","url":"node:internal/modules/esm/module_job","lineNumber":187,"columnNumber":11},"locations":[]},{"callFrame":{"functionName":"evaluate","scriptId":"0","url":"","lineNumber":-1,"columnNumber":-1},"locations":[]},{"callFrame":{"functionName":"","scriptId":"498","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/test/profile.js","lineNumber":-1,"columnNumber":-1},"locations":[]},{"callFrame":{"functionName":"toDDL","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":483,"columnNumber":21},"locations":[]},{"callFrame":{"functionName":"Parsed.getDDL","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":336,"columnNumber":31},"locations":[]},{"callFrame":{"functionName":"toDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":832,"columnNumber":29},"locations":[]},{"callFrame":{"functionName":"toDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":839,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"toDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":840,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":607,"columnNumber":33},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":617,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":618,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":677,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":678,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":691,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":692,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":662,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":663,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":718,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":719,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":649,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":650,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":726,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":727,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":698,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":699,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":689,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":690,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":623,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":624,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":679,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":680,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":707,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":708,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":674,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":675,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":47,"columnNumber":39},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":51,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":52,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":80,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":81,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":57,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":58,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":147,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":148,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":68,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":69,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":82,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":150,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":151,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":59,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":54,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":55,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":83,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":60,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":149,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":56,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":62,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":63,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":84,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":72,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":73,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":145,"columnNumber":28},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":57,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":58,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":54,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":55,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":76,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":77,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":56,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":59,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":70,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":71,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":60,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":62,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":63,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":150,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":151,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":150,"columnNumber":34},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":200,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":201,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":152,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":153,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":183,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":184,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":215,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":216,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":118,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":119,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":217,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":120,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":169,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":170,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":72,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":73,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":179,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":180,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":168,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":175,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":176,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":58,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":59,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":207,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":208,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":174,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":177,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":178,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":83,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":84,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":68,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":69,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":51,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":52,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1747,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1748,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":188,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":189,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":204,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":205,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":197,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":198,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1749,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1750,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":154,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":155,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":57,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":199,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":70,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":71,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":164,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":165,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":210,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":211,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":187,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":172,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":173,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":219,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":220,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":60,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":56,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":190,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":191,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":7,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":8,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":202,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":206,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":62,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":63,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":159,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":160,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":54,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":55,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":194,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":195,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1746,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":182,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":81,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":82,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":186,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":192,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":75,"columnNumber":35},"locations":[]},{"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":81,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":82,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":83,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":84,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":78,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"canonicalObjectName","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":79,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":34,"columnNumber":24},"locations":[]},{"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":57,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":58,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":68,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":69,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":59,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"quoteIdentifier","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":56,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":130,"columnNumber":38},"locations":[]},{"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":130,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":131,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":132,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":133,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":145,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":146,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":134,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":135,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":139,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"trimmedContent","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":140,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"amend_reserved_word","scriptId":"508","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/reserved_words.js","lineNumber":0,"columnNumber":28},"locations":[]},{"callFrame":{"functionName":"amend_reserved_word","scriptId":"508","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/reserved_words.js","lineNumber":118,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"amend_reserved_word","scriptId":"508","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/reserved_words.js","lineNumber":119,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"amend_reserved_word","scriptId":"508","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/reserved_words.js","lineNumber":120,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"replaceTrailing","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1745,"columnNumber":29},"locations":[]},{"callFrame":{"functionName":"replaceTrailing","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1746,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"replaceTrailing","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1747,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"replaceTrailing","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1749,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"replaceTrailing","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1750,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"replaceTrailing","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1748,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"replaceTrailing","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":1745,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":35},"locations":[]},{"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":43,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":44,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":42,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":150,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":151,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.optionEQvalue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":94,"columnNumber":37},"locations":[]},{"callFrame":{"functionName":"Parsed.optionEQvalue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":95,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.optionEQvalue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":96,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.getOptionValue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":77,"columnNumber":38},"locations":[]},{"callFrame":{"functionName":"Parsed.getOptionValue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":82,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.getOptionValue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":83,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"normalize","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":50,"columnNumber":22},"locations":[]},{"callFrame":{"functionName":"normalize","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":55,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"normalize","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":56,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.additionalColumns","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":193,"columnNumber":41},"locations":[]},{"callFrame":{"functionName":"Parsed.additionalColumns","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":195,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.additionalColumns","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":196,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.getOptionValue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":80,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.getOptionValue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":81,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":612,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"singleDDL","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":613,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":88,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":89,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":78,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"maxChildNameLen","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":79,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":72,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":73,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":148,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":149,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":39,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":40,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":78,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":79,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":209,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.getOptionValue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":79,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"normalize","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":57,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"normalize","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":58,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseType","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":221,"columnNumber":33},"locations":[]},{"callFrame":{"functionName":"parseType","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":354,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseType","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":355,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseType","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":243,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseType","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":244,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseType","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":373,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"parseType","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":374,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"concatNames","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":88,"columnNumber":27},"locations":[]},{"callFrame":{"functionName":"concatNames","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":92,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"concatNames","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":93,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"concatNames","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":108,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"concatNames","scriptId":"504","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/naming.js","lineNumber":109,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"indexOf","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":115,"columnNumber":31},"locations":[]},{"callFrame":{"functionName":"indexOf","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":117,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"indexOf","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":118,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"occursBeforeOption","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":125,"columnNumber":42},"locations":[]},{"callFrame":{"functionName":"occursBeforeOption","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":126,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"occursBeforeOption","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":127,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.semantics","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":137,"columnNumber":33},"locations":[]},{"callFrame":{"functionName":"normalize","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":60,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"normalize","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":61,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"apparentDepth","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":553,"columnNumber":37},"locations":[]},{"callFrame":{"functionName":"apparentDepth","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":554,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"apparentDepth","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":555,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":68,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.find","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":69,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"refId","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":459,"columnNumber":29},"locations":[]},{"callFrame":{"functionName":"refId","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":461,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"refId","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":462,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"refId","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":493,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"refId","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":494,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"findChild","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":32,"columnNumber":33},"locations":[]},{"callFrame":{"functionName":"getGenIdColName","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":580,"columnNumber":40},"locations":[]},{"callFrame":{"functionName":"Parsed.optionEQvalue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":90,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"Parsed.optionEQvalue","scriptId":"499","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/ddl.js","lineNumber":91,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":41,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"descendants","scriptId":"500","url":"file:///Users/VTROPASH/Documents/GitHub/quicksql/src/tree.js","lineNumber":45,"columnNumber":0},"locations":[]},{"callFrame":{"functionName":"(garbage collector)","scriptId":"0","url":"","lineNumber":-1,"columnNumber":-1},"locations":[]}]}} \ No newline at end of file From cce857819ffa1f719e8947130f0c63147a2803da Mon Sep 17 00:00:00 2001 From: Vadim Tropashko Date: Fri, 9 Feb 2024 12:39:08 -0800 Subject: [PATCH 22/22] More performance improvement --- dist/quick-sql.js | 75 ++++++++++++++++++++++-------------------- dist/quick-sql.umd.cjs | 10 +++--- src/ddl.js | 10 ++++-- src/tree.js | 5 +-- test/profile.js | 6 ++-- test/single_test.js | 2 +- 6 files changed, 58 insertions(+), 50 deletions(-) diff --git a/dist/quick-sql.js b/dist/quick-sql.js index 3876f11..f09a5fe 100644 --- a/dist/quick-sql.js +++ b/dist/quick-sql.js @@ -22,7 +22,7 @@ function fe(d, h) { } return (d.startsWith("_") || d.startsWith("$") || d.startsWith("#")) && (D = !0), D || (k = ""), k + d + k; } -function he(d) { +function ie(d) { if (d == null) return null; if (d.indexOf('"') == 0) @@ -36,7 +36,7 @@ function K(d, h, k) { let I = d + h + k; return D ? I = '"' + I + '"' : I = I.toLowerCase(), I; } -var le = function() { +var se = function() { var d = [ "Sales", "Finance", @@ -92,7 +92,7 @@ var le = function() { function be(d) { return d && d.__esModule && Object.prototype.hasOwnProperty.call(d, "default") ? d.default : d; } -var ie = { exports: {} }; +var re = { exports: {} }; (function(d, h) { (function() { var k = 9007199254740992, D = -k, I = "0123456789", x = "abcdefghijklmnopqrstuvwxyz", b = x.toUpperCase(), g = I + "abcdef"; @@ -7207,11 +7207,11 @@ var ie = { exports: {} }; return a ? n ? this.raw_hmac_md5(a, e) : this.hex_hmac_md5(a, e) : n ? this.raw_md5(e) : this.hex_md5(e); }, d.exports && (h = d.exports = r), h.Chance = r, typeof importScripts < "u" && (chance = new r(), self.Chance = r), typeof window == "object" && typeof window.document == "object" && (window.Chance = r, window.chance = new r()); })(); -})(ie, ie.exports); -var pe = ie.exports; +})(re, re.exports); +var pe = re.exports; const ge = /* @__PURE__ */ be(pe); -function se(d, h, k, D) { - var I = new ge(te); +function ce(d, h, k, D) { + var I = new ge(oe); k == null && console.log(); let x = k.toUpperCase(), b = d.toUpperCase(), g = h.toUpperCase(); if (D != null && 0 < D.length) { @@ -7256,12 +7256,12 @@ function se(d, h, k, D) { } return "'N/A'"; } -var te = 1; +var oe = 1; function Ce() { - te = 1; + oe = 1; } function X() { - var d = Math.sin(te++) * 1e4; + var d = Math.sin(oe++) * 1e4; return d - Math.floor(d); } var $ = function() { @@ -7573,7 +7573,7 @@ function ve(d) { let k = d.toUpperCase(); return h[k] != null ? "the_" + d : d; } -let ce = function() { +let ue = function() { let d, h = " ", k = ["string", "varchar2", "varchar", "vc", "char"]; var D = ["yn", "boolean", "bool"]; function I(M, B, r) { @@ -7664,7 +7664,7 @@ let ce = function() { } i = i.replace(/ num(ber)?\(\d+\)/g, ""), i = i.replace(/ num(ber)?\(\d+,\d+\)/g, ""), i = i.replace(/ num(ber)?\d+/g, ""), i = i.trim(), this.children.length == 0 && this.parent != null && this.parent.colprefix != null && (i = this.parent.colprefix + "_" + i); var T = i.substr(0, 1); - return T >= "0" && T <= "9" && (i = "x" + i), this.parsedName = ve(he(i)), this.parsedName; + return T >= "0" && T <= "9" && (i = "x" + i), this.parsedName = ve(ie(i)), this.parsedName; }, this.parseType = function(i) { if (this.children != null && 0 < this.children.length) return "table"; @@ -7978,9 +7978,10 @@ let ce = function() { return t; }, this.orderedTableNodes = function() { var i = [this]; - for (let s = 1; s < this.descendants().length; s++) { - var t = this.descendants()[s]; - t.children.length != 0 && (t.isMany2One() ? t.isContainedIn(i) || i.unshift(t) : t.isContainedIn(i) || i.push(t)); + const t = this.descendants(); + for (let l = 1; l < t.length; l++) { + var s = t[l]; + s.children.length != 0 && (s.isMany2One() ? s.isContainedIn(i) || i.unshift(s) : s.isContainedIn(i) || i.push(s)); } return i; }, this.isContainedIn = function(i) { @@ -8390,7 +8391,7 @@ is } } } - l += h + le(d.getOptionValue("Data Language"), se(s, W(L) + "_id", H, R)) + `, + l += h + se(d.getOptionValue("Data Language"), ce(s, W(L) + "_id", H, R)) + `, `; } for (let N = 0; N < this.children.length; N++) { @@ -8404,8 +8405,8 @@ is let G = E[R]; G != null && (O = [], O[0] = G); } - let H = se(s, R, L.parseType(), O); - l += h + le(d.getOptionValue("Data Language"), H) + `, + let H = ce(s, R, L.parseType(), O); + l += h + se(d.getOptionValue("Data Language"), H) + `, `; } } @@ -8687,7 +8688,7 @@ var Ae = function() { return l += JSON.stringify(u, null, 3), l += ` `, l += ` --- Generated by json2qsql.js ${oe()} ` + (/* @__PURE__ */ new Date()).toLocaleString() + ` +-- Generated by json2qsql.js ${le()} ` + (/* @__PURE__ */ new Date()).toLocaleString() + ` `, l += `#document = `, l += JSON.stringify(i, null, 3), l += ` @@ -8885,7 +8886,7 @@ const ye = function() { } function x(b) { for (var g = [], M = Se(b), B = 1; B < b.length; B++) { - var r = b[B - 1], o = b[B], i = re(r), t = re(o); + var r = b[B - 1], o = b[B], i = te(r), t = te(o); t != 0 && i < t && t < i + M && g.push( new d( j.misalignedAttribute + M, @@ -8901,7 +8902,7 @@ function Se(d) { let h = []; for (var k = 0; k < d.length; k++) { var D = d[k]; - h[k] = re(D); + h[k] = te(D); } let I = []; for (let b = 0; b < h.length; b++) { @@ -8916,7 +8917,7 @@ function Se(d) { (x == null || I[x] <= I[b]) && (x = b); return x; } -function re(d) { +function te(d) { for (var h = d.split(/ |\t/), k = 0, D = 0; D < h.length; D++) { var I = h[D]; if (I == " " && (k += 4), I == "") { @@ -8939,7 +8940,7 @@ const j = { invalidDatatype: "Invalid Datatype", undefinedObject: "Undefined Object: ", misalignedAttribute: "Misaligned Table or Column; apparent indent = " -}, Te = { findErrors: ye, messages: j }, ne = "identityDataType", ue = "guid", me = "Timestamp with time zone", de = "Timestamp with local time zone", Y = function() { +}, Te = { findErrors: ye, messages: j }, ne = "identityDataType", me = "guid", de = "Timestamp with time zone", he = "Timestamp with local time zone", Y = function() { const d = { apex: { label: "APEX", value: "no", check: ["yes", "no"] }, auditcols: { label: "Audit Columns", value: "no", check: ["yes", "no"] }, @@ -8951,7 +8952,7 @@ const j = { semantics: { label: "Character Strings", value: "CHAR", check: ["BYTE", "CHAR", "Default"] }, language: { label: "Data Language", value: "EN", check: ["EN", "JP", "KO"] }, datalimit: { label: "Data Limit Rows", value: 1e4 }, - date: { label: "Date Data Type", value: "DATE", check: ["DATE", "TIMESTAMP", me, de] }, + date: { label: "Date Data Type", value: "DATE", check: ["DATE", "TIMESTAMP", de, he] }, db: { label: "DB", value: "no", check: ["not used"] }, dv: { label: "Duality View", value: "no", check: ["yes", "no"] }, // switched default to 'no' until thorough development&testig @@ -8964,7 +8965,7 @@ const j = { overridesettings: { label: "Ignore toDDL() second parameter", value: "no", check: ["yes", "no"] }, prefix: { label: "Object Prefix", value: "" }, //ondelete: {label: 'On Delete', value:'Cascade',check:['restrict','cascade','set null']}, - pk: { label: "Primary Key Maintenance", value: ne, check: [ne, ue, "SEQ", "NONE"] }, + pk: { label: "Primary Key Maintenance", value: ne, check: [ne, me, "SEQ", "NONE"] }, prefixpkwithtname: { label: "Prefix primary keys with table name", value: "no", check: ["yes", "no"] }, rowkey: { label: "Alphanumeric Row Identifier", value: "no", check: ["yes", "no"] }, rowversion: { label: "Row Version Number", value: "no", check: ["yes", "no"] }, @@ -8978,7 +8979,7 @@ const j = { if (D == null) return null; let I = D; - return typeof I == "string" && (I = I.toLowerCase()), I == "yes" ? !0 : I == "no" ? !1 : I == "y" ? !0 : I == "n" ? !1 : I == "true" ? !0 : I == "false" ? !1 : I == ne.toLowerCase() ? "identity" : I == ue.toLowerCase() ? "guid" : I == me.toLowerCase() ? "tswtz" : I == de.toLowerCase() ? "tswltz" : I; + return typeof I == "string" && (I = I.toLowerCase()), I == "yes" ? !0 : I == "no" ? !1 : I == "y" ? !0 : I == "n" ? !1 : I == "true" ? !0 : I == "false" ? !1 : I == ne.toLowerCase() ? "identity" : I == me.toLowerCase() ? "guid" : I == de.toLowerCase() ? "tswtz" : I == he.toLowerCase() ? "tswltz" : I; } function k(D, I) { this.ddl = null, this.erd = null, this.errors = null, this.options = JSON.parse(JSON.stringify(d)), this.input = D, this.getOptionValue = function(b) { @@ -9020,14 +9021,16 @@ const j = { }, this.semantics = function() { var b = ""; return this.optionEQvalue("semantics", "CHAR") ? b = " char" : this.optionEQvalue("semantics", "BYTE") && (b = " byte"), b; - }, this.find = function(b) { + }, this.name2node = null, this.find = function(b) { + if (this.name2node != null) + return this.name2node[ie(b)]; + this.name2node = {}; for (var g = 0; g < this.forest.length; g++) for (var M = this.forest[g].descendants(), B = 0; B < M.length; B++) { var r = M[B]; - if (r.parseName() == he(b)) - return r; + this.name2node[r.parseName()] = r; } - return null; + return this.name2node[ie(b)]; }, this.setOptions = function(b) { b = b.trim(), b.startsWith("#") && (b = b.substring(1).trim()); const g = b.indexOf("="); @@ -9061,9 +9064,9 @@ const j = { return this.getOptionValue("prefix") != null && (M = this.getOptionValue("prefix")), g = g + M, M != "" && (g = g + "_"), g.toLowerCase(); }; let x = ""; - 0 < D.toLowerCase().indexOf("overridesettings") && ce(this), I != null && this.optionEQvalue("overrideSettings", !1) && (x = "# settings = " + I + ` + 0 < D.toLowerCase().indexOf("overridesettings") && ue(this), I != null && this.optionEQvalue("overrideSettings", !1) && (x = "# settings = " + I + ` -`), this.input = x + D, this.forest = ce(this), this.getERD = function() { +`), this.input = x + D, this.forest = ue(this), this.getERD = function() { if (this.erd != null) return this.erd; let b = this.descendants(), g = { items: [] }; @@ -9199,7 +9202,7 @@ const j = { */`, this.ddl = b, b; }, this.getErrors = function() { return this.errors != null ? this.errors : (this.errors = Te.findErrors(this, this.fullInput), this.errors); - }, this.version = oe; + }, this.version = le; } return k; }(); @@ -9215,10 +9218,10 @@ function Pe(d, h) { function Ee(d, h) { return new Y(d, h).getErrors(); } -function oe() { +function le() { return "1.2.1"; } -Y.version = oe; +Y.version = le; Y.toDDL = Pe; Y.toERD = Be; Y.toErrors = Ee; @@ -9226,7 +9229,7 @@ Y.fromJSON = Ie; export { Y as default, Ie as fromJSON, - oe as qsql_version, + le as qsql_version, Y as quicksql, Pe as toDDL, Be as toERD, diff --git a/dist/quick-sql.umd.cjs b/dist/quick-sql.umd.cjs index 93bffd0..499b74c 100644 --- a/dist/quick-sql.umd.cjs +++ b/dist/quick-sql.umd.cjs @@ -1,5 +1,5 @@ -(function(V,W){typeof exports=="object"&&typeof module<"u"?W(exports):typeof define=="function"&&define.amd?define(["exports"],W):(V=typeof globalThis<"u"?globalThis:V||self,W(V.quickSQL={}))})(this,function(V){"use strict";function W(d){return d==null?d:d.toUpperCase().endsWith("IES")?d.substring(0,d.length-3)+"y":d.toUpperCase().endsWith("ES")||d.toUpperCase().endsWith("S")?d.substring(0,d.length-1):d}function ve(d,h){let k='"';if(d==null)return null;let D=!1;const I="$#_ ";if(!d.startsWith(k)&&!D){const x=d;if(x.length>0&&"0"<=x[0]&&x[0]<="9")D=!0;else for(let b=0;b"u"&&(e[n]=a[n]);return e}function i(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var s=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?s=btoa:typeof Buffer=="function"&&(s=function(a){return new Buffer(a).toString("base64")})})(),r.prototype.bool=function(e){return e=o(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100c,"Chance: Max specified is out of range with fixed. Max should be, at most, "+c),e=o(e,{min:m,max:c}),a=this.integer({min:e.min*n,max:e.max*n});var C=(a/n).toFixed(e.fixed);return parseFloat(C)},r.prototype.integer=function(e){return e=o(e,{min:D,max:k}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},r.prototype.natural=function(e){if(e=o(e,{min:0,max:k}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),c=e.exclude.sort();for(var m in c){if(ne.max,"Chance: Min cannot be greater than Max.");var a=E.primes[E.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&E.primes.push(n);var c=E.primes.filter(function(m){return m>=e.min&&m<=e.max});return this.pick(c)},r.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},r.prototype.hex=function(e){e=o(e,{min:0,max:k,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},r.prototype.letter=function(e){e=o(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},r.prototype.string=function(e){e=o(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function u(e){this.c=e}u.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function p(e){this.c=e}p.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:b})},a:function(e){return e.character({pool:x})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function T(e){for(var a=[],n="identity",c=0;c"u")throw new M("Sorry, the buffer() function is not supported on your platform");e=o(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},r.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},r.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},r.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var c=function(y,_){return y.indexOf(_)!==-1};n&&(c=n.comparator||c);for(var m=[],C=0,P,f=a*50,A=B.call(arguments,2);m.lengthf)throw new RangeError("Chance: num is likely too large for sample set")}return m},r.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,c=[],m=B.call(arguments,2);for(n=Math.max(0,n),null;n--;null)c.push(e.apply(this,m));return c},r.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},r.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},r.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},r.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),c=n.length;return this.n(function(){var m=this.natural({max:--c}),C=n[m];return n[m]=n[c],C},Math.min(c,a))},r.prototype.shuffle=function(e){for(var a=[],n=0,c=Number(e.length),m=i(c),C=c-1,P,f=0;f0&&(c+=m)}if(c===0)throw new RangeError("Chance: No valid entries in array weights");var P=this.random()*c,f=0,A=-1,v;for(C=0;C0){if(P<=f){v=C;break}A=C}C===a.length-1&&(v=A)}var y=e[v];return n=typeof n>"u"?!1:n,n&&(e.splice(v,1),a.splice(v,1)),y},r.prototype.paragraph=function(e){e=o(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),c=e.linebreak===!0?` -`:" ";return n.join(c)},r.prototype.sentence=function(e){e=o(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,c,m=this.n(this.word,a);return c=m.join(" "),c=this.capitalize(c),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(c+=n),c},r.prototype.syllable=function(e){e=o(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",c="aeiou",m=n+c,C="",P,f=0;fe.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var P=e.minAge!==void 0?e.minAge:0,f=e.maxAge!==void 0?e.maxAge:100,A=new Date(c-f-1,n.getMonth(),n.getDate()),v=new Date(c-P,n.getMonth(),n.getDate());A.setDate(A.getDate()+1),v.setDate(v.getDate()+1),v.setMilliseconds(v.getMilliseconds()-1),e=o(e,{min:A,max:v})}else e=o(e,{year:c-a});return this.date(e)},r.prototype.cpf=function(e){e=o(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var c=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;c=11-c%11,c>=10&&(c=0);var m=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},r.prototype.cnpj=function(e){e=o(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var c=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;c=11-c%11,c<2&&(c=0);var m=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},r.prototype.first=function(e){return e=o(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},r.prototype.profession=function(e){return e=o(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},r.prototype.company=function(){return this.pick(this.get("company"))},r.prototype.gender=function(e){return e=o(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},r.prototype.last=function(e){if(e=o(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(c){a=a.concat(n[c])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},r.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},r.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},r.prototype.tld=function(){return this.pick(this.tlds())},r.prototype.twitter=function(){return"@"+this.word()},r.prototype.url=function(e){e=o(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},r.prototype.port=function(){return this.integer({min:0,max:65535})},r.prototype.locale=function(e){return e=o(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},r.prototype.locales=function(e){return e=o(e),e.region?this.get("locale_regions"):this.get("locale_languages")},r.prototype.loremPicsum=function(e){e=o(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},r.prototype.address=function(e){return e=o(e),this.natural({min:5,max:2e3})+" "+this.street(e)},r.prototype.altitude=function(e){return e=o(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.areacode=function(e){e=o(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},r.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},r.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},r.prototype.countries=function(){return this.get("countries")},r.prototype.country=function(e){e=o(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},r.prototype.depth=function(e){return e=o(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.geohash=function(e){return e=o(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},r.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},r.prototype.latitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=o(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.longitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=o(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.phone=function(e){var a=this,n,c=function(_){var F=[];return _.sections.forEach(function(z){F.push(a.string({pool:"0123456789",length:z}))}),_.area+F.join(" ")};e=o(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var m;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),m=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),m=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n);break;case"us":var C=this.areacode(e).toString(),P=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),f=this.natural({min:1e3,max:9999}).toString();m=e.formatted?C+" "+P+"-"+f:C+P+f;break;case"br":var A=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),v;e.mobile?v="9"+a.string({pool:"0123456789",length:4}):v=this.natural({min:2e3,max:5999}).toString();var y=a.string({pool:"0123456789",length:4});m=e.formatted?"("+A+") "+v+"-"+y:A+v+y;break}return m},r.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},r.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",c=e+a+n,m=this.natural({max:9}),C=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),P=m+C;return c+" "+P},r.prototype.counties=function(e){return e=o(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},r.prototype.county=function(e){return this.pick(this.counties(e)).name},r.prototype.provinces=function(e){return e=o(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},r.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},r.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},r.prototype.states=function(e){e=o(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),c=this.get("territories"),m=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(c)),e.armed_forces&&(a=a.concat(m));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},r.prototype.street=function(e){e=o(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},r.prototype.street_suffix=function(e){return e=o(e,{country:"us"}),this.pick(this.street_suffixes(e))},r.prototype.street_suffixes=function(e){return e=o(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},r.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},r.prototype.ampm=function(){return this.bool()?"am":"pm"},r.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=o(e,{american:!0,string:!1});var c=typeof e.min<"u"?e.min.getTime():1,m=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:c,max:m}))}else{var C=this.month({raw:!0}),P=C.days;e&&e.month&&(P=this.get("months")[(e.month%12+12)%12].days),e=o(e,{year:parseInt(this.year(),10),month:C.numeric-1,day:this.natural({min:1,max:P}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},r.prototype.hammertime=function(e){return this.date(e).getTime()},r.prototype.hour=function(e){return e=o(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.millisecond=function(){return this.natural({max:999})},r.prototype.minute=r.prototype.second=function(e){return e=o(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.month=function(e){e=o(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},r.prototype.months=function(){return this.get("months")},r.prototype.second=function(){return this.natural({max:59})},r.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},r.prototype.weekday=function(e){e=o(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},r.prototype.year=function(e){return e=o(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},r.prototype.cc=function(e){e=o(e);var a,n,c;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),c=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,c,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},r.prototype.cc_types=function(){return this.get("cc_types")},r.prototype.cc_type=function(e){e=o(e);var a=this.cc_types(),n=null;if(e.name){for(var c=0;c3&&(_?F=F.substr(0,3):F=F[0]+F.substr(2,2)),F.length<3&&(z=F,F=y.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+F),z},A=function(y,_,F){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return y.getFullYear().toString().substr(2)+z[y.getMonth()]+F.pad(y.getDate()+(_.toLowerCase()==="female"?40:0),2)},v=function(y){for(var _="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",F="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(F[_.indexOf(y[U])]):K+=j.indexOf(F[_.indexOf(y[U])]);return z[K%26]};return P=P.concat(f(c,!0),f(n),A(m,a,this),C.toUpperCase().split("")).join(""),P+=v(P.toUpperCase()),P.toUpperCase()},r.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;m--)c[m-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?c.reduce(function(C,P){return C+P}):c}else throw new RangeError("Chance: A type of die roll must be included")},r.prototype.guid=function(e){e=o(e,{version:5});var a="abcdef1234567890",n="ab89",c=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return c},r.prototype.hash=function(e){e=o(e,{length:40,casing:"lower"});var a=e.casing==="upper"?g.toUpperCase():g;return this.string({pool:a,length:e.length})},r.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},r.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,c,m=0,C=a.length;C>m;++m)c=+a[m],m%2===0&&(c*=2,c>9&&(c-=9)),n+=c;return n*9%10},r.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=o(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},r.prototype.file=function(e){var a=e||{},n="fileExtension",c=Object.keys(this.get("fileExtension")),m,C;if(m=this.word({length:a.length}),a.extension)return C=a.extension,m+"."+C;if(a.extensions){if(Array.isArray(a.extensions))return C=this.pickone(a.extensions),m+"."+C;if(a.extensions.constructor===Object){var P=a.extensions,f=Object.keys(P);return C=this.pickone(P[this.pickone(f)]),m+"."+C}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var A=a.fileType;if(c.indexOf(A)!==-1)return C=this.pickone(this.get(n)[A]),m+"."+C;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return C=this.pickone(this.get(n)[this.pickone(c)]),m+"."+C},r.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var c={fileData:this.buffer({length:a.fileSize}),fileName:n};return c};var E={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},w=Object.prototype.hasOwnProperty,N=Object.keys||function(e){var a=[];for(var n in e)w.call(e,n)&&a.push(n);return a};function L(e,a){for(var n=N(e),c,m=0,C=n.length;m0)return this.normal_pool(e);var a,n,c,m,C=e.mean,P=e.dev;do n=this.random()*2-1,c=this.random()*2-1,a=n*n+c*c;while(a>=1);return m=n*Math.sqrt(-2*Math.log(a)/a),P*m+C},r.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},r.prototype.radio=function(e){e=o(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},r.prototype.set=function(e,a){typeof e=="string"?E[e]=a:E=R(e,E)},r.prototype.tv=function(e){return this.radio(e)},r.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},r.prototype.emotion=function(){return this.pick(this.get("emotions"))},r.prototype.mersenne_twister=function(e){return new H(e)},r.prototype.blueimp_md5=function(){return new G};var H=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};H.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},H.prototype.init_by_array=function(e,a){var n=1,c=0,m,C;for(this.init_genrand(19650218),m=this.N>a?this.N:a;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1664525<<16)+(C&65535)*1664525)+e[c]+c,this.mt[n]>>>=0,n++,c++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),c>=a&&(c=0);for(m=this.N-1;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1566083941<<16)+(C&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},H.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},H.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},H.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},H.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},H.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},H.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var G=function(){};G.prototype.VERSION="1.0.1",G.prototype.safe_add=function(a,n){var c=(a&65535)+(n&65535),m=(a>>16)+(n>>16)+(c>>16);return m<<16|c&65535},G.prototype.bit_roll=function(e,a){return e<>>32-a},G.prototype.md5_cmn=function(e,a,n,c,m,C){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(c,C)),m),n)},G.prototype.md5_ff=function(e,a,n,c,m,C,P){return this.md5_cmn(a&n|~a&c,e,a,m,C,P)},G.prototype.md5_gg=function(e,a,n,c,m,C,P){return this.md5_cmn(a&c|n&~c,e,a,m,C,P)},G.prototype.md5_hh=function(e,a,n,c,m,C,P){return this.md5_cmn(a^n^c,e,a,m,C,P)},G.prototype.md5_ii=function(e,a,n,c,m,C,P){return this.md5_cmn(n^(a|~c),e,a,m,C,P)},G.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,c,m,C,P,f=1732584193,A=-271733879,v=-1732584194,y=271733878;for(n=0;n>5]>>>a%32&255);return n},G.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(c=this.binl_md5(c,e.length*8)),n=0;n<16;n+=1)m[n]=c[n]^909522486,C[n]=c[n]^1549556828;return P=this.binl_md5(m.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(C.concat(P),512+128))},G.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",c,m;for(m=0;m>>4&15)+a.charAt(c&15);return n},G.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},G.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},G.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},G.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},G.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},G.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},d.exports&&(h=d.exports=r),h.Chance=r,typeof importScripts<"u"&&(chance=new r,self.Chance=r),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=r,window.chance=new r)})()})(ne,ne.exports);var ye=ne.exports;const Se=Ae(ye);function ue(d,h,k,D){var I=new Se(ie);k==null&&console.log();let x=k.toUpperCase(),b=d.toUpperCase(),g=h.toUpperCase();if(D!=null&&0":o=="["?"]":o=="{"?"}":o=="("?")":o}}function h(I,x,b){for(var g=[],M=`(){}[]^-|!*+.><='",;:%@?/\\#~`+b,B=` +(function(V,W){typeof exports=="object"&&typeof module<"u"?W(exports):typeof define=="function"&&define.amd?define(["exports"],W):(V=typeof globalThis<"u"?globalThis:V||self,W(V.quickSQL={}))})(this,function(V){"use strict";function W(d){return d==null?d:d.toUpperCase().endsWith("IES")?d.substring(0,d.length-3)+"y":d.toUpperCase().endsWith("ES")||d.toUpperCase().endsWith("S")?d.substring(0,d.length-1):d}function ve(d,h){let k='"';if(d==null)return null;let D=!1;const I="$#_ ";if(!d.startsWith(k)&&!D){const x=d;if(x.length>0&&"0"<=x[0]&&x[0]<="9")D=!0;else for(let b=0;b"u"&&(e[n]=a[n]);return e}function i(e){return Array.apply(null,Array(e)).map(function(a,n){return n})}function t(e,a){if(e)throw new RangeError(a)}var s=function(){throw new Error("No Base64 encoder available.")};(function(){typeof btoa=="function"?s=btoa:typeof Buffer=="function"&&(s=function(a){return new Buffer(a).toString("base64")})})(),r.prototype.bool=function(e){return e=o(e,{likelihood:50}),t(e.likelihood<0||e.likelihood>100,"Chance: Likelihood accepts values from 0 to 100."),this.random()*100c,"Chance: Max specified is out of range with fixed. Max should be, at most, "+c),e=o(e,{min:m,max:c}),a=this.integer({min:e.min*n,max:e.max*n});var C=(a/n).toFixed(e.fixed);return parseFloat(C)},r.prototype.integer=function(e){return e=o(e,{min:D,max:k}),t(e.min>e.max,"Chance: Min cannot be greater than Max."),Math.floor(this.random()*(e.max-e.min+1)+e.min)},r.prototype.natural=function(e){if(e=o(e,{min:0,max:k}),typeof e.numerals=="number"&&(t(e.numerals<1,"Chance: Numerals cannot be less than one."),e.min=Math.pow(10,e.numerals-1),e.max=Math.pow(10,e.numerals)-1),t(e.min<0,"Chance: Min cannot be less than zero."),e.exclude){t(!Array.isArray(e.exclude),"Chance: exclude must be an array.");for(var a in e.exclude)t(!Number.isInteger(e.exclude[a]),"Chance: exclude must be numbers.");var n=e.min+this.natural({max:e.max-e.min-e.exclude.length}),c=e.exclude.sort();for(var m in c){if(ne.max,"Chance: Min cannot be greater than Max.");var a=E.primes[E.primes.length-1];if(e.max>a)for(var n=a+2;n<=e.max;++n)this.is_prime(n)&&E.primes.push(n);var c=E.primes.filter(function(m){return m>=e.min&&m<=e.max});return this.pick(c)},r.prototype.is_prime=function(e){if(e%1||e<2)return!1;if(e%2===0)return e===2;if(e%3===0)return e===3;for(var a=Math.sqrt(e),n=5;n<=a;n+=6)if(e%n===0||e%(n+2)===0)return!1;return!0},r.prototype.hex=function(e){e=o(e,{min:0,max:k,casing:"lower"}),t(e.min<0,"Chance: Min cannot be less than zero.");var a=this.natural({min:e.min,max:e.max});return e.casing==="upper"?a.toString(16).toUpperCase():a.toString(16)},r.prototype.letter=function(e){e=o(e,{casing:"lower"});var a="abcdefghijklmnopqrstuvwxyz",n=this.character({pool:a});return e.casing==="upper"&&(n=n.toUpperCase()),n},r.prototype.string=function(e){e=o(e,{min:5,max:20}),e.length!==0&&!e.length&&(e.length=this.natural({min:e.min,max:e.max})),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return n.join("")};function l(e){this.c=e}l.prototype={substitute:function(){return this.c}};function u(e){this.c=e}u.prototype={substitute:function(){if(!/[{}\\]/.test(this.c))throw new Error('Invalid escape sequence: "\\'+this.c+'".');return this.c}};function p(e){this.c=e}p.prototype={replacers:{"#":function(e){return e.character({pool:I})},A:function(e){return e.character({pool:b})},a:function(e){return e.character({pool:x})}},substitute:function(e){var a=this.replacers[this.c];if(!a)throw new Error('Invalid replacement character: "'+this.c+'".');return a(e)}};function T(e){for(var a=[],n="identity",c=0;c"u")throw new M("Sorry, the buffer() function is not supported on your platform");e=o(e,{length:this.natural({min:5,max:20})}),t(e.length<0,"Chance: Length cannot be less than zero.");var a=e.length,n=this.n(this.character,a,e);return Buffer.from(n)},r.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.substr(1)},r.prototype.mixin=function(e){for(var a in e)this[a]=e[a];return this},r.prototype.unique=function(e,a,n){t(typeof e!="function","Chance: The first argument must be a function.");var c=function(y,_){return y.indexOf(_)!==-1};n&&(c=n.comparator||c);for(var m=[],C=0,P,f=a*50,A=B.call(arguments,2);m.lengthf)throw new RangeError("Chance: num is likely too large for sample set")}return m},r.prototype.n=function(e,a){t(typeof e!="function","Chance: The first argument must be a function."),typeof a>"u"&&(a=1);var n=a,c=[],m=B.call(arguments,2);for(n=Math.max(0,n),null;n--;null)c.push(e.apply(this,m));return c},r.prototype.pad=function(e,a,n){return n=n||"0",e=e+"",e.length>=a?e:new Array(a-e.length+1).join(n)+e},r.prototype.pick=function(e,a){if(e.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return!a||a===1?e[this.natural({max:e.length-1})]:this.shuffle(e).slice(0,a)},r.prototype.pickone=function(e){if(e.length===0)throw new RangeError("Chance: Cannot pickone() from an empty array");return e[this.natural({max:e.length-1})]},r.prototype.pickset=function(e,a){if(a===0)return[];if(e.length===0)throw new RangeError("Chance: Cannot pickset() from an empty array");if(a<0)throw new RangeError("Chance: Count must be a positive number");if(!a||a===1)return[this.pickone(e)];var n=e.slice(0),c=n.length;return this.n(function(){var m=this.natural({max:--c}),C=n[m];return n[m]=n[c],C},Math.min(c,a))},r.prototype.shuffle=function(e){for(var a=[],n=0,c=Number(e.length),m=i(c),C=c-1,P,f=0;f0&&(c+=m)}if(c===0)throw new RangeError("Chance: No valid entries in array weights");var P=this.random()*c,f=0,A=-1,v;for(C=0;C0){if(P<=f){v=C;break}A=C}C===a.length-1&&(v=A)}var y=e[v];return n=typeof n>"u"?!1:n,n&&(e.splice(v,1),a.splice(v,1)),y},r.prototype.paragraph=function(e){e=o(e);var a=e.sentences||this.natural({min:3,max:7}),n=this.n(this.sentence,a),c=e.linebreak===!0?` +`:" ";return n.join(c)},r.prototype.sentence=function(e){e=o(e);var a=e.words||this.natural({min:12,max:18}),n=e.punctuation,c,m=this.n(this.word,a);return c=m.join(" "),c=this.capitalize(c),n!==!1&&!/^[.?;!:]$/.test(n)&&(n="."),n&&(c+=n),c},r.prototype.syllable=function(e){e=o(e);for(var a=e.length||this.natural({min:2,max:3}),n="bcdfghjklmnprstvwz",c="aeiou",m=n+c,C="",P,f=0;fe.maxAge,"Chance: MinAge cannot be greater than MaxAge.");var P=e.minAge!==void 0?e.minAge:0,f=e.maxAge!==void 0?e.maxAge:100,A=new Date(c-f-1,n.getMonth(),n.getDate()),v=new Date(c-P,n.getMonth(),n.getDate());A.setDate(A.getDate()+1),v.setDate(v.getDate()+1),v.setMilliseconds(v.getMilliseconds()-1),e=o(e,{min:A,max:v})}else e=o(e,{year:c-a});return this.date(e)},r.prototype.cpf=function(e){e=o(e,{formatted:!0});var a=this.n(this.natural,9,{max:9}),n=a[8]*2+a[7]*3+a[6]*4+a[5]*5+a[4]*6+a[3]*7+a[2]*8+a[1]*9+a[0]*10;n=11-n%11,n>=10&&(n=0);var c=n*2+a[8]*3+a[7]*4+a[6]*5+a[5]*6+a[4]*7+a[3]*8+a[2]*9+a[1]*10+a[0]*11;c=11-c%11,c>=10&&(c=0);var m=""+a[0]+a[1]+a[2]+"."+a[3]+a[4]+a[5]+"."+a[6]+a[7]+a[8]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},r.prototype.cnpj=function(e){e=o(e,{formatted:!0});var a=this.n(this.natural,12,{max:12}),n=a[11]*2+a[10]*3+a[9]*4+a[8]*5+a[7]*6+a[6]*7+a[5]*8+a[4]*9+a[3]*2+a[2]*3+a[1]*4+a[0]*5;n=11-n%11,n<2&&(n=0);var c=n*2+a[11]*3+a[10]*4+a[9]*5+a[8]*6+a[7]*7+a[6]*8+a[5]*9+a[4]*2+a[3]*3+a[2]*4+a[1]*5+a[0]*6;c=11-c%11,c<2&&(c=0);var m=""+a[0]+a[1]+"."+a[2]+a[3]+a[4]+"."+a[5]+a[6]+a[7]+"/"+a[8]+a[9]+a[10]+a[11]+"-"+n+c;return e.formatted?m:m.replace(/\D/g,"")},r.prototype.first=function(e){return e=o(e,{gender:this.gender(),nationality:"en"}),this.pick(this.get("firstNames")[e.gender.toLowerCase()][e.nationality.toLowerCase()])},r.prototype.profession=function(e){return e=o(e),e.rank?this.pick(["Apprentice ","Junior ","Senior ","Lead "])+this.pick(this.get("profession")):this.pick(this.get("profession"))},r.prototype.company=function(){return this.pick(this.get("company"))},r.prototype.gender=function(e){return e=o(e,{extraGenders:[]}),this.pick(["Male","Female"].concat(e.extraGenders))},r.prototype.last=function(e){if(e=o(e,{nationality:"*"}),e.nationality==="*"){var a=[],n=this.get("lastNames");return Object.keys(n).forEach(function(c){a=a.concat(n[c])}),this.pick(a)}else return this.pick(this.get("lastNames")[e.nationality.toLowerCase()])},r.prototype.israelId=function(){for(var e=this.string({pool:"0123456789",length:8}),a=0,n=0;n","<=",">=","="]);e.range&&(a=e.range);var n="";return e.include_prerelease&&(n=this.weighted(["","-dev","-beta","-alpha"],[50,10,5,1])),a+this.rpg("3d10").join(".")+n},r.prototype.tlds=function(){return["com","org","edu","gov","co.uk","net","io","ac","ad","ae","af","ag","ai","al","am","ao","aq","ar","as","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tf","tg","th","tj","tk","tl","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","za","zm","zw"]},r.prototype.tld=function(){return this.pick(this.tlds())},r.prototype.twitter=function(){return"@"+this.word()},r.prototype.url=function(e){e=o(e,{protocol:"http",domain:this.domain(e),domain_prefix:"",path:this.word(),extensions:[]});var a=e.extensions.length>0?"."+this.pick(e.extensions):"",n=e.domain_prefix?e.domain_prefix+"."+e.domain:e.domain;return e.protocol+"://"+n+"/"+e.path+a},r.prototype.port=function(){return this.integer({min:0,max:65535})},r.prototype.locale=function(e){return e=o(e),e.region?this.pick(this.get("locale_regions")):this.pick(this.get("locale_languages"))},r.prototype.locales=function(e){return e=o(e),e.region?this.get("locale_regions"):this.get("locale_languages")},r.prototype.loremPicsum=function(e){e=o(e,{width:500,height:500,greyscale:!1,blurred:!1});var a=e.greyscale?"g/":"",n=e.blurred?"/?blur":"/?random";return"https://picsum.photos/"+a+e.width+"/"+e.height+n},r.prototype.address=function(e){return e=o(e),this.natural({min:5,max:2e3})+" "+this.street(e)},r.prototype.altitude=function(e){return e=o(e,{fixed:5,min:0,max:8848}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.areacode=function(e){e=o(e,{parens:!0});var a=e.exampleNumber?"555":this.natural({min:2,max:9}).toString()+this.natural({min:0,max:8}).toString()+this.natural({min:0,max:9}).toString();return e.parens?"("+a+")":a},r.prototype.city=function(){return this.capitalize(this.word({syllables:3}))},r.prototype.coordinates=function(e){return this.latitude(e)+", "+this.longitude(e)},r.prototype.countries=function(){return this.get("countries")},r.prototype.country=function(e){e=o(e);var a=this.pick(this.countries());return e.raw?a:e.full?a.name:a.abbreviation},r.prototype.depth=function(e){return e=o(e,{fixed:5,min:-10994,max:0}),this.floating({min:e.min,max:e.max,fixed:e.fixed})},r.prototype.geohash=function(e){return e=o(e,{length:7}),this.string({length:e.length,pool:"0123456789bcdefghjkmnpqrstuvwxyz"})},r.prototype.geojson=function(e){return this.latitude(e)+", "+this.longitude(e)+", "+this.altitude(e)},r.prototype.latitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=o(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:89,fixed:4}:{fixed:5,min:-90,max:90,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>89,"Chance: Min specified is out of range. Should be between 0 - 89"),t(e.max<0||e.max>89,"Chance: Max specified is out of range. Should be between 0 - 89"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.longitude=function(e){var[a,n,c]=["ddm","dms","dd"];e=o(e,e&&e.format&&[a,n].includes(e.format.toLowerCase())?{min:0,max:179,fixed:4}:{fixed:5,min:-180,max:180,format:c});var m=e.format.toLowerCase();switch((m===a||m===n)&&(t(e.min<0||e.min>179,"Chance: Min specified is out of range. Should be between 0 - 179"),t(e.max<0||e.max>179,"Chance: Max specified is out of range. Should be between 0 - 179"),t(e.fixed>4,"Chance: Fixed specified should be below or equal to 4")),m){case a:return this.integer({min:e.min,max:e.max})+"\xB0"+this.floating({min:0,max:59.9999,fixed:e.fixed});case n:return this.integer({min:e.min,max:e.max})+"\xB0"+this.integer({min:0,max:59})+"\u2019"+this.floating({min:0,max:59.9999,fixed:e.fixed})+"\u201D";case c:default:return this.floating({min:e.min,max:e.max,fixed:e.fixed})}},r.prototype.phone=function(e){var a=this,n,c=function(_){var F=[];return _.sections.forEach(function(z){F.push(a.string({pool:"0123456789",length:z}))}),_.area+F.join(" ")};e=o(e,{formatted:!0,country:"us",mobile:!1,exampleNumber:!1}),e.formatted||(e.parens=!1);var m;switch(e.country){case"fr":e.mobile?(n=this.pick(["06","07"])+a.string({pool:"0123456789",length:8}),m=e.formatted?n.match(/../g).join(" "):n):(n=this.pick(["01"+this.pick(["30","34","39","40","41","42","43","44","45","46","47","48","49","53","55","56","58","60","64","69","70","72","73","74","75","76","77","78","79","80","81","82","83"])+a.string({pool:"0123456789",length:6}),"02"+this.pick(["14","18","22","23","28","29","30","31","32","33","34","35","36","37","38","40","41","43","44","45","46","47","48","49","50","51","52","53","54","56","57","61","62","69","72","76","77","78","85","90","96","97","98","99"])+a.string({pool:"0123456789",length:6}),"03"+this.pick(["10","20","21","22","23","24","25","26","27","28","29","39","44","45","51","52","54","55","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","80","81","82","83","84","85","86","87","88","89","90"])+a.string({pool:"0123456789",length:6}),"04"+this.pick(["11","13","15","20","22","26","27","30","32","34","37","42","43","44","50","56","57","63","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","88","89","90","91","92","93","94","95","97","98"])+a.string({pool:"0123456789",length:6}),"05"+this.pick(["08","16","17","19","24","31","32","33","34","35","40","45","46","47","49","53","55","56","57","58","59","61","62","63","64","65","67","79","81","82","86","87","90","94"])+a.string({pool:"0123456789",length:6}),"09"+a.string({pool:"0123456789",length:8})]),m=e.formatted?n.match(/../g).join(" "):n);break;case"uk":e.mobile?(n=this.pick([{area:"07"+this.pick(["4","5","7","8","9"]),sections:[2,6]},{area:"07624 ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","")):(n=this.pick([{area:"01"+this.character({pool:"234569"})+"1 ",sections:[3,4]},{area:"020 "+this.character({pool:"378"}),sections:[3,4]},{area:"023 "+this.character({pool:"89"}),sections:[3,4]},{area:"024 7",sections:[3,4]},{area:"028 "+this.pick(["25","28","37","71","82","90","92","95"]),sections:[2,4]},{area:"012"+this.pick(["04","08","54","76","97","98"])+" ",sections:[6]},{area:"013"+this.pick(["63","64","84","86"])+" ",sections:[6]},{area:"014"+this.pick(["04","20","60","61","80","88"])+" ",sections:[6]},{area:"015"+this.pick(["24","27","62","66"])+" ",sections:[6]},{area:"016"+this.pick(["06","29","35","47","59","95"])+" ",sections:[6]},{area:"017"+this.pick(["26","44","50","68"])+" ",sections:[6]},{area:"018"+this.pick(["27","37","84","97"])+" ",sections:[6]},{area:"019"+this.pick(["00","05","35","46","49","63","95"])+" ",sections:[6]}]),m=e.formatted?c(n):c(n).replace(" ","","g"));break;case"za":e.mobile?(n=this.pick(["060"+this.pick(["3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"061"+this.pick(["0","1","2","3","4","5","8"])+a.string({pool:"0123456789",length:6}),"06"+a.string({pool:"0123456789",length:7}),"071"+this.pick(["0","1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:6}),"07"+this.pick(["2","3","4","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"08"+this.pick(["0","1","2","3","4","5"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n):(n=this.pick(["01"+this.pick(["0","1","2","3","4","5","6","7","8"])+a.string({pool:"0123456789",length:7}),"02"+this.pick(["1","2","3","4","7","8"])+a.string({pool:"0123456789",length:7}),"03"+this.pick(["1","2","3","5","6","9"])+a.string({pool:"0123456789",length:7}),"04"+this.pick(["1","2","3","4","5","6","7","8","9"])+a.string({pool:"0123456789",length:7}),"05"+this.pick(["1","3","4","6","7","8"])+a.string({pool:"0123456789",length:7})]),m=e.formatted||n);break;case"us":var C=this.areacode(e).toString(),P=this.natural({min:2,max:9}).toString()+this.natural({min:0,max:9}).toString()+this.natural({min:0,max:9}).toString(),f=this.natural({min:1e3,max:9999}).toString();m=e.formatted?C+" "+P+"-"+f:C+P+f;break;case"br":var A=this.pick(["11","12","13","14","15","16","17","18","19","21","22","24","27","28","31","32","33","34","35","37","38","41","42","43","44","45","46","47","48","49","51","53","54","55","61","62","63","64","65","66","67","68","69","71","73","74","75","77","79","81","82","83","84","85","86","87","88","89","91","92","93","94","95","96","97","98","99"]),v;e.mobile?v="9"+a.string({pool:"0123456789",length:4}):v=this.natural({min:2e3,max:5999}).toString();var y=a.string({pool:"0123456789",length:4});m=e.formatted?"("+A+") "+v+"-"+y:A+v+y;break}return m},r.prototype.postal=function(){var e=this.character({pool:"XVTSRPNKLMHJGECBA"}),a=e+this.natural({max:9})+this.character({alpha:!0,casing:"upper"}),n=this.natural({max:9})+this.character({alpha:!0,casing:"upper"})+this.natural({max:9});return a+" "+n},r.prototype.postcode=function(){var e=this.pick(this.get("postcodeAreas")).code,a=this.natural({max:9}),n=this.bool()?this.character({alpha:!0,casing:"upper"}):"",c=e+a+n,m=this.natural({max:9}),C=this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"}),P=m+C;return c+" "+P},r.prototype.counties=function(e){return e=o(e,{country:"uk"}),this.get("counties")[e.country.toLowerCase()]},r.prototype.county=function(e){return this.pick(this.counties(e)).name},r.prototype.provinces=function(e){return e=o(e,{country:"ca"}),this.get("provinces")[e.country.toLowerCase()]},r.prototype.province=function(e){return e&&e.full?this.pick(this.provinces(e)).name:this.pick(this.provinces(e)).abbreviation},r.prototype.state=function(e){return e&&e.full?this.pick(this.states(e)).name:this.pick(this.states(e)).abbreviation},r.prototype.states=function(e){e=o(e,{country:"us",us_states_and_dc:!0});var a;switch(e.country.toLowerCase()){case"us":var n=this.get("us_states_and_dc"),c=this.get("territories"),m=this.get("armed_forces");a=[],e.us_states_and_dc&&(a=a.concat(n)),e.territories&&(a=a.concat(c)),e.armed_forces&&(a=a.concat(m));break;case"it":case"mx":a=this.get("country_regions")[e.country.toLowerCase()];break;case"uk":a=this.get("counties")[e.country.toLowerCase()];break}return a},r.prototype.street=function(e){e=o(e,{country:"us",syllables:2});var a;switch(e.country.toLowerCase()){case"us":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a+=" ",a+=e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name;break;case"it":a=this.word({syllables:e.syllables}),a=this.capitalize(a),a=(e.short_suffix?this.street_suffix(e).abbreviation:this.street_suffix(e).name)+" "+a;break}return a},r.prototype.street_suffix=function(e){return e=o(e,{country:"us"}),this.pick(this.street_suffixes(e))},r.prototype.street_suffixes=function(e){return e=o(e,{country:"us"}),this.get("street_suffixes")[e.country.toLowerCase()]},r.prototype.zip=function(e){var a=this.n(this.natural,5,{max:9});return e&&e.plusfour===!0&&(a.push("-"),a=a.concat(this.n(this.natural,4,{max:9}))),a.join("")},r.prototype.ampm=function(){return this.bool()?"am":"pm"},r.prototype.date=function(e){var a,n;if(e&&(e.min||e.max)){e=o(e,{american:!0,string:!1});var c=typeof e.min<"u"?e.min.getTime():1,m=typeof e.max<"u"?e.max.getTime():864e13;n=new Date(this.integer({min:c,max:m}))}else{var C=this.month({raw:!0}),P=C.days;e&&e.month&&(P=this.get("months")[(e.month%12+12)%12].days),e=o(e,{year:parseInt(this.year(),10),month:C.numeric-1,day:this.natural({min:1,max:P}),hour:this.hour({twentyfour:!0}),minute:this.minute(),second:this.second(),millisecond:this.millisecond(),american:!0,string:!1}),n=new Date(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}return e.american?a=n.getMonth()+1+"/"+n.getDate()+"/"+n.getFullYear():a=n.getDate()+"/"+(n.getMonth()+1)+"/"+n.getFullYear(),e.string?a:n},r.prototype.hammertime=function(e){return this.date(e).getTime()},r.prototype.hour=function(e){return e=o(e,{min:e&&e.twentyfour?0:1,max:e&&e.twentyfour?23:12}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.twentyfour&&e.max>23,"Chance: Max cannot be greater than 23 for twentyfour option."),t(!e.twentyfour&&e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.millisecond=function(){return this.natural({max:999})},r.prototype.minute=r.prototype.second=function(e){return e=o(e,{min:0,max:59}),t(e.min<0,"Chance: Min cannot be less than 0."),t(e.max>59,"Chance: Max cannot be greater than 59."),t(e.min>e.max,"Chance: Min cannot be greater than Max."),this.natural({min:e.min,max:e.max})},r.prototype.month=function(e){e=o(e,{min:1,max:12}),t(e.min<1,"Chance: Min cannot be less than 1."),t(e.max>12,"Chance: Max cannot be greater than 12."),t(e.min>e.max,"Chance: Min cannot be greater than Max.");var a=this.pick(this.months().slice(e.min-1,e.max));return e.raw?a:a.name},r.prototype.months=function(){return this.get("months")},r.prototype.second=function(){return this.natural({max:59})},r.prototype.timestamp=function(){return this.natural({min:1,max:parseInt(new Date().getTime()/1e3,10)})},r.prototype.weekday=function(e){e=o(e,{weekday_only:!1});var a=["Monday","Tuesday","Wednesday","Thursday","Friday"];return e.weekday_only||(a.push("Saturday"),a.push("Sunday")),this.pickone(a)},r.prototype.year=function(e){return e=o(e,{min:new Date().getFullYear()}),e.max=typeof e.max<"u"?e.max:e.min+100,this.natural(e).toString()},r.prototype.cc=function(e){e=o(e);var a,n,c;return a=e.type?this.cc_type({name:e.type,raw:!0}):this.cc_type({raw:!0}),n=a.prefix.split(""),c=a.length-a.prefix.length-1,n=n.concat(this.n(this.integer,c,{min:0,max:9})),n.push(this.luhn_calculate(n.join(""))),n.join("")},r.prototype.cc_types=function(){return this.get("cc_types")},r.prototype.cc_type=function(e){e=o(e);var a=this.cc_types(),n=null;if(e.name){for(var c=0;c3&&(_?F=F.substr(0,3):F=F[0]+F.substr(2,2)),F.length<3&&(z=F,F=y.toUpperCase().split("").map(function(j){return"AEIOU".indexOf(j)!==-1?j:void 0}).join("").substr(0,3-z.length)),z=z+F),z},A=function(y,_,F){var z=["A","B","C","D","E","H","L","M","P","R","S","T"];return y.getFullYear().toString().substr(2)+z[y.getMonth()]+F.pad(y.getDate()+(_.toLowerCase()==="female"?40:0),2)},v=function(y){for(var _="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",F="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ",z="ABCDEFGHIJKLMNOPQRSTUVWXYZ",j="BAKPLCQDREVOSFTGUHMINJWZYX",K=0,U=0;U<15;U++)U%2!==0?K+=z.indexOf(F[_.indexOf(y[U])]):K+=j.indexOf(F[_.indexOf(y[U])]);return z[K%26]};return P=P.concat(f(c,!0),f(n),A(m,a,this),C.toUpperCase().split("")).join(""),P+=v(P.toUpperCase()),P.toUpperCase()},r.prototype.pl_pesel=function(){for(var e=this.natural({min:1,max:9999999999}),a=this.pad(e,10).split(""),n=0;n0;m--)c[m-1]=this.natural({min:1,max:n[1]});return typeof a.sum<"u"&&a.sum?c.reduce(function(C,P){return C+P}):c}else throw new RangeError("Chance: A type of die roll must be included")},r.prototype.guid=function(e){e=o(e,{version:5});var a="abcdef1234567890",n="ab89",c=this.string({pool:a,length:8})+"-"+this.string({pool:a,length:4})+"-"+e.version+this.string({pool:a,length:3})+"-"+this.string({pool:n,length:1})+this.string({pool:a,length:3})+"-"+this.string({pool:a,length:12});return c},r.prototype.hash=function(e){e=o(e,{length:40,casing:"lower"});var a=e.casing==="upper"?g.toUpperCase():g;return this.string({pool:a,length:e.length})},r.prototype.luhn_check=function(e){var a=e.toString(),n=+a.substring(a.length-1);return n===this.luhn_calculate(+a.substring(0,a.length-1))},r.prototype.luhn_calculate=function(e){for(var a=e.toString().split("").reverse(),n=0,c,m=0,C=a.length;C>m;++m)c=+a[m],m%2===0&&(c*=2,c>9&&(c-=9)),n+=c;return n*9%10},r.prototype.md5=function(e){var a={str:"",key:null,raw:!1};if(!e)a.str=this.string(),e={};else if(typeof e=="string")a.str=e,e={};else{if(typeof e!="object")return null;if(e.constructor==="Array")return null}if(a=o(e,a),!a.str)throw new Error("A parameter is required to return an md5 hash.");return this.bimd5.md5(a.str,a.key,a.raw)},r.prototype.file=function(e){var a=e||{},n="fileExtension",c=Object.keys(this.get("fileExtension")),m,C;if(m=this.word({length:a.length}),a.extension)return C=a.extension,m+"."+C;if(a.extensions){if(Array.isArray(a.extensions))return C=this.pickone(a.extensions),m+"."+C;if(a.extensions.constructor===Object){var P=a.extensions,f=Object.keys(P);return C=this.pickone(P[this.pickone(f)]),m+"."+C}throw new Error("Chance: Extensions must be an Array or Object")}if(a.fileType){var A=a.fileType;if(c.indexOf(A)!==-1)return C=this.pickone(this.get(n)[A]),m+"."+C;throw new RangeError("Chance: Expect file type value to be 'raster', 'vector', '3d' or 'document'")}return C=this.pickone(this.get(n)[this.pickone(c)]),m+"."+C},r.prototype.fileWithContent=function(e){var a=e||{},n="fileName"in a?a.fileName:this.file().split(".")[0];if(n+="."+("fileExtension"in a?a.fileExtension:this.file().split(".")[1]),typeof a.fileSize!="number")throw new Error("File size must be an integer");var c={fileData:this.buffer({length:a.fileSize}),fileName:n};return c};var E={firstNames:{male:{en:["James","John","Robert","Michael","William","David","Richard","Joseph","Charles","Thomas","Christopher","Daniel","Matthew","George","Donald","Anthony","Paul","Mark","Edward","Steven","Kenneth","Andrew","Brian","Joshua","Kevin","Ronald","Timothy","Jason","Jeffrey","Frank","Gary","Ryan","Nicholas","Eric","Stephen","Jacob","Larry","Jonathan","Scott","Raymond","Justin","Brandon","Gregory","Samuel","Benjamin","Patrick","Jack","Henry","Walter","Dennis","Jerry","Alexander","Peter","Tyler","Douglas","Harold","Aaron","Jose","Adam","Arthur","Zachary","Carl","Nathan","Albert","Kyle","Lawrence","Joe","Willie","Gerald","Roger","Keith","Jeremy","Terry","Harry","Ralph","Sean","Jesse","Roy","Louis","Billy","Austin","Bruce","Eugene","Christian","Bryan","Wayne","Russell","Howard","Fred","Ethan","Jordan","Philip","Alan","Juan","Randy","Vincent","Bobby","Dylan","Johnny","Phillip","Victor","Clarence","Ernest","Martin","Craig","Stanley","Shawn","Travis","Bradley","Leonard","Earl","Gabriel","Jimmy","Francis","Todd","Noah","Danny","Dale","Cody","Carlos","Allen","Frederick","Logan","Curtis","Alex","Joel","Luis","Norman","Marvin","Glenn","Tony","Nathaniel","Rodney","Melvin","Alfred","Steve","Cameron","Chad","Edwin","Caleb","Evan","Antonio","Lee","Herbert","Jeffery","Isaac","Derek","Ricky","Marcus","Theodore","Elijah","Luke","Jesus","Eddie","Troy","Mike","Dustin","Ray","Adrian","Bernard","Leroy","Angel","Randall","Wesley","Ian","Jared","Mason","Hunter","Calvin","Oscar","Clifford","Jay","Shane","Ronnie","Barry","Lucas","Corey","Manuel","Leo","Tommy","Warren","Jackson","Isaiah","Connor","Don","Dean","Jon","Julian","Miguel","Bill","Lloyd","Charlie","Mitchell","Leon","Jerome","Darrell","Jeremiah","Alvin","Brett","Seth","Floyd","Jim","Blake","Micheal","Gordon","Trevor","Lewis","Erik","Edgar","Vernon","Devin","Gavin","Jayden","Chris","Clyde","Tom","Derrick","Mario","Brent","Marc","Herman","Chase","Dominic","Ricardo","Franklin","Maurice","Max","Aiden","Owen","Lester","Gilbert","Elmer","Gene","Francisco","Glen","Cory","Garrett","Clayton","Sam","Jorge","Chester","Alejandro","Jeff","Harvey","Milton","Cole","Ivan","Andre","Duane","Landon"],it:["Adolfo","Alberto","Aldo","Alessandro","Alessio","Alfredo","Alvaro","Andrea","Angelo","Angiolo","Antonino","Antonio","Attilio","Benito","Bernardo","Bruno","Carlo","Cesare","Christian","Claudio","Corrado","Cosimo","Cristian","Cristiano","Daniele","Dario","David","Davide","Diego","Dino","Domenico","Duccio","Edoardo","Elia","Elio","Emanuele","Emiliano","Emilio","Enrico","Enzo","Ettore","Fabio","Fabrizio","Federico","Ferdinando","Fernando","Filippo","Francesco","Franco","Gabriele","Giacomo","Giampaolo","Giampiero","Giancarlo","Gianfranco","Gianluca","Gianmarco","Gianni","Gino","Giorgio","Giovanni","Giuliano","Giulio","Giuseppe","Graziano","Gregorio","Guido","Iacopo","Jacopo","Lapo","Leonardo","Lorenzo","Luca","Luciano","Luigi","Manuel","Marcello","Marco","Marino","Mario","Massimiliano","Massimo","Matteo","Mattia","Maurizio","Mauro","Michele","Mirko","Mohamed","Nello","Neri","Niccol\xF2","Nicola","Osvaldo","Otello","Paolo","Pier Luigi","Piero","Pietro","Raffaele","Remo","Renato","Renzo","Riccardo","Roberto","Rolando","Romano","Salvatore","Samuele","Sandro","Sergio","Silvano","Simone","Stefano","Thomas","Tommaso","Ubaldo","Ugo","Umberto","Valerio","Valter","Vasco","Vincenzo","Vittorio"],nl:["Aaron","Abel","Adam","Adriaan","Albert","Alexander","Ali","Arjen","Arno","Bart","Bas","Bastiaan","Benjamin","Bob","Boris","Bram","Brent","Cas","Casper","Chris","Christiaan","Cornelis","Daan","Daley","Damian","Dani","Daniel","Dani\xEBl","David","Dean","Dirk","Dylan","Egbert","Elijah","Erik","Erwin","Evert","Ezra","Fabian","Fedde","Finn","Florian","Floris","Frank","Frans","Frederik","Freek","Geert","Gerard","Gerben","Gerrit","Gijs","Guus","Hans","Hendrik","Henk","Herman","Hidde","Hugo","Jaap","Jan Jaap","Jan-Willem","Jack","Jacob","Jan","Jason","Jasper","Jayden","Jelle","Jelte","Jens","Jeroen","Jesse","Jim","Job","Joep","Johannes","John","Jonathan","Joris","Joshua","Jo\xEBl","Julian","Kees","Kevin","Koen","Lars","Laurens","Leendert","Lennard","Lodewijk","Luc","Luca","Lucas","Lukas","Luuk","Maarten","Marcus","Martijn","Martin","Matthijs","Maurits","Max","Mees","Melle","Mick","Mika","Milan","Mohamed","Mohammed","Morris","Muhammed","Nathan","Nick","Nico","Niek","Niels","Noah","Noud","Olivier","Oscar","Owen","Paul","Pepijn","Peter","Pieter","Pim","Quinten","Reinier","Rens","Robin","Ruben","Sam","Samuel","Sander","Sebastiaan","Sem","Sep","Sepp","Siem","Simon","Stan","Stef","Steven","Stijn","Sven","Teun","Thijmen","Thijs","Thomas","Tijn","Tim","Timo","Tobias","Tom","Victor","Vince","Willem","Wim","Wouter","Yusuf"],fr:["Aaron","Abdon","Abel","Ab\xE9lard","Abelin","Abondance","Abraham","Absalon","Acace","Achaire","Achille","Adalard","Adalbald","Adalb\xE9ron","Adalbert","Adalric","Adam","Adegrin","Adel","Adelin","Andelin","Adelphe","Adam","Ad\xE9odat","Adh\xE9mar","Adjutor","Adolphe","Adonis","Adon","Adrien","Agapet","Agathange","Agathon","Agilbert","Ag\xE9nor","Agnan","Aignan","Agrippin","Aimable","Aim\xE9","Alain","Alban","Albin","Aubin","Alb\xE9ric","Albert","Albertet","Alcibiade","Alcide","Alc\xE9e","Alcime","Aldonce","Aldric","Ald\xE9ric","Aleaume","Alexandre","Alexis","Alix","Alliaume","Aleaume","Almine","Almire","Alo\xEFs","Alph\xE9e","Alphonse","Alpinien","Alver\xE8de","Amalric","Amaury","Amandin","Amant","Ambroise","Am\xE9d\xE9e","Am\xE9lien","Amiel","Amour","Ana\xEBl","Anastase","Anatole","Ancelin","And\xE9ol","Andoche","Andr\xE9","Andoche","Ange","Angelin","Angilbe","Anglebert","Angoustan","Anicet","Anne","Annibal","Ansbert","Anselme","Anthelme","Antheaume","Anthime","Antide","Antoine","Antonius","Antonin","Apollinaire","Apollon","Aquilin","Arcade","Archambaud","Archambeau","Archange","Archibald","Arian","Ariel","Ariste","Aristide","Armand","Armel","Armin","Arnould","Arnaud","Arolde","Ars\xE8ne","Arsino\xE9","Arthaud","Arth\xE8me","Arthur","Ascelin","Athanase","Aubry","Audebert","Audouin","Audran","Audric","Auguste","Augustin","Aur\xE8le","Aur\xE9lien","Aurian","Auxence","Axel","Aymard","Aymeric","Aymon","Aymond","Balthazar","Baptiste","Barnab\xE9","Barth\xE9lemy","Bartim\xE9e","Basile","Bastien","Baudouin","B\xE9nigne","Benjamin","Beno\xEEt","B\xE9renger","B\xE9rard","Bernard","Bertrand","Blaise","Bon","Boniface","Bouchard","Brice","Brieuc","Bruno","Brunon","Calixte","Calliste","Cam\xE9lien","Camille","Camillien","Candide","Caribert","Carloman","Cassandre","Cassien","C\xE9dric","C\xE9leste","C\xE9lestin","C\xE9lien","C\xE9saire","C\xE9sar","Charles","Charlemagne","Childebert","Chilp\xE9ric","Chr\xE9tien","Christian","Christodule","Christophe","Chrysostome","Clarence","Claude","Claudien","Cl\xE9andre","Cl\xE9ment","Clotaire","C\xF4me","Constance","Constant","Constantin","Corentin","Cyprien","Cyriaque","Cyrille","Cyril","Damien","Daniel","David","Delphin","Denis","D\xE9sir\xE9","Didier","Dieudonn\xE9","Dimitri","Dominique","Dorian","Doroth\xE9e","Edgard","Edmond","\xC9douard","\xC9leuth\xE8re","\xC9lie","\xC9lis\xE9e","\xC9meric","\xC9mile","\xC9milien","Emmanuel","Enguerrand","\xC9piphane","\xC9ric","Esprit","Ernest","\xC9tienne","Eubert","Eudes","Eudoxe","Eug\xE8ne","Eus\xE8be","Eustache","\xC9variste","\xC9vrard","Fabien","Fabrice","Falba","F\xE9licit\xE9","F\xE9lix","Ferdinand","Fiacre","Fid\xE8le","Firmin","Flavien","Flodoard","Florent","Florentin","Florestan","Florian","Fortun\xE9","Foulques","Francisque","Fran\xE7ois","Fran\xE7ais","Franciscus","Francs","Fr\xE9d\xE9ric","Fulbert","Fulcran","Fulgence","Gabin","Gabriel","Ga\xEBl","Garnier","Gaston","Gaspard","Gatien","Gaud","Gautier","G\xE9d\xE9on","Geoffroy","Georges","G\xE9raud","G\xE9rard","Gerbert","Germain","Gervais","Ghislain","Gilbert","Gilles","Girart","Gislebert","Gondebaud","Gonthier","Gontran","Gonzague","Gr\xE9goire","Gu\xE9rin","Gui","Guillaume","Gustave","Guy","Guyot","Hardouin","Hector","H\xE9delin","H\xE9lier","Henri","Herbert","Herluin","Herv\xE9","Hilaire","Hildebert","Hincmar","Hippolyte","Honor\xE9","Hubert","Hugues","Innocent","Isabeau","Isidore","Jacques","Japhet","Jason","Jean","Jeannel","Jeannot","J\xE9r\xE9mie","J\xE9r\xF4me","Joachim","Joanny","Job","Jocelyn","Jo\xEBl","Johan","Jonas","Jonathan","Joseph","Josse","Josselin","Jourdain","Jude","Judica\xEBl","Jules","Julien","Juste","Justin","Lambert","Landry","Laurent","Lazare","L\xE9andre","L\xE9on","L\xE9onard","L\xE9opold","Leu","Loup","Leufroy","Lib\xE8re","Li\xE9tald","Lionel","Lo\xEFc","Longin","Lorrain","Lorraine","Lothaire","Louis","Loup","Luc","Lucas","Lucien","Ludolphe","Ludovic","Macaire","Malo","Mamert","Manass\xE9","Marc","Marceau","Marcel","Marcelin","Marius","Marseille","Martial","Martin","Mathurin","Matthias","Mathias","Matthieu","Maugis","Maurice","Mauricet","Maxence","Maxime","Maximilien","Mayeul","M\xE9d\xE9ric","Melchior","Mence","Merlin","M\xE9rov\xE9e","Micha\xEBl","Michel","Mo\xEFse","Morgan","Nathan","Nathana\xEBl","Narcisse","N\xE9h\xE9mie","Nestor","Nestor","Nic\xE9phore","Nicolas","No\xE9","No\xEBl","Norbert","Normand","Normands","Octave","Odilon","Odon","Oger","Olivier","Oury","Pac\xF4me","Pal\xE9mon","Parfait","Pascal","Paterne","Patrice","Paul","P\xE9pin","Perceval","Phil\xE9mon","Philibert","Philippe","Philoth\xE9e","Pie","Pierre","Pierrick","Prosper","Quentin","Raoul","Rapha\xEBl","Raymond","R\xE9gis","R\xE9jean","R\xE9mi","Renaud","Ren\xE9","Reybaud","Richard","Robert","Roch","Rodolphe","Rodrigue","Roger","Roland","Romain","Romuald","Rom\xE9o","Rome","Ronan","Roselin","Salomon","Samuel","Savin","Savinien","Scholastique","S\xE9bastien","S\xE9raphin","Serge","S\xE9verin","Sidoine","Sigebert","Sigismond","Silv\xE8re","Simon","Sim\xE9on","Sixte","Stanislas","St\xE9phane","Stephan","Sylvain","Sylvestre","Tancr\xE8de","Tanguy","Taurin","Th\xE9odore","Th\xE9odose","Th\xE9ophile","Th\xE9ophraste","Thibault","Thibert","Thierry","Thomas","Timol\xE9on","Timoth\xE9e","Titien","Tonnin","Toussaint","Trajan","Tristan","Turold","Tim","Ulysse","Urbain","Valentin","Val\xE8re","Val\xE9ry","Venance","Venant","Venceslas","Vianney","Victor","Victorien","Victorin","Vigile","Vincent","Vital","Vitalien","Vivien","Waleran","Wandrille","Xavier","X\xE9nophon","Yves","Zacharie","Zach\xE9","Z\xE9phirin"]},female:{en:["Mary","Emma","Elizabeth","Minnie","Margaret","Ida","Alice","Bertha","Sarah","Annie","Clara","Ella","Florence","Cora","Martha","Laura","Nellie","Grace","Carrie","Maude","Mabel","Bessie","Jennie","Gertrude","Julia","Hattie","Edith","Mattie","Rose","Catherine","Lillian","Ada","Lillie","Helen","Jessie","Louise","Ethel","Lula","Myrtle","Eva","Frances","Lena","Lucy","Edna","Maggie","Pearl","Daisy","Fannie","Josephine","Dora","Rosa","Katherine","Agnes","Marie","Nora","May","Mamie","Blanche","Stella","Ellen","Nancy","Effie","Sallie","Nettie","Della","Lizzie","Flora","Susie","Maud","Mae","Etta","Harriet","Sadie","Caroline","Katie","Lydia","Elsie","Kate","Susan","Mollie","Alma","Addie","Georgia","Eliza","Lulu","Nannie","Lottie","Amanda","Belle","Charlotte","Rebecca","Ruth","Viola","Olive","Amelia","Hannah","Jane","Virginia","Emily","Matilda","Irene","Kathryn","Esther","Willie","Henrietta","Ollie","Amy","Rachel","Sara","Estella","Theresa","Augusta","Ora","Pauline","Josie","Lola","Sophia","Leona","Anne","Mildred","Ann","Beulah","Callie","Lou","Delia","Eleanor","Barbara","Iva","Louisa","Maria","Mayme","Evelyn","Estelle","Nina","Betty","Marion","Bettie","Dorothy","Luella","Inez","Lela","Rosie","Allie","Millie","Janie","Cornelia","Victoria","Ruby","Winifred","Alta","Celia","Christine","Beatrice","Birdie","Harriett","Mable","Myra","Sophie","Tillie","Isabel","Sylvia","Carolyn","Isabelle","Leila","Sally","Ina","Essie","Bertie","Nell","Alberta","Katharine","Lora","Rena","Mina","Rhoda","Mathilda","Abbie","Eula","Dollie","Hettie","Eunice","Fanny","Ola","Lenora","Adelaide","Christina","Lelia","Nelle","Sue","Johanna","Lilly","Lucinda","Minerva","Lettie","Roxie","Cynthia","Helena","Hilda","Hulda","Bernice","Genevieve","Jean","Cordelia","Marian","Francis","Jeanette","Adeline","Gussie","Leah","Lois","Lura","Mittie","Hallie","Isabella","Olga","Phoebe","Teresa","Hester","Lida","Lina","Winnie","Claudia","Marguerite","Vera","Cecelia","Bess","Emilie","Rosetta","Verna","Myrtie","Cecilia","Elva","Olivia","Ophelia","Georgie","Elnora","Violet","Adele","Lily","Linnie","Loretta","Madge","Polly","Virgie","Eugenia","Lucile","Lucille","Mabelle","Rosalie"],it:["Ada","Adriana","Alessandra","Alessia","Alice","Angela","Anna","Anna Maria","Annalisa","Annita","Annunziata","Antonella","Arianna","Asia","Assunta","Aurora","Barbara","Beatrice","Benedetta","Bianca","Bruna","Camilla","Carla","Carlotta","Carmela","Carolina","Caterina","Catia","Cecilia","Chiara","Cinzia","Clara","Claudia","Costanza","Cristina","Daniela","Debora","Diletta","Dina","Donatella","Elena","Eleonora","Elisa","Elisabetta","Emanuela","Emma","Eva","Federica","Fernanda","Fiorella","Fiorenza","Flora","Franca","Francesca","Gabriella","Gaia","Gemma","Giada","Gianna","Gina","Ginevra","Giorgia","Giovanna","Giulia","Giuliana","Giuseppa","Giuseppina","Grazia","Graziella","Greta","Ida","Ilaria","Ines","Iolanda","Irene","Irma","Isabella","Jessica","Laura","Lea","Letizia","Licia","Lidia","Liliana","Lina","Linda","Lisa","Livia","Loretta","Luana","Lucia","Luciana","Lucrezia","Luisa","Manuela","Mara","Marcella","Margherita","Maria","Maria Cristina","Maria Grazia","Maria Luisa","Maria Pia","Maria Teresa","Marina","Marisa","Marta","Martina","Marzia","Matilde","Melissa","Michela","Milena","Mirella","Monica","Natalina","Nella","Nicoletta","Noemi","Olga","Paola","Patrizia","Piera","Pierina","Raffaella","Rebecca","Renata","Rina","Rita","Roberta","Rosa","Rosanna","Rossana","Rossella","Sabrina","Sandra","Sara","Serena","Silvana","Silvia","Simona","Simonetta","Sofia","Sonia","Stefania","Susanna","Teresa","Tina","Tiziana","Tosca","Valentina","Valeria","Vanda","Vanessa","Vanna","Vera","Veronica","Vilma","Viola","Virginia","Vittoria"],nl:["Ada","Arianne","Afke","Amanda","Amber","Amy","Aniek","Anita","Anja","Anna","Anne","Annelies","Annemarie","Annette","Anouk","Astrid","Aukje","Barbara","Bianca","Carla","Carlijn","Carolien","Chantal","Charlotte","Claudia","Dani\xEBlle","Debora","Diane","Dora","Eline","Elise","Ella","Ellen","Emma","Esmee","Evelien","Esther","Erica","Eva","Femke","Fleur","Floor","Froukje","Gea","Gerda","Hanna","Hanneke","Heleen","Hilde","Ilona","Ina","Inge","Ingrid","Iris","Isabel","Isabelle","Janneke","Jasmijn","Jeanine","Jennifer","Jessica","Johanna","Joke","Julia","Julie","Karen","Karin","Katja","Kim","Lara","Laura","Lena","Lianne","Lieke","Lilian","Linda","Lisa","Lisanne","Lotte","Louise","Maaike","Manon","Marga","Maria","Marissa","Marit","Marjolein","Martine","Marleen","Melissa","Merel","Miranda","Michelle","Mirjam","Mirthe","Naomi","Natalie","Nienke","Nina","Noortje","Olivia","Patricia","Paula","Paulien","Ramona","Ria","Rianne","Roos","Rosanne","Ruth","Sabrina","Sandra","Sanne","Sara","Saskia","Silvia","Sofia","Sophie","Sonja","Suzanne","Tamara","Tess","Tessa","Tineke","Valerie","Vanessa","Veerle","Vera","Victoria","Wendy","Willeke","Yvonne","Zo\xEB"],fr:["Abdon","Abel","Abiga\xEBlle","Abiga\xEFl","Acacius","Acanthe","Adalbert","Adalsinde","Adegrine","Ad\xE9la\xEFde","Ad\xE8le","Ad\xE9lie","Adeline","Adeltrude","Adolphe","Adonis","Adrast\xE9e","Adrehilde","Adrienne","Agathe","Agilbert","Agla\xE9","Aignan","Agnefl\xE8te","Agn\xE8s","Agrippine","Aim\xE9","Alaine","Ala\xEFs","Albane","Alb\xE9rade","Alberte","Alcide","Alcine","Alcyone","Aldegonde","Aleth","Alexandrine","Alexine","Alice","Ali\xE9nor","Aliette","Aline","Alix","Aliz\xE9","Alo\xEFse","Aloyse","Alphonsine","Alth\xE9e","Amaliane","Amalth\xE9e","Amande","Amandine","Amant","Amarande","Amaranthe","Amaryllis","Ambre","Ambroisie","Am\xE9lie","Am\xE9thyste","Aminte","Ana\xEBl","Ana\xEFs","Anastasie","Anatole","Ancelin","Andr\xE9e","An\xE9mone","Angadr\xEAme","Ang\xE8le","Angeline","Ang\xE9lique","Angilbert","Anicet","Annabelle","Anne","Annette","Annick","Annie","Annonciade","Ansbert","Anstrudie","Anthelme","Antigone","Antoinette","Antonine","Aph\xE9lie","Apolline","Apollonie","Aquiline","Arabelle","Arcadie","Archange","Argine","Ariane","Aricie","Ariel","Arielle","Arlette","Armance","Armande","Armandine","Armelle","Armide","Armelle","Armin","Arnaud","Ars\xE8ne","Arsino\xE9","Art\xE9mis","Arthur","Ascelin","Ascension","Assomption","Astart\xE9","Ast\xE9rie","Astr\xE9e","Astrid","Athalie","Athanasie","Athina","Aube","Albert","Aude","Audrey","Augustine","Aure","Aur\xE9lie","Aur\xE9lien","Aur\xE8le","Aurore","Auxence","Aveline","Abiga\xEBlle","Avoye","Axelle","Aymard","Azal\xE9e","Ad\xE8le","Adeline","Barbe","Basilisse","Bathilde","B\xE9atrice","B\xE9atrix","B\xE9n\xE9dicte","B\xE9reng\xE8re","Bernadette","Berthe","Bertille","Beuve","Blanche","Blanc","Blandine","Brigitte","Brune","Brunehilde","Callista","Camille","Capucine","Carine","Caroline","Cassandre","Catherine","C\xE9cile","C\xE9leste","C\xE9lestine","C\xE9line","Chantal","Charl\xE8ne","Charline","Charlotte","Chlo\xE9","Christelle","Christiane","Christine","Claire","Clara","Claude","Claudine","Clarisse","Cl\xE9mence","Cl\xE9mentine","Cl\xE9o","Clio","Clotilde","Coline","Conception","Constance","Coralie","Coraline","Corentine","Corinne","Cyrielle","Daniel","Daniel","Daphn\xE9","D\xE9bora","Delphine","Denise","Diane","Dieudonn\xE9","Dominique","Doriane","Doroth\xE9e","Douce","\xC9dith","Edm\xE9e","\xC9l\xE9onore","\xC9liane","\xC9lia","\xC9liette","\xC9lisabeth","\xC9lise","Ella","\xC9lodie","\xC9lo\xEFse","Elsa","\xC9meline","\xC9m\xE9rance","\xC9m\xE9rentienne","\xC9m\xE9rencie","\xC9milie","Emma","Emmanuelle","Emmelie","Ernestine","Esther","Estelle","Eudoxie","Eug\xE9nie","Eulalie","Euphrasie","Eus\xE9bie","\xC9vang\xE9line","Eva","\xC8ve","\xC9velyne","Fanny","Fantine","Faustine","F\xE9licie","Fernande","Flavie","Fleur","Flore","Florence","Florie","Fortun\xE9","France","Francia","Fran\xE7oise","Francine","Gabrielle","Ga\xEBlle","Garance","Genevi\xE8ve","Georgette","Gerberge","Germaine","Gertrude","Gis\xE8le","Gueni\xE8vre","Guilhemine","Guillemette","Gustave","Gwenael","H\xE9l\xE8ne","H\xE9lo\xEFse","Henriette","Hermine","Hermione","Hippolyte","Honorine","Hortense","Huguette","Ines","Ir\xE8ne","Irina","Iris","Isabeau","Isabelle","Iseult","Isolde","Ism\xE9rie","Jacinthe","Jacqueline","Jade","Janine","Jeanne","Jocelyne","Jo\xEBlle","Jos\xE9phine","Judith","Julia","Julie","Jules","Juliette","Justine","Katy","Kathy","Katie","Laura","Laure","Laureline","Laurence","Laurene","Lauriane","Laurianne","Laurine","L\xE9a","L\xE9na","L\xE9onie","L\xE9on","L\xE9ontine","Lorraine","Lucie","Lucienne","Lucille","Ludivine","Lydie","Lydie","Megane","Madeleine","Magali","Maguelone","Mallaury","Manon","Marceline","Margot","Marguerite","Marianne","Marie","Myriam","Marie","Marine","Marion","Marl\xE8ne","Marthe","Martine","Mathilde","Maud","Maureen","Mauricette","Maxime","M\xE9lanie","Melissa","M\xE9lissandre","M\xE9lisande","M\xE9lodie","Michel","Micheline","Mireille","Miriam","Mo\xEFse","Monique","Morgane","Muriel","Myl\xE8ne","Nad\xE8ge","Nadine","Nathalie","Nicole","Nicolette","Nine","No\xEBl","No\xE9mie","Oc\xE9ane","Odette","Odile","Olive","Olivia","Olympe","Ombline","Ombeline","Oph\xE9lie","Oriande","Oriane","Ozanne","Pascale","Pascaline","Paule","Paulette","Pauline","Priscille","Prisca","Prisque","P\xE9cine","P\xE9lagie","P\xE9n\xE9lope","Perrine","P\xE9tronille","Philippine","Philom\xE8ne","Philoth\xE9e","Primerose","Prudence","Pulch\xE9rie","Quentine","Qui\xE9ta","Quintia","Quintilla","Rachel","Rapha\xEBlle","Raymonde","Rebecca","R\xE9gine","R\xE9jeanne","Ren\xE9","Rita","Rita","Rolande","Romane","Rosalie","Rose","Roseline","Sabine","Salom\xE9","Sandra","Sandrine","Sarah","S\xE9gol\xE8ne","S\xE9verine","Sibylle","Simone","Sixt","Solange","Soline","Sol\xE8ne","Sophie","St\xE9phanie","Suzanne","Sylvain","Sylvie","Tatiana","Tha\xEFs","Th\xE9odora","Th\xE9r\xE8se","Tiphaine","Ursule","Valentine","Val\xE9rie","V\xE9ronique","Victoire","Victorine","Vinciane","Violette","Virginie","Viviane","Xavi\xE8re","Yolande","Ysaline","Yvette","Yvonne","Z\xE9lie","Zita","Zo\xE9"]}},lastNames:{en:["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White","Harris","Martin","Thompson","Garcia","Martinez","Robinson","Clark","Rodriguez","Lewis","Lee","Walker","Hall","Allen","Young","Hernandez","King","Wright","Lopez","Hill","Scott","Green","Adams","Baker","Gonzalez","Nelson","Carter","Mitchell","Perez","Roberts","Turner","Phillips","Campbell","Parker","Evans","Edwards","Collins","Stewart","Sanchez","Morris","Rogers","Reed","Cook","Morgan","Bell","Murphy","Bailey","Rivera","Cooper","Richardson","Cox","Howard","Ward","Torres","Peterson","Gray","Ramirez","James","Watson","Brooks","Kelly","Sanders","Price","Bennett","Wood","Barnes","Ross","Henderson","Coleman","Jenkins","Perry","Powell","Long","Patterson","Hughes","Flores","Washington","Butler","Simmons","Foster","Gonzales","Bryant","Alexander","Russell","Griffin","Diaz","Hayes","Myers","Ford","Hamilton","Graham","Sullivan","Wallace","Woods","Cole","West","Jordan","Owens","Reynolds","Fisher","Ellis","Harrison","Gibson","McDonald","Cruz","Marshall","Ortiz","Gomez","Murray","Freeman","Wells","Webb","Simpson","Stevens","Tucker","Porter","Hunter","Hicks","Crawford","Henry","Boyd","Mason","Morales","Kennedy","Warren","Dixon","Ramos","Reyes","Burns","Gordon","Shaw","Holmes","Rice","Robertson","Hunt","Black","Daniels","Palmer","Mills","Nichols","Grant","Knight","Ferguson","Rose","Stone","Hawkins","Dunn","Perkins","Hudson","Spencer","Gardner","Stephens","Payne","Pierce","Berry","Matthews","Arnold","Wagner","Willis","Ray","Watkins","Olson","Carroll","Duncan","Snyder","Hart","Cunningham","Bradley","Lane","Andrews","Ruiz","Harper","Fox","Riley","Armstrong","Carpenter","Weaver","Greene","Lawrence","Elliott","Chavez","Sims","Austin","Peters","Kelley","Franklin","Lawson","Fields","Gutierrez","Ryan","Schmidt","Carr","Vasquez","Castillo","Wheeler","Chapman","Oliver","Montgomery","Richards","Williamson","Johnston","Banks","Meyer","Bishop","McCoy","Howell","Alvarez","Morrison","Hansen","Fernandez","Garza","Harvey","Little","Burton","Stanley","Nguyen","George","Jacobs","Reid","Kim","Fuller","Lynch","Dean","Gilbert","Garrett","Romero","Welch","Larson","Frazier","Burke","Hanson","Day","Mendoza","Moreno","Bowman","Medina","Fowler","Brewer","Hoffman","Carlson","Silva","Pearson","Holland","Douglas","Fleming","Jensen","Vargas","Byrd","Davidson","Hopkins","May","Terry","Herrera","Wade","Soto","Walters","Curtis","Neal","Caldwell","Lowe","Jennings","Barnett","Graves","Jimenez","Horton","Shelton","Barrett","Obrien","Castro","Sutton","Gregory","McKinney","Lucas","Miles","Craig","Rodriquez","Chambers","Holt","Lambert","Fletcher","Watts","Bates","Hale","Rhodes","Pena","Beck","Newman","Haynes","McDaniel","Mendez","Bush","Vaughn","Parks","Dawson","Santiago","Norris","Hardy","Love","Steele","Curry","Powers","Schultz","Barker","Guzman","Page","Munoz","Ball","Keller","Chandler","Weber","Leonard","Walsh","Lyons","Ramsey","Wolfe","Schneider","Mullins","Benson","Sharp","Bowen","Daniel","Barber","Cummings","Hines","Baldwin","Griffith","Valdez","Hubbard","Salazar","Reeves","Warner","Stevenson","Burgess","Santos","Tate","Cross","Garner","Mann","Mack","Moss","Thornton","Dennis","McGee","Farmer","Delgado","Aguilar","Vega","Glover","Manning","Cohen","Harmon","Rodgers","Robbins","Newton","Todd","Blair","Higgins","Ingram","Reese","Cannon","Strickland","Townsend","Potter","Goodwin","Walton","Rowe","Hampton","Ortega","Patton","Swanson","Joseph","Francis","Goodman","Maldonado","Yates","Becker","Erickson","Hodges","Rios","Conner","Adkins","Webster","Norman","Malone","Hammond","Flowers","Cobb","Moody","Quinn","Blake","Maxwell","Pope","Floyd","Osborne","Paul","McCarthy","Guerrero","Lindsey","Estrada","Sandoval","Gibbs","Tyler","Gross","Fitzgerald","Stokes","Doyle","Sherman","Saunders","Wise","Colon","Gill","Alvarado","Greer","Padilla","Simon","Waters","Nunez","Ballard","Schwartz","McBride","Houston","Christensen","Klein","Pratt","Briggs","Parsons","McLaughlin","Zimmerman","French","Buchanan","Moran","Copeland","Roy","Pittman","Brady","McCormick","Holloway","Brock","Poole","Frank","Logan","Owen","Bass","Marsh","Drake","Wong","Jefferson","Park","Morton","Abbott","Sparks","Patrick","Norton","Huff","Clayton","Massey","Lloyd","Figueroa","Carson","Bowers","Roberson","Barton","Tran","Lamb","Harrington","Casey","Boone","Cortez","Clarke","Mathis","Singleton","Wilkins","Cain","Bryan","Underwood","Hogan","McKenzie","Collier","Luna","Phelps","McGuire","Allison","Bridges","Wilkerson","Nash","Summers","Atkins"],it:["Acciai","Aglietti","Agostini","Agresti","Ahmed","Aiazzi","Albanese","Alberti","Alessi","Alfani","Alinari","Alterini","Amato","Ammannati","Ancillotti","Andrei","Andreini","Andreoni","Angeli","Anichini","Antonelli","Antonini","Arena","Ariani","Arnetoli","Arrighi","Baccani","Baccetti","Bacci","Bacherini","Badii","Baggiani","Baglioni","Bagni","Bagnoli","Baldassini","Baldi","Baldini","Ballerini","Balli","Ballini","Balloni","Bambi","Banchi","Bandinelli","Bandini","Bani","Barbetti","Barbieri","Barchielli","Bardazzi","Bardelli","Bardi","Barducci","Bargellini","Bargiacchi","Barni","Baroncelli","Baroncini","Barone","Baroni","Baronti","Bartalesi","Bartoletti","Bartoli","Bartolini","Bartoloni","Bartolozzi","Basagni","Basile","Bassi","Batacchi","Battaglia","Battaglini","Bausi","Becagli","Becattini","Becchi","Becucci","Bellandi","Bellesi","Belli","Bellini","Bellucci","Bencini","Benedetti","Benelli","Beni","Benini","Bensi","Benucci","Benvenuti","Berlincioni","Bernacchioni","Bernardi","Bernardini","Berni","Bernini","Bertelli","Berti","Bertini","Bessi","Betti","Bettini","Biagi","Biagini","Biagioni","Biagiotti","Biancalani","Bianchi","Bianchini","Bianco","Biffoli","Bigazzi","Bigi","Biliotti","Billi","Binazzi","Bindi","Bini","Biondi","Bizzarri","Bocci","Bogani","Bolognesi","Bonaiuti","Bonanni","Bonciani","Boncinelli","Bondi","Bonechi","Bongini","Boni","Bonini","Borchi","Boretti","Borghi","Borghini","Borgioli","Borri","Borselli","Boschi","Bottai","Bracci","Braccini","Brandi","Braschi","Bravi","Brazzini","Breschi","Brilli","Brizzi","Brogelli","Brogi","Brogioni","Brunelli","Brunetti","Bruni","Bruno","Brunori","Bruschi","Bucci","Bucciarelli","Buccioni","Bucelli","Bulli","Burberi","Burchi","Burgassi","Burroni","Bussotti","Buti","Caciolli","Caiani","Calabrese","Calamai","Calamandrei","Caldini","Calo'","Calonaci","Calosi","Calvelli","Cambi","Camiciottoli","Cammelli","Cammilli","Campolmi","Cantini","Capanni","Capecchi","Caponi","Cappelletti","Cappelli","Cappellini","Cappugi","Capretti","Caputo","Carbone","Carboni","Cardini","Carlesi","Carletti","Carli","Caroti","Carotti","Carrai","Carraresi","Carta","Caruso","Casalini","Casati","Caselli","Casini","Castagnoli","Castellani","Castelli","Castellucci","Catalano","Catarzi","Catelani","Cavaciocchi","Cavallaro","Cavallini","Cavicchi","Cavini","Ceccarelli","Ceccatelli","Ceccherelli","Ceccherini","Cecchi","Cecchini","Cecconi","Cei","Cellai","Celli","Cellini","Cencetti","Ceni","Cenni","Cerbai","Cesari","Ceseri","Checcacci","Checchi","Checcucci","Cheli","Chellini","Chen","Cheng","Cherici","Cherubini","Chiaramonti","Chiarantini","Chiarelli","Chiari","Chiarini","Chiarugi","Chiavacci","Chiesi","Chimenti","Chini","Chirici","Chiti","Ciabatti","Ciampi","Cianchi","Cianfanelli","Cianferoni","Ciani","Ciapetti","Ciappi","Ciardi","Ciatti","Cicali","Ciccone","Cinelli","Cini","Ciobanu","Ciolli","Cioni","Cipriani","Cirillo","Cirri","Ciucchi","Ciuffi","Ciulli","Ciullini","Clemente","Cocchi","Cognome","Coli","Collini","Colombo","Colzi","Comparini","Conforti","Consigli","Conte","Conti","Contini","Coppini","Coppola","Corsi","Corsini","Corti","Cortini","Cosi","Costa","Costantini","Costantino","Cozzi","Cresci","Crescioli","Cresti","Crini","Curradi","D'Agostino","D'Alessandro","D'Amico","D'Angelo","Daddi","Dainelli","Dallai","Danti","Davitti","De Angelis","De Luca","De Marco","De Rosa","De Santis","De Simone","De Vita","Degl'Innocenti","Degli Innocenti","Dei","Del Lungo","Del Re","Di Marco","Di Stefano","Dini","Diop","Dobre","Dolfi","Donati","Dondoli","Dong","Donnini","Ducci","Dumitru","Ermini","Esposito","Evangelisti","Fabbri","Fabbrini","Fabbrizzi","Fabbroni","Fabbrucci","Fabiani","Facchini","Faggi","Fagioli","Failli","Faini","Falciani","Falcini","Falcone","Fallani","Falorni","Falsini","Falugiani","Fancelli","Fanelli","Fanetti","Fanfani","Fani","Fantappie'","Fantechi","Fanti","Fantini","Fantoni","Farina","Fattori","Favilli","Fedi","Fei","Ferrante","Ferrara","Ferrari","Ferraro","Ferretti","Ferri","Ferrini","Ferroni","Fiaschi","Fibbi","Fiesoli","Filippi","Filippini","Fini","Fioravanti","Fiore","Fiorentini","Fiorini","Fissi","Focardi","Foggi","Fontana","Fontanelli","Fontani","Forconi","Formigli","Forte","Forti","Fortini","Fossati","Fossi","Francalanci","Franceschi","Franceschini","Franchi","Franchini","Franci","Francini","Francioni","Franco","Frassineti","Frati","Fratini","Frilli","Frizzi","Frosali","Frosini","Frullini","Fusco","Fusi","Gabbrielli","Gabellini","Gagliardi","Galanti","Galardi","Galeotti","Galletti","Galli","Gallo","Gallori","Gambacciani","Gargani","Garofalo","Garuglieri","Gashi","Gasperini","Gatti","Gelli","Gensini","Gentile","Gentili","Geri","Gerini","Gheri","Ghini","Giachetti","Giachi","Giacomelli","Gianassi","Giani","Giannelli","Giannetti","Gianni","Giannini","Giannoni","Giannotti","Giannozzi","Gigli","Giordano","Giorgetti","Giorgi","Giovacchini","Giovannelli","Giovannetti","Giovannini","Giovannoni","Giuliani","Giunti","Giuntini","Giusti","Gonnelli","Goretti","Gori","Gradi","Gramigni","Grassi","Grasso","Graziani","Grazzini","Greco","Grifoni","Grillo","Grimaldi","Grossi","Gualtieri","Guarducci","Guarino","Guarnieri","Guasti","Guerra","Guerri","Guerrini","Guidi","Guidotti","He","Hoxha","Hu","Huang","Iandelli","Ignesti","Innocenti","Jin","La Rosa","Lai","Landi","Landini","Lanini","Lapi","Lapini","Lari","Lascialfari","Lastrucci","Latini","Lazzeri","Lazzerini","Lelli","Lenzi","Leonardi","Leoncini","Leone","Leoni","Lepri","Li","Liao","Lin","Linari","Lippi","Lisi","Livi","Lombardi","Lombardini","Lombardo","Longo","Lopez","Lorenzi","Lorenzini","Lorini","Lotti","Lu","Lucchesi","Lucherini","Lunghi","Lupi","Madiai","Maestrini","Maffei","Maggi","Maggini","Magherini","Magini","Magnani","Magnelli","Magni","Magnolfi","Magrini","Malavolti","Malevolti","Manca","Mancini","Manetti","Manfredi","Mangani","Mannelli","Manni","Mannini","Mannucci","Manuelli","Manzini","Marcelli","Marchese","Marchetti","Marchi","Marchiani","Marchionni","Marconi","Marcucci","Margheri","Mari","Mariani","Marilli","Marinai","Marinari","Marinelli","Marini","Marino","Mariotti","Marsili","Martelli","Martinelli","Martini","Martino","Marzi","Masi","Masini","Masoni","Massai","Materassi","Mattei","Matteini","Matteucci","Matteuzzi","Mattioli","Mattolini","Matucci","Mauro","Mazzanti","Mazzei","Mazzetti","Mazzi","Mazzini","Mazzocchi","Mazzoli","Mazzoni","Mazzuoli","Meacci","Mecocci","Meini","Melani","Mele","Meli","Mengoni","Menichetti","Meoni","Merlini","Messeri","Messina","Meucci","Miccinesi","Miceli","Micheli","Michelini","Michelozzi","Migliori","Migliorini","Milani","Miniati","Misuri","Monaco","Montagnani","Montagni","Montanari","Montelatici","Monti","Montigiani","Montini","Morandi","Morandini","Morelli","Moretti","Morganti","Mori","Morini","Moroni","Morozzi","Mugnai","Mugnaini","Mustafa","Naldi","Naldini","Nannelli","Nanni","Nannini","Nannucci","Nardi","Nardini","Nardoni","Natali","Ndiaye","Nencetti","Nencini","Nencioni","Neri","Nesi","Nesti","Niccolai","Niccoli","Niccolini","Nigi","Nistri","Nocentini","Noferini","Novelli","Nucci","Nuti","Nutini","Oliva","Olivieri","Olmi","Orlandi","Orlandini","Orlando","Orsini","Ortolani","Ottanelli","Pacciani","Pace","Paci","Pacini","Pagani","Pagano","Paggetti","Pagliai","Pagni","Pagnini","Paladini","Palagi","Palchetti","Palloni","Palmieri","Palumbo","Pampaloni","Pancani","Pandolfi","Pandolfini","Panerai","Panichi","Paoletti","Paoli","Paolini","Papi","Papini","Papucci","Parenti","Parigi","Parisi","Parri","Parrini","Pasquini","Passeri","Pecchioli","Pecorini","Pellegrini","Pepi","Perini","Perrone","Peruzzi","Pesci","Pestelli","Petri","Petrini","Petrucci","Pettini","Pezzati","Pezzatini","Piani","Piazza","Piazzesi","Piazzini","Piccardi","Picchi","Piccini","Piccioli","Pieraccini","Pieraccioni","Pieralli","Pierattini","Pieri","Pierini","Pieroni","Pietrini","Pini","Pinna","Pinto","Pinzani","Pinzauti","Piras","Pisani","Pistolesi","Poggesi","Poggi","Poggiali","Poggiolini","Poli","Pollastri","Porciani","Pozzi","Pratellesi","Pratesi","Prosperi","Pruneti","Pucci","Puccini","Puccioni","Pugi","Pugliese","Puliti","Querci","Quercioli","Raddi","Radu","Raffaelli","Ragazzini","Ranfagni","Ranieri","Rastrelli","Raugei","Raveggi","Renai","Renzi","Rettori","Ricci","Ricciardi","Ridi","Ridolfi","Rigacci","Righi","Righini","Rinaldi","Risaliti","Ristori","Rizzo","Rocchi","Rocchini","Rogai","Romagnoli","Romanelli","Romani","Romano","Romei","Romeo","Romiti","Romoli","Romolini","Rontini","Rosati","Roselli","Rosi","Rossetti","Rossi","Rossini","Rovai","Ruggeri","Ruggiero","Russo","Sabatini","Saccardi","Sacchetti","Sacchi","Sacco","Salerno","Salimbeni","Salucci","Salvadori","Salvestrini","Salvi","Salvini","Sanesi","Sani","Sanna","Santi","Santini","Santoni","Santoro","Santucci","Sardi","Sarri","Sarti","Sassi","Sbolci","Scali","Scarpelli","Scarselli","Scopetani","Secci","Selvi","Senatori","Senesi","Serafini","Sereni","Serra","Sestini","Sguanci","Sieni","Signorini","Silvestri","Simoncini","Simonetti","Simoni","Singh","Sodi","Soldi","Somigli","Sorbi","Sorelli","Sorrentino","Sottili","Spina","Spinelli","Staccioli","Staderini","Stefanelli","Stefani","Stefanini","Stella","Susini","Tacchi","Tacconi","Taddei","Tagliaferri","Tamburini","Tanganelli","Tani","Tanini","Tapinassi","Tarchi","Tarchiani","Targioni","Tassi","Tassini","Tempesti","Terzani","Tesi","Testa","Testi","Tilli","Tinti","Tirinnanzi","Toccafondi","Tofanari","Tofani","Tognaccini","Tonelli","Tonini","Torelli","Torrini","Tosi","Toti","Tozzi","Trambusti","Trapani","Tucci","Turchi","Ugolini","Ulivi","Valente","Valenti","Valentini","Vangelisti","Vanni","Vannini","Vannoni","Vannozzi","Vannucchi","Vannucci","Ventura","Venturi","Venturini","Vestri","Vettori","Vichi","Viciani","Vieri","Vigiani","Vignoli","Vignolini","Vignozzi","Villani","Vinci","Visani","Vitale","Vitali","Viti","Viviani","Vivoli","Volpe","Volpi","Wang","Wu","Xu","Yang","Ye","Zagli","Zani","Zanieri","Zanobini","Zecchi","Zetti","Zhang","Zheng","Zhou","Zhu","Zingoni","Zini","Zoppi"],nl:["Albers","Alblas","Appelman","Baars","Baas","Bakker","Blank","Bleeker","Blok","Blom","Boer","Boers","Boldewijn","Boon","Boot","Bos","Bosch","Bosma","Bosman","Bouma","Bouman","Bouwman","Brands","Brouwer","Burger","Buijs","Buitenhuis","Ceder","Cohen","Dekker","Dekkers","Dijkman","Dijkstra","Driessen","Drost","Engel","Evers","Faber","Franke","Gerritsen","Goedhart","Goossens","Groen","Groenenberg","Groot","Haan","Hart","Heemskerk","Hendriks","Hermans","Hoekstra","Hofman","Hopman","Huisman","Jacobs","Jansen","Janssen","Jonker","Jaspers","Keijzer","Klaassen","Klein","Koek","Koenders","Kok","Kool","Koopman","Koopmans","Koning","Koster","Kramer","Kroon","Kuijpers","Kuiper","Kuipers","Kurt","Koster","Kwakman","Los","Lubbers","Maas","Markus","Martens","Meijer","Mol","Molenaar","Mulder","Nieuwenhuis","Peeters","Peters","Pengel","Pieters","Pool","Post","Postma","Prins","Pronk","Reijnders","Rietveld","Roest","Roos","Sanders","Schaap","Scheffer","Schenk","Schilder","Schipper","Schmidt","Scholten","Schouten","Schut","Schutte","Schuurman","Simons","Smeets","Smit","Smits","Snel","Swinkels","Tas","Terpstra","Timmermans","Tol","Tromp","Troost","Valk","Veenstra","Veldkamp","Verbeek","Verheul","Verhoeven","Vermeer","Vermeulen","Verweij","Vink","Visser","Voorn","Vos","Wagenaar","Wiersema","Willems","Willemsen","Witteveen","Wolff","Wolters","Zijlstra","Zwart","de Beer","de Boer","de Bruijn","de Bruin","de Graaf","de Groot","de Haan","de Haas","de Jager","de Jong","de Jonge","de Koning","de Lange","de Leeuw","de Ridder","de Rooij","de Ruiter","de Vos","de Vries","de Waal","de Wit","de Zwart","van Beek","van Boven","van Dam","van Dijk","van Dongen","van Doorn","van Egmond","van Eijk","van Es","van Gelder","van Gelderen","van Houten","van Hulst","van Kempen","van Kesteren","van Leeuwen","van Loon","van Mill","van Noord","van Ommen","van Ommeren","van Oosten","van Oostveen","van Rijn","van Schaik","van Veen","van Vliet","van Wijk","van Wijngaarden","van den Poel","van de Pol","van den Ploeg","van de Ven","van den Berg","van den Bosch","van den Brink","van den Broek","van den Heuvel","van der Heijden","van der Horst","van der Hulst","van der Kroon","van der Laan","van der Linden","van der Meer","van der Meij","van der Meulen","van der Molen","van der Sluis","van der Spek","van der Veen","van der Velde","van der Velden","van der Vliet","van der Wal"],uk:["Smith","Jones","Williams","Taylor","Brown","Davies","Evans","Wilson","Thomas","Johnson","Roberts","Robinson","Thompson","Wright","Walker","White","Edwards","Hughes","Green","Hall","Lewis","Harris","Clarke","Patel","Jackson","Wood","Turner","Martin","Cooper","Hill","Ward","Morris","Moore","Clark","Lee","King","Baker","Harrison","Morgan","Allen","James","Scott","Phillips","Watson","Davis","Parker","Price","Bennett","Young","Griffiths","Mitchell","Kelly","Cook","Carter","Richardson","Bailey","Collins","Bell","Shaw","Murphy","Miller","Cox","Richards","Khan","Marshall","Anderson","Simpson","Ellis","Adams","Singh","Begum","Wilkinson","Foster","Chapman","Powell","Webb","Rogers","Gray","Mason","Ali","Hunt","Hussain","Campbell","Matthews","Owen","Palmer","Holmes","Mills","Barnes","Knight","Lloyd","Butler","Russell","Barker","Fisher","Stevens","Jenkins","Murray","Dixon","Harvey","Graham","Pearson","Ahmed","Fletcher","Walsh","Kaur","Gibson","Howard","Andrews","Stewart","Elliott","Reynolds","Saunders","Payne","Fox","Ford","Pearce","Day","Brooks","West","Lawrence","Cole","Atkinson","Bradley","Spencer","Gill","Dawson","Ball","Burton","O'brien","Watts","Rose","Booth","Perry","Ryan","Grant","Wells","Armstrong","Francis","Rees","Hayes","Hart","Hudson","Newman","Barrett","Webster","Hunter","Gregory","Carr","Lowe","Page","Marsh","Riley","Dunn","Woods","Parsons","Berry","Stone","Reid","Holland","Hawkins","Harding","Porter","Robertson","Newton","Oliver","Reed","Kennedy","Williamson","Bird","Gardner","Shah","Dean","Lane","Cooke","Bates","Henderson","Parry","Burgess","Bishop","Walton","Burns","Nicholson","Shepherd","Ross","Cross","Long","Freeman","Warren","Nicholls","Hamilton","Byrne","Sutton","Mcdonald","Yates","Hodgson","Robson","Curtis","Hopkins","O'connor","Harper","Coleman","Watkins","Moss","Mccarthy","Chambers","O'neill","Griffin","Sharp","Hardy","Wheeler","Potter","Osborne","Johnston","Gordon","Doyle","Wallace","George","Jordan","Hutchinson","Rowe","Burke","May","Pritchard","Gilbert","Willis","Higgins","Read","Miles","Stevenson","Stephenson","Hammond","Arnold","Buckley","Walters","Hewitt","Barber","Nelson","Slater","Austin","Sullivan","Whitehead","Mann","Frost","Lambert","Stephens","Blake","Akhtar","Lynch","Goodwin","Barton","Woodward","Thomson","Cunningham","Quinn","Barnett","Baxter","Bibi","Clayton","Nash","Greenwood","Jennings","Holt","Kemp","Poole","Gallagher","Bond","Stokes","Tucker","Davidson","Fowler","Heath","Norman","Middleton","Lawson","Banks","French","Stanley","Jarvis","Gibbs","Ferguson","Hayward","Carroll","Douglas","Dickinson","Todd","Barlow","Peters","Lucas","Knowles","Hartley","Miah","Simmons","Morton","Alexander","Field","Morrison","Norris","Townsend","Preston","Hancock","Thornton","Baldwin","Burrows","Briggs","Parkinson","Reeves","Macdonald","Lamb","Black","Abbott","Sanders","Thorpe","Holden","Tomlinson","Perkins","Ashton","Rhodes","Fuller","Howe","Bryant","Vaughan","Dale","Davey","Weston","Bartlett","Whittaker","Davison","Kent","Skinner","Birch","Morley","Daniels","Glover","Howell","Cartwright","Pugh","Humphreys","Goddard","Brennan","Wall","Kirby","Bowen","Savage","Bull","Wong","Dobson","Smart","Wilkins","Kirk","Fraser","Duffy","Hicks","Patterson","Bradshaw","Little","Archer","Warner","Waters","O'sullivan","Farrell","Brookes","Atkins","Kay","Dodd","Bentley","Flynn","John","Schofield","Short","Haynes","Wade","Butcher","Henry","Sanderson","Crawford","Sheppard","Bolton","Coates","Giles","Gould","Houghton","Gibbons","Pratt","Manning","Law","Hooper","Noble","Dyer","Rahman","Clements","Moran","Sykes","Chan","Doherty","Connolly","Joyce","Franklin","Hobbs","Coles","Herbert","Steele","Kerr","Leach","Winter","Owens","Duncan","Naylor","Fleming","Horton","Finch","Fitzgerald","Randall","Carpenter","Marsden","Browne","Garner","Pickering","Hale","Dennis","Vincent","Chadwick","Chandler","Sharpe","Nolan","Lyons","Hurst","Collier","Peacock","Howarth","Faulkner","Rice","Pollard","Welch","Norton","Gough","Sinclair","Blackburn","Bryan","Conway","Power","Cameron","Daly","Allan","Hanson","Gardiner","Boyle","Myers","Turnbull","Wallis","Mahmood","Sims","Swift","Iqbal","Pope","Brady","Chamberlain","Rowley","Tyler","Farmer","Metcalfe","Hilton","Godfrey","Holloway","Parkin","Bray","Talbot","Donnelly","Nixon","Charlton","Benson","Whitehouse","Barry","Hope","Lord","North","Storey","Connor","Potts","Bevan","Hargreaves","Mclean","Mistry","Bruce","Howells","Hyde","Parkes","Wyatt","Fry","Lees","O'donnell","Craig","Forster","Mckenzie","Humphries","Mellor","Carey","Ingram","Summers","Leonard"],de:["M\xFCller","Schmidt","Schneider","Fischer","Weber","Meyer","Wagner","Becker","Schulz","Hoffmann","Sch\xE4fer","Koch","Bauer","Richter","Klein","Wolf","Schr\xF6der","Neumann","Schwarz","Zimmermann","Braun","Kr\xFCger","Hofmann","Hartmann","Lange","Schmitt","Werner","Schmitz","Krause","Meier","Lehmann","Schmid","Schulze","Maier","K\xF6hler","Herrmann","K\xF6nig","Walter","Mayer","Huber","Kaiser","Fuchs","Peters","Lang","Scholz","M\xF6ller","Wei\xDF","Jung","Hahn","Schubert","Vogel","Friedrich","Keller","G\xFCnther","Frank","Berger","Winkler","Roth","Beck","Lorenz","Baumann","Franke","Albrecht","Schuster","Simon","Ludwig","B\xF6hm","Winter","Kraus","Martin","Schumacher","Kr\xE4mer","Vogt","Stein","J\xE4ger","Otto","Sommer","Gro\xDF","Seidel","Heinrich","Brandt","Haas","Schreiber","Graf","Schulte","Dietrich","Ziegler","Kuhn","K\xFChn","Pohl","Engel","Horn","Busch","Bergmann","Thomas","Voigt","Sauer","Arnold","Wolff","Pfeiffer"],jp:["Sato","Suzuki","Takahashi","Tanaka","Watanabe","Ito","Yamamoto","Nakamura","Kobayashi","Kato","Yoshida","Yamada","Sasaki","Yamaguchi","Saito","Matsumoto","Inoue","Kimura","Hayashi","Shimizu","Yamazaki","Mori","Abe","Ikeda","Hashimoto","Yamashita","Ishikawa","Nakajima","Maeda","Fujita","Ogawa","Goto","Okada","Hasegawa","Murakami","Kondo","Ishii","Saito","Sakamoto","Endo","Aoki","Fujii","Nishimura","Fukuda","Ota","Miura","Fujiwara","Okamoto","Matsuda","Nakagawa","Nakano","Harada","Ono","Tamura","Takeuchi","Kaneko","Wada","Nakayama","Ishida","Ueda","Morita","Hara","Shibata","Sakai","Kudo","Yokoyama","Miyazaki","Miyamoto","Uchida","Takagi","Ando","Taniguchi","Ohno","Maruyama","Imai","Takada","Fujimoto","Takeda","Murata","Ueno","Sugiyama","Masuda","Sugawara","Hirano","Kojima","Otsuka","Chiba","Kubo","Matsui","Iwasaki","Sakurai","Kinoshita","Noguchi","Matsuo","Nomura","Kikuchi","Sano","Onishi","Sugimoto","Arai"],es:["Garcia","Fernandez","Lopez","Martinez","Gonzalez","Rodriguez","Sanchez","Perez","Martin","Gomez","Ruiz","Diaz","Hernandez","Alvarez","Jimenez","Moreno","Munoz","Alonso","Romero","Navarro","Gutierrez","Torres","Dominguez","Gil","Vazquez","Blanco","Serrano","Ramos","Castro","Suarez","Sanz","Rubio","Ortega","Molina","Delgado","Ortiz","Morales","Ramirez","Marin","Iglesias","Santos","Castillo","Garrido","Calvo","Pena","Cruz","Cano","Nunez","Prieto","Diez","Lozano","Vidal","Pascual","Ferrer","Medina","Vega","Leon","Herrero","Vicente","Mendez","Guerrero","Fuentes","Campos","Nieto","Cortes","Caballero","Ibanez","Lorenzo","Pastor","Gimenez","Saez","Soler","Marquez","Carrasco","Herrera","Montero","Arias","Crespo","Flores","Andres","Aguilar","Hidalgo","Cabrera","Mora","Duran","Velasco","Rey","Pardo","Roman","Vila","Bravo","Merino","Moya","Soto","Izquierdo","Reyes","Redondo","Marcos","Carmona","Menendez"],fr:["Martin","Bernard","Thomas","Petit","Robert","Richard","Durand","Dubois","Moreau","Laurent","Simon","Michel","Lef\xE8vre","Leroy","Roux","David","Bertrand","Morel","Fournier","Girard","Bonnet","Dupont","Lambert","Fontaine","Rousseau","Vincent","M\xFCller","Lef\xE8vre","Faure","Andr\xE9","Mercier","Blanc","Gu\xE9rin","Boyer","Garnier","Chevalier","Fran\xE7ois","Legrand","Gauthier","Garcia","Perrin","Robin","Cl\xE9ment","Morin","Nicolas","Henry","Roussel","Matthieu","Gautier","Masson","Marchand","Duval","Denis","Dumont","Marie","Lemaire","No\xEBl","Meyer","Dufour","Meunier","Brun","Blanchard","Giraud","Joly","Rivi\xE8re","Lucas","Brunet","Gaillard","Barbier","Arnaud","Mart\xEDnez","G\xE9rard","Roche","Renard","Schmitt","Roy","Leroux","Colin","Vidal","Caron","Picard","Roger","Fabre","Aubert","Lemoine","Renaud","Dumas","Lacroix","Olivier","Philippe","Bourgeois","Pierre","Beno\xEEt","Rey","Leclerc","Payet","Rolland","Leclercq","Guillaume","Lecomte","L\xF3pez","Jean","Dupuy","Guillot","Hubert","Berger","Carpentier","S\xE1nchez","Dupuis","Moulin","Louis","Deschamps","Huet","Vasseur","Perez","Boucher","Fleury","Royer","Klein","Jacquet","Adam","Paris","Poirier","Marty","Aubry","Guyot","Carr\xE9","Charles","Renault","Charpentier","M\xE9nard","Maillard","Baron","Bertin","Bailly","Herv\xE9","Schneider","Fern\xE1ndez","Le GallGall","Collet","L\xE9ger","Bouvier","Julien","Pr\xE9vost","Millet","Perrot","Daniel","Le RouxRoux","Cousin","Germain","Breton","Besson","Langlois","R\xE9mi","Le GoffGoff","Pelletier","L\xE9v\xEAque","Perrier","Leblanc","Barr\xE9","Lebrun","Marchal","Weber","Mallet","Hamon","Boulanger","Jacob","Monnier","Michaud","Rodr\xEDguez","Guichard","Gillet","\xC9tienne","Grondin","Poulain","Tessier","Chevallier","Collin","Chauvin","Da SilvaSilva","Bouchet","Gay","Lema\xEEtre","B\xE9nard","Mar\xE9chal","Humbert","Reynaud","Antoine","Hoarau","Perret","Barth\xE9lemy","Cordier","Pichon","Lejeune","Gilbert","Lamy","Delaunay","Pasquier","Carlier","LaporteLaporte"]},postcodeAreas:[{code:"AB"},{code:"AL"},{code:"B"},{code:"BA"},{code:"BB"},{code:"BD"},{code:"BH"},{code:"BL"},{code:"BN"},{code:"BR"},{code:"BS"},{code:"BT"},{code:"CA"},{code:"CB"},{code:"CF"},{code:"CH"},{code:"CM"},{code:"CO"},{code:"CR"},{code:"CT"},{code:"CV"},{code:"CW"},{code:"DA"},{code:"DD"},{code:"DE"},{code:"DG"},{code:"DH"},{code:"DL"},{code:"DN"},{code:"DT"},{code:"DY"},{code:"E"},{code:"EC"},{code:"EH"},{code:"EN"},{code:"EX"},{code:"FK"},{code:"FY"},{code:"G"},{code:"GL"},{code:"GU"},{code:"GY"},{code:"HA"},{code:"HD"},{code:"HG"},{code:"HP"},{code:"HR"},{code:"HS"},{code:"HU"},{code:"HX"},{code:"IG"},{code:"IM"},{code:"IP"},{code:"IV"},{code:"JE"},{code:"KA"},{code:"KT"},{code:"KW"},{code:"KY"},{code:"L"},{code:"LA"},{code:"LD"},{code:"LE"},{code:"LL"},{code:"LN"},{code:"LS"},{code:"LU"},{code:"M"},{code:"ME"},{code:"MK"},{code:"ML"},{code:"N"},{code:"NE"},{code:"NG"},{code:"NN"},{code:"NP"},{code:"NR"},{code:"NW"},{code:"OL"},{code:"OX"},{code:"PA"},{code:"PE"},{code:"PH"},{code:"PL"},{code:"PO"},{code:"PR"},{code:"RG"},{code:"RH"},{code:"RM"},{code:"S"},{code:"SA"},{code:"SE"},{code:"SG"},{code:"SK"},{code:"SL"},{code:"SM"},{code:"SN"},{code:"SO"},{code:"SP"},{code:"SR"},{code:"SS"},{code:"ST"},{code:"SW"},{code:"SY"},{code:"TA"},{code:"TD"},{code:"TF"},{code:"TN"},{code:"TQ"},{code:"TR"},{code:"TS"},{code:"TW"},{code:"UB"},{code:"W"},{code:"WA"},{code:"WC"},{code:"WD"},{code:"WF"},{code:"WN"},{code:"WR"},{code:"WS"},{code:"WV"},{code:"YO"},{code:"ZE"}],countries:[{name:"Afghanistan",abbreviation:"AF"},{name:"\xC5land Islands",abbreviation:"AX"},{name:"Albania",abbreviation:"AL"},{name:"Algeria",abbreviation:"DZ"},{name:"American Samoa",abbreviation:"AS"},{name:"Andorra",abbreviation:"AD"},{name:"Angola",abbreviation:"AO"},{name:"Anguilla",abbreviation:"AI"},{name:"Antarctica",abbreviation:"AQ"},{name:"Antigua & Barbuda",abbreviation:"AG"},{name:"Argentina",abbreviation:"AR"},{name:"Armenia",abbreviation:"AM"},{name:"Aruba",abbreviation:"AW"},{name:"Ascension Island",abbreviation:"AC"},{name:"Australia",abbreviation:"AU"},{name:"Austria",abbreviation:"AT"},{name:"Azerbaijan",abbreviation:"AZ"},{name:"Bahamas",abbreviation:"BS"},{name:"Bahrain",abbreviation:"BH"},{name:"Bangladesh",abbreviation:"BD"},{name:"Barbados",abbreviation:"BB"},{name:"Belarus",abbreviation:"BY"},{name:"Belgium",abbreviation:"BE"},{name:"Belize",abbreviation:"BZ"},{name:"Benin",abbreviation:"BJ"},{name:"Bermuda",abbreviation:"BM"},{name:"Bhutan",abbreviation:"BT"},{name:"Bolivia",abbreviation:"BO"},{name:"Bosnia & Herzegovina",abbreviation:"BA"},{name:"Botswana",abbreviation:"BW"},{name:"Brazil",abbreviation:"BR"},{name:"British Indian Ocean Territory",abbreviation:"IO"},{name:"British Virgin Islands",abbreviation:"VG"},{name:"Brunei",abbreviation:"BN"},{name:"Bulgaria",abbreviation:"BG"},{name:"Burkina Faso",abbreviation:"BF"},{name:"Burundi",abbreviation:"BI"},{name:"Cambodia",abbreviation:"KH"},{name:"Cameroon",abbreviation:"CM"},{name:"Canada",abbreviation:"CA"},{name:"Canary Islands",abbreviation:"IC"},{name:"Cape Verde",abbreviation:"CV"},{name:"Caribbean Netherlands",abbreviation:"BQ"},{name:"Cayman Islands",abbreviation:"KY"},{name:"Central African Republic",abbreviation:"CF"},{name:"Ceuta & Melilla",abbreviation:"EA"},{name:"Chad",abbreviation:"TD"},{name:"Chile",abbreviation:"CL"},{name:"China",abbreviation:"CN"},{name:"Christmas Island",abbreviation:"CX"},{name:"Cocos (Keeling) Islands",abbreviation:"CC"},{name:"Colombia",abbreviation:"CO"},{name:"Comoros",abbreviation:"KM"},{name:"Congo - Brazzaville",abbreviation:"CG"},{name:"Congo - Kinshasa",abbreviation:"CD"},{name:"Cook Islands",abbreviation:"CK"},{name:"Costa Rica",abbreviation:"CR"},{name:"C\xF4te d'Ivoire",abbreviation:"CI"},{name:"Croatia",abbreviation:"HR"},{name:"Cuba",abbreviation:"CU"},{name:"Cura\xE7ao",abbreviation:"CW"},{name:"Cyprus",abbreviation:"CY"},{name:"Czech Republic",abbreviation:"CZ"},{name:"Denmark",abbreviation:"DK"},{name:"Diego Garcia",abbreviation:"DG"},{name:"Djibouti",abbreviation:"DJ"},{name:"Dominica",abbreviation:"DM"},{name:"Dominican Republic",abbreviation:"DO"},{name:"Ecuador",abbreviation:"EC"},{name:"Egypt",abbreviation:"EG"},{name:"El Salvador",abbreviation:"SV"},{name:"Equatorial Guinea",abbreviation:"GQ"},{name:"Eritrea",abbreviation:"ER"},{name:"Estonia",abbreviation:"EE"},{name:"Ethiopia",abbreviation:"ET"},{name:"Falkland Islands",abbreviation:"FK"},{name:"Faroe Islands",abbreviation:"FO"},{name:"Fiji",abbreviation:"FJ"},{name:"Finland",abbreviation:"FI"},{name:"France",abbreviation:"FR"},{name:"French Guiana",abbreviation:"GF"},{name:"French Polynesia",abbreviation:"PF"},{name:"French Southern Territories",abbreviation:"TF"},{name:"Gabon",abbreviation:"GA"},{name:"Gambia",abbreviation:"GM"},{name:"Georgia",abbreviation:"GE"},{name:"Germany",abbreviation:"DE"},{name:"Ghana",abbreviation:"GH"},{name:"Gibraltar",abbreviation:"GI"},{name:"Greece",abbreviation:"GR"},{name:"Greenland",abbreviation:"GL"},{name:"Grenada",abbreviation:"GD"},{name:"Guadeloupe",abbreviation:"GP"},{name:"Guam",abbreviation:"GU"},{name:"Guatemala",abbreviation:"GT"},{name:"Guernsey",abbreviation:"GG"},{name:"Guinea",abbreviation:"GN"},{name:"Guinea-Bissau",abbreviation:"GW"},{name:"Guyana",abbreviation:"GY"},{name:"Haiti",abbreviation:"HT"},{name:"Honduras",abbreviation:"HN"},{name:"Hong Kong SAR China",abbreviation:"HK"},{name:"Hungary",abbreviation:"HU"},{name:"Iceland",abbreviation:"IS"},{name:"India",abbreviation:"IN"},{name:"Indonesia",abbreviation:"ID"},{name:"Iran",abbreviation:"IR"},{name:"Iraq",abbreviation:"IQ"},{name:"Ireland",abbreviation:"IE"},{name:"Isle of Man",abbreviation:"IM"},{name:"Israel",abbreviation:"IL"},{name:"Italy",abbreviation:"IT"},{name:"Jamaica",abbreviation:"JM"},{name:"Japan",abbreviation:"JP"},{name:"Jersey",abbreviation:"JE"},{name:"Jordan",abbreviation:"JO"},{name:"Kazakhstan",abbreviation:"KZ"},{name:"Kenya",abbreviation:"KE"},{name:"Kiribati",abbreviation:"KI"},{name:"Kosovo",abbreviation:"XK"},{name:"Kuwait",abbreviation:"KW"},{name:"Kyrgyzstan",abbreviation:"KG"},{name:"Laos",abbreviation:"LA"},{name:"Latvia",abbreviation:"LV"},{name:"Lebanon",abbreviation:"LB"},{name:"Lesotho",abbreviation:"LS"},{name:"Liberia",abbreviation:"LR"},{name:"Libya",abbreviation:"LY"},{name:"Liechtenstein",abbreviation:"LI"},{name:"Lithuania",abbreviation:"LT"},{name:"Luxembourg",abbreviation:"LU"},{name:"Macau SAR China",abbreviation:"MO"},{name:"Macedonia",abbreviation:"MK"},{name:"Madagascar",abbreviation:"MG"},{name:"Malawi",abbreviation:"MW"},{name:"Malaysia",abbreviation:"MY"},{name:"Maldives",abbreviation:"MV"},{name:"Mali",abbreviation:"ML"},{name:"Malta",abbreviation:"MT"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Martinique",abbreviation:"MQ"},{name:"Mauritania",abbreviation:"MR"},{name:"Mauritius",abbreviation:"MU"},{name:"Mayotte",abbreviation:"YT"},{name:"Mexico",abbreviation:"MX"},{name:"Micronesia",abbreviation:"FM"},{name:"Moldova",abbreviation:"MD"},{name:"Monaco",abbreviation:"MC"},{name:"Mongolia",abbreviation:"MN"},{name:"Montenegro",abbreviation:"ME"},{name:"Montserrat",abbreviation:"MS"},{name:"Morocco",abbreviation:"MA"},{name:"Mozambique",abbreviation:"MZ"},{name:"Myanmar (Burma)",abbreviation:"MM"},{name:"Namibia",abbreviation:"NA"},{name:"Nauru",abbreviation:"NR"},{name:"Nepal",abbreviation:"NP"},{name:"Netherlands",abbreviation:"NL"},{name:"New Caledonia",abbreviation:"NC"},{name:"New Zealand",abbreviation:"NZ"},{name:"Nicaragua",abbreviation:"NI"},{name:"Niger",abbreviation:"NE"},{name:"Nigeria",abbreviation:"NG"},{name:"Niue",abbreviation:"NU"},{name:"Norfolk Island",abbreviation:"NF"},{name:"North Korea",abbreviation:"KP"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Norway",abbreviation:"NO"},{name:"Oman",abbreviation:"OM"},{name:"Pakistan",abbreviation:"PK"},{name:"Palau",abbreviation:"PW"},{name:"Palestinian Territories",abbreviation:"PS"},{name:"Panama",abbreviation:"PA"},{name:"Papua New Guinea",abbreviation:"PG"},{name:"Paraguay",abbreviation:"PY"},{name:"Peru",abbreviation:"PE"},{name:"Philippines",abbreviation:"PH"},{name:"Pitcairn Islands",abbreviation:"PN"},{name:"Poland",abbreviation:"PL"},{name:"Portugal",abbreviation:"PT"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Qatar",abbreviation:"QA"},{name:"R\xE9union",abbreviation:"RE"},{name:"Romania",abbreviation:"RO"},{name:"Russia",abbreviation:"RU"},{name:"Rwanda",abbreviation:"RW"},{name:"Samoa",abbreviation:"WS"},{name:"San Marino",abbreviation:"SM"},{name:"S\xE3o Tom\xE9 and Pr\xEDncipe",abbreviation:"ST"},{name:"Saudi Arabia",abbreviation:"SA"},{name:"Senegal",abbreviation:"SN"},{name:"Serbia",abbreviation:"RS"},{name:"Seychelles",abbreviation:"SC"},{name:"Sierra Leone",abbreviation:"SL"},{name:"Singapore",abbreviation:"SG"},{name:"Sint Maarten",abbreviation:"SX"},{name:"Slovakia",abbreviation:"SK"},{name:"Slovenia",abbreviation:"SI"},{name:"Solomon Islands",abbreviation:"SB"},{name:"Somalia",abbreviation:"SO"},{name:"South Africa",abbreviation:"ZA"},{name:"South Georgia & South Sandwich Islands",abbreviation:"GS"},{name:"South Korea",abbreviation:"KR"},{name:"South Sudan",abbreviation:"SS"},{name:"Spain",abbreviation:"ES"},{name:"Sri Lanka",abbreviation:"LK"},{name:"St. Barth\xE9lemy",abbreviation:"BL"},{name:"St. Helena",abbreviation:"SH"},{name:"St. Kitts & Nevis",abbreviation:"KN"},{name:"St. Lucia",abbreviation:"LC"},{name:"St. Martin",abbreviation:"MF"},{name:"St. Pierre & Miquelon",abbreviation:"PM"},{name:"St. Vincent & Grenadines",abbreviation:"VC"},{name:"Sudan",abbreviation:"SD"},{name:"Suriname",abbreviation:"SR"},{name:"Svalbard & Jan Mayen",abbreviation:"SJ"},{name:"Swaziland",abbreviation:"SZ"},{name:"Sweden",abbreviation:"SE"},{name:"Switzerland",abbreviation:"CH"},{name:"Syria",abbreviation:"SY"},{name:"Taiwan",abbreviation:"TW"},{name:"Tajikistan",abbreviation:"TJ"},{name:"Tanzania",abbreviation:"TZ"},{name:"Thailand",abbreviation:"TH"},{name:"Timor-Leste",abbreviation:"TL"},{name:"Togo",abbreviation:"TG"},{name:"Tokelau",abbreviation:"TK"},{name:"Tonga",abbreviation:"TO"},{name:"Trinidad & Tobago",abbreviation:"TT"},{name:"Tristan da Cunha",abbreviation:"TA"},{name:"Tunisia",abbreviation:"TN"},{name:"Turkey",abbreviation:"TR"},{name:"Turkmenistan",abbreviation:"TM"},{name:"Turks & Caicos Islands",abbreviation:"TC"},{name:"Tuvalu",abbreviation:"TV"},{name:"U.S. Outlying Islands",abbreviation:"UM"},{name:"U.S. Virgin Islands",abbreviation:"VI"},{name:"Uganda",abbreviation:"UG"},{name:"Ukraine",abbreviation:"UA"},{name:"United Arab Emirates",abbreviation:"AE"},{name:"United Kingdom",abbreviation:"GB"},{name:"United States",abbreviation:"US"},{name:"Uruguay",abbreviation:"UY"},{name:"Uzbekistan",abbreviation:"UZ"},{name:"Vanuatu",abbreviation:"VU"},{name:"Vatican City",abbreviation:"VA"},{name:"Venezuela",abbreviation:"VE"},{name:"Vietnam",abbreviation:"VN"},{name:"Wallis & Futuna",abbreviation:"WF"},{name:"Western Sahara",abbreviation:"EH"},{name:"Yemen",abbreviation:"YE"},{name:"Zambia",abbreviation:"ZM"},{name:"Zimbabwe",abbreviation:"ZW"}],counties:{uk:[{name:"Bath and North East Somerset"},{name:"Aberdeenshire"},{name:"Anglesey"},{name:"Angus"},{name:"Bedford"},{name:"Blackburn with Darwen"},{name:"Blackpool"},{name:"Bournemouth"},{name:"Bracknell Forest"},{name:"Brighton & Hove"},{name:"Bristol"},{name:"Buckinghamshire"},{name:"Cambridgeshire"},{name:"Carmarthenshire"},{name:"Central Bedfordshire"},{name:"Ceredigion"},{name:"Cheshire East"},{name:"Cheshire West and Chester"},{name:"Clackmannanshire"},{name:"Conwy"},{name:"Cornwall"},{name:"County Antrim"},{name:"County Armagh"},{name:"County Down"},{name:"County Durham"},{name:"County Fermanagh"},{name:"County Londonderry"},{name:"County Tyrone"},{name:"Cumbria"},{name:"Darlington"},{name:"Denbighshire"},{name:"Derby"},{name:"Derbyshire"},{name:"Devon"},{name:"Dorset"},{name:"Dumfries and Galloway"},{name:"Dundee"},{name:"East Lothian"},{name:"East Riding of Yorkshire"},{name:"East Sussex"},{name:"Edinburgh?"},{name:"Essex"},{name:"Falkirk"},{name:"Fife"},{name:"Flintshire"},{name:"Gloucestershire"},{name:"Greater London"},{name:"Greater Manchester"},{name:"Gwent"},{name:"Gwynedd"},{name:"Halton"},{name:"Hampshire"},{name:"Hartlepool"},{name:"Herefordshire"},{name:"Hertfordshire"},{name:"Highlands"},{name:"Hull"},{name:"Isle of Wight"},{name:"Isles of Scilly"},{name:"Kent"},{name:"Lancashire"},{name:"Leicester"},{name:"Leicestershire"},{name:"Lincolnshire"},{name:"Lothian"},{name:"Luton"},{name:"Medway"},{name:"Merseyside"},{name:"Mid Glamorgan"},{name:"Middlesbrough"},{name:"Milton Keynes"},{name:"Monmouthshire"},{name:"Moray"},{name:"Norfolk"},{name:"North East Lincolnshire"},{name:"North Lincolnshire"},{name:"North Somerset"},{name:"North Yorkshire"},{name:"Northamptonshire"},{name:"Northumberland"},{name:"Nottingham"},{name:"Nottinghamshire"},{name:"Oxfordshire"},{name:"Pembrokeshire"},{name:"Perth and Kinross"},{name:"Peterborough"},{name:"Plymouth"},{name:"Poole"},{name:"Portsmouth"},{name:"Powys"},{name:"Reading"},{name:"Redcar and Cleveland"},{name:"Rutland"},{name:"Scottish Borders"},{name:"Shropshire"},{name:"Slough"},{name:"Somerset"},{name:"South Glamorgan"},{name:"South Gloucestershire"},{name:"South Yorkshire"},{name:"Southampton"},{name:"Southend-on-Sea"},{name:"Staffordshire"},{name:"Stirlingshire"},{name:"Stockton-on-Tees"},{name:"Stoke-on-Trent"},{name:"Strathclyde"},{name:"Suffolk"},{name:"Surrey"},{name:"Swindon"},{name:"Telford and Wrekin"},{name:"Thurrock"},{name:"Torbay"},{name:"Tyne and Wear"},{name:"Warrington"},{name:"Warwickshire"},{name:"West Berkshire"},{name:"West Glamorgan"},{name:"West Lothian"},{name:"West Midlands"},{name:"West Sussex"},{name:"West Yorkshire"},{name:"Western Isles"},{name:"Wiltshire"},{name:"Windsor and Maidenhead"},{name:"Wokingham"},{name:"Worcestershire"},{name:"Wrexham"},{name:"York"}]},provinces:{ca:[{name:"Alberta",abbreviation:"AB"},{name:"British Columbia",abbreviation:"BC"},{name:"Manitoba",abbreviation:"MB"},{name:"New Brunswick",abbreviation:"NB"},{name:"Newfoundland and Labrador",abbreviation:"NL"},{name:"Nova Scotia",abbreviation:"NS"},{name:"Ontario",abbreviation:"ON"},{name:"Prince Edward Island",abbreviation:"PE"},{name:"Quebec",abbreviation:"QC"},{name:"Saskatchewan",abbreviation:"SK"},{name:"Northwest Territories",abbreviation:"NT"},{name:"Nunavut",abbreviation:"NU"},{name:"Yukon",abbreviation:"YT"}],it:[{name:"Agrigento",abbreviation:"AG",code:84},{name:"Alessandria",abbreviation:"AL",code:6},{name:"Ancona",abbreviation:"AN",code:42},{name:"Aosta",abbreviation:"AO",code:7},{name:"L'Aquila",abbreviation:"AQ",code:66},{name:"Arezzo",abbreviation:"AR",code:51},{name:"Ascoli-Piceno",abbreviation:"AP",code:44},{name:"Asti",abbreviation:"AT",code:5},{name:"Avellino",abbreviation:"AV",code:64},{name:"Bari",abbreviation:"BA",code:72},{name:"Barletta-Andria-Trani",abbreviation:"BT",code:72},{name:"Belluno",abbreviation:"BL",code:25},{name:"Benevento",abbreviation:"BN",code:62},{name:"Bergamo",abbreviation:"BG",code:16},{name:"Biella",abbreviation:"BI",code:96},{name:"Bologna",abbreviation:"BO",code:37},{name:"Bolzano",abbreviation:"BZ",code:21},{name:"Brescia",abbreviation:"BS",code:17},{name:"Brindisi",abbreviation:"BR",code:74},{name:"Cagliari",abbreviation:"CA",code:92},{name:"Caltanissetta",abbreviation:"CL",code:85},{name:"Campobasso",abbreviation:"CB",code:70},{name:"Carbonia Iglesias",abbreviation:"CI",code:70},{name:"Caserta",abbreviation:"CE",code:61},{name:"Catania",abbreviation:"CT",code:87},{name:"Catanzaro",abbreviation:"CZ",code:79},{name:"Chieti",abbreviation:"CH",code:69},{name:"Como",abbreviation:"CO",code:13},{name:"Cosenza",abbreviation:"CS",code:78},{name:"Cremona",abbreviation:"CR",code:19},{name:"Crotone",abbreviation:"KR",code:101},{name:"Cuneo",abbreviation:"CN",code:4},{name:"Enna",abbreviation:"EN",code:86},{name:"Fermo",abbreviation:"FM",code:86},{name:"Ferrara",abbreviation:"FE",code:38},{name:"Firenze",abbreviation:"FI",code:48},{name:"Foggia",abbreviation:"FG",code:71},{name:"Forli-Cesena",abbreviation:"FC",code:71},{name:"Frosinone",abbreviation:"FR",code:60},{name:"Genova",abbreviation:"GE",code:10},{name:"Gorizia",abbreviation:"GO",code:31},{name:"Grosseto",abbreviation:"GR",code:53},{name:"Imperia",abbreviation:"IM",code:8},{name:"Isernia",abbreviation:"IS",code:94},{name:"La-Spezia",abbreviation:"SP",code:66},{name:"Latina",abbreviation:"LT",code:59},{name:"Lecce",abbreviation:"LE",code:75},{name:"Lecco",abbreviation:"LC",code:97},{name:"Livorno",abbreviation:"LI",code:49},{name:"Lodi",abbreviation:"LO",code:98},{name:"Lucca",abbreviation:"LU",code:46},{name:"Macerata",abbreviation:"MC",code:43},{name:"Mantova",abbreviation:"MN",code:20},{name:"Massa-Carrara",abbreviation:"MS",code:45},{name:"Matera",abbreviation:"MT",code:77},{name:"Medio Campidano",abbreviation:"VS",code:77},{name:"Messina",abbreviation:"ME",code:83},{name:"Milano",abbreviation:"MI",code:15},{name:"Modena",abbreviation:"MO",code:36},{name:"Monza-Brianza",abbreviation:"MB",code:36},{name:"Napoli",abbreviation:"NA",code:63},{name:"Novara",abbreviation:"NO",code:3},{name:"Nuoro",abbreviation:"NU",code:91},{name:"Ogliastra",abbreviation:"OG",code:91},{name:"Olbia Tempio",abbreviation:"OT",code:91},{name:"Oristano",abbreviation:"OR",code:95},{name:"Padova",abbreviation:"PD",code:28},{name:"Palermo",abbreviation:"PA",code:82},{name:"Parma",abbreviation:"PR",code:34},{name:"Pavia",abbreviation:"PV",code:18},{name:"Perugia",abbreviation:"PG",code:54},{name:"Pesaro-Urbino",abbreviation:"PU",code:41},{name:"Pescara",abbreviation:"PE",code:68},{name:"Piacenza",abbreviation:"PC",code:33},{name:"Pisa",abbreviation:"PI",code:50},{name:"Pistoia",abbreviation:"PT",code:47},{name:"Pordenone",abbreviation:"PN",code:93},{name:"Potenza",abbreviation:"PZ",code:76},{name:"Prato",abbreviation:"PO",code:100},{name:"Ragusa",abbreviation:"RG",code:88},{name:"Ravenna",abbreviation:"RA",code:39},{name:"Reggio-Calabria",abbreviation:"RC",code:35},{name:"Reggio-Emilia",abbreviation:"RE",code:35},{name:"Rieti",abbreviation:"RI",code:57},{name:"Rimini",abbreviation:"RN",code:99},{name:"Roma",abbreviation:"Roma",code:58},{name:"Rovigo",abbreviation:"RO",code:29},{name:"Salerno",abbreviation:"SA",code:65},{name:"Sassari",abbreviation:"SS",code:90},{name:"Savona",abbreviation:"SV",code:9},{name:"Siena",abbreviation:"SI",code:52},{name:"Siracusa",abbreviation:"SR",code:89},{name:"Sondrio",abbreviation:"SO",code:14},{name:"Taranto",abbreviation:"TA",code:73},{name:"Teramo",abbreviation:"TE",code:67},{name:"Terni",abbreviation:"TR",code:55},{name:"Torino",abbreviation:"TO",code:1},{name:"Trapani",abbreviation:"TP",code:81},{name:"Trento",abbreviation:"TN",code:22},{name:"Treviso",abbreviation:"TV",code:26},{name:"Trieste",abbreviation:"TS",code:32},{name:"Udine",abbreviation:"UD",code:30},{name:"Varese",abbreviation:"VA",code:12},{name:"Venezia",abbreviation:"VE",code:27},{name:"Verbania",abbreviation:"VB",code:27},{name:"Vercelli",abbreviation:"VC",code:2},{name:"Verona",abbreviation:"VR",code:23},{name:"Vibo-Valentia",abbreviation:"VV",code:102},{name:"Vicenza",abbreviation:"VI",code:24},{name:"Viterbo",abbreviation:"VT",code:56}]},nationalities:[{name:"Afghan"},{name:"Albanian"},{name:"Algerian"},{name:"American"},{name:"Andorran"},{name:"Angolan"},{name:"Antiguans"},{name:"Argentinean"},{name:"Armenian"},{name:"Australian"},{name:"Austrian"},{name:"Azerbaijani"},{name:"Bahami"},{name:"Bahraini"},{name:"Bangladeshi"},{name:"Barbadian"},{name:"Barbudans"},{name:"Batswana"},{name:"Belarusian"},{name:"Belgian"},{name:"Belizean"},{name:"Beninese"},{name:"Bhutanese"},{name:"Bolivian"},{name:"Bosnian"},{name:"Brazilian"},{name:"British"},{name:"Bruneian"},{name:"Bulgarian"},{name:"Burkinabe"},{name:"Burmese"},{name:"Burundian"},{name:"Cambodian"},{name:"Cameroonian"},{name:"Canadian"},{name:"Cape Verdean"},{name:"Central African"},{name:"Chadian"},{name:"Chilean"},{name:"Chinese"},{name:"Colombian"},{name:"Comoran"},{name:"Congolese"},{name:"Costa Rican"},{name:"Croatian"},{name:"Cuban"},{name:"Cypriot"},{name:"Czech"},{name:"Danish"},{name:"Djibouti"},{name:"Dominican"},{name:"Dutch"},{name:"East Timorese"},{name:"Ecuadorean"},{name:"Egyptian"},{name:"Emirian"},{name:"Equatorial Guinean"},{name:"Eritrean"},{name:"Estonian"},{name:"Ethiopian"},{name:"Fijian"},{name:"Filipino"},{name:"Finnish"},{name:"French"},{name:"Gabonese"},{name:"Gambian"},{name:"Georgian"},{name:"German"},{name:"Ghanaian"},{name:"Greek"},{name:"Grenadian"},{name:"Guatemalan"},{name:"Guinea-Bissauan"},{name:"Guinean"},{name:"Guyanese"},{name:"Haitian"},{name:"Herzegovinian"},{name:"Honduran"},{name:"Hungarian"},{name:"I-Kiribati"},{name:"Icelander"},{name:"Indian"},{name:"Indonesian"},{name:"Iranian"},{name:"Iraqi"},{name:"Irish"},{name:"Israeli"},{name:"Italian"},{name:"Ivorian"},{name:"Jamaican"},{name:"Japanese"},{name:"Jordanian"},{name:"Kazakhstani"},{name:"Kenyan"},{name:"Kittian and Nevisian"},{name:"Kuwaiti"},{name:"Kyrgyz"},{name:"Laotian"},{name:"Latvian"},{name:"Lebanese"},{name:"Liberian"},{name:"Libyan"},{name:"Liechtensteiner"},{name:"Lithuanian"},{name:"Luxembourger"},{name:"Macedonian"},{name:"Malagasy"},{name:"Malawian"},{name:"Malaysian"},{name:"Maldivan"},{name:"Malian"},{name:"Maltese"},{name:"Marshallese"},{name:"Mauritanian"},{name:"Mauritian"},{name:"Mexican"},{name:"Micronesian"},{name:"Moldovan"},{name:"Monacan"},{name:"Mongolian"},{name:"Moroccan"},{name:"Mosotho"},{name:"Motswana"},{name:"Mozambican"},{name:"Namibian"},{name:"Nauruan"},{name:"Nepalese"},{name:"New Zealander"},{name:"Nicaraguan"},{name:"Nigerian"},{name:"Nigerien"},{name:"North Korean"},{name:"Northern Irish"},{name:"Norwegian"},{name:"Omani"},{name:"Pakistani"},{name:"Palauan"},{name:"Panamanian"},{name:"Papua New Guinean"},{name:"Paraguayan"},{name:"Peruvian"},{name:"Polish"},{name:"Portuguese"},{name:"Qatari"},{name:"Romani"},{name:"Russian"},{name:"Rwandan"},{name:"Saint Lucian"},{name:"Salvadoran"},{name:"Samoan"},{name:"San Marinese"},{name:"Sao Tomean"},{name:"Saudi"},{name:"Scottish"},{name:"Senegalese"},{name:"Serbian"},{name:"Seychellois"},{name:"Sierra Leonean"},{name:"Singaporean"},{name:"Slovakian"},{name:"Slovenian"},{name:"Solomon Islander"},{name:"Somali"},{name:"South African"},{name:"South Korean"},{name:"Spanish"},{name:"Sri Lankan"},{name:"Sudanese"},{name:"Surinamer"},{name:"Swazi"},{name:"Swedish"},{name:"Swiss"},{name:"Syrian"},{name:"Taiwanese"},{name:"Tajik"},{name:"Tanzanian"},{name:"Thai"},{name:"Togolese"},{name:"Tongan"},{name:"Trinidadian or Tobagonian"},{name:"Tunisian"},{name:"Turkish"},{name:"Tuvaluan"},{name:"Ugandan"},{name:"Ukrainian"},{name:"Uruguaya"},{name:"Uzbekistani"},{name:"Venezuela"},{name:"Vietnamese"},{name:"Wels"},{name:"Yemenit"},{name:"Zambia"},{name:"Zimbabwe"}],locale_languages:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","io","is","it","iu","ja","jv","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],locale_regions:["agq-CM","asa-TZ","ast-ES","bas-CM","bem-ZM","bez-TZ","brx-IN","cgg-UG","chr-US","dav-KE","dje-NE","dsb-DE","dua-CM","dyo-SN","ebu-KE","ewo-CM","fil-PH","fur-IT","gsw-CH","gsw-FR","gsw-LI","guz-KE","haw-US","hsb-DE","jgo-CM","jmc-TZ","kab-DZ","kam-KE","kde-TZ","kea-CV","khq-ML","kkj-CM","kln-KE","kok-IN","ksb-TZ","ksf-CM","ksh-DE","lag-TZ","lkt-US","luo-KE","luy-KE","mas-KE","mas-TZ","mer-KE","mfe-MU","mgh-MZ","mgo-CM","mua-CM","naq-NA","nmg-CM","nnh-CM","nus-SD","nyn-UG","rof-TZ","rwk-TZ","sah-RU","saq-KE","sbp-TZ","seh-MZ","ses-ML","shi-Latn","shi-Latn-MA","shi-Tfng","shi-Tfng-MA","smn-FI","teo-KE","teo-UG","twq-NE","tzm-Latn","tzm-Latn-MA","vai-Latn","vai-Latn-LR","vai-Vaii","vai-Vaii-LR","vun-TZ","wae-CH","xog-UG","yav-CM","zgh-MA","af-NA","af-ZA","ak-GH","am-ET","ar-001","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","as-IN","az-Cyrl","az-Cyrl-AZ","az-Latn","az-Latn-AZ","be-BY","bg-BG","bm-Latn","bm-Latn-ML","bn-BD","bn-IN","bo-CN","bo-IN","br-FR","bs-Cyrl","bs-Cyrl-BA","bs-Latn","bs-Latn-BA","ca-AD","ca-ES","ca-ES-VALENCIA","ca-FR","ca-IT","cs-CZ","cy-GB","da-DK","da-GL","de-AT","de-BE","de-CH","de-DE","de-LI","de-LU","dz-BT","ee-GH","ee-TG","el-CY","el-GR","en-001","en-150","en-AG","en-AI","en-AS","en-AU","en-BB","en-BE","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CK","en-CM","en-CX","en-DG","en-DM","en-ER","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SG","en-SH","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","eo-001","es-419","es-AR","es-BO","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-ES","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et-EE","eu-ES","fa-AF","fa-IR","ff-CM","ff-GN","ff-MR","ff-SN","fi-FI","fo-FO","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-FR","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","fy-NL","ga-IE","gd-GB","gl-ES","gu-IN","gv-IM","ha-Latn","ha-Latn-GH","ha-Latn-NE","ha-Latn-NG","he-IL","hi-IN","hr-BA","hr-HR","hu-HU","hy-AM","id-ID","ig-NG","ii-CN","is-IS","it-CH","it-IT","it-SM","ja-JP","ka-GE","ki-KE","kk-Cyrl","kk-Cyrl-KZ","kl-GL","km-KH","kn-IN","ko-KP","ko-KR","ks-Arab","ks-Arab-IN","kw-GB","ky-Cyrl","ky-Cyrl-KG","lb-LU","lg-UG","ln-AO","ln-CD","ln-CF","ln-CG","lo-LA","lt-LT","lu-CD","lv-LV","mg-MG","mk-MK","ml-IN","mn-Cyrl","mn-Cyrl-MN","mr-IN","ms-Latn","ms-Latn-BN","ms-Latn-MY","ms-Latn-SG","mt-MT","my-MM","nb-NO","nb-SJ","nd-ZW","ne-IN","ne-NP","nl-AW","nl-BE","nl-BQ","nl-CW","nl-NL","nl-SR","nl-SX","nn-NO","om-ET","om-KE","or-IN","os-GE","os-RU","pa-Arab","pa-Arab-PK","pa-Guru","pa-Guru-IN","pl-PL","ps-AF","pt-AO","pt-BR","pt-CV","pt-GW","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","qu-BO","qu-EC","qu-PE","rm-CH","rn-BI","ro-MD","ro-RO","ru-BY","ru-KG","ru-KZ","ru-MD","ru-RU","ru-UA","rw-RW","se-FI","se-NO","se-SE","sg-CF","si-LK","sk-SK","sl-SI","sn-ZW","so-DJ","so-ET","so-KE","so-SO","sq-AL","sq-MK","sq-XK","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-RS","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-RS","sr-Latn-XK","sv-AX","sv-FI","sv-SE","sw-CD","sw-KE","sw-TZ","sw-UG","ta-IN","ta-LK","ta-MY","ta-SG","te-IN","th-TH","ti-ER","ti-ET","to-TO","tr-CY","tr-TR","ug-Arab","ug-Arab-CN","uk-UA","ur-IN","ur-PK","uz-Arab","uz-Arab-AF","uz-Cyrl","uz-Cyrl-UZ","uz-Latn","uz-Latn-UZ","vi-VN","yi-001","yo-BJ","yo-NG","zh-Hans","zh-Hans-CN","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zh-Hant-TW","zu-ZA"],us_states_and_dc:[{name:"Alabama",abbreviation:"AL"},{name:"Alaska",abbreviation:"AK"},{name:"Arizona",abbreviation:"AZ"},{name:"Arkansas",abbreviation:"AR"},{name:"California",abbreviation:"CA"},{name:"Colorado",abbreviation:"CO"},{name:"Connecticut",abbreviation:"CT"},{name:"Delaware",abbreviation:"DE"},{name:"District of Columbia",abbreviation:"DC"},{name:"Florida",abbreviation:"FL"},{name:"Georgia",abbreviation:"GA"},{name:"Hawaii",abbreviation:"HI"},{name:"Idaho",abbreviation:"ID"},{name:"Illinois",abbreviation:"IL"},{name:"Indiana",abbreviation:"IN"},{name:"Iowa",abbreviation:"IA"},{name:"Kansas",abbreviation:"KS"},{name:"Kentucky",abbreviation:"KY"},{name:"Louisiana",abbreviation:"LA"},{name:"Maine",abbreviation:"ME"},{name:"Maryland",abbreviation:"MD"},{name:"Massachusetts",abbreviation:"MA"},{name:"Michigan",abbreviation:"MI"},{name:"Minnesota",abbreviation:"MN"},{name:"Mississippi",abbreviation:"MS"},{name:"Missouri",abbreviation:"MO"},{name:"Montana",abbreviation:"MT"},{name:"Nebraska",abbreviation:"NE"},{name:"Nevada",abbreviation:"NV"},{name:"New Hampshire",abbreviation:"NH"},{name:"New Jersey",abbreviation:"NJ"},{name:"New Mexico",abbreviation:"NM"},{name:"New York",abbreviation:"NY"},{name:"North Carolina",abbreviation:"NC"},{name:"North Dakota",abbreviation:"ND"},{name:"Ohio",abbreviation:"OH"},{name:"Oklahoma",abbreviation:"OK"},{name:"Oregon",abbreviation:"OR"},{name:"Pennsylvania",abbreviation:"PA"},{name:"Rhode Island",abbreviation:"RI"},{name:"South Carolina",abbreviation:"SC"},{name:"South Dakota",abbreviation:"SD"},{name:"Tennessee",abbreviation:"TN"},{name:"Texas",abbreviation:"TX"},{name:"Utah",abbreviation:"UT"},{name:"Vermont",abbreviation:"VT"},{name:"Virginia",abbreviation:"VA"},{name:"Washington",abbreviation:"WA"},{name:"West Virginia",abbreviation:"WV"},{name:"Wisconsin",abbreviation:"WI"},{name:"Wyoming",abbreviation:"WY"}],territories:[{name:"American Samoa",abbreviation:"AS"},{name:"Federated States of Micronesia",abbreviation:"FM"},{name:"Guam",abbreviation:"GU"},{name:"Marshall Islands",abbreviation:"MH"},{name:"Northern Mariana Islands",abbreviation:"MP"},{name:"Puerto Rico",abbreviation:"PR"},{name:"Virgin Islands, U.S.",abbreviation:"VI"}],armed_forces:[{name:"Armed Forces Europe",abbreviation:"AE"},{name:"Armed Forces Pacific",abbreviation:"AP"},{name:"Armed Forces the Americas",abbreviation:"AA"}],country_regions:{it:[{name:"Valle d'Aosta",abbreviation:"VDA"},{name:"Piemonte",abbreviation:"PIE"},{name:"Lombardia",abbreviation:"LOM"},{name:"Veneto",abbreviation:"VEN"},{name:"Trentino Alto Adige",abbreviation:"TAA"},{name:"Friuli Venezia Giulia",abbreviation:"FVG"},{name:"Liguria",abbreviation:"LIG"},{name:"Emilia Romagna",abbreviation:"EMR"},{name:"Toscana",abbreviation:"TOS"},{name:"Umbria",abbreviation:"UMB"},{name:"Marche",abbreviation:"MAR"},{name:"Abruzzo",abbreviation:"ABR"},{name:"Lazio",abbreviation:"LAZ"},{name:"Campania",abbreviation:"CAM"},{name:"Puglia",abbreviation:"PUG"},{name:"Basilicata",abbreviation:"BAS"},{name:"Molise",abbreviation:"MOL"},{name:"Calabria",abbreviation:"CAL"},{name:"Sicilia",abbreviation:"SIC"},{name:"Sardegna",abbreviation:"SAR"}],mx:[{name:"Aguascalientes",abbreviation:"AGU"},{name:"Baja California",abbreviation:"BCN"},{name:"Baja California Sur",abbreviation:"BCS"},{name:"Campeche",abbreviation:"CAM"},{name:"Chiapas",abbreviation:"CHP"},{name:"Chihuahua",abbreviation:"CHH"},{name:"Ciudad de M\xE9xico",abbreviation:"DIF"},{name:"Coahuila",abbreviation:"COA"},{name:"Colima",abbreviation:"COL"},{name:"Durango",abbreviation:"DUR"},{name:"Guanajuato",abbreviation:"GUA"},{name:"Guerrero",abbreviation:"GRO"},{name:"Hidalgo",abbreviation:"HID"},{name:"Jalisco",abbreviation:"JAL"},{name:"M\xE9xico",abbreviation:"MEX"},{name:"Michoac\xE1n",abbreviation:"MIC"},{name:"Morelos",abbreviation:"MOR"},{name:"Nayarit",abbreviation:"NAY"},{name:"Nuevo Le\xF3n",abbreviation:"NLE"},{name:"Oaxaca",abbreviation:"OAX"},{name:"Puebla",abbreviation:"PUE"},{name:"Quer\xE9taro",abbreviation:"QUE"},{name:"Quintana Roo",abbreviation:"ROO"},{name:"San Luis Potos\xED",abbreviation:"SLP"},{name:"Sinaloa",abbreviation:"SIN"},{name:"Sonora",abbreviation:"SON"},{name:"Tabasco",abbreviation:"TAB"},{name:"Tamaulipas",abbreviation:"TAM"},{name:"Tlaxcala",abbreviation:"TLA"},{name:"Veracruz",abbreviation:"VER"},{name:"Yucat\xE1n",abbreviation:"YUC"},{name:"Zacatecas",abbreviation:"ZAC"}]},street_suffixes:{us:[{name:"Avenue",abbreviation:"Ave"},{name:"Boulevard",abbreviation:"Blvd"},{name:"Center",abbreviation:"Ctr"},{name:"Circle",abbreviation:"Cir"},{name:"Court",abbreviation:"Ct"},{name:"Drive",abbreviation:"Dr"},{name:"Extension",abbreviation:"Ext"},{name:"Glen",abbreviation:"Gln"},{name:"Grove",abbreviation:"Grv"},{name:"Heights",abbreviation:"Hts"},{name:"Highway",abbreviation:"Hwy"},{name:"Junction",abbreviation:"Jct"},{name:"Key",abbreviation:"Key"},{name:"Lane",abbreviation:"Ln"},{name:"Loop",abbreviation:"Loop"},{name:"Manor",abbreviation:"Mnr"},{name:"Mill",abbreviation:"Mill"},{name:"Park",abbreviation:"Park"},{name:"Parkway",abbreviation:"Pkwy"},{name:"Pass",abbreviation:"Pass"},{name:"Path",abbreviation:"Path"},{name:"Pike",abbreviation:"Pike"},{name:"Place",abbreviation:"Pl"},{name:"Plaza",abbreviation:"Plz"},{name:"Point",abbreviation:"Pt"},{name:"Ridge",abbreviation:"Rdg"},{name:"River",abbreviation:"Riv"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Trail",abbreviation:"Trl"},{name:"Turnpike",abbreviation:"Tpke"},{name:"View",abbreviation:"Vw"},{name:"Way",abbreviation:"Way"}],it:[{name:"Accesso",abbreviation:"Acc."},{name:"Alzaia",abbreviation:"Alz."},{name:"Arco",abbreviation:"Arco"},{name:"Archivolto",abbreviation:"Acv."},{name:"Arena",abbreviation:"Arena"},{name:"Argine",abbreviation:"Argine"},{name:"Bacino",abbreviation:"Bacino"},{name:"Banchi",abbreviation:"Banchi"},{name:"Banchina",abbreviation:"Ban."},{name:"Bastioni",abbreviation:"Bas."},{name:"Belvedere",abbreviation:"Belv."},{name:"Borgata",abbreviation:"B.ta"},{name:"Borgo",abbreviation:"B.go"},{name:"Calata",abbreviation:"Cal."},{name:"Calle",abbreviation:"Calle"},{name:"Campiello",abbreviation:"Cam."},{name:"Campo",abbreviation:"Cam."},{name:"Canale",abbreviation:"Can."},{name:"Carraia",abbreviation:"Carr."},{name:"Cascina",abbreviation:"Cascina"},{name:"Case sparse",abbreviation:"c.s."},{name:"Cavalcavia",abbreviation:"Cv."},{name:"Circonvallazione",abbreviation:"Cv."},{name:"Complanare",abbreviation:"C.re"},{name:"Contrada",abbreviation:"C.da"},{name:"Corso",abbreviation:"C.so"},{name:"Corte",abbreviation:"C.te"},{name:"Cortile",abbreviation:"C.le"},{name:"Diramazione",abbreviation:"Dir."},{name:"Fondaco",abbreviation:"F.co"},{name:"Fondamenta",abbreviation:"F.ta"},{name:"Fondo",abbreviation:"F.do"},{name:"Frazione",abbreviation:"Fr."},{name:"Isola",abbreviation:"Is."},{name:"Largo",abbreviation:"L.go"},{name:"Litoranea",abbreviation:"Lit."},{name:"Lungolago",abbreviation:"L.go lago"},{name:"Lungo Po",abbreviation:"l.go Po"},{name:"Molo",abbreviation:"Molo"},{name:"Mura",abbreviation:"Mura"},{name:"Passaggio privato",abbreviation:"pass. priv."},{name:"Passeggiata",abbreviation:"Pass."},{name:"Piazza",abbreviation:"P.zza"},{name:"Piazzale",abbreviation:"P.le"},{name:"Ponte",abbreviation:"P.te"},{name:"Portico",abbreviation:"P.co"},{name:"Rampa",abbreviation:"Rampa"},{name:"Regione",abbreviation:"Reg."},{name:"Rione",abbreviation:"R.ne"},{name:"Rio",abbreviation:"Rio"},{name:"Ripa",abbreviation:"Ripa"},{name:"Riva",abbreviation:"Riva"},{name:"Rond\xF2",abbreviation:"Rond\xF2"},{name:"Rotonda",abbreviation:"Rot."},{name:"Sagrato",abbreviation:"Sagr."},{name:"Salita",abbreviation:"Sal."},{name:"Scalinata",abbreviation:"Scal."},{name:"Scalone",abbreviation:"Scal."},{name:"Slargo",abbreviation:"Sl."},{name:"Sottoportico",abbreviation:"Sott."},{name:"Strada",abbreviation:"Str."},{name:"Stradale",abbreviation:"Str.le"},{name:"Strettoia",abbreviation:"Strett."},{name:"Traversa",abbreviation:"Trav."},{name:"Via",abbreviation:"V."},{name:"Viale",abbreviation:"V.le"},{name:"Vicinale",abbreviation:"Vic.le"},{name:"Vicolo",abbreviation:"Vic."}],uk:[{name:"Avenue",abbreviation:"Ave"},{name:"Close",abbreviation:"Cl"},{name:"Court",abbreviation:"Ct"},{name:"Crescent",abbreviation:"Cr"},{name:"Drive",abbreviation:"Dr"},{name:"Garden",abbreviation:"Gdn"},{name:"Gardens",abbreviation:"Gdns"},{name:"Green",abbreviation:"Gn"},{name:"Grove",abbreviation:"Gr"},{name:"Lane",abbreviation:"Ln"},{name:"Mount",abbreviation:"Mt"},{name:"Place",abbreviation:"Pl"},{name:"Park",abbreviation:"Pk"},{name:"Ridge",abbreviation:"Rdg"},{name:"Road",abbreviation:"Rd"},{name:"Square",abbreviation:"Sq"},{name:"Street",abbreviation:"St"},{name:"Terrace",abbreviation:"Ter"},{name:"Valley",abbreviation:"Val"}]},months:[{name:"January",short_name:"Jan",numeric:"01",days:31},{name:"February",short_name:"Feb",numeric:"02",days:28},{name:"March",short_name:"Mar",numeric:"03",days:31},{name:"April",short_name:"Apr",numeric:"04",days:30},{name:"May",short_name:"May",numeric:"05",days:31},{name:"June",short_name:"Jun",numeric:"06",days:30},{name:"July",short_name:"Jul",numeric:"07",days:31},{name:"August",short_name:"Aug",numeric:"08",days:31},{name:"September",short_name:"Sep",numeric:"09",days:30},{name:"October",short_name:"Oct",numeric:"10",days:31},{name:"November",short_name:"Nov",numeric:"11",days:30},{name:"December",short_name:"Dec",numeric:"12",days:31}],cc_types:[{name:"American Express",short_name:"amex",prefix:"34",length:15},{name:"Bankcard",short_name:"bankcard",prefix:"5610",length:16},{name:"China UnionPay",short_name:"chinaunion",prefix:"62",length:16},{name:"Diners Club Carte Blanche",short_name:"dccarte",prefix:"300",length:14},{name:"Diners Club enRoute",short_name:"dcenroute",prefix:"2014",length:15},{name:"Diners Club International",short_name:"dcintl",prefix:"36",length:14},{name:"Diners Club United States & Canada",short_name:"dcusc",prefix:"54",length:16},{name:"Discover Card",short_name:"discover",prefix:"6011",length:16},{name:"InstaPayment",short_name:"instapay",prefix:"637",length:16},{name:"JCB",short_name:"jcb",prefix:"3528",length:16},{name:"Laser",short_name:"laser",prefix:"6304",length:16},{name:"Maestro",short_name:"maestro",prefix:"5018",length:16},{name:"Mastercard",short_name:"mc",prefix:"51",length:16},{name:"Solo",short_name:"solo",prefix:"6334",length:16},{name:"Switch",short_name:"switch",prefix:"4903",length:16},{name:"Visa",short_name:"visa",prefix:"4",length:16},{name:"Visa Electron",short_name:"electron",prefix:"4026",length:16}],currency_types:[{code:"AED",name:"United Arab Emirates Dirham"},{code:"AFN",name:"Afghanistan Afghani"},{code:"ALL",name:"Albania Lek"},{code:"AMD",name:"Armenia Dram"},{code:"ANG",name:"Netherlands Antilles Guilder"},{code:"AOA",name:"Angola Kwanza"},{code:"ARS",name:"Argentina Peso"},{code:"AUD",name:"Australia Dollar"},{code:"AWG",name:"Aruba Guilder"},{code:"AZN",name:"Azerbaijan New Manat"},{code:"BAM",name:"Bosnia and Herzegovina Convertible Marka"},{code:"BBD",name:"Barbados Dollar"},{code:"BDT",name:"Bangladesh Taka"},{code:"BGN",name:"Bulgaria Lev"},{code:"BHD",name:"Bahrain Dinar"},{code:"BIF",name:"Burundi Franc"},{code:"BMD",name:"Bermuda Dollar"},{code:"BND",name:"Brunei Darussalam Dollar"},{code:"BOB",name:"Bolivia Boliviano"},{code:"BRL",name:"Brazil Real"},{code:"BSD",name:"Bahamas Dollar"},{code:"BTN",name:"Bhutan Ngultrum"},{code:"BWP",name:"Botswana Pula"},{code:"BYR",name:"Belarus Ruble"},{code:"BZD",name:"Belize Dollar"},{code:"CAD",name:"Canada Dollar"},{code:"CDF",name:"Congo/Kinshasa Franc"},{code:"CHF",name:"Switzerland Franc"},{code:"CLP",name:"Chile Peso"},{code:"CNY",name:"China Yuan Renminbi"},{code:"COP",name:"Colombia Peso"},{code:"CRC",name:"Costa Rica Colon"},{code:"CUC",name:"Cuba Convertible Peso"},{code:"CUP",name:"Cuba Peso"},{code:"CVE",name:"Cape Verde Escudo"},{code:"CZK",name:"Czech Republic Koruna"},{code:"DJF",name:"Djibouti Franc"},{code:"DKK",name:"Denmark Krone"},{code:"DOP",name:"Dominican Republic Peso"},{code:"DZD",name:"Algeria Dinar"},{code:"EGP",name:"Egypt Pound"},{code:"ERN",name:"Eritrea Nakfa"},{code:"ETB",name:"Ethiopia Birr"},{code:"EUR",name:"Euro Member Countries"},{code:"FJD",name:"Fiji Dollar"},{code:"FKP",name:"Falkland Islands (Malvinas) Pound"},{code:"GBP",name:"United Kingdom Pound"},{code:"GEL",name:"Georgia Lari"},{code:"GGP",name:"Guernsey Pound"},{code:"GHS",name:"Ghana Cedi"},{code:"GIP",name:"Gibraltar Pound"},{code:"GMD",name:"Gambia Dalasi"},{code:"GNF",name:"Guinea Franc"},{code:"GTQ",name:"Guatemala Quetzal"},{code:"GYD",name:"Guyana Dollar"},{code:"HKD",name:"Hong Kong Dollar"},{code:"HNL",name:"Honduras Lempira"},{code:"HRK",name:"Croatia Kuna"},{code:"HTG",name:"Haiti Gourde"},{code:"HUF",name:"Hungary Forint"},{code:"IDR",name:"Indonesia Rupiah"},{code:"ILS",name:"Israel Shekel"},{code:"IMP",name:"Isle of Man Pound"},{code:"INR",name:"India Rupee"},{code:"IQD",name:"Iraq Dinar"},{code:"IRR",name:"Iran Rial"},{code:"ISK",name:"Iceland Krona"},{code:"JEP",name:"Jersey Pound"},{code:"JMD",name:"Jamaica Dollar"},{code:"JOD",name:"Jordan Dinar"},{code:"JPY",name:"Japan Yen"},{code:"KES",name:"Kenya Shilling"},{code:"KGS",name:"Kyrgyzstan Som"},{code:"KHR",name:"Cambodia Riel"},{code:"KMF",name:"Comoros Franc"},{code:"KPW",name:"Korea (North) Won"},{code:"KRW",name:"Korea (South) Won"},{code:"KWD",name:"Kuwait Dinar"},{code:"KYD",name:"Cayman Islands Dollar"},{code:"KZT",name:"Kazakhstan Tenge"},{code:"LAK",name:"Laos Kip"},{code:"LBP",name:"Lebanon Pound"},{code:"LKR",name:"Sri Lanka Rupee"},{code:"LRD",name:"Liberia Dollar"},{code:"LSL",name:"Lesotho Loti"},{code:"LTL",name:"Lithuania Litas"},{code:"LYD",name:"Libya Dinar"},{code:"MAD",name:"Morocco Dirham"},{code:"MDL",name:"Moldova Leu"},{code:"MGA",name:"Madagascar Ariary"},{code:"MKD",name:"Macedonia Denar"},{code:"MMK",name:"Myanmar (Burma) Kyat"},{code:"MNT",name:"Mongolia Tughrik"},{code:"MOP",name:"Macau Pataca"},{code:"MRO",name:"Mauritania Ouguiya"},{code:"MUR",name:"Mauritius Rupee"},{code:"MVR",name:"Maldives (Maldive Islands) Rufiyaa"},{code:"MWK",name:"Malawi Kwacha"},{code:"MXN",name:"Mexico Peso"},{code:"MYR",name:"Malaysia Ringgit"},{code:"MZN",name:"Mozambique Metical"},{code:"NAD",name:"Namibia Dollar"},{code:"NGN",name:"Nigeria Naira"},{code:"NIO",name:"Nicaragua Cordoba"},{code:"NOK",name:"Norway Krone"},{code:"NPR",name:"Nepal Rupee"},{code:"NZD",name:"New Zealand Dollar"},{code:"OMR",name:"Oman Rial"},{code:"PAB",name:"Panama Balboa"},{code:"PEN",name:"Peru Nuevo Sol"},{code:"PGK",name:"Papua New Guinea Kina"},{code:"PHP",name:"Philippines Peso"},{code:"PKR",name:"Pakistan Rupee"},{code:"PLN",name:"Poland Zloty"},{code:"PYG",name:"Paraguay Guarani"},{code:"QAR",name:"Qatar Riyal"},{code:"RON",name:"Romania New Leu"},{code:"RSD",name:"Serbia Dinar"},{code:"RUB",name:"Russia Ruble"},{code:"RWF",name:"Rwanda Franc"},{code:"SAR",name:"Saudi Arabia Riyal"},{code:"SBD",name:"Solomon Islands Dollar"},{code:"SCR",name:"Seychelles Rupee"},{code:"SDG",name:"Sudan Pound"},{code:"SEK",name:"Sweden Krona"},{code:"SGD",name:"Singapore Dollar"},{code:"SHP",name:"Saint Helena Pound"},{code:"SLL",name:"Sierra Leone Leone"},{code:"SOS",name:"Somalia Shilling"},{code:"SPL",name:"Seborga Luigino"},{code:"SRD",name:"Suriname Dollar"},{code:"STD",name:"S\xE3o Tom\xE9 and Pr\xEDncipe Dobra"},{code:"SVC",name:"El Salvador Colon"},{code:"SYP",name:"Syria Pound"},{code:"SZL",name:"Swaziland Lilangeni"},{code:"THB",name:"Thailand Baht"},{code:"TJS",name:"Tajikistan Somoni"},{code:"TMT",name:"Turkmenistan Manat"},{code:"TND",name:"Tunisia Dinar"},{code:"TOP",name:"Tonga Pa'anga"},{code:"TRY",name:"Turkey Lira"},{code:"TTD",name:"Trinidad and Tobago Dollar"},{code:"TVD",name:"Tuvalu Dollar"},{code:"TWD",name:"Taiwan New Dollar"},{code:"TZS",name:"Tanzania Shilling"},{code:"UAH",name:"Ukraine Hryvnia"},{code:"UGX",name:"Uganda Shilling"},{code:"USD",name:"United States Dollar"},{code:"UYU",name:"Uruguay Peso"},{code:"UZS",name:"Uzbekistan Som"},{code:"VEF",name:"Venezuela Bolivar"},{code:"VND",name:"Viet Nam Dong"},{code:"VUV",name:"Vanuatu Vatu"},{code:"WST",name:"Samoa Tala"},{code:"XAF",name:"Communaut\xE9 Financi\xE8re Africaine (BEAC) CFA Franc BEAC"},{code:"XCD",name:"East Caribbean Dollar"},{code:"XDR",name:"International Monetary Fund (IMF) Special Drawing Rights"},{code:"XOF",name:"Communaut\xE9 Financi\xE8re Africaine (BCEAO) Franc"},{code:"XPF",name:"Comptoirs Fran\xE7ais du Pacifique (CFP) Franc"},{code:"YER",name:"Yemen Rial"},{code:"ZAR",name:"South Africa Rand"},{code:"ZMW",name:"Zambia Kwacha"},{code:"ZWD",name:"Zimbabwe Dollar"}],colorNames:["AliceBlue","Black","Navy","DarkBlue","MediumBlue","Blue","DarkGreen","Green","Teal","DarkCyan","DeepSkyBlue","DarkTurquoise","MediumSpringGreen","Lime","SpringGreen","Aqua","Cyan","MidnightBlue","DodgerBlue","LightSeaGreen","ForestGreen","SeaGreen","DarkSlateGray","LimeGreen","MediumSeaGreen","Turquoise","RoyalBlue","SteelBlue","DarkSlateBlue","MediumTurquoise","Indigo","DarkOliveGreen","CadetBlue","CornflowerBlue","RebeccaPurple","MediumAquaMarine","DimGray","SlateBlue","OliveDrab","SlateGray","LightSlateGray","MediumSlateBlue","LawnGreen","Chartreuse","Aquamarine","Maroon","Purple","Olive","Gray","SkyBlue","LightSkyBlue","BlueViolet","DarkRed","DarkMagenta","SaddleBrown","Ivory","White","DarkSeaGreen","LightGreen","MediumPurple","DarkViolet","PaleGreen","DarkOrchid","YellowGreen","Sienna","Brown","DarkGray","LightBlue","GreenYellow","PaleTurquoise","LightSteelBlue","PowderBlue","FireBrick","DarkGoldenRod","MediumOrchid","RosyBrown","DarkKhaki","Silver","MediumVioletRed","IndianRed","Peru","Chocolate","Tan","LightGray","Thistle","Orchid","GoldenRod","PaleVioletRed","Crimson","Gainsboro","Plum","BurlyWood","LightCyan","Lavender","DarkSalmon","Violet","PaleGoldenRod","LightCoral","Khaki","AliceBlue","HoneyDew","Azure","SandyBrown","Wheat","Beige","WhiteSmoke","MintCream","GhostWhite","Salmon","AntiqueWhite","Linen","LightGoldenRodYellow","OldLace","Red","Fuchsia","Magenta","DeepPink","OrangeRed","Tomato","HotPink","Coral","DarkOrange","LightSalmon","Orange","LightPink","Pink","Gold","PeachPuff","NavajoWhite","Moccasin","Bisque","MistyRose","BlanchedAlmond","PapayaWhip","LavenderBlush","SeaShell","Cornsilk","LemonChiffon","FloralWhite","Snow","Yellow","LightYellow"],company:["3Com Corp","3M Company","A.G. Edwards Inc.","Abbott Laboratories","Abercrombie & Fitch Co.","ABM Industries Incorporated","Ace Hardware Corporation","ACT Manufacturing Inc.","Acterna Corp.","Adams Resources & Energy, Inc.","ADC Telecommunications, Inc.","Adelphia Communications Corporation","Administaff, Inc.","Adobe Systems Incorporated","Adolph Coors Company","Advance Auto Parts, Inc.","Advanced Micro Devices, Inc.","AdvancePCS, Inc.","Advantica Restaurant Group, Inc.","The AES Corporation","Aetna Inc.","Affiliated Computer Services, Inc.","AFLAC Incorporated","AGCO Corporation","Agilent Technologies, Inc.","Agway Inc.","Apartment Investment and Management Company","Air Products and Chemicals, Inc.","Airborne, Inc.","Airgas, Inc.","AK Steel Holding Corporation","Alaska Air Group, Inc.","Alberto-Culver Company","Albertson's, Inc.","Alcoa Inc.","Alleghany Corporation","Allegheny Energy, Inc.","Allegheny Technologies Incorporated","Allergan, Inc.","ALLETE, Inc.","Alliant Energy Corporation","Allied Waste Industries, Inc.","Allmerica Financial Corporation","The Allstate Corporation","ALLTEL Corporation","The Alpine Group, Inc.","Amazon.com, Inc.","AMC Entertainment Inc.","American Power Conversion Corporation","Amerada Hess Corporation","AMERCO","Ameren Corporation","America West Holdings Corporation","American Axle & Manufacturing Holdings, Inc.","American Eagle Outfitters, Inc.","American Electric Power Company, Inc.","American Express Company","American Financial Group, Inc.","American Greetings Corporation","American International Group, Inc.","American Standard Companies Inc.","American Water Works Company, Inc.","AmerisourceBergen Corporation","Ames Department Stores, Inc.","Amgen Inc.","Amkor Technology, Inc.","AMR Corporation","AmSouth Bancorp.","Amtran, Inc.","Anadarko Petroleum Corporation","Analog Devices, Inc.","Anheuser-Busch Companies, Inc.","Anixter International Inc.","AnnTaylor Inc.","Anthem, Inc.","AOL Time Warner Inc.","Aon Corporation","Apache Corporation","Apple Computer, Inc.","Applera Corporation","Applied Industrial Technologies, Inc.","Applied Materials, Inc.","Aquila, Inc.","ARAMARK Corporation","Arch Coal, Inc.","Archer Daniels Midland Company","Arkansas Best Corporation","Armstrong Holdings, Inc.","Arrow Electronics, Inc.","ArvinMeritor, Inc.","Ashland Inc.","Astoria Financial Corporation","AT&T Corp.","Atmel Corporation","Atmos Energy Corporation","Audiovox Corporation","Autoliv, Inc.","Automatic Data Processing, Inc.","AutoNation, Inc.","AutoZone, Inc.","Avaya Inc.","Avery Dennison Corporation","Avista Corporation","Avnet, Inc.","Avon Products, Inc.","Baker Hughes Incorporated","Ball Corporation","Bank of America Corporation","The Bank of New York Company, Inc.","Bank One Corporation","Banknorth Group, Inc.","Banta Corporation","Barnes & Noble, Inc.","Bausch & Lomb Incorporated","Baxter International Inc.","BB&T Corporation","The Bear Stearns Companies Inc.","Beazer Homes USA, Inc.","Beckman Coulter, Inc.","Becton, Dickinson and Company","Bed Bath & Beyond Inc.","Belk, Inc.","Bell Microproducts Inc.","BellSouth Corporation","Belo Corp.","Bemis Company, Inc.","Benchmark Electronics, Inc.","Berkshire Hathaway Inc.","Best Buy Co., Inc.","Bethlehem Steel Corporation","Beverly Enterprises, Inc.","Big Lots, Inc.","BJ Services Company","BJ's Wholesale Club, Inc.","The Black & Decker Corporation","Black Hills Corporation","BMC Software, Inc.","The Boeing Company","Boise Cascade Corporation","Borders Group, Inc.","BorgWarner Inc.","Boston Scientific Corporation","Bowater Incorporated","Briggs & Stratton Corporation","Brightpoint, Inc.","Brinker International, Inc.","Bristol-Myers Squibb Company","Broadwing, Inc.","Brown Shoe Company, Inc.","Brown-Forman Corporation","Brunswick Corporation","Budget Group, Inc.","Burlington Coat Factory Warehouse Corporation","Burlington Industries, Inc.","Burlington Northern Santa Fe Corporation","Burlington Resources Inc.","C. H. Robinson Worldwide Inc.","Cablevision Systems Corp","Cabot Corp","Cadence Design Systems, Inc.","Calpine Corp.","Campbell Soup Co.","Capital One Financial Corp.","Cardinal Health Inc.","Caremark Rx Inc.","Carlisle Cos. Inc.","Carpenter Technology Corp.","Casey's General Stores Inc.","Caterpillar Inc.","CBRL Group Inc.","CDI Corp.","CDW Computer Centers Inc.","CellStar Corp.","Cendant Corp","Cenex Harvest States Cooperatives","Centex Corp.","CenturyTel Inc.","Ceridian Corp.","CH2M Hill Cos. Ltd.","Champion Enterprises Inc.","Charles Schwab Corp.","Charming Shoppes Inc.","Charter Communications Inc.","Charter One Financial Inc.","ChevronTexaco Corp.","Chiquita Brands International Inc.","Chubb Corp","Ciena Corp.","Cigna Corp","Cincinnati Financial Corp.","Cinergy Corp.","Cintas Corp.","Circuit City Stores Inc.","Cisco Systems Inc.","Citigroup, Inc","Citizens Communications Co.","CKE Restaurants Inc.","Clear Channel Communications Inc.","The Clorox Co.","CMGI Inc.","CMS Energy Corp.","CNF Inc.","Coca-Cola Co.","Coca-Cola Enterprises Inc.","Colgate-Palmolive Co.","Collins & Aikman Corp.","Comcast Corp.","Comdisco Inc.","Comerica Inc.","Comfort Systems USA Inc.","Commercial Metals Co.","Community Health Systems Inc.","Compass Bancshares Inc","Computer Associates International Inc.","Computer Sciences Corp.","Compuware Corp.","Comverse Technology Inc.","ConAgra Foods Inc.","Concord EFS Inc.","Conectiv, Inc","Conoco Inc","Conseco Inc.","Consolidated Freightways Corp.","Consolidated Edison Inc.","Constellation Brands Inc.","Constellation Emergy Group Inc.","Continental Airlines Inc.","Convergys Corp.","Cooper Cameron Corp.","Cooper Industries Ltd.","Cooper Tire & Rubber Co.","Corn Products International Inc.","Corning Inc.","Costco Wholesale Corp.","Countrywide Credit Industries Inc.","Coventry Health Care Inc.","Cox Communications Inc.","Crane Co.","Crompton Corp.","Crown Cork & Seal Co. Inc.","CSK Auto Corp.","CSX Corp.","Cummins Inc.","CVS Corp.","Cytec Industries Inc.","D&K Healthcare Resources, Inc.","D.R. Horton Inc.","Dana Corporation","Danaher Corporation","Darden Restaurants Inc.","DaVita Inc.","Dean Foods Company","Deere & Company","Del Monte Foods Co","Dell Computer Corporation","Delphi Corp.","Delta Air Lines Inc.","Deluxe Corporation","Devon Energy Corporation","Di Giorgio Corporation","Dial Corporation","Diebold Incorporated","Dillard's Inc.","DIMON Incorporated","Dole Food Company, Inc.","Dollar General Corporation","Dollar Tree Stores, Inc.","Dominion Resources, Inc.","Domino's Pizza LLC","Dover Corporation, Inc.","Dow Chemical Company","Dow Jones & Company, Inc.","DPL Inc.","DQE Inc.","Dreyer's Grand Ice Cream, Inc.","DST Systems, Inc.","DTE Energy Co.","E.I. Du Pont de Nemours and Company","Duke Energy Corp","Dun & Bradstreet Inc.","DURA Automotive Systems Inc.","DynCorp","Dynegy Inc.","E*Trade Group, Inc.","E.W. Scripps Company","Earthlink, Inc.","Eastman Chemical Company","Eastman Kodak Company","Eaton Corporation","Echostar Communications Corporation","Ecolab Inc.","Edison International","EGL Inc.","El Paso Corporation","Electronic Arts Inc.","Electronic Data Systems Corp.","Eli Lilly and Company","EMC Corporation","Emcor Group Inc.","Emerson Electric Co.","Encompass Services Corporation","Energizer Holdings Inc.","Energy East Corporation","Engelhard Corporation","Enron Corp.","Entergy Corporation","Enterprise Products Partners L.P.","EOG Resources, Inc.","Equifax Inc.","Equitable Resources Inc.","Equity Office Properties Trust","Equity Residential Properties Trust","Estee Lauder Companies Inc.","Exelon Corporation","Exide Technologies","Expeditors International of Washington Inc.","Express Scripts Inc.","ExxonMobil Corporation","Fairchild Semiconductor International Inc.","Family Dollar Stores Inc.","Farmland Industries Inc.","Federal Mogul Corp.","Federated Department Stores Inc.","Federal Express Corp.","Felcor Lodging Trust Inc.","Ferro Corp.","Fidelity National Financial Inc.","Fifth Third Bancorp","First American Financial Corp.","First Data Corp.","First National of Nebraska Inc.","First Tennessee National Corp.","FirstEnergy Corp.","Fiserv Inc.","Fisher Scientific International Inc.","FleetBoston Financial Co.","Fleetwood Enterprises Inc.","Fleming Companies Inc.","Flowers Foods Inc.","Flowserv Corp","Fluor Corp","FMC Corp","Foamex International Inc","Foot Locker Inc","Footstar Inc.","Ford Motor Co","Forest Laboratories Inc.","Fortune Brands Inc.","Foster Wheeler Ltd.","FPL Group Inc.","Franklin Resources Inc.","Freeport McMoran Copper & Gold Inc.","Frontier Oil Corp","Furniture Brands International Inc.","Gannett Co., Inc.","Gap Inc.","Gateway Inc.","GATX Corporation","Gemstar-TV Guide International Inc.","GenCorp Inc.","General Cable Corporation","General Dynamics Corporation","General Electric Company","General Mills Inc","General Motors Corporation","Genesis Health Ventures Inc.","Gentek Inc.","Gentiva Health Services Inc.","Genuine Parts Company","Genuity Inc.","Genzyme Corporation","Georgia Gulf Corporation","Georgia-Pacific Corporation","Gillette Company","Gold Kist Inc.","Golden State Bancorp Inc.","Golden West Financial Corporation","Goldman Sachs Group Inc.","Goodrich Corporation","The Goodyear Tire & Rubber Company","Granite Construction Incorporated","Graybar Electric Company Inc.","Great Lakes Chemical Corporation","Great Plains Energy Inc.","GreenPoint Financial Corp.","Greif Bros. Corporation","Grey Global Group Inc.","Group 1 Automotive Inc.","Guidant Corporation","H&R Block Inc.","H.B. Fuller Company","H.J. Heinz Company","Halliburton Co.","Harley-Davidson Inc.","Harman International Industries Inc.","Harrah's Entertainment Inc.","Harris Corp.","Harsco Corp.","Hartford Financial Services Group Inc.","Hasbro Inc.","Hawaiian Electric Industries Inc.","HCA Inc.","Health Management Associates Inc.","Health Net Inc.","Healthsouth Corp","Henry Schein Inc.","Hercules Inc.","Herman Miller Inc.","Hershey Foods Corp.","Hewlett-Packard Company","Hibernia Corp.","Hillenbrand Industries Inc.","Hilton Hotels Corp.","Hollywood Entertainment Corp.","Home Depot Inc.","Hon Industries Inc.","Honeywell International Inc.","Hormel Foods Corp.","Host Marriott Corp.","Household International Corp.","Hovnanian Enterprises Inc.","Hub Group Inc.","Hubbell Inc.","Hughes Supply Inc.","Humana Inc.","Huntington Bancshares Inc.","Idacorp Inc.","IDT Corporation","IKON Office Solutions Inc.","Illinois Tool Works Inc.","IMC Global Inc.","Imperial Sugar Company","IMS Health Inc.","Ingles Market Inc","Ingram Micro Inc.","Insight Enterprises Inc.","Integrated Electrical Services Inc.","Intel Corporation","International Paper Co.","Interpublic Group of Companies Inc.","Interstate Bakeries Corporation","International Business Machines Corp.","International Flavors & Fragrances Inc.","International Multifoods Corporation","Intuit Inc.","IT Group Inc.","ITT Industries Inc.","Ivax Corp.","J.B. Hunt Transport Services Inc.","J.C. Penny Co.","J.P. Morgan Chase & Co.","Jabil Circuit Inc.","Jack In The Box Inc.","Jacobs Engineering Group Inc.","JDS Uniphase Corp.","Jefferson-Pilot Co.","John Hancock Financial Services Inc.","Johnson & Johnson","Johnson Controls Inc.","Jones Apparel Group Inc.","KB Home","Kellogg Company","Kellwood Company","Kelly Services Inc.","Kemet Corp.","Kennametal Inc.","Kerr-McGee Corporation","KeyCorp","KeySpan Corp.","Kimball International Inc.","Kimberly-Clark Corporation","Kindred Healthcare Inc.","KLA-Tencor Corporation","K-Mart Corp.","Knight-Ridder Inc.","Kohl's Corp.","KPMG Consulting Inc.","Kroger Co.","L-3 Communications Holdings Inc.","Laboratory Corporation of America Holdings","Lam Research Corporation","LandAmerica Financial Group Inc.","Lands' End Inc.","Landstar System Inc.","La-Z-Boy Inc.","Lear Corporation","Legg Mason Inc.","Leggett & Platt Inc.","Lehman Brothers Holdings Inc.","Lennar Corporation","Lennox International Inc.","Level 3 Communications Inc.","Levi Strauss & Co.","Lexmark International Inc.","Limited Inc.","Lincoln National Corporation","Linens 'n Things Inc.","Lithia Motors Inc.","Liz Claiborne Inc.","Lockheed Martin Corporation","Loews Corporation","Longs Drug Stores Corporation","Louisiana-Pacific Corporation","Lowe's Companies Inc.","LSI Logic Corporation","The LTV Corporation","The Lubrizol Corporation","Lucent Technologies Inc.","Lyondell Chemical Company","M & T Bank Corporation","Magellan Health Services Inc.","Mail-Well Inc.","Mandalay Resort Group","Manor Care Inc.","Manpower Inc.","Marathon Oil Corporation","Mariner Health Care Inc.","Markel Corporation","Marriott International Inc.","Marsh & McLennan Companies Inc.","Marsh Supermarkets Inc.","Marshall & Ilsley Corporation","Martin Marietta Materials Inc.","Masco Corporation","Massey Energy Company","MasTec Inc.","Mattel Inc.","Maxim Integrated Products Inc.","Maxtor Corporation","Maxxam Inc.","The May Department Stores Company","Maytag Corporation","MBNA Corporation","McCormick & Company Incorporated","McDonald's Corporation","The McGraw-Hill Companies Inc.","McKesson Corporation","McLeodUSA Incorporated","M.D.C. Holdings Inc.","MDU Resources Group Inc.","MeadWestvaco Corporation","Medtronic Inc.","Mellon Financial Corporation","The Men's Wearhouse Inc.","Merck & Co., Inc.","Mercury General Corporation","Merrill Lynch & Co. Inc.","Metaldyne Corporation","Metals USA Inc.","MetLife Inc.","Metris Companies Inc","MGIC Investment Corporation","MGM Mirage","Michaels Stores Inc.","Micron Technology Inc.","Microsoft Corporation","Milacron Inc.","Millennium Chemicals Inc.","Mirant Corporation","Mohawk Industries Inc.","Molex Incorporated","The MONY Group Inc.","Morgan Stanley Dean Witter & Co.","Motorola Inc.","MPS Group Inc.","Murphy Oil Corporation","Nabors Industries Inc","Nacco Industries Inc","Nash Finch Company","National City Corp.","National Commerce Financial Corporation","National Fuel Gas Company","National Oilwell Inc","National Rural Utilities Cooperative Finance Corporation","National Semiconductor Corporation","National Service Industries Inc","Navistar International Corporation","NCR Corporation","The Neiman Marcus Group Inc.","New Jersey Resources Corporation","New York Times Company","Newell Rubbermaid Inc","Newmont Mining Corporation","Nextel Communications Inc","Nicor Inc","Nike Inc","NiSource Inc","Noble Energy Inc","Nordstrom Inc","Norfolk Southern Corporation","Nortek Inc","North Fork Bancorporation Inc","Northeast Utilities System","Northern Trust Corporation","Northrop Grumman Corporation","NorthWestern Corporation","Novellus Systems Inc","NSTAR","NTL Incorporated","Nucor Corp","Nvidia Corp","NVR Inc","Northwest Airlines Corp","Occidental Petroleum Corp","Ocean Energy Inc","Office Depot Inc.","OfficeMax Inc","OGE Energy Corp","Oglethorpe Power Corp.","Ohio Casualty Corp.","Old Republic International Corp.","Olin Corp.","OM Group Inc","Omnicare Inc","Omnicom Group","On Semiconductor Corp","ONEOK Inc","Oracle Corp","Oshkosh Truck Corp","Outback Steakhouse Inc.","Owens & Minor Inc.","Owens Corning","Owens-Illinois Inc","Oxford Health Plans Inc","Paccar Inc","PacifiCare Health Systems Inc","Packaging Corp. of America","Pactiv Corp","Pall Corp","Pantry Inc","Park Place Entertainment Corp","Parker Hannifin Corp.","Pathmark Stores Inc.","Paychex Inc","Payless Shoesource Inc","Penn Traffic Co.","Pennzoil-Quaker State Company","Pentair Inc","Peoples Energy Corp.","PeopleSoft Inc","Pep Boys Manny, Moe & Jack","Potomac Electric Power Co.","Pepsi Bottling Group Inc.","PepsiAmericas Inc.","PepsiCo Inc.","Performance Food Group Co.","Perini Corp","PerkinElmer Inc","Perot Systems Corp","Petco Animal Supplies Inc.","Peter Kiewit Sons', Inc.","PETsMART Inc","Pfizer Inc","Pacific Gas & Electric Corp.","Pharmacia Corp","Phar Mor Inc.","Phelps Dodge Corp.","Philip Morris Companies Inc.","Phillips Petroleum Co","Phillips Van Heusen Corp.","Phoenix Companies Inc","Pier 1 Imports Inc.","Pilgrim's Pride Corporation","Pinnacle West Capital Corp","Pioneer-Standard Electronics Inc.","Pitney Bowes Inc.","Pittston Brinks Group","Plains All American Pipeline LP","PNC Financial Services Group Inc.","PNM Resources Inc","Polaris Industries Inc.","Polo Ralph Lauren Corp","PolyOne Corp","Popular Inc","Potlatch Corp","PPG Industries Inc","PPL Corp","Praxair Inc","Precision Castparts Corp","Premcor Inc.","Pride International Inc","Primedia Inc","Principal Financial Group Inc.","Procter & Gamble Co.","Pro-Fac Cooperative Inc.","Progress Energy Inc","Progressive Corporation","Protective Life Corp","Provident Financial Group","Providian Financial Corp.","Prudential Financial Inc.","PSS World Medical Inc","Public Service Enterprise Group Inc.","Publix Super Markets Inc.","Puget Energy Inc.","Pulte Homes Inc","Qualcomm Inc","Quanta Services Inc.","Quantum Corp","Quest Diagnostics Inc.","Questar Corp","Quintiles Transnational","Qwest Communications Intl Inc","R.J. Reynolds Tobacco Company","R.R. Donnelley & Sons Company","Radio Shack Corporation","Raymond James Financial Inc.","Raytheon Company","Reader's Digest Association Inc.","Reebok International Ltd.","Regions Financial Corp.","Regis Corporation","Reliance Steel & Aluminum Co.","Reliant Energy Inc.","Rent A Center Inc","Republic Services Inc","Revlon Inc","RGS Energy Group Inc","Rite Aid Corp","Riverwood Holding Inc.","RoadwayCorp","Robert Half International Inc.","Rock-Tenn Co","Rockwell Automation Inc","Rockwell Collins Inc","Rohm & Haas Co.","Ross Stores Inc","RPM Inc.","Ruddick Corp","Ryder System Inc","Ryerson Tull Inc","Ryland Group Inc.","Sabre Holdings Corp","Safeco Corp","Safeguard Scientifics Inc.","Safeway Inc","Saks Inc","Sanmina-SCI Inc","Sara Lee Corp","SBC Communications Inc","Scana Corp.","Schering-Plough Corp","Scholastic Corp","SCI Systems Onc.","Science Applications Intl. Inc.","Scientific-Atlanta Inc","Scotts Company","Seaboard Corp","Sealed Air Corp","Sears Roebuck & Co","Sempra Energy","Sequa Corp","Service Corp. International","ServiceMaster Co","Shaw Group Inc","Sherwin-Williams Company","Shopko Stores Inc","Siebel Systems Inc","Sierra Health Services Inc","Sierra Pacific Resources","Silgan Holdings Inc.","Silicon Graphics Inc","Simon Property Group Inc","SLM Corporation","Smith International Inc","Smithfield Foods Inc","Smurfit-Stone Container Corp","Snap-On Inc","Solectron Corp","Solutia Inc","Sonic Automotive Inc.","Sonoco Products Co.","Southern Company","Southern Union Company","SouthTrust Corp.","Southwest Airlines Co","Southwest Gas Corp","Sovereign Bancorp Inc.","Spartan Stores Inc","Spherion Corp","Sports Authority Inc","Sprint Corp.","SPX Corp","St. Jude Medical Inc","St. Paul Cos.","Staff Leasing Inc.","StanCorp Financial Group Inc","Standard Pacific Corp.","Stanley Works","Staples Inc","Starbucks Corp","Starwood Hotels & Resorts Worldwide Inc","State Street Corp.","Stater Bros. Holdings Inc.","Steelcase Inc","Stein Mart Inc","Stewart & Stevenson Services Inc","Stewart Information Services Corp","Stilwell Financial Inc","Storage Technology Corporation","Stryker Corp","Sun Healthcare Group Inc.","Sun Microsystems Inc.","SunGard Data Systems Inc.","Sunoco Inc.","SunTrust Banks Inc","Supervalu Inc","Swift Transportation, Co., Inc","Symbol Technologies Inc","Synovus Financial Corp.","Sysco Corp","Systemax Inc.","Target Corp.","Tech Data Corporation","TECO Energy Inc","Tecumseh Products Company","Tektronix Inc","Teleflex Incorporated","Telephone & Data Systems Inc","Tellabs Inc.","Temple-Inland Inc","Tenet Healthcare Corporation","Tenneco Automotive Inc.","Teradyne Inc","Terex Corp","Tesoro Petroleum Corp.","Texas Industries Inc.","Texas Instruments Incorporated","Textron Inc","Thermo Electron Corporation","Thomas & Betts Corporation","Tiffany & Co","Timken Company","TJX Companies Inc","TMP Worldwide Inc","Toll Brothers Inc","Torchmark Corporation","Toro Company","Tower Automotive Inc.","Toys 'R' Us Inc","Trans World Entertainment Corp.","TransMontaigne Inc","Transocean Inc","TravelCenters of America Inc.","Triad Hospitals Inc","Tribune Company","Trigon Healthcare Inc.","Trinity Industries Inc","Trump Hotels & Casino Resorts Inc.","TruServ Corporation","TRW Inc","TXU Corp","Tyson Foods Inc","U.S. Bancorp","U.S. Industries Inc.","UAL Corporation","UGI Corporation","Unified Western Grocers Inc","Union Pacific Corporation","Union Planters Corp","Unisource Energy Corp","Unisys Corporation","United Auto Group Inc","United Defense Industries Inc.","United Parcel Service Inc","United Rentals Inc","United Stationers Inc","United Technologies Corporation","UnitedHealth Group Incorporated","Unitrin Inc","Universal Corporation","Universal Forest Products Inc","Universal Health Services Inc","Unocal Corporation","Unova Inc","UnumProvident Corporation","URS Corporation","US Airways Group Inc","US Oncology Inc","USA Interactive","USFreighways Corporation","USG Corporation","UST Inc","Valero Energy Corporation","Valspar Corporation","Value City Department Stores Inc","Varco International Inc","Vectren Corporation","Veritas Software Corporation","Verizon Communications Inc","VF Corporation","Viacom Inc","Viad Corp","Viasystems Group Inc","Vishay Intertechnology Inc","Visteon Corporation","Volt Information Sciences Inc","Vulcan Materials Company","W.R. Berkley Corporation","W.R. Grace & Co","W.W. Grainger Inc","Wachovia Corporation","Wakenhut Corporation","Walgreen Co","Wallace Computer Services Inc","Wal-Mart Stores Inc","Walt Disney Co","Walter Industries Inc","Washington Mutual Inc","Washington Post Co.","Waste Management Inc","Watsco Inc","Weatherford International Inc","Weis Markets Inc.","Wellpoint Health Networks Inc","Wells Fargo & Company","Wendy's International Inc","Werner Enterprises Inc","WESCO International Inc","Western Digital Inc","Western Gas Resources Inc","WestPoint Stevens Inc","Weyerhauser Company","WGL Holdings Inc","Whirlpool Corporation","Whole Foods Market Inc","Willamette Industries Inc.","Williams Companies Inc","Williams Sonoma Inc","Winn Dixie Stores Inc","Wisconsin Energy Corporation","Wm Wrigley Jr Company","World Fuel Services Corporation","WorldCom Inc","Worthington Industries Inc","WPS Resources Corporation","Wyeth","Wyndham International Inc","Xcel Energy Inc","Xerox Corp","Xilinx Inc","XO Communications Inc","Yellow Corporation","York International Corp","Yum Brands Inc.","Zale Corporation","Zions Bancorporation"],fileExtension:{raster:["bmp","gif","gpl","ico","jpeg","psd","png","psp","raw","tiff"],vector:["3dv","amf","awg","ai","cgm","cdr","cmx","dxf","e2d","egt","eps","fs","odg","svg","xar"],"3d":["3dmf","3dm","3mf","3ds","an8","aoi","blend","cal3d","cob","ctm","iob","jas","max","mb","mdx","obj","x","x3d"],document:["doc","docx","dot","html","xml","odt","odm","ott","csv","rtf","tex","xhtml","xps"]},timezones:[{name:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{name:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{name:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{name:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{name:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{name:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse"]},{name:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Time (US & Canada)",utc:["America/Dawson","America/Los_Angeles","America/Tijuana","America/Vancouver","America/Whitehorse","PST8PDT"]},{name:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson_Creek","America/Hermosillo","America/Phoenix","Etc/GMT+7"]},{name:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{name:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{name:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{name:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{name:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{name:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{name:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{name:"Eastern Standard Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto","EST5EDT"]},{name:"US Eastern Standard Time",abbr:"UEDT",offset:-4,isdst:!0,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{name:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{name:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{name:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{name:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{name:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{name:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{name:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{name:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{name:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/La_Rioja","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{name:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{name:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{name:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{name:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{name:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{name:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{name:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{name:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{name:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{name:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{name:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{name:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{name:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{name:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{name:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{name:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{name:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{name:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{name:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{name:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{name:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{name:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{name:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{name:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{name:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kiev","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhgorod","Europe/Vilnius","Europe/Zaporozhye"]},{name:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{name:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{name:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{name:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{name:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{name:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{name:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{name:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{name:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{name:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{name:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{name:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{name:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{name:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{name:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{name:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{name:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{name:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{name:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{name:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{name:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata"]},{name:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{name:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{name:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{name:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{name:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{name:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{name:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{name:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{name:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{name:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{name:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{name:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{name:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{name:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{name:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{name:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{name:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{name:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{name:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{name:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{name:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{name:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{name:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{name:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{name:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{name:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{name:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{name:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{name:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{name:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{name:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{name:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}],profession:["Airline Pilot","Academic Team","Accountant","Account Executive","Actor","Actuary","Acquisition Analyst","Administrative Asst.","Administrative Analyst","Administrator","Advertising Director","Aerospace Engineer","Agent","Agricultural Inspector","Agricultural Scientist","Air Traffic Controller","Animal Trainer","Anthropologist","Appraiser","Architect","Art Director","Artist","Astronomer","Athletic Coach","Auditor","Author","Baker","Banker","Bankruptcy Attorney","Benefits Manager","Biologist","Bio-feedback Specialist","Biomedical Engineer","Biotechnical Researcher","Broadcaster","Broker","Building Manager","Building Contractor","Building Inspector","Business Analyst","Business Planner","Business Manager","Buyer","Call Center Manager","Career Counselor","Cash Manager","Ceramic Engineer","Chief Executive Officer","Chief Operation Officer","Chef","Chemical Engineer","Chemist","Child Care Manager","Chief Medical Officer","Chiropractor","Cinematographer","City Housing Manager","City Manager","Civil Engineer","Claims Manager","Clinical Research Assistant","Collections Manager","Compliance Manager","Comptroller","Computer Manager","Commercial Artist","Communications Affairs Director","Communications Director","Communications Engineer","Compensation Analyst","Computer Programmer","Computer Ops. Manager","Computer Engineer","Computer Operator","Computer Graphics Specialist","Construction Engineer","Construction Manager","Consultant","Consumer Relations Manager","Contract Administrator","Copyright Attorney","Copywriter","Corporate Planner","Corrections Officer","Cosmetologist","Credit Analyst","Cruise Director","Chief Information Officer","Chief Technology Officer","Customer Service Manager","Cryptologist","Dancer","Data Security Manager","Database Manager","Day Care Instructor","Dentist","Designer","Design Engineer","Desktop Publisher","Developer","Development Officer","Diamond Merchant","Dietitian","Direct Marketer","Director","Distribution Manager","Diversity Manager","Economist","EEO Compliance Manager","Editor","Education Adminator","Electrical Engineer","Electro Optical Engineer","Electronics Engineer","Embassy Management","Employment Agent","Engineer Technician","Entrepreneur","Environmental Analyst","Environmental Attorney","Environmental Engineer","Environmental Specialist","Escrow Officer","Estimator","Executive Assistant","Executive Director","Executive Recruiter","Facilities Manager","Family Counselor","Fashion Events Manager","Fashion Merchandiser","Fast Food Manager","Film Producer","Film Production Assistant","Financial Analyst","Financial Planner","Financier","Fine Artist","Wildlife Specialist","Fitness Consultant","Flight Attendant","Flight Engineer","Floral Designer","Food & Beverage Director","Food Service Manager","Forestry Technician","Franchise Management","Franchise Sales","Fraud Investigator","Freelance Writer","Fund Raiser","General Manager","Geologist","General Counsel","Geriatric Specialist","Gerontologist","Glamour Photographer","Golf Club Manager","Gourmet Chef","Graphic Designer","Grounds Keeper","Hazardous Waste Manager","Health Care Manager","Health Therapist","Health Service Administrator","Hearing Officer","Home Economist","Horticulturist","Hospital Administrator","Hotel Manager","Human Resources Manager","Importer","Industrial Designer","Industrial Engineer","Information Director","Inside Sales","Insurance Adjuster","Interior Decorator","Internal Controls Director","International Acct.","International Courier","International Lawyer","Interpreter","Investigator","Investment Banker","Investment Manager","IT Architect","IT Project Manager","IT Systems Analyst","Jeweler","Joint Venture Manager","Journalist","Labor Negotiator","Labor Organizer","Labor Relations Manager","Lab Services Director","Lab Technician","Land Developer","Landscape Architect","Law Enforcement Officer","Lawyer","Lead Software Engineer","Lead Software Test Engineer","Leasing Manager","Legal Secretary","Library Manager","Litigation Attorney","Loan Officer","Lobbyist","Logistics Manager","Maintenance Manager","Management Consultant","Managed Care Director","Managing Partner","Manufacturing Director","Manpower Planner","Marine Biologist","Market Res. Analyst","Marketing Director","Materials Manager","Mathematician","Membership Chairman","Mechanic","Mechanical Engineer","Media Buyer","Medical Investor","Medical Secretary","Medical Technician","Mental Health Counselor","Merchandiser","Metallurgical Engineering","Meteorologist","Microbiologist","MIS Manager","Motion Picture Director","Multimedia Director","Musician","Network Administrator","Network Specialist","Network Operator","New Product Manager","Novelist","Nuclear Engineer","Nuclear Specialist","Nutritionist","Nursing Administrator","Occupational Therapist","Oceanographer","Office Manager","Operations Manager","Operations Research Director","Optical Technician","Optometrist","Organizational Development Manager","Outplacement Specialist","Paralegal","Park Ranger","Patent Attorney","Payroll Specialist","Personnel Specialist","Petroleum Engineer","Pharmacist","Photographer","Physical Therapist","Physician","Physician Assistant","Physicist","Planning Director","Podiatrist","Political Analyst","Political Scientist","Politician","Portfolio Manager","Preschool Management","Preschool Teacher","Principal","Private Banker","Private Investigator","Probation Officer","Process Engineer","Producer","Product Manager","Product Engineer","Production Engineer","Production Planner","Professional Athlete","Professional Coach","Professor","Project Engineer","Project Manager","Program Manager","Property Manager","Public Administrator","Public Safety Director","PR Specialist","Publisher","Purchasing Agent","Publishing Director","Quality Assurance Specialist","Quality Control Engineer","Quality Control Inspector","Radiology Manager","Railroad Engineer","Real Estate Broker","Recreational Director","Recruiter","Redevelopment Specialist","Regulatory Affairs Manager","Registered Nurse","Rehabilitation Counselor","Relocation Manager","Reporter","Research Specialist","Restaurant Manager","Retail Store Manager","Risk Analyst","Safety Engineer","Sales Engineer","Sales Trainer","Sales Promotion Manager","Sales Representative","Sales Manager","Service Manager","Sanitation Engineer","Scientific Programmer","Scientific Writer","Securities Analyst","Security Consultant","Security Director","Seminar Presenter","Ship's Officer","Singer","Social Director","Social Program Planner","Social Research","Social Scientist","Social Worker","Sociologist","Software Developer","Software Engineer","Software Test Engineer","Soil Scientist","Special Events Manager","Special Education Teacher","Special Projects Director","Speech Pathologist","Speech Writer","Sports Event Manager","Statistician","Store Manager","Strategic Alliance Director","Strategic Planning Director","Stress Reduction Specialist","Stockbroker","Surveyor","Structural Engineer","Superintendent","Supply Chain Director","System Engineer","Systems Analyst","Systems Programmer","System Administrator","Tax Specialist","Teacher","Technical Support Specialist","Technical Illustrator","Technical Writer","Technology Director","Telecom Analyst","Telemarketer","Theatrical Director","Title Examiner","Tour Escort","Tour Guide Director","Traffic Manager","Trainer Translator","Transportation Manager","Travel Agent","Treasurer","TV Programmer","Underwriter","Union Representative","University Administrator","University Dean","Urban Planner","Veterinarian","Vendor Relations Director","Viticulturist","Warehouse Manager"],animals:{ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},primes:[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973,10007],emotions:["love","joy","surprise","anger","sadness","fear"]},w=Object.prototype.hasOwnProperty,N=Object.keys||function(e){var a=[];for(var n in e)w.call(e,n)&&a.push(n);return a};function L(e,a){for(var n=N(e),c,m=0,C=n.length;m0)return this.normal_pool(e);var a,n,c,m,C=e.mean,P=e.dev;do n=this.random()*2-1,c=this.random()*2-1,a=n*n+c*c;while(a>=1);return m=n*Math.sqrt(-2*Math.log(a)/a),P*m+C},r.prototype.normal_pool=function(e){var a=0;do{var n=Math.round(this.normal({mean:e.mean,dev:e.dev}));if(n=0)return e.pool[n];a++}while(a<100);throw new RangeError("Chance: Your pool is too small for the given mean and standard deviation. Please adjust.")},r.prototype.radio=function(e){e=o(e,{side:"?"});var a="";switch(e.side.toLowerCase()){case"east":case"e":a="W";break;case"west":case"w":a="K";break;default:a=this.character({pool:"KW"});break}return a+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})+this.character({alpha:!0,casing:"upper"})},r.prototype.set=function(e,a){typeof e=="string"?E[e]=a:E=R(e,E)},r.prototype.tv=function(e){return this.radio(e)},r.prototype.cnpj=function(){var e=this.n(this.natural,8,{max:9}),a=2+e[7]*6+e[6]*7+e[5]*8+e[4]*9+e[3]*2+e[2]*3+e[1]*4+e[0]*5;a=11-a%11,a>=10&&(a=0);var n=a*2+3+e[7]*7+e[6]*8+e[5]*9+e[4]*2+e[3]*3+e[2]*4+e[1]*5+e[0]*6;return n=11-n%11,n>=10&&(n=0),""+e[0]+e[1]+"."+e[2]+e[3]+e[4]+"."+e[5]+e[6]+e[7]+"/0001-"+a+n},r.prototype.emotion=function(){return this.pick(this.get("emotions"))},r.prototype.mersenne_twister=function(e){return new H(e)},r.prototype.blueimp_md5=function(){return new G};var H=function(e){e===void 0&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};H.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0},H.prototype.init_by_array=function(e,a){var n=1,c=0,m,C;for(this.init_genrand(19650218),m=this.N>a?this.N:a;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1664525<<16)+(C&65535)*1664525)+e[c]+c,this.mt[n]>>>=0,n++,c++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1),c>=a&&(c=0);for(m=this.N-1;m;m--)C=this.mt[n-1]^this.mt[n-1]>>>30,this.mt[n]=(this.mt[n]^(((C&4294901760)>>>16)*1566083941<<16)+(C&65535)*1566083941)-n,this.mt[n]>>>=0,n++,n>=this.N&&(this.mt[0]=this.mt[this.N-1],n=1);this.mt[0]=2147483648},H.prototype.genrand_int32=function(){var e,a=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n>>1^a[e&1];for(;n>>1^a[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^a[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0},H.prototype.genrand_int31=function(){return this.genrand_int32()>>>1},H.prototype.genrand_real1=function(){return this.genrand_int32()*(1/4294967295)},H.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},H.prototype.genrand_real3=function(){return(this.genrand_int32()+.5)*(1/4294967296)},H.prototype.genrand_res53=function(){var e=this.genrand_int32()>>>5,a=this.genrand_int32()>>>6;return(e*67108864+a)*(1/9007199254740992)};var G=function(){};G.prototype.VERSION="1.0.1",G.prototype.safe_add=function(a,n){var c=(a&65535)+(n&65535),m=(a>>16)+(n>>16)+(c>>16);return m<<16|c&65535},G.prototype.bit_roll=function(e,a){return e<>>32-a},G.prototype.md5_cmn=function(e,a,n,c,m,C){return this.safe_add(this.bit_roll(this.safe_add(this.safe_add(a,e),this.safe_add(c,C)),m),n)},G.prototype.md5_ff=function(e,a,n,c,m,C,P){return this.md5_cmn(a&n|~a&c,e,a,m,C,P)},G.prototype.md5_gg=function(e,a,n,c,m,C,P){return this.md5_cmn(a&c|n&~c,e,a,m,C,P)},G.prototype.md5_hh=function(e,a,n,c,m,C,P){return this.md5_cmn(a^n^c,e,a,m,C,P)},G.prototype.md5_ii=function(e,a,n,c,m,C,P){return this.md5_cmn(n^(a|~c),e,a,m,C,P)},G.prototype.binl_md5=function(e,a){e[a>>5]|=128<>>9<<4)+14]=a;var n,c,m,C,P,f=1732584193,A=-271733879,v=-1732584194,y=271733878;for(n=0;n>5]>>>a%32&255);return n},G.prototype.rstr2binl=function(e){var a,n=[];for(n[(e.length>>2)-1]=void 0,a=0;a>5]|=(e.charCodeAt(a/8)&255)<16&&(c=this.binl_md5(c,e.length*8)),n=0;n<16;n+=1)m[n]=c[n]^909522486,C[n]=c[n]^1549556828;return P=this.binl_md5(m.concat(this.rstr2binl(a)),512+a.length*8),this.binl2rstr(this.binl_md5(C.concat(P),512+128))},G.prototype.rstr2hex=function(e){var a="0123456789abcdef",n="",c,m;for(m=0;m>>4&15)+a.charAt(c&15);return n},G.prototype.str2rstr_utf8=function(e){return unescape(encodeURIComponent(e))},G.prototype.raw_md5=function(e){return this.rstr_md5(this.str2rstr_utf8(e))},G.prototype.hex_md5=function(e){return this.rstr2hex(this.raw_md5(e))},G.prototype.raw_hmac_md5=function(e,a){return this.rstr_hmac_md5(this.str2rstr_utf8(e),this.str2rstr_utf8(a))},G.prototype.hex_hmac_md5=function(e,a){return this.rstr2hex(this.raw_hmac_md5(e,a))},G.prototype.md5=function(e,a,n){return a?n?this.raw_hmac_md5(a,e):this.hex_hmac_md5(a,e):n?this.raw_md5(e):this.hex_md5(e)},d.exports&&(h=d.exports=r),h.Chance=r,typeof importScripts<"u"&&(chance=new r,self.Chance=r),typeof window=="object"&&typeof window.document=="object"&&(window.Chance=r,window.chance=new r)})()})(ie,ie.exports);var ye=ie.exports;const Se=Ae(ye);function ue(d,h,k,D){var I=new Se(re);k==null&&console.log();let x=k.toUpperCase(),b=d.toUpperCase(),g=h.toUpperCase();if(D!=null&&0":o=="["?"]":o=="{"?"}":o=="("?")":o}}function h(I,x,b){for(var g=[],M=`(){}[]^-|!*+.><='",;:%@?/\\#~`+b,B=` \r `,r=$(I,M+B),o=0,i=0,t=0,s=0;s0&&(u=g[g.length-1]),l==` `?(i++,t=0):s>0&&r[s-1]!==` `?t=t+r[s-1].length:t=0,o+=l.length,u!=null&&u.type=="comment"&&(u.value.lastIndexOf("*/")!=u.value.length-2||u.value=="/*/")){l=="*"||l=="/"?u.value=u.value+l:u.value="/* ... ",u.end=o,u!=null&&u.type=="comment"&&u.value.lastIndexOf("*/")==u.value.length-2&&u.value!="/*/"&&(u.value=I.substring(u.begin,u.end));continue}if(u!=null&&(u.type=="line-comment"||u.type=="dbtools-command")&&l!=` @@ -8,7 +8,7 @@ `||u.value=="\r")){g.push(new d(l,o-l.length,-9,"line-comment",i,t));continue}if(l.toUpperCase()=="SODA"&&(u==null||u.value==` `||u.value=="\r")){g.push(new d(l,o-l.length,-9,"dbtools-command",i,t));continue}if(u!=null&&u.type=="identifier"&&u.end==-11&&u.value.indexOf("@")==0&&!(l==` `||l=="\r")){u.value=u.value+l;continue}if(u!=null&&u.type=="identifier"&&u.end==-11&&u.value.indexOf("@")==0&&(l==` -`||l=="\r")){u.end=o-1,g.push(new d(l,o-1,o,"ws",i,t));continue}if(x&&l=="'"){u!=null&&(u.value.toUpperCase()=="Q"||u.value.toUpperCase()=="N"||u.value.toUpperCase()=="U"||u.value.toUpperCase()=="NQ")?(u.value+=l,u.type="quoted-string"):g.push(new d(l,o-1,-10,"quoted-string",i,t));continue}if(x&&l=='"'){g.push(new d(l,o-1,-11,"dquoted-string",i,t));continue}if(l=="`"&&0<=M.indexOf("`")){g.push(new d(l,o-1,-11,"bquoted-string",i,t));continue}if(l.length==1&&0<=M.indexOf(l)){g.push(new d(l,o-1,o,"operation",i,t));continue}if(l.length==1&&0<=B.indexOf(l)){g.push(new d(l,o-1,o,"ws",i,t));continue}if("0"<=l.charAt(0)&&l.charAt(0)<="9"){k(l,g,o-l.length,i)||(l.charAt(l.length-1)=="K"||l.charAt(l.length-1)=="k"||l.charAt(l.length-1)=="M"||l.charAt(l.length-1)=="m"||l.charAt(l.length-1)=="G"||l.charAt(l.length-1)=="g"||l.charAt(l.length-1)=="T"||l.charAt(l.length-1)=="t"||l.charAt(l.length-1)=="P"||l.charAt(l.length-1)=="p"||l.charAt(l.length-1)=="E"||l.charAt(l.length-1)=="e"?(g.push(new d(l.substring(0,l.length-1),o-l.length,o-1,"constant.numeric",i,t)),g.push(new d(l.substring(l.length-1),o-1,o,"constant.numeric",i,t))):g.push(new d(l,o-l.length,o,"constant.numeric",i,t)));continue}var p="identifier";s+10){var u=g[g.length-1];u.end=I.length}return g}function k(I,x,b,g){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var M=$(I,"efd"),B=0;B")==0||i.indexOf("<")==0)&&(i=i.substring(1).trim());const l=i.toLowerCase();if(l.indexOf("view ")==0){var u=i.split(" ");return u[1]}i=b(i," d");var p=i.indexOf("/");0="0"&&T<="9"&&(i="x"+i),this.parsedName=Te(se(i)),this.parsedName},this.parseType=function(i){if(this.children!=null&&00){var u=g[g.length-1];u.end=I.length}return g}function k(I,x,b,g){if(0>I.indexOf("e")&&0>I.indexOf("f")&&0>I.indexOf("d"))return!1;0<=I.indexOf("e"),0<=I.indexOf("e"),!(0<=I.indexOf("e"))&&0<=I.indexOf("f");for(var M=$(I,"efd"),B=0;B")==0||i.indexOf("<")==0)&&(i=i.substring(1).trim());const l=i.toLowerCase();if(l.indexOf("view ")==0){var u=i.split(" ");return u[1]}i=b(i," d");var p=i.indexOf("/");0="0"&&T<="9"&&(i="x"+i),this.parsedName=Te(ne(i)),this.parsedName},this.parseType=function(i){if(this.children!=null&&0!0)),O}return p}0!0)}),0